2 ! FIXES TIME CARDS, ADJUSTMENTS, PRELISTS 5 ! PROGRAM NAME:"FIXTAP" - BY JAC AND CWR 10 INPUT "WHICH FILE DO YOU WANT TO FIX? - PAF, PLF, OR TCF";F$: IF F$<>"PAF" AND F$<>"PLF" AND F$<>"TCF" THEN 10 15 OPEN "DK1:PAYROL."+F$ FOR INPUT AS FILE 1%:L%=512%:S8%=0%:B1%=-1% 20 IF F$="PAF" THEN F%=13%:O2%=320%:P%=64%:GOTO 35 25 IF F$="PLF" THEN F%=26%:P%=64%:O2%=64%:GOTO 35 30 F%=63%:P%=64%:O2%=320% 35 GET #1%,RECORD F%:FIELD #1%,O2% AS E$,2% AS N$:N%=SWAP%(CVT$%(N$)): PRINT "TOTAL ENTRIES IN ";F$,N% 40 INPUT "INDEX OR SERC";I$:GOTO 200 IF I$="SERC":I%=VAL(I$):IF I%<0% OR I%>N% THEN 40 ELSE IF I%=0% THEN 70 ELSE B%=I%/(L%/P%):O%=(I%-B%*(L%/P%))*P%:B%=B%+1%:W%=0%:GET #1%,RECORD B%: FIELD #1%,O% AS E$,P% AS D$:PRINT D$ 45 INPUT "ITEM";I$:IF I$="" THEN IF NOT W% THEN 40 ELSE PUT #1%,RECORD B%: GOTO 40 50 M%=(INSTR(1%,"AMOUCODEDELTEMP#RATEHOUROT SERC",I$)+3%)/4%+1%:GOTO 45 IF F$="TCF" AND M%<3% OR F$<>"TCF" AND M%>5%:ON M% GOTO 45,51,52,150,53,54,55,56,200 51 O1%=O%+25%:L1%=7%:GOSUB 100:GOTO 45 52 O1%=O%+32%:O1%=O1%+16% IF F$="TCF":L1%=16%:GOSUB 100:GOTO 45 53 O1%=O%+15%:O1%=O1%+9% IF F$="TCF":L1%=4%:GOSUB 100:S8%=1% IF V1$<>"":GOTO 45 54 O1%=O%+34%:L1%=4%:GOSUB 100:GOTO 45 55 O1%=O%+38%:L1%=5%:GOSUB 100:GOTO 45 56 O1%=O%+43%:L1%=5%:GOSUB 100:GOTO 45 70 GET #1%,RECORD F%:FIELD #1%,O2% AS E$,2% AS N$:LSET N$=CVT%$(SWAP%(N%)) :PUT #1%,RECORD F%:PRINT "THERE ARE NOW";N%;"ENTRIES IN ",F$ 73 GOTO 75 IF S8%=0%:O1%=15%:O1%=24% IF F$="TCF":GOSUB 300 75 CLOSE 1%:INPUT "MORE UPDATES? - Y OR N";B$:IF B$="Y" THEN 10 ELSE STOP 100 FIELD #1%,O1% AS E$,L1% AS V$:PRINT I$,V$,:INPUT V1$:IF V1$="" THEN 105 ELSE LSET V$=V1$:W%=-1% 105 PRINT ,V$:RETURN 150 N%=N%-1%:FOR J%=I% TO N%:B%=J%/(L%/P%)+1%:GET #1%,RECORD B% 155 O%=(J%-(B%-1%)*(L%/P%))*P%:IF O%"" THEN S9%=1%:S9$=S$ 210 FOR I%=S9% TO N% : B%=I%/(L%/P%):O%=(I%-B%*(L%/P%))*P%+O1% 220 B%=B%+1%:GET #1%,RECORD B% IF B%<>B1%:B1%=B%:FIELD#1%,O% AS E$,L1% AS S1$ 230 GOTO 240 IF S9$<>S1$:FIELD #1%,O%-O1% AS E$,P% AS D$:PRINT D$:S9%=I%+1% :O%=O%-O1%:GOTO 45 240 NEXT I%:PRINT "NOT FOUND":GOTO 40 300 B1%=0%:PRINT "EMP# WAS CHANGED SO "+F$+" WILL BE REORDERED" 320 FOR I%=1% TO N%-1%:T1$=FNF1$(I%+1%)+"":GOTO 400 IF FNF1$(I%)<=T1$ 340 V$=D$+"":T$=FNF$(I%+1%)+"":LSET D$=V$:W%=1% 350 FOR J%=I% TO 2% STEP -1%:IF FNF1$(J%-1%)<=T1$ THEN V$=FNF$(J%):LSET D$=T$: W%=1%:GOTO 400 370 GOTO 375 IF O%=448%:FIELD #1%,O%+64% AS E$,64% AS V$:LSET V$=D$:W%=1%: GOTO 380 375 V$=D$+"":V1$=FNF$(J%):LSET D$=V$:W%=1% 380 NEXT J%:V$=FNF$(1%):LSET D$=T$:W%=1% 400 NEXT I%:PUT #1%,RECORD B1% IF W%=1%:W%=0%:RETURN 410 DEF FNF$(K%):B%=K%/8%:O%=(K%-B%*8%)*P%:B%=B%+1%:GOTO 420 IF B%=B1%: PUT #1%,RECORD B1% IF W%=1%:W%=0%:B1%=B%:GET #1%,RECORD B1% 420 FIELD #1%,O% AS E$,64% AS D$:FNF$=D$:FNEND 430 DEF FNF1$(K1%):E$=FNF$(K1%):FIELD #1%,O%+O1% AS E$,4% AS N$:FNF1$=N$:FNEND 500 END