XML 86 R9.htm IDEA: XBRL DOCUMENT v3.19.3.a.u2
Revenue (Notes)
12 Months Ended
Dec. 31, 2019
Revenue from Contract with Customer [Abstract]  
Revenue
REVENUE

Sales includes revenue from contracts with customers for designing, engineering, manufacturing and installation of solar racking systems and greenhouse structures; extraction systems; roof and foundation ventilation products; centralized mail systems and electronic package solutions; rain dispersion products and roofing accessories; expanded and perforated metal; perimeter security solutions; expansion joints and structural bearings.

Refer to Note 19 "Segment Information" for additional information related to revenue recognized by timing of transfer of control by reportable segment.

Payment terms and conditions vary by contract, although terms generally include a requirement of payment within a range from 30 to 60 days, or in certain cases, up front deposits. In circumstances where the timing of revenue recognition differs from the timing of invoicing, the Company has determined that the Company's contracts generally do not include a significant financing component. Taxes collected from customers, which are subsequently remitted to governmental authorities, are excluded from sales.

As of December 31, 2019, the Company's remaining performance obligations are part of contracts that have an original expected duration of one year or less. Additionally, as of December 31, 2019 and 2018, there were no assets recognized related to incremental costs of obtaining a contract with a customer as the benefits of these costs are not expected to exceed one year.

Contract assets consist of costs in excess of billings. Contract liabilities consist of billings in excess of cost and unearned revenue, respectively. The following table presents the beginning and ending balances of costs in excess of billings, billings in excess of cost and unearned revenue as of December 31, 2019 and 2018, respectively, and revenue recognized during the years ended December 31, 2019 and 2018, respectively, that was included in billings in excess of cost and unearned revenue at the beginning of the period, respectively (in thousands):
 
December 31,
2019
 
December 31,
2018
 
January 1,
2018
Costs in excess of billings
$
20,607

 
$
22,634

 
$
16,532

Billings in excess of cost
(47,598
)
 
(17,857
)
 
(12,779
)
Unearned revenue
(17,311
)
 
(12,028
)
 
(3,336
)
 
For the Year Ended December 31, 2019
 
For the Year Ended December 31, 2018
 
 
Revenue recognized in the period from:
 
 
 
 
 
Amounts included in billings in excess of cost
 at the beginning of the period
$
17,371

 
$
10,097

 
 
Amounts included in unearned revenue
 at the beginning of the period
$
11,092

 
$
2,988

 
 


The increase in contract liabilities as of December 31, 2019 compared with December 31, 2018 was primarily due to the timing of significant advanced and up-fronts payments in the Renewable Energy and Conservation segment near the end of December 31, 2019 from contracts with customers for which the performance obligations have not been satisfied.