home *** CD-ROM | disk | FTP | other *** search
/ Oakland CPM Archive / oakcpm.iso / sigm / vol155 / sam001.cmd < prev    next >
Encoding:
Text File  |  1984-04-29  |  2.9 KB  |  117 lines

  1. *SAM001-Name & number table entry.**************************************
  2. *DATE OF LAST UPDATE  05/10/83                                         *
  3. *REVISION NUMBER 001.00                                                *
  4. *                                       *
  5. *                         THIS PROGRAM PLACED INTO PUBLIC DOMAIN BY    *
  6. *                         DOUGLAS G. COUSE, ATLANTA, GA 5/20/83        *
  7. *                         COPYING FOR NON-COMMERCIAL OR EDUCATIONAL    *
  8. *                         PURPOSES ALLOWED, PROVIDED THIS NOTICE IS    *
  9. *                         NOT REMOVED. COMMERCIAL RESALE IS PROHIBITED.*
  10. *                                                                      *
  11. ************************************************************************
  12.  
  13. ********************************************************************************
  14. *NOTE----any comment labelled (*P-) is a procedural section numbering reference*
  15. *that should be used in flowcharting and other program documentation.          *
  16. ********************************************************************************
  17.  
  18. *P-001-{START}. Program and screen initialization.
  19. ERASE
  20. CLEAR
  21. USE
  22. SET COLON OFF
  23. SET TALK OFF
  24. SET ECHO OFF
  25. RELEASE
  26. STORE "ENTRY " TO PROGRAM
  27. STORE 00 TO M:NUMBER
  28. STORE 7 TO LINE
  29. STORE 2 TO COL
  30. DO SAMSCR1
  31. *P-001-{END}.
  32.  
  33. *================================================================================
  34.  
  35. *P-005-{START}. Database accessing and doloop initialization. 
  36. SET INTENSITY OFF
  37. STORE "T" TO ALWAYS
  38. USE SAMFILE INDEX SAMAKEY
  39. GOTO TOP
  40. LOCATE FOR NUMBER = 99
  41. IF EOF .OR. # = 0
  42. ELSE
  43.     @ 22,1 SAY "-"
  44.     REMARK SPACE EXHAUSTED, entry of data not allowed, strike any key to continue
  45.     STORE "F" TO ALWAYS
  46.     SET CONSOLE OFF
  47.     WAIT
  48.     SET CONSOLE ON
  49. ENDIF
  50. STORE NUMBER TO M:NUMBER
  51. *P-005-{END}
  52.  
  53. *================================================================================
  54.  
  55. *P-010-{START}. New RECORD entry section.
  56. DO WHILE ALWAYS = "T"
  57. STORE M:NUMBER +01 TO M:NUMBER
  58. STORE "          " TO M:NAME
  59. @ LINE, COL SAY M:NUMBER USING '99'
  60. STORE COL + 4 TO COL
  61. @ LINE, COL GET M:NAME
  62. READ
  63. SET EXACT ON
  64. IF $(M:NAME,1,3) = "END"
  65.     STORE "F" TO ALWAYS
  66.     SET EXACT OFF
  67.     LOOP
  68. ENDIF
  69. SET EXACT OFF
  70. APPEND BLANK
  71. STORE STR(M:NUMBER,2) TO M:KEY
  72. REPLACE NUMBER WITH M:NUMBER
  73. REPLACE NAME WITH M:NAME
  74. STORE COL + 13 TO COL
  75. IF COL = 70
  76.     STORE LINE + 1 TO LINE
  77.     STORE 2 TO COL
  78. ENDIF 
  79. IF LINE > 21
  80.     STORE 7 TO LINE
  81.     CLEAR GETS
  82. ENDIF
  83. IF M:NUMBER = 99
  84.     STORE "F" TO ALWAYS
  85.     LOOP
  86. ENDIF
  87. LOOP
  88. ENDDO
  89. *P-010-{END}
  90.  
  91. *===============================================================================
  92.  
  93. *P-020-{START}. Link to maintenance or End of program execution and exit to menu
  94. USE
  95. STORE "." TO RESPOND
  96. DO WHILE RESPOND # " "
  97. STORE " " TO RESPOND
  98. @ 23, 1 SAY "Strike <E> key to update table, or strike <RETURN> key to EXIT......... " GET RESPOND
  99. READ
  100. IF RESPOND = "E"
  101.     DO SAM002
  102.     STORE " " TO RESPOND
  103.     LOOP
  104. ENDIF
  105. IF RESPOND = " "
  106.     LOOP
  107. ENDIF
  108. STORE "." TO RESPOND
  109. LOOP
  110. ENDDO
  111. SET INTENSITY ON
  112. SET COLON ON
  113. ERASE
  114. RELEASE ALL
  115. RETURN
  116. *P-020-{END} 
  117.