10 REM - PROGRAM NAME"EXP148" 20 REM - PROGRAM PRODUCES PAYROLL REGISTER 30 OPEN "LP:" FOR OUTPUT AS FILE 2 40 OPEN "EMPLOY.MST" AS FILE 1 41 DIM #1,E$(500)=255 43 INPUT "ENTER PAY PERIOD:DD-MON-YY";P1$ 44 INPUT "ENTER DATE PAID:DD-MON-YY";P2$ 45 INPUT "SALARY OR HOURLY"; E3$ 63 FOR J%=1 TO 1000 70 LET E1$=E$(J%) 80 IF LEFT(E1$,6)="999999" GOTO 822 90 IF MID(E1$,29,1)<>"1" GOTO 800 95 IF MID(E1$,30,1)="1" AND E3$="HOURLY" GO TO 800 98 LET L1=VAL(MID(E1$,45,6))/100 !GROSS AMOUNT 100 LET L4=VAL(MID(E1$,61,5))/100 !FICA 103 LET L2=VAL(MID(E1$,51,5))/100 !FEDERAL TAX 105 LET L3=VAL(MID(E1$,56,5))/100 !STATE TAX 110 LET L5=L1-(L2+L3+L4) 120 LET H1=0.0 !TEMP---# HOURS REG 121 LET H2=0.0 !TEMP---# HOURS OVERTIME 131 LET X1=X1+L1 !TOTAL GROSS PAY 132 LET X4=X4+L4 !TOTAL FICA DEDUCTIONS 133 LET X3=X3+L3 !TOTAL STATE TAX DED 134 LET X2=X2+L2 !TOTAL FED TAX DEDUCTIONS 135 LET X5=X5+L5 !TOTAL FIRST NET PAY 140 LET M2=VAL(MID(E1$,71,5))/100 !ANNUITY 145 LET M6=VAL(MID(E1$,91,5))/100 !BC/BS 150 LET M1=VAL(MID(E1$,66,5))/100 !HOSP BLDG FUND 160 LET M4=VAL(MID(E1$,81,5))/100 !RETIREMENT 170 LET M5=VAL(MID(E1$,86,5))/100 !WASH NTNL 180 LET M3=VAL(MID(E1$,76,5))/100 !CREDIT UNION 190 LET M7=VAL(MID(E1$,96,5))/100 !MISC 200 LET P9=L5-(M1+M2+M3+M4+M6+M5+M7) 230 LET Z2=Z2+M2 !TOTAL ANNUITY DEDUCTIONS 235 LET Z3=Z3+M3 !TOTAL CREDIT UNION DEDUCTIONS 240 LET Z1=Z1+M1 !TOTAL HOSP BLDG FUND DEDUCT 245 LET Z4=Z4+M4 !TOTAL RETIREMENT DEDUCTIONS 250 LET Z5=Z5+M5 !TOTAL WASH NATIONAL DED 255 LET Z6=Z6+M6 !TOTAL BC/BS DEDUCTIONS 260 LET Z7=Z7+M7 !TOTAL MISC DEDUCTIONS 270 LET Z9=Z9+P9 !TOTAL SECOND NET PAY 800 NEXT J% 822 PRINT #2,SPACE$(24)+"ANNUITY DEDUCTIONS:";P1$ 823 PRINT #2, SPACE$(78) 830 FOR J%=1 TO 1000 835 LET E1$=E$(J%) 840 IF LEFT(E1$,6)="999999" GOTO 897 842 IF MID(E1$,30,1)="1" AND E3$="HOURLY" GO TO 897 845 IF MID(E1$,29,1)<>"1" GOTO 895 850 IF VAL(MID(E1$,71,5))=0 GOTO 895 855 PRINT #2, LEFT(E1$,6)+" "+MID(E1$,7,15)+SPACE$(10); 860 LET M2=VAL(MID(E1$,71,5))/100 865 PRINT #2, USING "#,###.##",M2 895 NEXT J% 897 PRINT #2, SPACE$(20); 898 PRINT #2, USING "TOTAL ##,###.##",Z2 900 PRINT #2, CHR$(12) !SKIP TO NEW PAGE 905 PRINT #2, SPACE$(24)+"CREDIT UNION DEDUCTIONS: "+P1$ 910 FOR J%=1 TO 1000 915 LET E1$=E$(J%) 916 IF LEFT(E1$,6)="999999" GO TO 997 917 IF MID(E1$,30,1)="1" AND E3$="HOURLY" GO TO 995 918 IF MID(E1$,29,1)<>"1" GOTO 995 919 IF VAL(MID(E1$,76,5))=0 GOTO 995 920 PRINT #2, LEFT(E1$,6)+" "+MID(E1$,7,15)+SPACE$(10); 925 LET M3=VAL(MID(E1$,76,5))/100 930 PRINT #2, USING"#,###.##",M3 995 NEXT J% 997 PRINT #2, SPACE$(20); 998 PRINT #2, USING "TOTAL ##,###.##",Z3 1000 PRINT #2, CHR$(12) !SKIP TO NEW PAGE 1005 PRINT #2, SPACE$(24)+"HOSPITAL BUILDING FUND :"+ P1$ 1010 FOR J%=1 TO 1000 1015 LET E1$=E$(J%) 1020 IF LEFT(E1$,6)="999999" GOTO 1082 1022 IF MID(E1$,30,1)="1" AND E3$="HOURLY" GO TO 1080 1025 IF MID(E1$,29,1)<>"1" GOTO 1080 1030 IF VAL(MID(E1$,66,5))=0 GOTO 1080 1035 PRINT #2, LEFT(E1$,6)+" "+MID(E1$,7,15)+SPACE$(10); 1040 LET M1=VAL(MID(E1$,66,5))/100 1045 PRINT #2, USING "#,###.##", M1 1080 NEXT J% 1082 PRINT #2, SPACE$(20); 1083 PRINT #2, USING "TOTAL ##,###.##",Z1 1085 PRINT #2, CHR$(12) !NEW PAGE 1090 PRINT #2, SPACE$(24)+"RETIREMENT DEDUCTIONS :"+P1$ 1095 FOR J%=1 TO 1000 1100 LET E1$=E$(J%) 1105 IF LEFT(E1$,6)="999999" GOTO 1137 1107 IF MID(E1$,30,1)="1" AND E3$="HOURLY" GO TO 1135 1110 IF MID(E1$,29,1)<>"1" GOTO 1135 1115 IF VAL(MID(E1$,81,5))=0 GOTO 1135 1120 PRINT #2, LEFT(E1$,6)+" "+MID(E1$,7,15)+SPACE$(10); 1125 LET M4=VAL(MID(E1$,81,5))/100 1130 PRINT #2, USING "#,###.##", M4 1135 NEXT J% 1137 PRINT #2, SPACE$(20); 1138 PRINT #2, USING "TOTAL ##,###.##",Z4 1140 PRINT #2, CHR$(12) !SKIP TO NEW PAGE 1145 PRINT #2, SPACE$(24)+"WASHINGTON NATIONAL DEDUCTIONS :"+P1$ 1150 FOR J%=1 TO 1000 1155 LET E1$=E$(J%) 1160 IF LEFT(E1$,6)="999999" GOTO 1197 1163 IF MID(E1$,30,1)="1" AND E3$="HOURLY" GO TO 1195 1165 IF MID(E1$,29,1)<>"1" GOTO 1195 1170 IF VAL(MID(E1$,86,5))=0 GOTO 1195 1175 PRINT #2, LEFT(E1$,6)+" "+MID(E1$,7,15)+SPACE$(10); 1180 LET M5=VAL(MID(E1$,86,5))/100 1185 PRINT #2, USING"#,###.##", M5 1195 NEXT J% 1197 PRINT #2, SPACE$(20); 1198 PRINT #2 , USING "TOTAL ##,###.##",Z5 1200 PRINT #2, CHR$(12) !NEW PAGE 1210 PRINT #2, SPACE$(24)+"BLUE CROSS-BLUE SHIELD :"+P1$ 1215 FOR J%=1 TO 1000 1220 LET E1$=E$(J%) 1225 IF LEFT(E1$,6)="999999" GOTO 1252 1227 IF MID(E1$,30,1)="1" AND E3$="HOURLY" GO TO 1251 1230 IF MID(E1$,29,1)<>"1" GOTO 1251 1235 IF VAL(MID(E1$,91,5))=0 GOTO 1251 1240 PRINT #2, LEFT(E1$,6)+" "+MID(E1$,7,15)+SPACE$(10); 1245 LET M6=VAL(MID(E1$,91,5))/100 1250 PRINT #2, USING "#,###.##", M6 1251 NEXT J% 1252 PRINT #2, SPACE$(20); 1253 PRINT #2, USING "TOTAL ##,###.##",Z6 1270 PRINT #2, CHR$(12) 1275 PRINT #2, SPACE$(24)+"MISCELLANEOUS DEDUCTIONS :"+P1$ 1280 FOR J%=1 TO 1000 1285 LET E1$=E$(J%) 1290 IF LEFT(E1$,6)="999999" GOTO 1317 1292 IF MID(E1$,30,1)="1" AND E3$="HOURLY" GO TO 1316 1295 IF MID(E1$,29,1)<>"1" GOTO 1316 1300 IF VAL(MID(E1$,96,5))=0 GOTO 1316 1305 PRINT #2, LEFT(E1$,6)+" "+MID(E1$,7,15)+SPACE$(10); 1310 LET M7=VAL(MID(E1$,96,5))/100 1315 PRINT #2, USING "#,###.##", M7 1316 NEXT J% 1317 PRINT #2, SPACE$(20); 1318 PRINT #2, USING " TOTAL ##,###.##",Z7 1340 CLOSE 1,2 1350 END