10 ! BATCH SUPPLEMENTRY PAYROLL DEDUCTION CARDS 11 ! PROGRAM NAME: BSDED BY CWR 20 OPEN "DK1:PAYROL.MST" AS FILE 1% 30 OPEN "DK1:PAYROL.MDS" AS FILE 2% 39 INPUT "FILE ";F9$ 40 OPEN F9$ FOR INPUT AS FILE 3% 50 DIM #1,A$(1500%)=128%,A%(0%) 60 DIM #2,M$(1500%)=128%,M%(0%),D$(0%)=8% 70 Z%=A%(0%) : Q%=0% : ON ERROR GOTO 400 80 J%=1% 90 INPUT LINE #3, C$ : S%=0% : Q%=Q%+1% 100 IF LEN(C$)<70% THEN 330 101 IF MID(C$,74%,1%)="-" THEN K$=" " ELSE K$="-" 102 C$=LEFT(C$,73%)+K$+RIGHT(C$,75%) 105 S2$=MID(C$,26%,4%) 106 IF MID(C$,80%,1%)<>"3" THEN 420 110 FOR I%=1% TO Z% 120 S1$=MID(A$(I%),39%,4%) 130 IF S1$=S2$ THEN 160 140 IF S1$" " THEN 244 238 M$(I%)=LEFT(M$(I%),K%-1%)+RIGHT(M$(I%),K%+8%)+SPACE$(8%) 241 N%=N%-1% 242 M$(I%)=LEFT(M$(I%),47%)+MID(NUM$(N%),2%,1%)+RIGHT(M$(I%),49%) 243 GOTO 270 244 S1$=S2$+MID(C$,74%,6%) 250 M$(I%)=LEFT(M$(I%),K%-1%)+S1$+RIGHT(M$(I%),K%+8%) 260 M$(I%)=LEFT(M$(I%),47%)+MID(NUM$(N%),2%,1%)+RIGHT(M$(I%),49%) 270 INPUT LINE #3, C$ : S%=0% : Q%=Q%+1% 280 IF LEN(C$)<70% THEN 330 281 IF MID(C$,74%,1%)="-" THEN K$=" " ELSE K$="-" 282 C$=LEFT(C$,73%)+K$+RIGHT(C$,75%) 285 S2$=MID(C$,26%,4%) 286 IF MID(C$,80%,1%)<>"3" THEN 420 290 GOTO 120 300 S%=1% : GOTO 110 310 NEXT I% 320 PRINT "NOT FOUND",C$ : GOTO 90 330 CLOSE 1%,2%,3% 332 PRINT Q%-1%;" DEDUCTION CARDS HAVE BEEN PROCESSED" 335 GOTO 500 340 PRINT "TWO MANY DEDUCTIONS",C$ 350 PRINT I% 360 PRINT M$(I%) 370 GOTO 90 400 IF ERR=11% THEN 330 410 ON ERROR GOTO 0 420 PRINT "BAD CARD ";C$:GOTO 90 500 END