home *** CD-ROM | disk | FTP | other *** search
/ Oakland CPM Archive / oakcpm.iso / sigm / vol110 / duprec.acg < prev    next >
Encoding:
Text File  |  1984-04-29  |  2.4 KB  |  121 lines

  1. * duprec.cmd 02/12/83 sml
  2. * this will allow the user to process a duplicate record
  3.  
  4. * get the first duplicate ' s data to display
  5. SKIP -1
  6. STORE lastname TO lastname1
  7. STORE fname TO fname1
  8. STORE company1 TO company11
  9. STORE address TO address1
  10. STORE phone TO phone1
  11. STORE ophone TO ophone1
  12. STORE UPDATE TO UPDATE1 
  13.  
  14. * find out if this record is marked for deletion
  15. * DO delcheck.acg
  16. IF *
  17.   STORE 'Deleted' TO deleted1
  18. ELSE
  19.   STORE ' ' TO deleted1
  20. ENDIF * 
  21.  
  22. * return to the second duplicate record and get its data
  23. SKIP
  24. STORE lastname TO lastname2
  25. STORE fname TO fname2
  26. STORE company1 TO company12
  27. STORE address TO address2
  28. STORE phone TO phone2
  29. STORE ophone TO ophone2
  30. STORE UPDATE TO UPDATE2
  31.  
  32. * find out if this record is marked for deletion
  33. * DO delcheck.acg
  34. IF *
  35.   STORE 'Deleted' TO deleted2
  36. ELSE
  37.   STORE ' ' TO deleted2
  38. ENDIF * 
  39.  
  40. * set up the loop
  41. STORE t TO more
  42. DO WHILE more
  43.   
  44.   * set up the screen format and variables
  45.   SET FORMAT TO two-rec
  46.   STORE '<C>ontinue, <D>elete/Recall, <E>dit, <P>rint, <Q>uit' TO prompt
  47.   STORE 'Records with duplicate last names' TO mode
  48.   STORE '?' TO command
  49.       STORE '?' TO RECORD
  50.   
  51.   * show both records and find out what to do next
  52.   READ
  53.   
  54.   * move to the record to be processed
  55.   IF RECORD = 'A' 
  56.     SKIP -1
  57.   ENDIF RECORD = 'A'  
  58.   
  59.   *process the record
  60.   DO CASE
  61.       
  62.     CASE command = 'C' .OR. command = 'Q' 
  63.       * set up the loop to exit
  64.       STORE f TO more
  65.       
  66.     CASE command = 'D' 
  67.       * delete.cmd 02/08/83
  68.  
  69.         IF *
  70.            RECALL
  71.         ELSE
  72.            DELETE
  73.         ENDIF * 
  74.  
  75.       IF RECORD = 'A' 
  76.         IF deleted1 = 'Deleted' 
  77.           STORE ' ' TO deleted1
  78.         ELSE
  79.           STORE 'Deleted' TO deleted1
  80.         ENDIF deleted1 = 'Deleted'  
  81.       ENDIF RECORD = 'A'  
  82.       IF RECORD <> 'A' 
  83.         IF deleted2 = 'Deleted' 
  84.           STORE ' ' TO deleted2
  85.         ELSE
  86.           STORE 'Deleted' TO deleted2
  87.         ENDIF deleted2 = 'Deleted'  
  88.       ENDIF RECORD <> 'A'  
  89.       
  90.     CASE command = 'E' 
  91.       SAVE TO temp2
  92.       RELEASE ALL
  93.       RESTORE FROM temp1
  94.       RECALL
  95.       DO EDIT.acg
  96.       SAVE TO temp1
  97.       RELEASE ALL
  98.       RESTORE FROM temp2
  99.       
  100.     CASE command = 'P' 
  101.       DO PRINT.acg
  102.       
  103.   ENDCASE 
  104.   
  105.   * move back to correct record
  106.   IF RECORD = 'A' 
  107.     SKIP
  108.   ENDIF RECORD = 'A'  
  109.   
  110.   * loop back again
  111. ENDDO WHILE more 
  112.  
  113. * if more duplicates are to be found
  114. * set up the loop to continue in dupcheck
  115. IF command = 'C' 
  116.   STORE t TO more
  117. ENDIF command = 'C'  
  118.  
  119.  
  120.  
  121.