<TABLE> <S> <C>
<PAGE>
<ARTICLE> 5
<LEGEND>
THIS SCHEDULE CONTAINS SUMMARY FINANCIAL INFORMATION EXTRACTED FROM CONSOLIDATED
BALANCE SHEET AS OF APRIL 30, 2000 AND CONSOLIDATED STATEMENT OF OPERATIONS FOR
THE SIX MONTHS ENDED APRIL 30, 2000 AND IS QUALIFIED IN ITS ENTIRETY BY
REFERENCE TO SUCH FINANCIAL STATEMENTS.
</LEGEND>
<MULTIPLIER> 1,000
<S> <C>
<PERIOD-TYPE> 6-MOS
<FISCAL-YEAR-END> OCT-29-2000
<PERIOD-START> NOV-01-1999
<PERIOD-END> APR-30-2000
<CASH> 274
<SECURITIES> 0
<RECEIVABLES> 10,368
<ALLOWANCES> 0
<INVENTORY> 8,243
<CURRENT-ASSETS> 19,965
<PP&E> 22,983
<DEPRECIATION> 12,363
<TOTAL-ASSETS> 35,327
<CURRENT-LIABILITIES> 8,396
<BONDS> 0
0
0
<COMMON> 242
<OTHER-SE> 22,209
<TOTAL-LIABILITY-AND-EQUITY> 35,327
<SALES> 34,863
<TOTAL-REVENUES> 34,863
<CGS> 24,830
<TOTAL-COSTS> 24,830
<OTHER-EXPENSES> 0
<LOSS-PROVISION> 0
<INTEREST-EXPENSE> 414
<INCOME-PRETAX> 3,776
<INCOME-TAX> 0
<INCOME-CONTINUING> 3,776
<DISCONTINUED> 0
<EXTRAORDINARY> 0
<CHANGES> 0
<NET-INCOME> 3,776
<EPS-BASIC> 0.57
<EPS-DILUTED> 0.53
</TABLE>