home *** CD-ROM | disk | FTP | other *** search
/ Software Du Jour / SoftwareDuJour.iso / BUSINESS / DBASE / DB2IOS.ARC / SEARCH1.SIG < prev    next >
Encoding:
Text File  |  1983-01-04  |  19.6 KB  |  516 lines

  1. NOTE - SEARCH1.SIG - COMPREHENSIVE ORDERS SEARCH COMMAND FILE
  2. NOTE -
  3. NOTE - THIS COMMAND FILE WAS CREATED USING - fastBASE (TM)   (VERSION 1.3)
  4. NOTE -      "THE dBASE II COMMAND FILE GENERATOR" DEVELOPED BY:
  5. NOTE -              FOURCOLOR DATA SYSTEMS INC.
  6. NOTE -              7011 MALABAR STREET
  7. NOTE -              DAYTON, OHIO 45459
  8. NOTE -              PHONE: (513) 433-3780
  9. NOTE -
  10. NOTE - SEARCH BY INDEX         - OPERATOR CAN SEARCH DATABASE IN ORDER
  11. NOTE -                               OF ANY INDEX FILE.
  12. NOTE -
  13. NOTE - INDEX FILES             - INDICES ARE OF THE FOLLOWING FORM:
  14. NOTE -                               A. CHARACTER FIELDS ARE MADE UPPERCASE.
  15. NOTE -                                  (THIS WILL ALLOW THE FIND COMMAND TO
  16. NOTE -                                   IGNORE UPPER AND LOWER CASE
  17. NOTE -                                   DISTINCTIONS.)
  18. NOTE -                               B. ALL NUMERIC FIELDS ARE CONVERTED TO
  19. NOTE -                                  CHARACTER STRINGS.
  20. NOTE -                               C. EXAMPLE:
  21. NOTE -                                      IF AN INDEX CONSISTS OF A NUMERIC
  22. NOTE -                                      FIELD - FIELDNUM (N,8,2) AND A
  23. NOTE -                                      CHARACTER FIELD - FIELDCHAR, THEN
  24. NOTE -                                      fastBASE WILL DEFINE THE INDEX AS
  25. NOTE -                                      STR(FIELDNUM,8,2) + !(FIELDCHAR).
  26. NOTE -
  27. NOTE - SEARCH BY PART OF FIELD - OPERATOR CAN SELECT ANY CHARACTER
  28. NOTE -                               FIELD IN THE DATABASE. THEN OPERATOR
  29. NOTE -                               CAN ENTER ANY POSSIBLE SUB-STRING.
  30. NOTE -                               SEARCH WILL THEN DISPLAY EVERY
  31. NOTE -                               RECORD WITH THIS SUB-STRING IN ANY
  32. NOTE -                               PART OF THE SELECTED FIELD.
  33. NOTE -
  34. NOTE - IF ANY RECORD IS SELECTED BY OPERATOR, THEN THIS SEARCH ROUTINE
  35. NOTE -     WILL RETURN TO THE CALLING COMMAND FILE THE dBASE II RECORD
  36. NOTE -     NUMBER IN THE MEMORY VARIABLE 'RECNO' OTHERWISE 'RECNO'
  37. NOTE -     WILL HAVE THE VALUE ZERO.
  38. NOTE -
  39. NOTE - WHEN CALLING THIS SEARCH ROUTINE, A MEMORY VARIABLE WITH THE
  40. NOTE -     NAME 'DR' MUST EXIST. FURTHER THIS MEMORY VARIABLE MUST EITHER
  41. NOTE -     HAVE THE VALUE ' ' OR 'X:' WHERE X IS ANY ALPHABETIC
  42. NOTE -     CHARACTER CORRESPONDING TO A VALID DISK DRIVE (EG. A:).
  43. NOTE -
  44. STORE 'Detailed Search' TO mode
  45. STORE CHR(PEEK(063))TO dr
  46. ERASE
  47. @ 1,20 SAY '*** SEARCH FOR ORDERS ***'
  48. @ 3,20 SAY 'SEARCH METHOD:'
  49. @ 5,25 SAY '1. SEARCH BY INDEX'
  50. @ 6,25 SAY '2. SEARCH PART OF FIELD'
  51. STORE ' ' TO EMETH
  52. DO WHILE EMETH <> '1' .AND. EMETH <> '2'
  53.     @ 8,25 SAY '   METHOD? (1,2) ' GET EMETH
  54.     READ
  55. ENDDO
  56. IF EMETH = '1'
  57.     STORE '                    ' TO KEYVAR1
  58.     @ 10,20 SAY 'ENTER LASTNAME ' GET KEYVAR1
  59.     READ
  60.     STORE KEYVAR1 TO FINDSTRING
  61.     RELEASE KEYVAR1
  62.     USE &DR.:sig/m.DBF INDEX &DR.:ORDERS.NDX
  63.     NOTE -
  64.     NOTE - DETERMINE RECORD NUMBER OF FIRST AND LAST RECORD IN DATABASE
  65.     NOTE -
  66.     IF # > 0
  67.         STORE # TO FIRSTREC
  68.         GOTO BOTTOM
  69.         STORE # TO LASTREC
  70.         NOTE -
  71.         NOTE - TRIM RIGHT HAND SPACES AND ZEROES FROM FINDSTRING
  72.         NOTE - ALSO SET FINDSTRING TO UPPER CASE
  73.         NOTE -
  74.         STORE TRIM(!(FINDSTRING)) TO FINDSTRING
  75.         STORE T TO SHRINK
  76.         DO WHILE SHRINK
  77.             STORE F TO SHRINK
  78.             STORE T TO TRIMZERO
  79.             DO WHILE TRIMZERO .AND. LEN(FINDSTRING) > 1
  80.                 STORE $(FINDSTRING,LEN(FINDSTRING),1) TO LASTCHAR
  81.                 IF LASTCHAR = '0' .OR. LASTCHAR = ' '
  82.                     STORE $(FINDSTRING,1,LEN(FINDSTRING)-1) TO FINDSTRING
  83.                     LOOP
  84.                 ENDIF
  85.                 STORE F TO TRIMZERO
  86.             ENDDO
  87.             FIND '&FINDSTRING'
  88.             IF # <> 0
  89.                 STORE # TO FINDRECNO
  90.                 LOOP
  91.             ENDIF
  92.             STORE FINDSTRING + '   ' TO FINDSTRING
  93.             NOTE -
  94.             NOTE - USE FIRST 3 CHARACTERS OF FINDSTRING FOR 'FIND' COMMAND
  95.             NOTE -
  96.             STORE $(FINDSTRING,1,3) TO FINDSTRING
  97.             FIND '&FINDSTRING'
  98.             IF # <> 0
  99.                 STORE # TO FINDRECNO
  100.                 LOOP
  101.             ENDIF
  102.             STORE FINDSTRING + ' ' TO FINDSTRING
  103.             STORE $(FINDSTRING,1,1) TO FINDSTRING
  104.             FIND '&FINDSTRING'
  105.             IF # <> 0
  106.                 STORE # TO FINDRECNO
  107.                 LOOP
  108.             ENDIF
  109.             GOTO TOP
  110.             STORE # TO FINDRECNO
  111.         ENDDO
  112.         STORE FINDRECNO TO STARTREC
  113.         RELEASE FINDRECNO, FINDSTRING, SHRINK, LASTCHAR, TRIMZERO
  114.         STORE T TO FILESRCH
  115.         STORE 'F' TO EOPTION
  116.         DO WHILE FILESRCH
  117.             NOTE -
  118.             NOTE - IF DATABASE HAS AT LEAST 10 RECORDS THEN SEARCH CAN OPERATE
  119.             NOTE -     IN 'FAST' MODE. IN THIS MODE, 10 RECORDS AT A TIME ARE
  120.             NOTE -     DISPLAYED ON THE CRT.
  121.             NOTE -
  122.             IF EOPTION = 'F'
  123.                 STORE 'FAST' TO SRCHMODE
  124.                 GOTO TOP
  125.                 SKIP 9
  126.                 IF # = LASTREC
  127.                     STORE 'D' TO EOPTION
  128.                 ENDIF
  129.                 GOTO STARTREC
  130.             ENDIF
  131.             IF EOPTION = 'D'
  132.                 STORE 'DETAIL' TO SRCHMODE
  133.             ENDIF
  134.             IF EOPTION = 'R'
  135.                 STORE 0 TO RECNO
  136.                 STORE F TO FILESRCH
  137.                 LOOP
  138.             ENDIF
  139.             IF SRCHMODE = 'FAST'
  140.                 STORE ' ' TO EOPTION
  141.                 STORE T TO FASTSRCH
  142.                 DO WHILE FASTSRCH
  143.                     ERASE
  144.                     STORE 1 TO SEARCHLINE
  145.                     STORE # TO RECNO
  146.                     STORE T TO CHECKPOS1
  147.                     DO WHILE CHECKPOS1
  148.                         IF RECNO = LASTREC
  149.                             STORE 10 TO SEARCHLINE
  150.                             SKIP - 9
  151.                             STORE F TO CHECKPOS1
  152.                             LOOP
  153.                         ENDIF
  154.                         SKIP 8
  155.                         IF # <> LASTREC
  156.                             SKIP - 8
  157.                             STORE F TO CHECKPOS1
  158.                             LOOP
  159.                         ENDIF
  160.                         IF # = LASTREC
  161.                             DO WHILE RECNO <> #
  162.                                 SKIP - 1
  163.                             ENDDO
  164.                             STORE 10 TO SEARCHLINE
  165.                             STORE T TO CHECKPOS2
  166.                             DO WHILE CHECKPOS2
  167.                                 STORE SEARCHLINE - 1 TO SEARCHLINE
  168.                                 SKIP 1
  169.                                 IF # = LASTREC
  170.                                     STORE F TO CHECKPOS2
  171.                                     LOOP
  172.                                 ENDIF
  173.                                 IF SEARCHLINE < 0
  174.                                     STORE F TO CHECKPOS2
  175.                                     LOOP
  176.                                 ENDIF
  177.                             ENDDO
  178.                             SKIP - 9
  179.                             STORE F TO CHECKPOS1
  180.                         ENDIF
  181.                     ENDDO
  182.                     STORE # TO STARTREC
  183.                     NOTE -
  184.                     NOTE - USE THE SEARCH AND LIST REPORT CREATED BY fastBASE, TO DISPLAY
  185.                     NOTE -     10 RECORDS ON THE CRT AT ONE TIME.
  186.                     NOTE -
  187.                     REPORT NEXT 10 FORM &DR.:SIG/M.FRM PLAIN
  188.                     @ 23,0 SAY 'N (NEXT), P (PREVIOUS), J (JUMP), D (DISPLAY),  R (RETURN).'
  189.                     GOTO STARTREC
  190.                     IF EOPTION = 'P'
  191.                         STORE 10 TO SEARCHLINE
  192.                         SKIP 9
  193.                         DO WHILE # <> PREVREC .AND. SEARCHLINE > 1
  194.                             STORE SEARCHLINE - 1 TO SEARCHLINE
  195.                             SKIP - 1
  196.                         ENDDO
  197.                     ENDIF
  198.                     IF EOPTION <> 'P'
  199.                         IF SEARCHLINE <> 1
  200.                             STORE SEARCHLINE - 1 TO SEARCHLINE
  201.                             SKIP SEARCHLINE
  202.                             STORE SEARCHLINE + 1 TO SEARCHLINE
  203.                         ENDIF
  204.                     ENDIF
  205.                     SET COLON OFF
  206.                     DO WHILE SEARCHLINE > 0 .AND. SEARCHLINE < 11
  207.                         STORE ' ' TO EOPTION
  208.                         DO WHILE EOPTION <> 'N' .AND. EOPTION <> 'P' .AND. EOPTION <> 'J' .AND. EOPTION <> 'D' .AND.  EOPTION <> 'R'
  209.                             @ (2 * SEARCHLINE) + 1, 0 GET EOPTION
  210.                             READ
  211.                             STORE !(EOPTION) TO EOPTION
  212.                             IF EOPTION = 'N' .AND. # = LASTREC
  213.                                 STORE ' ' TO EOPTION
  214.                             ENDIF
  215.                             IF EOPTION = 'P' .AND. # = FIRSTREC
  216.                                 STORE ' ' TO EOPTION
  217.                             ENDIF
  218.                         ENDDO
  219.                         @ (2 * SEARCHLINE) + 1, 0 SAY ' '
  220.                         IF EOPTION = 'N'
  221.                             STORE SEARCHLINE + 1 TO SEARCHLINE
  222.                             SKIP 1
  223.                             LOOP
  224.                         ENDIF
  225.                         IF EOPTION = 'P'
  226.                             STORE SEARCHLINE - 1 TO SEARCHLINE
  227.                             SKIP - 1
  228.                             STORE # TO PREVREC
  229.                             LOOP
  230.                         ENDIF
  231.                         STORE 0 TO SEARCHLINE
  232.                     ENDDO
  233.                     IF EOPTION = 'P'
  234.                         SKIP - 9
  235.                     ENDIF
  236.                     IF EOPTION = 'J'
  237.                         SET COLON ON
  238.                         STORE 0 TO INCREMENT
  239.                         @ 23,0 SAY '               ENTER JUMP INCREMENT (+ OR -)                                 '
  240.                         @ 23,45 GET INCREMENT
  241.                         READ
  242.                         SET COLON OFF
  243.                         IF INCREMENT > 0
  244.                             SKIP INCREMENT
  245.                         ENDIF
  246.                         IF INCREMENT < 0
  247.                             STORE 0 - INCREMENT TO INCREMENT
  248.                             SKIP - INCREMENT
  249.                         ENDIF
  250.                     ENDIF
  251.                     IF EOPTION = 'D' .OR.  EOPTION = 'R'
  252.                         STORE F TO FASTSRCH
  253.                     ENDIF
  254.                 ENDDO
  255.                 RELEASE FASTSRCH, SEARCHLINE, PREVREC, CHECKPOS1, CHECKPOS2
  256.                 SET COLON ON
  257.             ENDIF
  258.             IF SRCHMODE = 'DETAIL'
  259.                 STORE T TO DETLSRCH
  260.                 DO WHILE DETLSRCH
  261.                     ERASE
  262.                     @ 1,25 SAY mode
  263.                     @ 2,0  SAY '+---------------------------------------'
  264.                     @ 2,39 SAY '--------------------------------------+'
  265.                     @ 4,5 SAY 'ORDER NUMBER                          Complete'
  266.                     @ 5,8 SAY 'Last name                             First'
  267.                     @ 6,10 SAY 'Address'
  268.                     @ 7,9 SAY '(line 2)'
  269.                     @ 8,9 SAY '(line 3)'
  270.                     @ 9,13 SAY 'City                             State              ZIP'
  271.                     @ 11,2 SAY 'Volumes'
  272.                     @ 13,3 SAY 'Amount                                     Enter             Ship'
  273.                     @ 14,2 SAY 'Remarks'
  274.                     @ 15,2 SAY 'Remarks'
  275.                     @ 17,0 SAY 'Backorder'
  276.                     @ 18,44 SAY 'Catalog'
  277.                     @ 19,2 SAY 'Shipped                 Shipped                             Update'
  278.                     @ 20,0 SAY '+--------------------------------------'
  279.                     @ 20,39 SAY '--------------------------------------+'
  280.                     @ 4,18 GET ORDER
  281.                     @ 5,18 GET LNAME
  282.                     @ 5,52 GET FNAME
  283.                     @ 6,18 GET ADDR1
  284.                     @ 7,18 GET ADDR2
  285.                     @ 8,18 GET ADDR3
  286.                     @ 9,18 GET CITY
  287.                     @ 9,52 GET STATE
  288.                     @ 9,70 GET ZIP
  289.                     @ 11,10 GET VOL1
  290.                     @ 13,10 GET AMT
  291.                     @ 13,52 GET ENTERED
  292.                     @ 13,69 GET SHIPPED
  293.                     @ 14,10 GET REM1
  294.                     @ 15,10 GET REM2
  295.                     @ 17,10 GET BO
  296.                     @ 18,53 GET CATALOG
  297.                     @ 19,10 GET BO:SHIP
  298.                     @ 19,34 GET BO2:SHIP
  299.                     @ 19,69 GET DAYU
  300.                     @ 4,52 GET COMP
  301.                     CLEAR GETS
  302.                     @ 23,0 SAY 'N (NEXT), P (PREVIOUS), J (JUMP), F (FAST SEARCH), R (RETURN)'
  303.                     STORE ' ' TO EOPTION
  304.                     DO WHILE EOPTION <> 'N' .AND. EOPTION <> 'P' .AND. EOPTION <> 'J' .AND. EOPTION <> 'F' .AND. EOPTION <>  'R'
  305.                         @ 23,74 GET EOPTION
  306.                         READ
  307.                         STORE !(EOPTION) TO EOPTION
  308.                         IF EOPTION = 'N' .AND. # = LASTREC
  309.                             STORE ' ' TO EOPTION
  310.                         ENDIF
  311.                         IF EOPTION = 'P' .AND. # = FIRSTREC
  312.                             STORE ' ' TO EOPTION
  313.                         ENDIF
  314.                     ENDDO
  315.                     IF EOPTION = 'N'
  316.                         IF # = LASTREC
  317.                             LOOP
  318.                         ENDIF
  319.                         SKIP 1
  320.                     ENDIF
  321.                     IF EOPTION = 'P'
  322.                         SKIP - 1
  323.                     ENDIF
  324.                     IF EOPTION = 'J'
  325.                         STORE 0 TO INCREMENT
  326.                         @ 23,0 SAY '               ENTER JUMP INCREMENT (+ OR -)                                 '
  327.                         @ 23,45 GET INCREMENT
  328.                         READ
  329.                         IF (# = LASTREC .AND. INCREMENT > 0) .OR. (INCREMENT = 0)
  330.                             LOOP
  331.                         ENDIF
  332.                         IF INCREMENT > 0
  333.                             SKIP INCREMENT
  334.                         ENDIF
  335.                         IF INCREMENT < 0
  336.                             STORE 0 - INCREMENT TO INCREMENT
  337.                             SKIP - INCREMENT
  338.                         ENDIF
  339.                     ENDIF
  340.                     IF EOPTION = 'F' .OR. EOPTION =  'R'
  341.                         STORE F TO DETLSRCH
  342.                         STORE # TO STARTREC
  343.                     ENDIF
  344.                 ENDDO
  345.                 RELEASE DETLSRCH
  346.             ENDIF
  347.             RELEASE SRCHMODE
  348.         ENDDO
  349.     ENDIF
  350. ENDIF
  351. NOTE -
  352. NOTE - SEARCH FOR SUB-STRING THAT IS PART OF A SELECTED FIELD.
  353. NOTE -
  354. IF EMETH = '2'
  355.     SET INDEX TO
  356.     ERASE
  357.     STORE 'Detailed Search' TO mode
  358.     @ 10,20 SAY 'SELECT FIELD NUMBER '
  359.     @ 12,20 SAY 'ENTER SEARCH DATA '
  360.     @ 14,0 SAY ' 1. ORDER NO.   2. COMPLETED   3. LASTNAME    4. FIRST NAME  5.ADDRESS'
  361.     @ 15,0 SAY ' 6. ADDR-LINE2  7. ADDR-LINE3  8. CITY        9. STATE      10. ZIP' 
  362.     @ 16,0 SAY '11. VOLUMES    12. ENTERED    13. SHIPPED    14. REMARKS    15. REMARKS-2'
  363.     @ 17,0 SAY '16. BACKORDER  17. SHIPPED    18. SHIPPED    19. UPDATE     '
  364.     STORE '  ' TO EVAR
  365.     DO WHILE VAL(EVAR) < 1 .OR. VAL(EVAR) > 23
  366.         @ 10,20 SAY 'SELECT FIELD NUMBER ' GET EVAR PICTURE '99'
  367.         READ
  368.     ENDDO
  369.     STORE '                              ' TO EPART
  370.     @ 12,20 SAY 'ENTER SEARCH DATA ' GET EPART
  371.     READ
  372.     IF VAL(EVAR) = 1
  373.         STORE 'ORDER' TO PARTFIELD
  374.     ENDIF
  375.     IF VAL(EVAR) = 2
  376.         STORE 'COMP' TO PARTFIELD
  377.     ENDIF
  378.     IF VAL(EVAR) = 3
  379.         STORE 'LNAME' TO PARTFIELD
  380.     ENDIF
  381.     IF VAL(EVAR) = 4
  382.         STORE 'FNAME' TO PARTFIELD
  383.     ENDIF
  384.     IF VAL(EVAR) = 5
  385.         STORE 'ADDR1' TO PARTFIELD
  386.     ENDIF
  387.     IF VAL(EVAR) = 6
  388.         STORE 'ADDR2' TO PARTFIELD
  389.     ENDIF
  390.     IF VAL(EVAR) = 7
  391.         STORE 'ADDR3' TO PARTFIELD
  392.     ENDIF
  393.     IF VAL(EVAR) = 8 
  394.         STORE 'CITY' TO PARTFIELD
  395.     ENDIF
  396.     IF VAL(EVAR) = 9 
  397.         STORE 'STATE' TO PARTFIELD
  398.     ENDIF
  399.     IF VAL(EVAR) = 10
  400.         STORE 'ZIP' TO PARTFIELD
  401.     ENDIF
  402.     IF VAL(EVAR) = 11
  403.         STORE 'VOL1' TO PARTFIELD
  404.     ENDIF
  405.     IF VAL(EVAR) = 12
  406.         STORE 'ENTERED' TO PARTFIELD
  407.     ENDIF
  408.     IF VAL(EVAR) = 13
  409.         STORE 'SHIPPED' TO PARTFIELD
  410.     ENDIF
  411.     IF VAL(EVAR) = 14
  412.         STORE 'REM1' TO PARTFIELD
  413.     ENDIF
  414.     IF VAL(EVAR) = 15
  415.         STORE 'REM2' TO PARTFIELD
  416.     ENDIF
  417.     IF VAL(EVAR) = 16
  418.         STORE 'BO' TO PARTFIELD
  419.     ENDIF
  420.     IF VAL(EVAR) = 17
  421.         STORE 'BO:SHIP' TO PARTFIELD
  422.     ENDIF
  423.     IF VAL(EVAR) = 18
  424.         STORE 'BO2:SHIP' TO PARTFIELD
  425.     ENDIF
  426.     IF VAL(EVAR) = 19
  427.         STORE 'DAYU' TO PARTFIELD
  428.     ENDIF
  429.     USE &DR.:sig/m.DBF
  430.     STORE TRIM(EPART) TO EPART
  431.     RELEASE EVAR
  432.     GOTO BOTTOM
  433.     STORE # TO LASTREC
  434.     GOTO TOP
  435.     STORE 0 TO RECNO
  436.     STORE T TO PARTSRCH
  437.     STORE ' ' TO EOPTION
  438.     STORE T TO FIRSTLOOP
  439.     DO WHILE PARTSRCH
  440.         IF EOPTION = 'R'
  441.             STORE 0 TO RECNO
  442.             STORE F TO PARTSRCH
  443.             LOOP
  444.         ENDIF
  445.         IF RECNO = LASTREC
  446.             STORE 'R' TO EOPTION
  447.             LOOP
  448.         ENDIF
  449.         IF FIRSTLOOP
  450.             LOCATE FOR !(EPART) $ !(&PARTFIELD)
  451.         ENDIF
  452.         IF .NOT.FIRSTLOOP
  453.             CONTINUE
  454.         ENDIF
  455.         STORE F TO FIRSTLOOP
  456.         STORE # TO RECNO
  457.         IF # = LASTREC .AND.(.NOT. EPART $ &PARTFIELD)
  458.             STORE 'R' TO EOPTION
  459.             LOOP
  460.         ENDIF
  461.         ERASE
  462.         @ 1,25 SAY mode
  463.         @ 2,0  SAY '+---------------------------------------'
  464.         @ 2,39 SAY '--------------------------------------+'
  465.         @ 4,5 SAY 'ORDER NUMBER                          Complete'
  466.         @ 5,8 SAY 'Last name                             First'
  467.         @ 6,10 SAY 'Address'
  468.         @ 7,9 SAY '(line 2)'
  469.         @ 8,9 SAY '(line 3)'
  470.         @ 9,13 SAY 'City                             State              ZIP'
  471.         @ 11,2 SAY 'Volumes'
  472.         @ 13,3 SAY 'Amount                                     Enter             Ship'
  473.         @ 14,2 SAY 'Remarks'
  474.         @ 15,2 SAY 'Remarks'
  475.         @ 17,0 SAY 'Backorder'
  476.         @ 18,44 SAY 'Catalog'
  477.         @ 19,2 SAY 'Shipped                 Shipped                             Update'
  478.         @ 20,0 SAY '+--------------------------------------'
  479.         @ 20,39 SAY '--------------------------------------+'
  480.         @ 4,18 GET ORDER
  481.         @ 5,18 GET LNAME
  482.         @ 5,52 GET FNAME
  483.         @ 6,18 GET ADDR1
  484.         @ 7,18 GET ADDR2
  485.         @ 8,18 GET ADDR3
  486.         @ 9,18 GET CITY
  487.         @ 9,52 GET STATE
  488.         @ 9,70 GET ZIP
  489.         @ 11,10 GET VOL1
  490.         @ 13,10 GET AMT
  491.         @ 13,52 GET ENTERED
  492.         @ 13,69 GET SHIPPED
  493.         @ 14,10 GET REM1
  494.         @ 15,10 GET REM2
  495.         @ 17,10 GET BO
  496.         @ 18,53 GET CATALOG
  497.         @ 19,10 GET BO:SHIP
  498.         @ 19,34 GET BO2:SHIP
  499.         @ 19,69 GET DAYU
  500.         @ 4,52 GET COMP
  501.         CLEAR GETS
  502.         STORE ' ' TO EOPTION
  503.         @ 22,12 SAY 'N (NEXT), R (RETURN)'
  504.         DO WHILE EOPTION <> 'N' .AND. EOPTION <> 'R'
  505.             @ 22,37 GET EOPTION picture '!'
  506.             READ
  507.         ENDDO
  508.     ENDDO
  509.     RELEASE PARTSRCH
  510. ENDIF
  511. RELEASE EMETH, EOPTION, EPART, FILESRCH, LASTREC, FIRSTREC, STARTREC
  512. RELEASE PARTFIELD, NUMREC, FIRSTLOOP, EKEYOPT, INCREMENT, MODE
  513. SET INDEX TO &dr.:orders
  514. STORE t TO FIRST
  515. RETURN
  516.