10 REM-PROGRAM NAME:"EXP086" 20 REM-PROGRAM PROCESSES VOIDED CHECKS BY SUBTRACTING AMT OF CHECK FROM ACCOUNT TOTAL IN LEDGER.MST, INACTIVATING CHECK FORM DF:CHECKS AND IF A PAYROLL CHECK,REDUCING EMP YTD TOTALS 30 LET A1$(1)="HOSP BLDG" 40 LET A1$(2)="ANNUITY" 50 LET A1$(3)="CREDIT UNION" 60 LET A1$(4)="RETIREMENT" 70 LET A1$(5)="WASH NAT" 80 LET A1$(6)="BC/BS" 90 LET A1$(7)="MISC" 100 INPUT "PAYROLL OR VENDOR";I$ 110 IF I$="PAYROLL" GOTO 150 120 IF I$="VENDOR" GOTO 190 130 INPUT "PLEASE ENTER PAYROLL OR VENDOR";I$ 140 GOTO 110 150 LET I1$="DF:CHECKS.EMP" 160 OPEN "DF:EMPLOY.MST" AS FILE 3 170 DIM #3,E$(500)=255 180 GOTO 200 190 LETI1$="DF:CHECKS.VEN" 200 OPEN I1$ AS FILE 1 210 DIM #1, C$(1000)=32 220 OPEN "LP:" FOR OUTPUT AS FILE 2 230 IF I1$="DF:CHECKS.VEN" THEN GOTO 270 240 PRINT #2,SPACE$(24)+"PAYROLL REGISTER CREDITS" 250 PRINT #2,SPACE$(78) 260 PRINT #2,SPACE$(54)+"DATE: "+DATE$(0) 270 OPEN "DF:LEDGER.MST" AS FILE 4 280 DIM #4, L$(1000)=61 290 INPUT "CK #"; K$ 300 IF K$="END" GOTO 1430 310 FOR J%=1 TO 1000 320 IF LEFT(C$(J%),7)="99)9999" GO TO 610 330 IF K$=MID(C$(J%),2,5) GOTO 350 340 NEXT J% 350 LET C$(J%)=LEFT(C$(J%),31)+"V" 360 INPUT "ENTER NET AMT OF VOIDED CK, NO DECIMALS";G1$ 370 INPUT "ENTER ACCOUNT #"; A1$ 380 IF LEN(A1$)=7 GOTO 410 390 LET L%=7-LEN(A1$) 400 LET A1$=A1$+SPACE$(L%) 410 FOR K%=1 TO 1000 420 IF LEFT(L$(K%),7)="9999999" GOTO 590 430 IF LEFT(L$(K%),7)=A1$ THEN GOTO 450 440 NEXT K% 450 LET G$=MID(L$(K%),44,9) !YTD EXPENSE 460 INPUT "ENTER GROSS AMT FOR THIS ACCT";G9$ 470 LET G=VAL(G$)-VAL(G9$) 480 LET T$=FNK$(G) 490 LET A=LEN(T$) 500 LET A=A-1 510 LET X1$=MID(T$,1,A) 520 LET M=9-A 530 LET G$=SPACE$(M)+X1$ 540 LET L$(K%)=MID(L$(K%),1,43)+G$+MID(L$(K%),53,9) 550 INPUT "ANYMORE ACCOUNTS IN THIS CHECK";A$ 560 IF A$="YES" GOTO 370 570 IF I$="PAYROLL" GOTO 650 580 GOTO 290 590 PRINT "CANNOT FIND ACCT # ";A1$ 600 GOTO 620 610 PRINT "CANNOT FIND CHECK #";K$ 620 CLOSE 1,2,3,4 630 STOP 640 IF I$="PAYROLL" GOTO 650 650 INPUT "ENTER EMPLOYEE NUMBER"; E0$ 660 PRINT #2,SPACE$(40)+"CHECK NUMBER:"+SPACE$(8)+K$ 670 PRINT #2,SPACE$(40)+"EMPLOYEE NUMBER "+E0$ 680 FOR L%=1 TO 500 690 IF MID(E$(L%),4,3)=MID(E0$,4,3) GOTO 740 700 IF LEFT(E$(L%),6)="999999" GOTO 720 710 NEXT L% 720 PRINT "CANNOT FIND EMPLOYEE #";E0$ 730 STOP 740 PRINT#2,SPACE$(40)+"NAME"+SPACE$(16)+ MID(E$(L%),7,15) 750 PRINT #2, SPACE$(78) 760 LET N1=VAL(MID(E$(L%),101,7)) !GET YTD GROSS 770 INPUT "ENTER GROSS PAYROLL AMOUNT";N0$ 780 LET N0=VAL(N0$) 785 LET G1=N0 790 LET N1=N1-N0 800 LET A1=7 810 LET X9$=FNK$(N1) 820 GOSUB 1390 821 LET N1$=SPACE$(M)+X1$ 822 LET N6=VAL(MID(E$(L%),108,7))-N0 824 X9$=FNK$(N6) 825 LET A1=7 826 GOSUB 1390 828 LET N6$=SPACE$(M)+X1$ 830 LET N1$=SPACE$(M)+X1$ 840 PRINT#2, SPACE$(40)+"GROSS"+SPACE$(20); :PRINT#2, USING "####.##" ,N0/100 850 INPUT "ENTER AMT OF FED TAX(NO DECIMAL)";N3$ 860 PRINT#2, SPACE$(41)+"FED TAX"+SPACE$(17); 870 LET X=VAL(N3$)/100 875 LET G1=G1-VAL(N3$) 880 PRINT #2, USING "####.##",X 890 LET R=R+X 900 LET N3=VAL(MID(E$(L%),115,6))-VAL(N3$) !YTD FED TAX 910 LET A1=6 920 LET X9$=NUM$(N3) 930 GOSUB 1390 940 LET N3$=SPACE$(M)+X1$ 950 INPUT "ENTER AMT OF STATE TAX(NO DECIMALS)";N4$ 960 PRINT#2, SPACE$(41)+"STATE TAX"+SPACE$(15); 965 LET G1=G1-VAL(N4$) 970 LET X=VAL(N4$)/100 980 PRINT #2, USING"####.##",X 985 LET S=S+X 990 LET N4=VAL(MID(E$(L%),121,6))-VAL(N4$) 1000 LET A1=6 1010 LET X9$=NUM$(N4) 1020 GOSUB 1390 1030 LET N4$=SPACE$(M)+X1$ 1040 INPUT "ENTER AMT OF FICA(NO DECIMAL)";N5$ 1050 PRINT#2, SPACE$(41)+"FICA"+SPACE$(20); 1055 LET G1=G1-VAL(N5$) 1060 LET X=VAL(N5$)/100 1070 PRINT #2,USING"####.##",X 1080 LET T=T+X 1100 LET N5=VAL(MID(E$(L%),127,6))-VAL(N5$) 1110 LET A1=6 1120 LET X9$=NUM$(N5) 1130 GOSUB 1390 1140 LET N5$=SPACE$(M)+X1$ 1160 PRINT#2, SPACE$(40)+"FIRST NET"+SPACE$(16); 1170 PRINT#2, USING"####.##",G1/100 1180 LET S%=133 1190 FOR I%=1 TO 7 1200 PRINT "ENTER AMOUNT OF "+A1$(I%) 1210 INPUT V1$ 1220 IF V1$="NO" GO TO 1320 1230 LET V1=VAL(V1$) 1240 PRINT#2, SPACE$(41)+A1$(I%)+SPACE$(24-LEN(A1$(I%))); 1250 PRINT#2, USING "####.##", V1/100 1260 LET V2=VAL(MID(E$(L%),S%,6))-V1 1270 LET G1=G1-V1 1280 LET V2$(I%)=NUM$(V2) 1290 LET V2$(I%)=MID(V2$(I%),2,LEN(V2$(I%))-2) 1300 LET V2$(I%)=SPACE$(6-LEN(V2$(I%)))+V2$(I%) 1310 GO TO 1330 1320 LET V2$(I%)=MID(E$(L%),S%,6) 1330 LET S%=S%+6 1340 NEXT I% 1350 PRINT#2, SPACE$(40)+"FINAL NET"+SPACE$(16); 1360 PRINT#2, USING "####.##",G1/100 1370 LET E$(L%)=LEFT(E$(L%),100)+N1$+N6$+N3$+N4$+N5$+V2$(1)+V2$(2)+ V2$(3)+V2$(4)+V2$(5)+V2$(6)+V2$(7)+RIGHT(E$(L%),175) 1375 PRINT#2: PRINT#2: PRINT#2 1380 GOTO 290 1390 LET A=LEN(X9$)-1 1400 LET X1$=MID(X9$,1,A) 1410 LET M=A1-A 1420 RETURN 1430 IF I$<>"PAYROLL" THEN GOTO 1500 1440 PRINT #2,SPACE$(35)+"TOTAL FED TAX"+SPACE$(17); 1450 PRINT #2, USING"$$##,###.##CR",R 1460 PRINT #2,SPACE$(35)+"TOTAL STATE TAX"+SPACE$(15); 1470 PRINT #2, USING"$$##,###.##CR",S 1480 PRINT #2,SPACE$(35)+"TOTAL FICA"+SPACE$(20); 1490 PRINT #2,USING"$$##,###.##CR",T 1500 CLOSE 1,2,3,4 1510 STOP 1520 DEF FNK$(X) 1530 LET Y1=INT(X/100) 1540 LET Y2=X-Y1*100 1550 LET Y1$=NUM$(Y1) 1560 LET Y2$=NUM$(Y2) 1570 LET Y2$=RIGHT(Y2$,2) 1580 IF LEN(Y2$)<3 THEN LET I2$="0"+Y2$ 1590 LET FNK$=LEFT(Y1$,LEN(Y1$)-1)+Y2$ 1600 FNEND 1610 END