v3.26.1
Note 4 - Revenue Recognition - Reconciliation of the Cost in Excess of Billings (Details) - USD ($)
$ in Thousands
Apr. 30, 2026
Jan. 31, 2026
Costs incurred on uncompleted contracts $ 19,438 $ 17,562
Estimated earnings 12,759 12,721
Earned revenue 32,197 30,283
Less billings to date 28,958 27,784
Costs in excess of billings, net 3,239 2,499
Contract assets: Costs and estimated earnings in excess of billings on uncompleted contracts 4,117 4,652
Contract liabilities: Billings in excess of costs and estimated earnings on uncompleted contracts (878) (2,153)
Costs in excess of billings, net $ 3,239 $ 2,499