XML 20 R9.htm IDEA: XBRL DOCUMENT
v3.10.0.1

REVENUE RECOGNITION | 9 Months Ended
--- | ---
Sep. 30, 2018
Revenue from Contract with Customer [Abstract] |
REVENUE RECOGNITION | REVENUE RECOGNITION In May 2014, the FASB issued ASU 2014-9, Revenue from Contracts with Customers, and issued subsequent amendments to the initial guidance in August 2015, March 2016, April 2016, May 2016, and December 2016 within ASU 2015-14, ASU 2016-8, ASU 2016-10, ASU 2016-12 and ASU 2016-20, respectively. The core principle of this new revenue recognition guidance is that a company will recognize revenue when promised goods or services are transferred to customers in an amount that reflects the consideration to which the company expects to be entitled in exchange for those goods or services. The new guidance defines a five-step process to achieve this core principle. The new guidance also requires more detailed disclosures to enable users of financial statements to understand the nature, amount, timing, and uncertainty of revenue and cash flows arising from contracts with customers. The new guidance provided for two transition methods, a full retrospective approach and a modified retrospective approach. On January 1, 2018, the Company adopted ASC Topic 606 using the modified retrospective method with no impact to the opening retained earnings and determined there were no changes required to its reported revenues as a result of the adoption. The Company has enhanced its disclosures of revenue to comply with the new guidance. Results for reporting periods beginning after January 1, 2018 are presented under ASC Topic 606, while prior period amounts were not adjusted and continue to be reported in accordance with ASC Topic 605, "Revenue Recognition." Overview The Company's primary source of revenue is the sale of products, and service to energy and industrial customers. The Company is organized into three business segments: Service Centers, Supply Chain Services and Innovative Pumping Solutions. The Service Centers segment provides a wide range of maintenance, repair and operating (MRO) products, equipment and integrated services, including logistics capabilities, to industrial customers. Revenue is recognized upon the completion of our performance obligation(s) under the sales agreement. The majority of the Service Centers segment revenue originates from the satisfaction of a single performance obligation, the delivery of products. Revenues are recognized when an agreement is in place, the performance obligations under the contract have been identified, and the price or consideration to be received is fixed and allocated to the performance obligation(s) in the contract. We believe our performance obligation has been satisfied when title passes to the customer or services have been rendered under the contract. Revenues are recorded net of sales taxes. The Company fabricates and assembles custom-made pump packages, remanufactures pumps and manufactures branded private label pumps within our Innovative Pumping Solutions segment. For binding agreements to fabricate tangible assets to customer specifications, the Company recognizes revenues over time when the customer is able to direct the use of and obtain substantially all of the benefits of the work performed. This typically occurs when the products have no alternative use for us and we have a right to payment for the work completed to date plus a reasonable profit margin. Contracts generally include cancellation provisions that require the customer to reimburse us for costs incurred through the date of cancellation. We recognize revenue for these contracts using the percentage of completion method, an "input method" as defined by the new standard. Under this method, revenues are recognized as costs are incurred and include estimated profits calculated on the basis of the relationship between costs incurred and total estimated costs at completion. If at any time expected costs exceed the value of the contract, the loss is recognized immediately. The typical time span of these contracts is approximately three to eighteen months. The Supply Chain Services segment provides a wide range of MRO products and manages all or part of a customer's supply chain, including warehouse and inventory management. Like the Service Centers segment above, revenue for the Supply Chain Services segment is recognized upon the completion of performance obligations. Revenues are recognized when an agreement or contract is in place and the price is fixed followed by execution of our performance obligations. We generally consider the satisfaction of our performance obligation has occurred when title for product passes to the customer or services have been rendered. Revenues are recorded net of sales taxes. See Note 15 - Segment Reporting for disaggregation of revenue by reporting segments. The Company believes this disaggregation best depicts how the nature, amount, timing and uncertainty of revenue and cash flows are affected by economic factors.

X
- References No definition available. + Details
Name: | us-gaap_RevenueFromContractWithCustomerAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -URI http://asc.fasb.org/topic&trid=49130388 Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 235 -URI http://asc.fasb.org/topic&trid=2122369 + Details
Name: | us-gaap_RevenueFromContractWithCustomerTextBlock
Namespace Prefix: | us-gaap_
Data Type: | nonnum:textBlockItemType
Balance Type: | na
Period Type: | duration