2 ! PRINTS YEAR TO DATE REPORT! 5 ! PROGRAM NAME:"PRTYTD" - BY JAC 10 DIM W(7%),Z(7%) 12 DEF FNZ$(A,B%):B%=B%+1% 13 IF ABS(A)<1E+6 THEN A5$=LEFT(NUM$(A)+SPACE$(B%-LEN(NUM$(A))),B%):GOTO 18 14 A1=FIX(A/1E+6):A2=((A/1E+6)-A1)*1E+6:A3$=NUM$(A1):A4$=RIGHT(NUM$(A2),2%) 15 IF LEN(A4$)<7% THEN A4$="0"+A4$:GOTO 15 16A3$=LEFT(A3$,INSTR(2%,A3$," ")-1%)+A4$:A5$=LEFT(A3$+SPACE$(B%-LEN(A3$)),B%) 18 FNZ$=RIGHT(A5$,2%):FNEND 20 OPEN "LP:" FOR OUTPUT AS FILE 1%,MODE 66% 25 OPEN "DK1:PAYROL.MST" AS FILE 2%:DIM #2%,A$(1500%)=128%,A%(0%) 35 OPEN "DK1:PAYROL.MDR" AS FILE 3% 40 DIM #3%,M$(1500%)=128%,M%(0%),D$(0%)=8%:D3$=D$(0%):D$=D$(0%) 45 OPEN "DK1:PAYROL.YTD" AS FILE 4%:DIM #4%,Y$(1500%)=64%,Y%(0%) 55 Q1%=VAL(LEFT(Y$(0%),1%)):M1%=VAL(MID(Y$(0%),2%,1%)) 60 IF Q1%=4% AND M1%=3% THEN Q1%=1%:M1%=1%:Z1%=-1%:GOTO 70 65 IF M1%<3% THEN M1%=M1%+1% ELSE M1%=1%:Q1%=Q1%+1% 70 M1$=MID(NUM$(M1%),2%,1%):Q1$=MID(NUM$(Q1%),2%,1%):N%=A%(0%):Y$(0%)=Q1$+M1$ 75 J%=1%:L%=0%:Q2$="\ \##,###.##":X%=8%:GOSUB 400 80 OPEN "DK1:PAYROL.QRT" AS FILE 5%:DIM #5%,Q$(1500%)=64%,Q%(0%) 90 FOR K%=1% TO N% 92 IF Z1%<0% THEN Y$(K%)=SPACE$(128%) 95 GOSUB 450 98 IF M1%=1% THEN W(1%)=0% 100 IF MID(M$(K%),47%,1%)<>"N" THEN 120 105 D3$=MID(Y$(K%),1%,2%)+"-"+MID(Y$(K%),3%,2%)+"-"+MID(Y$(K%),5%,2%) 110 F$=Q1$+M1$:GOSUB 500:W$=FNZ$(W(1%),8%) 115 Y$(K%)=LEFT(Y$(K%),13%)+F$+MID(Y$(K%),16%,9%)+W$+RIGHT(Y$(K%),33%) 118 D3$=D$:GOTO 190 120 H=VAL(MID(M$(K%),37%,5%))/100%:H%=H:W(6%)=W(6%)+H% 125 H=VAL(MID(M$(K%),42%,5%))/100%:H%=H:W(7%)=W(7%)+H%:P%=16% 128 FOR I%=2% TO 4% 130 W(I%)=W(I%)+VAL(MID(M$(K%),P%,7%)):P%=P%+7% 132 NEXT I% 135 T=VAL(LEFT(M$(K%),8%)):W(1%)=W(1%)+T:W(5%)=W(5%)+T 140 R%=VAL(MID(M$(K%),48%,1%)):T=0%:P%=57% 145 FOR I%=1% TO R% 150 Z2%=VAL(MID(M$(K%),P%,2%)) 155 IF Z2%>40% AND Z2%<60% THEN T=T+VAL(MID(M$(K%),P%+2%,6%)) 160 P%=P%+8% 165 NEXT I% 170 W(0%)=W(0%)+T:GOSUB 500 175 Y$(K%)=LEFT(D3$,2%)+MID(D3$,4%,2%)+RIGHT(D3$,7%) 180 Y$(K%)=Y$(K%)+FNZ$(W(6%),4%)+FNZ$(W(7%),3%)+Q1$+M1$+" " 185 Y$(K%)=Y$(K%)+FNZ$(W(I%),8%) FOR I%=0% TO 5% 190 IF M1%<>3% THEN 215 195 IF Q1%=1% THEN Q$(K%)=SPACE$(64%) 200 P%=(Q1%-1%)*16%+1%:F$=LEFT(E$,1%) 210 Q$(K%)=LEFT(Q$(K%),P%-1%)+F$+FNZ$(W(1%),7%)+SPACE$(8%) 215 NEXT K% 220 PRINT #1%:Q3$="#,###,###.##" 225 PRINT #1%,TAB(5%+X%);"***FINAL TOTALS***";TAB(33%+X%); 230 PRINT #1%,USING "#,###,###",Z(6%); 235 PRINT #1%,USING "###,###",Z(7%); 240 PRINT #1%,USING Q3$,Z(I%)/100%; FOR I%=0% TO 5% 245 PRINT #1%,"***":PRINT #1% 250 PRINT #1%,TAB(X%);"TOTAL NUMBER OF EMPLOYEES",N%:Q%(0%)=N%:Y%(0%)=N% 255 PRINT #1%,CHR$(128%+1%):CLOSE 1%,2%,3%,4%,5%:STOP 400 PRINT #1%,CHR$(129%) 405 PRINT #1%,TAB(X%);"SCHOOL DISTRICT NO. 91";TAB(30%+X%);"YEAR TO DATE RE"; 410 PRINT #1%,"PORT";TAB(60%+X%);"PAYROLL ENDED ";D$;TAB(100%+X%);"PAGE ";J% 415 PRINT #1% 420 PRINT #1%,TAB(2%+X%);"EMPLOYEE";TAB(22%+X%);"EMP. DATE TOTAL O/T"; 425 PRINT #1%," TSA GROSS CUR FEDERAL STATE FICA "; 430 PRINT #1%,"YEAR TO DATE":PRINT #1%,TAB(4%+X%);"NAME";TAB(23%+X%); 435 PRINT #1%,"NO. MO-DY-YR HOURS HOURS AMOUNT QUARTER "; 440 PRINT #1%,"TAX TAX TAX GROSS":PRINT #1%:RETURN 450 W(6%)=VAL(MID(Y$(K%),7%,4%)):W(7%)=VAL(MID(Y$(K%),11%,3%)):P%=17% 452 FOR I%=0% TO 5% 455 W(I%)=VAL(MID(Y$(K%),P%,8%)):P%=P%+8% 458 NEXT I% 460 RETURN 500 N$=LEFT(A$(K%),24%):E$=MID(A$(K%),37%,6%) 505 PRINT #1%,TAB(X%/2%);N$;" ";E$;" ";D3$;" "; 510 PRINT #1%,USING "#,###\ \###",W(6%)," ",W(7%); 515 PRINT #1%,USING Q2$," ",W(I%)/100%; FOR I%=0% TO 5% 520 Z(I%)=Z(I%)+W(I%) FOR I%=0% TO 7% 525 PRINT #1%:PRINT #1%:L%=L%+2%:IF L%<52% THEN 535 530 J%=J%+1%:L%=0%:GOSUB 400 535 RETURN 540 END