v3.26.1
Condensed Consolidated Balance Sheets (Current Period Unaudited) - USD ($)
$ in Thousands
Jul. 31, 2026
Jan. 31, 2026
Current assets    
Cash and cash equivalents $ 31,778 $ 18,720
Restricted cash 2,973 3,575
Trade accounts receivable, less allowance for credit losses of $1,562 at July 31, 2026 and $1,571 at January 31, 2026 48,787 66,023
Inventories 19,070 18,115
Prepaid expenses 6,029 5,942
Unbilled accounts receivable 37,866 28,814
Costs and estimated earnings in excess of billings on uncompleted contracts 6,332 4,652
Other current assets 716 893
Total current assets 153,551 146,734
Long-term assets    
Property, Plant, and Equipment, after Accumulated Depreciation, Depletion, and Amortization 45,670 44,116
Operating lease right-of-use asset 15,482 13,054
Deferred tax assets 6,917 5,954
Goodwill 2,126 2,188
Other long-term assets 8,884 5,440
Total long-term assets 79,079 70,752
Total assets 232,630 217,486
Liabilities, Current [Abstract]    
Trade accounts payable 35,662 24,541
Accrued compensation and payroll taxes 1,360 1,449
Commissions and management incentives payable 5,341 6,580
Long-term Debt, Current Maturities, Excluding North American Revolving Line 6,086 19,843
Customers' deposits 8,135 11,853
Operating lease liability short-term 2,259 2,196
Other accrued liabilities 7,822 7,235
Billings in excess of costs and estimated earnings on uncompleted contracts 614 2,153
Income taxes payable 2,848 3,939
Total current liabilities 70,127 79,789
Liabilities, Noncurrent [Abstract]    
Long-Term Debt, Excluding Current Maturities 29,975 12,696
Deferred compensation liabilities 1,998 1,781
Deferred tax liabilities 2,110 1,816
Operating lease liability long-term 14,723 12,125
Other long-term liabilities 2,694 2,978
Total long-term liabilities 51,500 31,396
Commitments and contingencies
Non-controlling interest 17,513 15,663
Stockholders' equity    
Common stock, $.01 par value, authorized 50,000 shares; 8,195 issued and outstanding at July 31, 2026 and 8,122 at January 31, 2026 82 81
Additional paid-in capital 60,717 61,097
Retained earnings 41,487 37,139
Accumulated other comprehensive loss (8,796) (7,679)
Total stockholders' equity 93,490 90,638
Total liabilities and stockholders' equity $ 232,630 $ 217,486