home *** CD-ROM | disk | FTP | other *** search
- 10 ' PROGRAM NAME "GL3"
- 190 CLEAR 1500
- 200 JS=4
- 210 KS=4
- 220 A3=200
- 230 INPUT "ENTER -Y- TO MOUNT THE FILES";WY$
- 240 IF WY$<>"Y" THEN 270
- 250 UNLOAD 0,1
- 260 MOUNT 0,1
- 270 OPEN "R",1,"LEDGER",0
- 280 OPEN "R",2,"BANKBKUP",1
- 290 OPEN "R",3,"BANKCURR",1
- 300 PRINT "* BEFORE RUNNING THIS PROGRAM - COPY BANKCURR TO BANKBKUP * "
- 310 PRINT "MERGE -LEDGER-DR0 AND -BANKBKUP-DR1 AND CUT NEW -BANKCURR-DR1"
- 320 INPUT "ENTER REPORT DATE AS MOYR";DT$
- 330 GOSUB 530
- 340 GOSUB 680
- 350 GOSUB 880' GO GET 1ST BANKBKUP RECORD FROM FILE
- 360 IF C1$<C2$ THEN 450
- 370 IF C1$=C2$ THEN PRINT "DUPLICATE CTL#";C1$,C2$:STOP
- 380 IF KEF=1 AND JEF=1 THEN 1220' GO WRITE LAST BANKCURR & EOF
- 390 DUM$=K2$(K)' MOVE BANKBKUP TO OUTPUT AREA
- 400 GOSUB 1080' GO CHECK FOR PUT TO BANKCURR
- 410 IF KEF=1 THEN 450' ALL OF BANKBKUP MERGED IN
- 420 GOSUB 880' GO GET NEXT BANKBKUP RECORD FROMFILE
- 430 IF JEF=1 THEN 380' ALL OF LEDGER MERGED IN
- 440 GOTO 360
- 450 IF KEF=1 AND JEF=1 THEN 1220' GO WRITE LAST BANKCURR & EOF
- 460 DUM$=J1$(J)' MOVE LEDGER TO OUTPUT AREA
- 470 GOSUB 1080' GO CHECK FOR PUT TO BANKCURR
- 480 IF JEF=1 THEN 380' ALL OF LEDGER MERGED IN
- 490 GOSUB 680' GO GET NEXT LEDGER RECORD FROM FILE
- 500 IF KEF=1 THEN 450' ALL OF BANKBKUP MERGED IN
- 510 GOTO 360
- 560 GET #1,2037
- 570 FOR I=1 TO 16
- 580 FIELD #1, (I-1)*8 AS D$,8 AS DD$(I)
- 590 IF DT$=MID$(DD$(I),1,4) THEN 620
- 600 NEXT I
- 610 PRINT "FILE START NOT IN TABLE":STOP
- 620 A1$=MID$(DD$(I),5,4)
- 630 A1=VAL(A1$)
- 640 RETURN
- 650 '
- 660 ' THIS ROUTINE GETS THE PROPER LEDGER RECORD
- 670 '
- 680 IF JS=4 THEN 830
- 690 FOR J=JS TO 3
- 700 FIELD #1, (J-1)*42 AS J$,42 AS J1$(J)
- 710 IF MID$(J1$(J),1,3)="EOF" AND JW=1 THEN JEF=1:GOTO 380' EOF LEDGER
- 720 JDT$=MID$(J1$(J),1,2)+MID$(J1$(J),5,2)
- 730 IF DT$<>JDT$ THEN 810' NOT CURRENT FILE YET
- 740 JW=1 ' START OF CURRENT FILE
- 750 IF MID$(J1$(J),7,4)<>"1110" THEN 810' NOT BANK RECORD
- 760 IF MID$(J1$(J),41,1)="*" THEN 810' BYPASS BAD RECORD
- 770 IF MID$(J1$(J),42,1)="1" THEN JS=J+1:DUM$=J1$(J):GOTO 350
- 780 C1$=MID$(J1$(J),11,5)
- 790 JS=J+1 ' THIS IS THE PROPER RECORD
- 800 RETURN
- 810 NEXT J
- 820 IF A1=2037 THEN PRINT "FILEND ERROR-LEDGER":STOP
- 830 GET #1,A1
- 840 JS=1
- 850 A1=A1+1
- 860 GOTO 680
- 910 IF KS=4 THEN 1020
- 920 FOR K=KS TO 3
- 930 FIELD #2, (K-1)*42 AS K$,42 AS K2$(K)
- 940 IF MID$(K2$(K),1,3)="EOF" THEN KEF=1:GOTO 450' END OF BANKBKUP
- 950 IF MID$(K2$(K),42,1)<>"2" THEN 1010' DELETE THESE RECORDS FROM FILE
- 960 IF MID$(K2$(K),11,1)="V" THEN 1010' DELETE VOUCHERS FROM FILE
- 970 IF MID$(K2$(K),16,4)="VOID" THEN 1010' DELETE VOID CKS FROM FILE
- 980 C2$=MID$(K2$(K),11,5)
- 990 KS=K+1
- 1000 RETURN
- 1010 NEXT K
- 1020 A2=A2+1
- 1030 IF A2=201 THEN PRINT "FILEND ERROR-BANKUP":STOP
- 1040 GET #2,A2
- 1050 KS=1
- 1060 GOTO 910
- 1070 '
- 1080 ' THIS ROUTINE WRITES OUT THE BANKCURR FILE IN 201-400#R1
- 1090 '
- 1100 FIELD #3,128 AS L4$
- 1110 L3$=L3$+DUM$
- 1120 L=L+1
- 1130 IF L=3 THEN 1150
- 1140 RETURN
- 1150 A3=A3+1
- 1160 IF A3>400 THEN PRINT "FILEND ERR BANKCURR":STOP
- 1170 LSET L4$=L3$
- 1180 PUT #3,A3
- 1190 L3$=BLK$
- 1200 L=0
- 1210 GOTO 1140
- 1220 L3$=L3$+"EOF"
- 1230 LSET L4$=L3$
- 1240 A3=A3+1
- 1250 IF A3>400 THEN 1160
- 1260 PUT #3,A3
- 1270 CLOSE
- 1280 PRINT "EOJ"
- 1290 LOAD "GLMENU",0,R
- 1300 END
-