home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / simtel / cpmug / cpmug087.ark / DAENTRY.BAS < prev    next >
Encoding:
BASIC Source File  |  1986-10-20  |  4.9 KB  |  170 lines

  1.      rem This is the Date Entry Program
  2.  
  3. %INCLUDE ALL.BAS
  4.      RESTORE
  5.     DIM T%(20),A(16),D$(8),N(2,2),DATE1$(8)
  6. 500 BIZMII.FLAG=0
  7. 505 z5$="b:date"
  8. 506 z6$="b:dateback"
  9. 515 repeat$="------------------------------"
  10. 516 fill$="                              "
  11. 520 dim z$(5,5),n(2,20),k$(6,20)
  12. 540 K$(6,1)="1 - ENTER DATES":K$(6,2)="2 - EXAMINE DATES"
  13. 550 K$(6,3)="3 - MODIFY DATES"
  14. 570 K$(6,4)="4 - CREATE NEW FILE":K$(6,5)="5 - CLEAR EXISTING FILE"
  15. 590 K$(6,6)="6 - FINISHED"
  16.      print clear$:print
  17. 1075 K$(1,1)="CURRENT DATE":K$(1,2)="PERIOD ENDING DATE"
  18. 1080 K$(1,3)="PREVIOUS PERIOD ENDING DATE"
  19. 1085 K$(1,4)="MONTH ENDING DATE"
  20. 1090 K$(1,5)="QUARTER ENDING DATE"
  21. 1095 K$(1,6)="YEAR ENDING DATE"
  22. 1100 K$(1,7)="RESERVED"
  23. 1105 K$(1,8)="FISCAL YEAR ENDING DATE"
  24. 1110 K$(2,1)="1 - CURRENT DATE":K$(2,2)="2 - PERIOD ENDING DATE"
  25. 1115 K$(2,3)="3 - PREV PERIOD ENDING DATE"
  26. 1120 K$(2,4)="4 - MONTH ENDING DATE"
  27. 1125 K$(2,5)="5 - QUARTER ENDING DATE"
  28. 1130 K$(2,6)="6 - YEAR ENDING DATE"
  29. 1135 K$(2,7)="7 - RESERVED"
  30. 1140 K$(2,8)="8 - FISCAL YEAR ENDING DATE"
  31. 1145 K$(2,9)="9 - NONE"
  32. 1150 N(1,1)=8:N(1,2)=8:N(1,3)=8:N(1,4)=8:N(1,5)=8:N(1,6)=8
  33. 1155 N(1,7)=8:N(1,8)=8
  34.      if end #1 then 6000
  35.      open z5$ as 1
  36.      close 1
  37. 1180 Z1=1:Z2=1
  38. 1600 PRINT clear$
  39. 1605 PRINT
  40. 1650 PRINT "THIS IS A LIST OF OPERATIONS."
  41. 1655 PRINT
  42. 1660 FOR Z=1 TO 6:PRINT K$(6,Z):NEXT Z:PRINT
  43. 1665 PRINT "INDICATE WHAT YOU WOULD LIKE TO DO BY TYPING"
  44. 1670 PRINT "THE CORRESPONDING NUMBER."
  45. 1675 PRINT
  46. 1680 INPUT Z
  47.     IF Z<1 OR Z>6 then 1600
  48. 1685 ON Z GOSUB 2000,3000,4000,6000,7000,10000
  49. 1690 FOR Z=1 TO 20:N(2,Z)=0:NEXT Z:N$=""
  50. 1700 FOR Z=1 TO 20:K$(3,Z)="":NEXT Z
  51. 1705 GOTO 1600
  52. 2000 PRINT clear$:PRINT
  53. 2010 PRINT "ENTER DATES IN THE FORMAT MM-DD-YY. FACILITIES"
  54. 2015 PRINT "ARE PROVIDED FOR EXAMINING DATES FOR CORRECTNESS"
  55. 2020 PRINT "BEFORE THEY ARE STORED ON THE DISK"
  56. 2025 PRINT
  57. 2040 FOR Z=1 TO 8
  58.     PRINT CUR$
  59. 2045 PRINT TAB(30);left$(repeat$,n(1,z))
  60.     PRINT UP$;
  61. 2050 PRINT K$(1,Z);TAB(30);
  62. 2055 input line K$(3,Z):PRINT chr$(13)
  63. 2065 I=(N(1,Z)-LEN(K$(3,Z))):K$(3,Z)=K$(3,Z)+left$(fill$,I)
  64.     PRINT CLEAR$
  65. 2085 NEXT Z
  66. 2090 N$=""
  67. 2095 FOR Z=1 TO 8
  68.     N$=N$+K$(3,Z)
  69.     D$(Z)=K$(3,Z)
  70.     DATE1$(Z)=D$(Z)
  71.      NEXT Z
  72. 2105 PRINT clear$:PRINT
  73. 2115 FOR Z=1 TO 9
  74. 2120 PRINT K$(2,Z);TAB(30);K$(3,Z)
  75. 2125 NEXT Z
  76. 2145 PRINT
  77. 2150 PRINT "IF AN ITEM IS TO BE CHANGED, TYPE THE APPROPRIATE NUMBER."
  78. 2155 PRINT:INPUT Z
  79. 2160 PRINT
  80. 2165 IF Z>8 THEN 2216
  81. 2170 IF Z<1 THEN 2105
  82. 2180 PRINT TAB(30);left$(repeat$,n(1,z))
  83.     PRINT UP$;
  84. 2185 PRINT K$(1,Z);TAB(30);
  85. 2190 INPUT K$(3,Z)
  86. 2200 I=(N(1,Z)-LEN(K$(3,Z))):K$(3,Z)=K$(3,Z)+left$(fill$,I)
  87. 2216 N$=""
  88. 2220 FOR Z=1 TO 8
  89.     N$=N$+K$(3,Z)
  90.     D$(Z)=K$(3,Z)
  91.     DATE1$(Z)=D$(Z)
  92.      NEXT Z
  93. 2225 INPUT "ANY MORE CHANGES";line temp$
  94.      if left$(temp$,1)="y" or left$(temp$,1)="Y" then 2105
  95. 2235 PRINT
  96. 2240 INPUT "IS RECORD TO BE ENTERED";line temp$
  97. 2245 PRINT
  98.      if left$(temp$,1)="y" or left$(temp$,1)="Y" then 2280
  99.      if left$(temp$,1)<>"n" and left$(temp$,1)<>"N" then 2235
  100. 2260 PRINT clear$:PRINT
  101. 2270 PRINT "*** RECORD NOT ENTERED ***":PRINT:PRINT
  102. 2275 FOR Z=1 TO 200:NEXT Z:RETURN
  103. 2276 Z1=1
  104. 2280 open z5$ as 1
  105.      print #1; n$
  106.      close 1
  107. 2300 RETURN
  108. 3000 PRINT clear$:PRINT
  109. 3005 Z1=1
  110. 3015 open z5$ as 1
  111.      read #1; n$
  112.      close 1
  113. 3030 PRINT
  114.     PRINT "Should this be a 'hard-copy' listing (Y or N)?"
  115.     INPUT LINE LIST$
  116.     IF LIST$="y" OR LIST$="Y" THEN LPRINTER
  117. 3032 Z9=1
  118. 3035 FOR Z=1 TO 8
  119. 3040 PRINT K$(1,Z);TAB(30);MID$(N$,Z9,N(1,Z))
  120. 3045 Z9=Z9+N(1,Z)
  121. 3065 NEXT Z
  122.     PRINT CHR$(13):PRINT CHR$(12)
  123.     CONSOLE
  124. 3070 PRINT
  125. 3080 PRINT "IF FINISHED, TYPE RETURN.":PRINT
  126. 3085 input line temp$
  127. 3095 RETURN
  128. 4000 PRINT clear$:PRINT
  129. 4005 N$=""
  130. 4010 Z1=1
  131. 4030 open z5$ as 1
  132.      read #1; n$
  133.      close 1
  134. 4045 Z9=1
  135. 4050 FOR Z=1 TO 8
  136. 4055 K$(3,Z)=MID$(N$,Z9,N(1,Z))
  137. 4060 Z9=Z9+N(1,Z)
  138. 4065 NEXT Z
  139. 4070 GOTO 2105
  140. 6000 PRINT clear$:PRINT
  141. 6005 PRINT "IF YOU HAVE ARRIVED HERE, AND HAVE A DATE FILE"
  142. 6010 PRINT "ALREADY ON A DISK, YOU SHOULD INSTALL THAT DISK THEN"
  143. 6015 PRINT "TYPE THE letter c FOLLOWED BY A RETURN TO CONTINUE."
  144. 6020 PRINT
  145. 6025 PRINT "IF YOU WISH TO CREATE A NEW FILE, TYPE THE letter n"
  146. 6030 PRINT "FOLLOWED BY RETURN.":PRINT
  147. 6035 input line temp$
  148. 6040 IF left$(temp$,1)="c" or left$(temp$,1)="C" THEN INITIALIZE:GOTO 1600
  149. 6045 PRINT clear$:PRINT
  150. 6050 n$="":for z=1 to 80:n$=n$+" ":next z
  151. 6055 Z1=1
  152. 6065 create z5$ as 1
  153.      print #1; n$
  154.      close 1
  155. 6095 PRINT clear$:PRINT
  156. 6100 PRINT "DATE FILE CREATED AND CLEARED.":PRINT
  157. 6110 input "TO CONTINUE, TYPE RETURN.";line temp$
  158. 6115 GOTO 1600
  159. 7000 INPUT "ARE YOU SURE !!! (YES OR NO)";line temp$
  160. 7007 IF temp$<>"YES" THEN RETURN
  161. 7010 n$="":for z=1 to 80:n$=n$+" ":next z
  162. 7012 open z5$ as 1
  163.      print #1; n$
  164.      close 1
  165. 7035 PRINT clear$:PRINT
  166. 7040 PRINT "DATE FILE CLEARED!":PRINT
  167. 7045 input "TO CONTINUE, TYPE RETURN.";line temp$
  168. 7060 RETURN
  169. 10000 CHAIN "MASTER7"
  170.