05 REM-PROGRAM NAME: EXP080 07 REM- PROGRAM CHANGES FIELDS IN EMPLOYEE RECORD 10 OPEN "DF:EMPLOY.MST" AS FILE 1 20 DIM #1,E1$(600)=255 25 PRINT "THIS PROGRAM WILL CHANGE EMPLOYEE RECORDS" 35 PRINT "DATE: "; DATE$(0) 40 INPUT "EMPLOYEE #"; C$ 41 IF C$="END" GOTO 1100 42 IF C$="SAME" GO TO 60 43 LET J%=0 50 ON ERROR GOTO 300 55 GO TO 70 60 LET E$=E1$(J%) 65 GO TO 80 70 LET J%=J%+1 75 LET E$=E1$(J%) 76 IF LEFT(E$,6)="999999" GOTO 250 77 IF MID(E$,4,3)MID(C$,4,3) THEN STOP 79 PRINT " EMP NAME: ";MID(E$,7,15) 80 INPUT "TYPE OF CHANGE"; C1$ 85 IF C1$="PAYAMT" THEN GOTO 400 90 IF C1$="FEDTAX" THEN GOTO 475 95 IF C1$="STATETAX" THEN GOTO 500 100 IF C1$="FICA" THEN GOTO 550 110 IF C1$="CU" THEN 650 115 IF C1$="BC/BS" THEN 750 116 IF C1$="CHGACCT" THEN 790 117 IF C1$="ADDACCT" THEN 790 118 IF C1$="DISABL" GOTO 925 119 IF C1$="CLRDEDUCT" GOTO 950 120 IF C1$="HOSPBLDG" GOTO 965 121 IF C1$="RATE" GOTO 970 122 IF C1$="DEPENDENTS" GOTO 1050 123 IF C1$="ANNUITY" GOTO 1075 125 IF C1$="DELACCT" GOTO 790 126 IF C1$="RETIREMENT" GOTO 320 127 IF C1$="WASHNAT" GO TO 340 128 IF C1$="EXTRATAX" GO TO 600 150 PRINT "UNDEFINED CHANGE" 250 GO TO 80 255 STOP 300 PRINT "ERROR = ";ERR 310 STOP 320 INPUT "ENTER AMT OF RETIREMENT DEDUCT,XXXXX";C2$ 325 IF LEN(C2$)<>5 THEN GOTO 320 330 LET E1$(J%)=LEFT(E$,80)+C2$+MID(E$,86,170) 335 GOTO 40 340 INPUT "ENTER AMOUNT OF WASH NATL, XXXXX"; C2$ 345 IF LEN (C2$)<>5 GO TO 340 350 LET E1$(J%)=LEFT(E$,85)+C2$+MID(E$,91,165) 355 GO TO 40 400 INPUT "ENTER GROSS PAY AMT,XXXXXX"; C2$ 401 IF LEN(C2$)<>6 GOTO 400 405 LET E1$(J%)=LEFT(E$,44)+C2$+MID(E$,51,205) 410 GOTO 40 475 INPUT "ENTER AMT OF FED TAX,XXXXX"; C4$ 476 IF LEN(C4$)<>5 GOTO 475 480 LET E1$(J%)=LEFT(E$,50)+C4$+MID(E$,56,200) 485 GOTO 40 500 INPUT "ENTER AMT OF STATE TX,XXXXX"; C5$ 501 IF LEN(C5$)<>5 GOTO 500 505 LET E1$(J%)=LEFT(E$,55)+C5$+MID(E$,61,195) 507 GOTO 40 550 INPUT "ENTER AMT OF FICA, XXXXX"; C6$ 551 IF LEN(C6$)<>5 GOTO 550 555 LET E1$(J%)=LEFT(E$,60)+C6$+MID(E$,66,190) 560 GOTO 40 600 INPUT "ENTER EXTRA FEDERAL TAX, XXXX"; C9$ 610 IF LEN(C9$)<>4 GO TO 600 620 LET E1$(J%)=LEFT(E$,50)+"00000"+MID(E$,56,119)+C9$+MID(E$,179,77) 630 GO TO 40 650 INPUT "ENTER AMT OF CREDIT UNION,XXXXX"; C7$ 651 IF LEN(C7$)<>5 GOTO 650 655 LET E1$(J%)=LEFT(E$,75)+C7$+MID(E$,81,175) 660 GOTO 40 750 INPUT "ENTER AMT OF BC/BS,XXXXX"; C8$ 751 IF LEN(C8$)<>5 GOTO 750 755 LET E1$(J%)=LEFT(E$,90)+C8$+MID(E$,96,160) 780 GOTO 40 790 INPUT "ENTER ACCT #,XXXXXXX"; A0$ 791 IF LEN(A0$)=7 GOTO 795 792 LET L%=7-LEN(A0$) 793 LET A0$=A0$+SPACE$(L%) 794 IF C1$="DELACCT" GOTO 1086 795 INPUT "ENTER AMT,XXXXX"; A1$ 796 IF LEN(A1$)<>5 GOTO 795 797 IF C1$="ADDACCT" THEN 890 800 IF MID(E$,180,7)=A0$ GOTO 850 805 IF MID(E$,199,7)=A0$ GOTO 870 810 IF MID(E$,218,7)=A0$ GOTO 880 815 PRINT "CANNOT FIND ACCT #"; A0$ 816 STOP 817 GOTO 40 850 LET E1$(J%)=LEFT(E$,193)+A1$+MID(E$,199,57) 855 GOTO 930 870 LET E1$(J%)=LEFT(E$,212)+A1$+MID(E$,218,38) 875 GOTO 930 880 LET E1$(J%)=LEFT(E$,231)+A1$+MID(E$,237,19) 885 GOTO 930 890 IF MID(E$,180,7)=SPACE$(7) GOTO 900 895 IF MID(E$,199,7)=SPACE$(7) GOTO 910 897 IF MID(E$,218,7)=SPACE$(7) GOTO 920 898 PRINT "NO ROOM IN RECORD TO ADD ACCT# ";A0$ 899 STOP: GOTO 40 900 LET E1$(J%)=LEFT(E$,179)+A0$+"0000000"+A1$+ MID(E$,199,57) 905 GOTO 930 910 LET E1$(J%)=LEFT(E$,198)+A0$+"0000000"+A1$+ MID(E$,218,38) 915 GOTO 930 920 LET E1$(J%)=LEFT(E$,217)+A0$+"0000000"+A1$+ MID(E$,237,19) 924 GOTO 930 925 INPUT "ENTER AMT OF DISABL INS,XXXXX";C9$ 926 IF LEN(C9$)<>5 GOTO 925 927 LET E1$(J%)=LEFT(E$,95)+C9$+MID(E$,101,155) 928 GOTO 40 930 LET E$=E1$(J%) 935 LET X9=VAL(MID(E$,194,5))+VAL(MID(E$,213,5))+ VAL(MID(E$,232,5)) 940 LET X9$=NUM$(X9) 941 LET A=LEN(X9$): LET N=1 942 LET A=A-1 943 IF A>6 GOTO 1005 945 LET X1$=MID(X9$,N,A) 946 LET M=6-A 947 GOTO 1010 950 LET E1$(J%)=LEFT(E$,65)+ "00000000000000000000000000000000000"+MID(E$,101,155) 952 GOTO 40 965 INPUT "ENTER AMOUNT OF HOSP BLDG FUND,XXXXX",D1$ 966 IF LEN(D1$)<>5 GOTO 965 967 LET E1$(J%)=LEFT(E$,65)+D1$+MID(E$,71,185) 968 GOTO 40 970 INPUT "ENTER NEW HOURLY RATE,XXXX"; H1$ 975 IF LEN(H1$)<>4 GOTO 970 980 LET E1$(J%)=LEFT(E$,30)+H1$+MID(E$,35,221) 985 GOTO 40 1005 IF LEFT(X9$,1)<>" " THEN STOP 1006 LET N=N+1 1007 LET A=A-1: GOTO 943 1010 LET L1$=SPACE$(M)+X1$ 1015 LET L2$="00000" 1020 LET E1$(J%)=LEFT(E$,44)+L1$+L2$+MID(E$,56,200) 1025 LET K=K+1 1040 GOTO 40 1050 INPUT "ENTER NUMBER OF DEPENDENTS,XX"; D1$ 1055 IF LEN(D1$)<>2 GOTO 1050 1060 LET E1$(J%)=LEFT(E$,34)+D1$+MID(E$,37,14)+ "00000"+MID(E$,56,200) 1065 LET K=K+1 1070 GOTO 40 1075 INPUT "ENTER NEW AMT OF ANNUITY,XXXXX";A9$ 1076 IF LEN(A9$)<>5 GOTO 1075 1080 LET E1$(J%)=LEFT(E$,50)+"00000"+MID(E$,56,15)+ A9$+MID(E$,76,180) 1083 LET K=K+1 1085 GOTO 40 1086 IF MID(E$,180,7)=A0$ GOTO 1090 1087 IF MID(E$,199,7)=A0$ GOTO 1093 1088 IF MID(E$,218,7)=A0$ GOTO 1095 1089 GOTO 815 1090 LET A0$=" ": LET A1$="00000":GOTO 900 1093 LET A0$=" ": LET A1$="00000" : GOTO 910 1095 LET A0$=" ": LET A1$="00000": GOTO 920 1100 CLOSE 1 1105 IF K=0 GOTO 1120 1110 CHAIN "EXP051" 1120 STOP 1125 END