5 ! BATCHES BUDGET MODIFICATIONS AND CREATES FILE. 8 ! PROGRAM NAME:"BATBUG" - BY JAC 10 OPEN "CR:" FOR INPUT AS FILE 1% 20 OPEN "LP:"FOR OUTPUT AS FILE 2%,MODE 66% 30 OPEN "DK1:GLFILE.BDG" AS FILE 3% 50 DIM #3%,M1$(500%)=64%,M%(0%):M%=M%(0%) 51 DEF FNZ$(B%,A) 52 IF ABS(A)<1E+6 THEN FNZ$=LEFT(NUM$(A)+SPACE$(B%-LEN(NUM$(A))),B%):GOTO 58 53 A1=FIX(A/1E+6):A2=((A/1E+6)-A1)*1E+6:A3$=NUM$(A1):A4$=RIGHT(NUM$(A2),2%) 54 IF LEN(A4$)<7% THEN A4$="0"+A4$:GOTO 54 55 A3$=LEFT(A3$,INSTR(2%,A3$," ")-1%)+A4$:FNZ$=LEFT(A3$+SPACE$(B%-LEN(A3$)),B%) 58 FNEND 60 J%=1%:L%=0%:Q$="##,###,###":GOSUB 400 70 K%=K%+1%:GET #1%:FIELD #1%,RECOUNT-2% AS A$ 90 IF LEFT(A$,3%)="END" THEN 500 100 D1$=MID(A$,3%,2%)+"-"+MID(A$,5%,2%)+"-7"+MID(A$,7%,1%) 120 D$=MID(A$,14%,21%):A1$=MID(A$,40%,7%):A2$=MID(A$,47%,1%) 130 ON ERROR GOTO 700 140 N%=1% 150 A=(VAL(A1$)*10%+VAL(A2$))*N% 160 F$=MID(A$,51%,2%):B$=MID(A$,58%,6%):C$=MID(A$,48%,3%)+"-"+F$+"-" 170 C$=C$+MID(A$,53%,1%)+"-"+MID(A$,54%,4%)+"-"+LEFT(B$,4%)+"."+RIGHT(B$,5%) 180 T1=T1+A:T2=T2+VAL(F$):T3=T3+VAL(B$) 190 PRINT #2%,TAB(10%);D1$;" ";D$;TAB(55%); 200 PRINT #2%,USING Q$,ABS(A);:IF A<0% THEN PRINT #2%,"CR"; 230 PRINT #2%,TAB(90%);C$:M%=M%+1% 240 M1$(M%)=MID(A$,3%,5%)+D$+FNZ$(9%,A)+MID(A$,48%,16%)+MID(A$,80%,1%) 250 L%=L%+1%:IF L%<52% THEN 70 260 J%=J%+1%:L%=0%:GOSUB 400 270 GOTO 70 400 PRINT #2%,CHR$(128%+1%) !HEADINGS 410 PRINT #2%,TAB(10%);"SCHOOL DISTRICT NO. 91";TAB(50%);"BUDGET "; 412 PRINT #2%,"MODIFICATION";TAB(85%);DATE$(0%);TAB(110%);"PAGE ";J% 420 PRINT #2%:PRINT #2,TAB(10%);" DATE" 440 PRINT #2%,TAB(10%);"MO-DY-YR D E S C R I P T I O N";TAB(60%); 441 PRINT #2%,"AMOUNT";TAB(98%);"CODE":PRINT #2% 460 RETURN 500 PRINT #2%,TAB(55%);:PRINT #2%,USING Q$,ABS(T1); 520 IF T1<0% THEN PRINT #2%,"CR*" ELSE PRINT #2%," *" 530 PRINT #2%:PRINT #2%,TAB(40%);"HASH FUND TOTAL "; 550 PRINT #2%,USING Q$,T2 560 PRINT #2%,TAB(40%);"HASH CODE TOTAL "; 570 PRINT #2%,USING Q$,T3; 580 PRINT #2%,TAB(90%);"CARD COUNT",K%-1%:CLOSE 1%,2% 606 INPUT "IS THIS BATCH LISTING OK? - Y OR N";X$:IF X$="N" THEN 610 607 IF X$<>"Y" THEN 606 ELSE M%(0%)=M% 610 CLOSE 3%:STOP 700 ! ERROR-HANDLES CREDIT PUNCH 710 IF ERR<>52% THEN ON ERROR GOTO 0 715 IF ASCII(A2$)=125% THEN A2$="I" 720 A2$=CHR$(ASCII(A2$)-25%):N%=-1% 730 RESUME 150 740 END