2 ! PRINT PAYABLES CHECK REGISTER 5 ! PROGRAM NAME:"PPCKRE" - BY JAC 6 INPUT "INPUT THE DATE FOR GL ENTRIES AS: MM-DD-YY";D2$ 7 N%=INSTR(1%,D2$,"-"):IF N%<2% OR N%>3% THEN 6 8 IF N%=2% THEN D2$=" "+D2$ 9 N%=INSTR(4%,D2$,"-"):IF N%<5% OR N%>6% THEN 6 10 IF N%=5% THEN D2$=LEFT(D2$,3%)+" "+RIGHT(D2$,4%) 12 OPEN "DK1:ACCPAY.CHK" AS FILE 1% 15 DIM #1%,C$(1000%)=64%,C%(0%) 20 OPEN "DK1:GLFILE.FND[2,4]" AS FILE 2% 25 DIM #2%,F$(20%)=32%,F%(0%) 30 OPEN "DK1:GLFILE.EXP[2,4]" AS FILE 3% 32 DIM #3%,U1$(4000%)=64%,U%(0%) 33 DEF FNZ$(A) 34 IF ABS(A)<1E+6 THEN FNZ$=LEFT(NUM$(A)+SPACE$(10%-LEN(NUM$(A))),10%):GOTO 38 35 A1=FIX(A/1E+6):A2=((A/1E+6)-A1)*1E+6:A3$=NUM$(A1):A4$=RIGHT(NUM$(A2),2%) 36 IF LEN(A4$)<7% THEN A4$="0"+A4$:GOTO 36 37 A3$=LEFT(A3$,INSTR(2%,A3$," ")-1%)+A4$:FNZ$=LEFT(A3$+SPACE$(10%-LEN(A3$)),10%) 38 FNEND 40 N%=C%(0%):M%=F%(0%):O%=U%(0%):DIM I%(1000%):OPEN "DK1:ACCPAY.ARG" AS FILE 4%: DIM #4%,J(1000%):GOSUB 400:CLOSE 4%:KILL "DK1:ACCPAY.ARG" 50 D7$=D2$:D2$=LEFT(D2$,2%)+MID(D2$,4%,2%):L%,F,P%=0%:E%=1%:Q$="#,###,###.##" 52 OPEN "LP:" FOR OUTPUT AS FILE 4%,MODE 66%:PRINT #4%,CHR$(128%+1%) 55 FOR K%=1% TO M% 56 F1$=LEFT(F$(K%),2%):F3$=MID(C$(E%),41%,2%):F4$=MID(C$(E%),15%,4%) 57 IF F1$<>F3$ AND F4$<>"VOID" THEN 175 ELSE P%=P%+1%:L%=0%:GOSUB 505 58 T=0%:T1=0%:F1=0%:N1$=" " 60 FOR I%=E% TO N% 75 D1$=LEFT(C$(I%),8%):V$=MID(C$(I%),9%,6%):D$=MID(C$(I%),15%,17%) 80 C$=MID(C$(I%),38%,3%)+"-"+MID(C$(I%),41%,2%)+"-"+MID(C$(I%),43%,1%)+"-" 85 C$=C$+MID(C$(I%),44%,4%)+"-"+MID(C$(I%),48%,4%)+"."+MID(C$(I%),52%,2%) 90 N$=MID(C$(I%),32%,6%):A=VAL(MID(C$(I%),54%,9%)):F$=MID(C$(I%),63%,1%) 92 IF VAL(N1$)F1$ AND F4$<>"VOID" THEN E%=I%+1%:GOTO 130 125 NEXT I% 130 GOSUB 650:PRINT #4%:PRINT #4%,TAB(35%);"FUND TOTAL";TAB(58%); 135 PRINT #4%,USING Q$,ABS(F1)/100%;:F=F+F1 140 IF F1<0% THEN PRINT #4%,"CR**" ELSE PRINT #4%, " **" 145 IF F1$="01" THEN D$="TOTAL 6/80 7/80 " ELSE D$="INTERFUND TRANSFER " 155 PRINT #4%,TAB(35%);D$;TAB(58%);:PRINT #4%,USING Q$,ABS(T)/100%; 160 IF T<0% THEN PRINT #4%,"CR**" ELSE PRINT #4%," **" 165 O%=O%+1%:U1$(O%)=MID(C$(I%),38%,16%)+D2$+D$+" "+N1$+"7E"+FNZ$(T) 170 PRINT #4%,CHR$(128%+1%) 175 NEXT K% 180 K%=0%:F$(K%)=SPACE$(32%):GOSUB 505 185 PRINT #4%,TAB(35%);"FINAL TOTAL";TAB(58%);:U%(0%)=O% 190 PRINT #4%,USING Q$,ABS(F)/100%; 195 IF F<0% THEN PRINT #4%,"CR***" ELSE PRINT #4%," ***" 200 PRINT #4%,CHR$(128%+1%):CLOSE 1%,2%,3%,4%:STOP 400 I%(K%)=0% FOR K%=1% TO N% 405 J(K%)=VAL(MID(C$(K%),41%,2%)+MID(C$(K%),33%,5%)) FOR K%=1% TO N% 410 M=J(1%):FOR K%=2% TO N%:IF J(K%)>M THEN M=J(K%):GOTO 425 415 T=J(K%):FOR J%=K%-1% TO 1% STEP -1%:IF J(J%)>T THEN I%(K%)=I%(K%)-1%: I%(J%)=I%(J%)+1% 420 NEXT J% 425 NEXT K%:FOR K%=1% TO N%:IF I%(K%)=0% THEN 435 ELSE J%=K%:T$=C$(K%) 430 T1$=C$(J%+I%(J%)):C$(J%+I%(J%))=T$:L%=J%:J%=L%+I%(L%):I%(L%)=0%:T$=T1$: GOTO 430 IF J%<>K% 435 NEXT K%:RETURN 500 PRINT #4%,CHR$(129%):P%=P%+1%:L%=0% 505 PRINT #4%,TAB(15%);RIGHT(F$(K%),3%);TAB(49%);"PAYABLES CHECK REGISTER"; TAB(85%);D7$;TAB(111%);"PAGE ";P%:PRINT #4% 510 PRINT #4%,TAB(15%);" DATE";TAB(76%);"VENDOR CHECK" 515 PRINT #4%,TAB(15%);"MO-DY-YR D E S C R I P T I O N";TAB(64%); "AMOUNT NUMBER NUMBER";TAB(103%);"CODE":PRINT #4%:RETURN 600 L%=L%+1%:IF L%>52% THEN GOSUB 650:GOSUB 500 620 RETURN 650 PRINT #4%,TAB(58%);:PRINT #4%,USING Q$,ABS(T1)/100%; 655 IF T1<0% THEN PRINT #4%,"CR*" ELSE PRINT #4%," *" 660 F1=F1+T1:T1=0%:RETURN 665 END