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

  1.      rem This is the Yearly File Maintenance Program
  2.  
  3. %INCLUDE ALL.BAS
  4.      dim n(2,20)
  5.      RESTORE
  6. 1500 PRINT clear$:PRINT
  7. 1510 PRINT "THIS IS THE YEARLY FILE MAINTENANCE PROGRAM....."
  8. 1520 PRINT:PRINT"IT DOES THE FOLLOWING:"
  9. 1530 PRINT:PRINT"POSTS ALL CURRENT GENERAL LEDGER AMOUNTS TO PREVIOUS"
  10. 1540 PRINT:PRINT"POSTS ALL CURRENT GENERAL LEDGER AMOUNTS TO ZERO"
  11. 1550 PRINT:PRINT"UPDATES CUSTOMER AND VENDOR AGING DATA"
  12. 1560 PRINT:PRINT"ZEROS QUARTER AND YEAR TO DATE PAYROLL AMOUNTS"
  13. 1570 PRINT:PRINT"ZEROS MONTH, QUARTER, AND YEAR TO DATE 'QUANTITY"
  14. 1580 PRINT:PRINT"ISSUED' FIGURES."
  15. 1590 PRINT:INPUT"TO CONTINUE TYPE CARRIAGE RETURN ";line temp$
  16. 2000 PRINT clear$:PRINT
  17. 2010 PRINT "INSTALL GENERAL LEDGER DISK IN DRIVE B."
  18. 2020 PRINT:INPUT "TO CONTINUE TYPE CARRIAGE RETURN. ";line temp$
  19.      initialize
  20. 2040 PRINT "CHECKING FILE LENGTH"
  21. 2050 PRINT:PRINT "*** PLEASE WAIT ***"
  22. 2060 open "b:gl" recl 138 as 1
  23.      z3=(size("b:gl")*block.size)/138
  24. 2080 FOR Z2=1 TO Z3
  25. 2090 read #1,z2;N(2,1),N(2,2),N$
  26. 2100 IF N(2,2)=0 THEN 2120
  27. 2110 NEXT Z2
  28. 2120 Z3=Z3-1
  29. 2130 close 1
  30. 2140 Z2=Z2-1
  31. 2200 PRINT clear$:PRINT
  32. 2210 PRINT "GENERAL LEDGER ACCOUNTS = ";Z2
  33. 2220 PRINT:PRINT "*** POSTING ***"
  34. 2500 open "b:gl" recl 138 as 1
  35. 2505 FOR Z=1 TO Z2
  36. 2510 N$=""
  37. 2520 read #1,z;N(2,1),N(2,2),N$,G1,G2,G3,G4,G5,G6,G7
  38. 2530 G6=G3:G5=G2:G4=G1:G3=0:G2=0:G1=0
  39. 2540 print #1,z;N(2,1),N(2,2),N$,G1,G2,G3,G4,G5,G6,G7
  40. 2550 NEXT Z
  41. 2560 close 1
  42. 3000 PRINT clear$:PRINT
  43. 3010 PRINT "INSTALL CUSTOMER RECEIVABLES DISK IN DRIVE B."
  44. 3020 PRINT:INPUT "TO CONTINUE TYPE CARRIAGE RETURN. ";line temp$
  45.      initialize
  46. 3040 PRINT "CHECKING FILE LENGTH"
  47. 3050 PRINT:PRINT "*** PLEASE WAIT ***"
  48. 3060 open "b:cr" recl 384 as 1
  49.      z3=(size("b:cr")*block.size)/384
  50. 3080 FOR Z2=1 TO Z3
  51. 3090 read #1,z2;N(2,1),N(2,2),N$
  52. 3100 IF N(2,2)=0 THEN 3120
  53. 3110 NEXT Z2
  54. 3120 Z3=Z3-1
  55. 3130 close 1
  56. 3140 Z2=Z2-1
  57. 3200 PRINT clear$:PRINT
  58. 3210 PRINT "CUSTOMER RECEIVABLES ACCOUNTS = ";Z2
  59. 3220 PRINT:PRINT "*** POSTING ***"
  60. 3500 open "b:cr" recl 384 as 1
  61. 3510 FOR Z=1 TO Z2
  62. 3520 read #1,z2;n(2,1),n(2,2),n$,c1,c2,c3,c4,c5,c6
  63. 3530 C6=C6+C5:C5=C4:C4=C3:C3=0
  64. 3540 print #1,z2;n(2,1),n(2,2),n$,c1,c2,c3,c4,c5,c6
  65. 3550 NEXT Z
  66. 3560 close 1
  67. 4000 PRINT clear$:PRINT
  68. 4010 PRINT "INSTALL VENDOR PAYABLES DISK IN DRIVE B."
  69. 4020 PRINT:INPUT "TO CONTINUE TYPE CARRIAGE RETURN. ";line temp$
  70.      initialize
  71. 4040 PRINT "CHECKING FILE LENGTH"
  72. 4050 PRINT:PRINT "*** PLEASE WAIT ***"
  73. 4060 open "b:vp" recl 384 as 1
  74.      z3=(size("b:vp")*block.size)/384
  75. 4080 FOR Z2=1 TO Z3
  76. 4090 read #1,z2;N(2,1),N(2,2),N$
  77. 4100 IF N(2,2)=0 THEN 4120
  78. 4110 NEXT Z2
  79. 4120 Z3=Z3-1
  80. 4130 close 1
  81. 4140 Z2=Z2-1
  82. 4200 PRINT clear$:PRINT
  83. 4210 PRINT "VENDOR PAYABLES ACCOUNTS = ";Z2
  84. 4220 PRINT:PRINT "*** POSTING ***"
  85. 4500 open "b:vp" recl 384 as 1
  86. 4510 FOR Z=1 TO Z2
  87. 4520 read #1,z;n(2,1),n(2,2),n$,v1,v2,v3,v4,v5,v6
  88. 4530 V6=V6+V5:V5=V4:V4=V3:V3=0
  89. 4540 print #1,z;n(2,1),n(2,2),n$,v1,v2,v3,v4,v5,v6
  90. 4550 NEXT Z
  91. 4560 close 1
  92. 5000 PRINT clear$:PRINT
  93. 5010 PRINT "INSTALL EMPLOYEE PAYROLL DISK IN DRIVE B."
  94. 5020 PRINT:INPUT "TO CONTINUE TYPE CARRIAGE RETURN. ";line temp$
  95.      initialize
  96. 5040 PRINT "CHECKING FILE LENGTH"
  97. 5050 PRINT:PRINT "*** PLEASE WAIT ***"
  98. 5060 open "b:ep" recl 512 as 1
  99.      z3=(size("b:ep")*block.size)/512
  100. 5080 FOR Z2=1 TO Z3
  101. 5090 read #1,z2;N(2,1),N(2,2),N$
  102. 5100 IF N(2,2)=0 THEN 5120
  103. 5110 NEXT Z2
  104. 5120 Z3=Z3-1
  105. 5130 close 1
  106. 5140 Z2=Z2-1
  107. 5200 PRINT clear$:PRINT
  108. 5210 PRINT "EMPLOYEE PAYROLL ACCOUNTS = ";Z2
  109. 5220 PRINT:PRINT "*** POSTING ***"
  110. 5500 open "b:ep" recl 512 as 1
  111. 5505 FOR Z=1 TO Z2
  112. 5510 N$=""
  113. 5515 read #1,z;N(2,1),N(2,2),N$,N,R,H1,H2,H3,\
  114.           E0,E1,E2,F1,F2,F3,E3,E4,E5,E6,E7,E8,S1,S2,S3,M1,M2,M3
  115. 5525 H2=0:S2=0:M2=0:E1=0:E4=0:E7=0:F2=0
  116. 5530 H3=0:S3=0:M3=0:E2=0:E5=0:E8=0:F3=0
  117. 5535 print #1,z;N(2,1),N(2,2),N$,N,R,H1,H2,H3,\
  118.           E0,E1,E2,F1,F2,F3,E3,E4,E5,E6,E7,E8,S1,S2,S3,M1,M2,M3
  119. 5550 NEXT Z
  120. 5560 close 1
  121. 6000 PRINT clear$:PRINT
  122. 6010 PRINT "INSTALL FINISHED GOODS DISK IN DRIVE B."
  123. 6020 PRINT:INPUT "TO CONTINUE TYPE CARRIAGE RETURN. ";line temp$
  124.      initialize
  125. 6040 PRINT "CHECKING FILE LENGTH"
  126. 6050 PRINT:PRINT "*** PLEASE WAIT ***"
  127. 6060 open "b:fg" recl 256 as 1
  128.      z3=(size("b:fg")*block.size)/256
  129. 6080 FOR Z2=1 TO Z3
  130. 6090 read #1,z2;N(2,1),N(2,2),N$
  131. 6100 IF N(2,2)=0 THEN 6120
  132. 6110 NEXT Z2
  133. 6120 Z3=Z3-1
  134. 6130 close 1
  135. 6140 Z2=Z2-1
  136. 6200 PRINT clear$:PRINT
  137. 6210 PRINT "FINISHED GOODS ACCOUNTS = ";Z2
  138. 6220 PRINT:PRINT "*** POSTING ***"
  139. 6500 open "b:fg" recl 256 as 1
  140. 6505 FOR Z=1 TO Z2
  141. 6510 N$=""
  142. 6520 read #1,z;N(2,1),N(2,2),N$,F0,F1,F2,F3,F4,F5,F6,F7,F8,F9
  143. 6530 F5=0:F6=0:F7=0
  144. 6540 print #1,z;N(2,1),N(2,2),N$,F0,F1,F2,F3,F4,F5,F6,F7,F8,F9
  145. 6550 NEXT Z
  146. 6560 close 1
  147. 7000 PRINT clear$:PRINT
  148. 7010 PRINT "INSTALL RAW GOODS DISK IN DRIVE B."
  149. 7020 PRINT:INPUT "TO CONTINUE TYPE CARRIAGE RETURN. ";line temp$
  150.      initialize
  151. 7040 PRINT "CHECKING FILE LENGTH"
  152. 7050 PRINT:PRINT "*** PLEASE WAIT ***"
  153. 7060 open "b:rg" recl 256 as 1
  154.      z3=(size("b:rg")*block.size)/256
  155. 7080 FOR Z2=1 TO Z3
  156. 7090 read #1,z2;N(2,1),N(2,2),N$
  157. 7100 IF N(2,2)=0 THEN 7120
  158. 7110 NEXT Z2
  159. 7120 Z3=Z3-1
  160. 7130 close 1
  161. 7140 Z2=Z2-1
  162. 7200 PRINT clear$:PRINT
  163. 7210 PRINT "RAW GOODS ACCOUNTS = ";Z2
  164. 7220 PRINT:PRINT "*** POSTING ***"
  165. 7500 open "b:rg" recl 256 as 1
  166. 7505 FOR Z=1 TO Z2
  167. 7510 N$=""
  168. 7520 read #1,z;N(2,1),N(2,2),N$,R0,R1,R2,R3,R4,R5,R6,R7,R8,R9
  169. 7530 R5=0:R6=0:R7=0
  170. 7540 print #1,z;N(2,1),N(2,2),N$,R0,R1,R2,R3,R4,R5,R6,R7,R8,R9
  171. 7550 NEXT Z
  172. 7560 close 1
  173. 9995 CHAIN "bizmii"
  174.