2 ! PRINTS YEAR'S END GENERAL LEDGER! 5 ! PROGRAM NAME: "PYEGLR" - BY JAC. 10 INPUT "DISK #";D9$:D9$="DK"+D9$+":GLFILE.":X%=2%:PRINT "INPUT DATE FOR YEAR'S END G.L.";:INPUT LINE D3$:D3$=LEFT(D3$, LEN(D3$)-X%):W%=1%:V%=0%:Y%=3%:Z%=4%:T0%=100% 20 OPEN "LP:" AS FILE W%:OPEN D9$+"GLR" AS FILE X%:GET #X%:FIELD #X%,X% AS R$:R%=CVT$%(R$):B0%=W%:OPEN D9$+"FND" AS FILE Y%:GET #Y%, RECORD X%:FIELD #Y%,160% AS E$,X% AS F$:F%=SWAP%(CVT$%(F$)): B2%=X%:J1%=V%:V=0 30 OPEN D9$+"BDT" AS FILE Z%:GET #Z%,RECORD 38%:FIELD #Z%,288% AS E$,X% AS B$:B9%=SWAP%(CVT$%(B$)):B4%=38%:Q$="#,###,###.##\ \": S$=SPACE$(15%):C$="CR ":C1$="CR*":C2$=" ":C3$=" *": DIM Q$(2%),Q0$(3%),A(3%),T(3%),C9$(3%),T1(3%),T2(3%),T3(3%) 40 Q1$=" \ \-\\-!-\ \-\ \!\\ \"+SPACE$(20%)+"\":Q2$=SPACE$(28%)+ "BALANCE FORWARD"+SPACE$(29%)+Q$+Q$:Q3$=" \ \ \ \ \\-\\ ! ": Q$(V%)=Q1$+Q3$+Q$:Q$(W%)=Q1$+Q3$+S$+Q$:Q$(X%)=Q1$+Q3$+S$+S$+Q$ 50 Q0$=SPACE$(19%)+"###.#% SPENT"+SPACE$(8%)+Q$+Q$+Q$+Q$:Q0$(V%)=SPACE$(11%)+ "*NEW BALANCE* "+Q0$:Q0$(W%)=S$+" -*BUDGET TOTALS*-"+Q0$:Q0$(X%) =S$+" *-*FUND TOTALS*-*"+Q0$:Q0$(Y%)=SPACE$(13%)+"*--*FINAL TOTALS*--*"+ Q0$ 60 K1%=W%:K%=K1%:GOSUB 3000:GOTO 80 IF F4$<>" ":I%=W%:GOSUB 2000:GOSUB 1000 70 GOSUB 4000:PRINT #W%:L%=L%+W%:K1%=K1%+W%:K%=K1%:GOSUB 3000:GOTO70 IF F4$=" " 80 T(K%)=V% FOR K%=V% TO X%:F7$,C7$,B7$="":H1%,H2%=W%:Z2%=V% 90 FOR K%=K1% TO R%:GOSUB 3000:GOTO 100 IF F4$=F7$:IF K%<>K1% THEN B7$=B2$+"": C7$="":H2%=W%:Z2%=V%:GOSUB 6000:GOSUB 7000:GOSUB 8000 95 GOSUB 800:GOSUB 1000 100 IF B7$<>B2$ THEN IF K%<>K1% THEN GOSUB 6000:GOSUB 7000:B7$=B2$+"" 110 IF F2$="M" THEN GOSUB 6000 IF Z2%:GOSUB 5000:C7$=C8$+"":GOTO 150 120 IF C8$=C7$ THEN GOSUB 4000:C7$=C8$+"":GOTO 150 130 GOSUB 6000 IF Z2%:GOSUB 700:GOSUB 5100:GOSUB 4000:C7$=C8$+"" 150 NEXT K%:GOSUB 6000:GOSUB 7000:GOSUB 8000:FOR I1%=V% TO Y%:T(I1%)=T3(I1%): GOSUB 9100:NEXT I1%:I1%=Y%:GOSUB 9000:CLOSE W%,X%,Y%,Z%:STOP 700 A3$=B2$+B3$:FOR J%=H2% TO B9%:B5%=J%/16%+W%:IF B5%<>B4% THEN GET #Z%, RECORD B5%:B4%=B5% 710 O4%=(J%-(B4%-W%)*16%)*32%:FIELD #Z%,O4% AS E$,6% AS A1$,21% AS A2$:GOTO 730 IF A3$=A1$:GOTO 720 IF A3$F4$:NEXT I% 810 F1$="FUND "+F$:GOTO 830 820 F7$=F$+"":H1%=I% 830 RETURN 900 L%=L%+W%:GOSUB 1000 IF L%>54%:RETURN 1000 PRINT #W%,CHR$(129%):J1%=J1%+W%:L%=V% 1010 PRINT #W%,TAB(6%);F1$;TAB(45%);"COMPILED GENERAL LEDGER";TAB(86%); D3$;TAB(114%);"PAGE ";J1%:PRINT #W% 1020 PRINT #W%,TAB(14%);"CODE";TAB(29%);"D E S C R I P T I O N";TAB(53%); "P.O. REF. DATE C BUDGET AMOUNT AMOUNT"; " BUDGET" 1030 PRINT #W%,TAB(6%);"LOC FD Y PROG BUDG SF";TAB(53%);"NO. NO. "; "MO-DY C AMOUNT EXPENDED OBLIGATED"; " BALANCE":PRINT #W%:RETURN 2000 B3%=I%/16%+W%:IF B2%<>B3% THEN GET #Y%,RECORD B3%:B2%=B3% 2010 O2%=(I%-(B2%-W%)*16%)*32%:FIELD #Y%,O2% AS E$,X% AS F$,30% AS F1$:RETURN 3000 B1%=K%/8%+W%:IF B0%<>B1% THEN GET #X%,RECORD B1%:B0%=B1% 3010 O%=(K%-(B0%-W%)*8%)*64%:FIELD #X%,O% AS E$,16% AS C8$,47% AS E$,W% AS F2$: FIELD #X%,O% AS E$,Y% AS L$,X% AS F4$,W% AS Y$,Z% AS P$,Z% AS B2$, X% AS B3$:RETURN 4000 FIELD #X%,O%+16% AS E$,X% AS D1$,X% AS D2$,22% AS D$,5% AS P1$,5% AS R$, W% AS C0$,W% AS F5$,10% AS T$:IF F5$="P" THEN H%=X% ELSE IF F5$="B" THEN H%=V% ELSE H%=W% 4010 A(H%)=VAL(T$):A(H%)=A(H%)*T0% IF H%=V%:T(H%)=T(H%)+A(H%):IF A(H%)