XML 34 R22.htm IDEA: XBRL DOCUMENT
v3.20.4

Note 4 - Revenue Recognition (Tables) | 9 Months Ended
--- | ---
Oct. 31, 2020
Notes Tables |
Disaggregation of Revenue [Table Text Block] |
|  | Three Months Ended October 31, |  |  | Nine Months Ended October 31, |
|  | 2020 |  |  | 2019 |  |  | 2020 |  |  | 2019 |
|  | Sales |  |  | % to Total |  |  | Sales |  |  | % to Total |  |  | Sales |  |  | % to Total |  |  | Sales |  |  | % to Total |
Products |  | $ | 2,435 |  |  |  | 12 | % |  | $ | 2,448 |  |  |  | 7 | % |  | $ | 8,603 |  |  |  | 14 | % |  | $ | 13,205 |  |  |  | 14 | %
Specialty Piping Systems and Coating |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
Revenue recognized under input method |  |  | 8,252 |  |  |  | 41 | % |  |  | 14,363 |  |  |  | 42 | % |  |  | 26,597 |  |  |  | 42 | % |  |  | 38,601 |  |  |  | 40 | %
Revenue recognized under output method |  |  | 9,607 |  |  |  | 47 | % |  |  | 17,646 |  |  |  | 51 | % |  |  | 28,199 |  |  |  | 44 | % |  |  | 43,594 |  |  |  | 46 | %
Total |  | $ | 20,294 |  |  |  | 100 | % |  | $ | 34,457 |  |  |  | 100 | % |  | $ | 63,399 |  |  |  | 100 | % |  | $ | 95,400 |  |  |  | 100 | %
Contract with Customer, Contract Asset, Contract Liability, and Receivable [Table Text Block] |
|  | Contract Assets |
Balance January 31, 2019 |  | $ | 1,653 |
Costs and gross profit recognized during the period for uncompleted contracts from the prior period |  |  | (1,038 | )
Costs and deferred gross profit incurred on uncompleted contracts not billed at the end of the current period |  |  | 1,368 |
Closing Balance at April 30, 2019 |  | $ | 1,983 |
Costs and gross profit recognized during the period for uncompleted contracts from the prior period |  |  | (1,509 | )
Costs and deferred gross profit incurred on uncompleted contracts not billed at the end of the current period |  |  | 3,000 |
Closing Balance at July 31, 2019 |  | $ | 3,474 |
Costs and gross profit recognized during the period for uncompleted contracts from the prior period |  |  | (1,799 | )
Costs and deferred gross profit incurred on uncompleted contracts not billed at the end of the current period |  |  | 2,688 |
Closing Balance at October 31, 2019 |  | $ | 4,363 |
Balance January 31, 2020 |  | $ | 2,166 |
Costs and gross profit recognized during the period for uncompleted contracts from the prior period |  |  | (2,896 | )
Costs and deferred gross profit incurred on uncompleted contracts not billed at the end of the current period |  |  | 3,630 |
Closing Balance at April 30, 2020 |  | $ | 2,900 |
Costs and gross profit recognized during the period for uncompleted contracts from the prior period |  |  | (1,743 | )
Costs and deferred gross profit incurred on uncompleted contracts not billed at the end of the current period |  |  | 593 |
Closing Balance at July 31, 2020 |  | $ | 1,750 |
Costs and gross profit recognized during the period for uncompleted contracts from the prior period |  |  | (930 | )
Costs and deferred gross profit incurred on uncompleted contracts not billed at the end of the current period |  |  | 542 |
Closing Balance at October 31, 2020 |  | $ | 1,362 |
|  | Contract Liabilities |
Balance January 31, 2019 |  | $ | 1,569 |
Revenue recognized during the period for uncompleted contracts from the prior period |  |  | (444 | )
New contracts entered into that are uncompleted at the end of the current period |  |  | 721 |
Closing Balance at April 30, 2019 |  | $ | 1,846 |
Revenue recognized during the period for uncompleted contracts from the prior period |  |  | (1,250 | )
New contracts entered into that are uncompleted at the end of the current period |  |  | 545 |
Closing Balance at July 31, 2019 |  | $ | 1,141 |
Revenue recognized during the period for uncompleted contracts from the prior period |  |  | (774 | )
New contracts entered into that are uncompleted at the end of the current period |  |  | 984 |
Closing Balance at October 31, 2019 |  | $ | 1,351 |
Balance January 31, 2020 |  | $ | 1,173 |
Revenue recognized during the period for uncompleted contracts from the prior period |  |  | (17 | )
New contracts entered into that are uncompleted at the end of the current period |  |  | (95 | )
Closing Balance at April 30, 2020 |  | $ | 1,061 |
Revenue recognized during the period for uncompleted contracts from the prior period |  |  | 631 |
New contracts entered into that are uncompleted at the end of the current period |  |  | (925 | )
Closing Balance at July 31, 2020 |  | $ | 767 |
Revenue recognized during the period for uncompleted contracts from the prior period |  |  | 104 |
New contracts entered into that are uncompleted at the end of the current period |  |  | (199 | )
Closing Balance at October 31, 2020 |  | $ | 672 |

X
- Definition Tabular disclosure of receivable, contract asset, and contract liability from contract with customer. Includes, but is not limited to, change in contract asset and contract liability. + References Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 10 -URI http://asc.fasb.org/extlink&oid=121604090&loc=SL49130551-203045 + Details
Name: | us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | nonnum:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- Definition Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor. + References Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 5 -URI http://asc.fasb.org/extlink&oid=121604090&loc=SL49130545-203045 + Details
Name: | us-gaap_DisaggregationOfRevenueTableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | nonnum:textBlockItemType
Balance Type: | na
Period Type: | duration

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