2 ! PRINTS W-2'S 5 ! PROGRAM NAME:"PRTW2" - BY JAC 10 OPEN "DK1:PAYROL.MST" AS FILE 1%:DIM #1%,A$(1500%)=128%,A%(0%):N%=A%(0%) 15 OPEN "DK1:PAYROL.YTD" AS FILE 2%:DIM #2%,Y$(1500%)=64%,Y%(0%) 20 OPEN "LP:" FOR OUTPUT AS FILE 3%,MODE 21%:DIM T(5%) 22 Q%=7%:Q$="##,###.## ":C=1260000 25 PRINT "INPUT THE WORD 'ALL' IF W-2'S ARE TO BE PRINTED FOR ALL EMPLOYEES" 30 PRINT "WHO HAVE NOT PREVIOUSLY HAD ONE PRINTED. HIT 'CR' TO HALT EXECUTION." 35 INPUT "EMPLOYEE NO.";E$:IF E$="ALL" THEN S%=1%:E%=N%:F$=" ":GOTO 100 40 IF LEN(E$)=0% THEN CLOSE 1%,2%,3%:STOP 45 J%=N%/2%:L%=J% 50 IF E$=MID(A$(L%),39%,4%) THEN 90 ELSE IF E$>MID(A$(L%),39%,4%) THEN 70 55 IF L%<=1% THEN 85 ELSE J%=J%/2%:L%=L%-J%:IFL%<1% THEN L%=1% 60 IF J%>0% THEN 50 65 IF E$>=MID(A$(L%),39%,4%)THEN 85 ELSE IF L%<=1%THEN85 ELSE L%=L%-1%:GOTO 65 70 IF L%>=N% THEN 85 ELSE J%=J%/2:L%=L%+J%:IF L%>N% THEN L%=N% 75 IF J%>0% THEN 50 80 IF E$<=MID(A$(L%),39%,4%) THEN 85 ELSE IF L%MID(A$(L%),39%,4%) THEN PRINT "EMP.# ";E$;"NOT FOUND IN MST":GOTO 35 90 S%,E%=L%:F$="Y" 100 FOR K%=S% TO E%:IF F$="Y" THEN 110 105 IF MID(A$(K%),119%,1%)="Y" THEN 180 110 PRINT #3%,CHR$(129%):PRINT #3%,TAB(Q%);"82-W001158 69-0820293" 115 PRINT #3%:PRINT #3%,TAB(Q%);"SCHOOL DISTRICT NO 91" 120 PRINT #3%,TAB(Q%);"690 JOHN ADAMS PARKWAY" 125 PRINT #3%,TAB(Q%);"IDAHO FALLS, IDAHO 83401":PRINT #3%:PRINT #3% 135 M$=MID(A$(K%),52%,1%):M$="2" IF M$="M" OR M$="G":M$="1" IF M$="S" OR M$="H" 140 PRINT #3%,TAB(Q%);MID(A$(K%),26%,11%);TAB(Q%+34%);M$;TAB(Q%+63%); MID(A$(K%),37%,6%):PRINT #3% 150 PRINT #3%,TAB(Q%);LEFT(A$(K%),24%):PRINT #3%,TAB(Q%);MID(A$(K%),70%,24%): PRINT #3%,TAB(Q%);MID(A$(K%),94%,16%);" ";MID(A$(K%),110%,6%): PRINT #3% FOR I%=1% TO 3% 160 T(I%)=VAL(MID(Y$(K%),I%*8%+17%,8%)) FOR I%=0% TO 5% 170 F1$=" "+Q$+Q$+Q$+Q$+Q$+Q$+" IDAHO":F=T(5%)-T(0%):T(5%)=C IF T(5%)>C 175 PRINT #3%,USING F1$,T(2%)/100%,F/100%,T(4%)/100%,T(5%)/100%,T(3%)/100%, F/100% 180 A$(K%)=LEFT(A$(K%),118%)+F$+RIGHT(A$(K%),120%):NEXT K% 185 GOTO 35 190 END