<ARTICLE> 5 <PERIOD-TYPE> 6-MOS <FISCAL-YEAR-END> APR-30-1998 <PERIOD-END> OCT-31-1997 <CASH> 7,395,644 <SECURITIES> 0 <RECEIVABLES> 10,471,276 <ALLOWANCES> 647,000 <INVENTORY> 3,242,908 <CURRENT-ASSETS> 21,028,379 <PP&E> 8,720,959 <DEPRECIATION> 5,711,832 <TOTAL-ASSETS> 24,044,886 <CURRENT-LIABILITIES> 6,177,171 <BONDS> 0 <PREFERRED-MANDATORY> 0 <PREFERRED> 0 <COMMON> 2,965,605 <OTHER-SE> 13,889,110 <TOTAL-LIABILITY-AND-EQUITY> 24,044,886 <SALES> 38,215,027 <TOTAL-REVENUES> 38,215,027 <CGS> 30,037,758 <TOTAL-COSTS> 30,037,758 <OTHER-EXPENSES> 524,967 <LOSS-PROVISION> 172,992 <INTEREST-EXPENSE> 0 <INCOME-PRETAX> 2,605,128 <INCOME-TAX> 991,000 <INCOME-CONTINUING> 1,614,128 <DISCONTINUED> 0 <EXTRAORDINARY> 0 <CHANGES> 0 <NET-INCOME> 1,614,128 <EPS-PRIMARY> .51 <EPS-DILUTED> .51