|
|
DataMuseum.dkPresents historical artifacts from the history of: MIKADOS |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about MIKADOS Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - download
Length: 7584 (0x1da0)
Types: TextFile
Notes: Mikados_K
Names: »AFSLJOUR.K«
└─⟦385f097a1⟧ Bits:30008988 SPC/1 COMAL programmer til bogføring
└─⟦this⟧ »AFSLJOUR.K«
0900PROC INLØNMOD(N) 0902GET FIL1$,G*N-E:POST1$ 0904GET FIL1$,G*N:POST2$,C1,C2,LT,LF,LR,LA,RPI,K1,K2,FG,FD 0906EXEC FEJL(E,N,FIL1$) 0908ENDPROC 0910PROC NÆSTE 0912REPEAT 0914LMNR=LMNR+E 0916LA=E 0918IF LMNR<=MLMNR THEN 0920EXEC INLØNMOD(LMNR) 0922IF LP$<>POST2$(21) THEN LA=B 0924IF ORK$="A" AND POST2$(24,25)>"89" THEN LA=B 0926IF ORK$="F" AND POST2$(24,25)<"90" THEN LA=B 0928ENDIF 0930UNTIL LA>B 0932ENDPROC 1000DIM STARTPER$(8),SLUTPER$(8),DAD$(6) 1010DIM RES$(15),OP1$(12),OP2$(12),TAH$(12) 1020DIM TOTAL$(W,12),FIL1$(16),LP$(E),ORK$(E),POST1$(71),POST2$(27) 1030DIM RESUL$(12),RESUL1$(12),TV$(45,11),POST5$(55),MF11$(40),MF12$(50) 1040DIM FIL$(16),FIL2$(16),POST3$(55),POST4$(34) 1050DIM MF1$(16) 1060TAH$=" 0+" 1070DIM BL$(79),L$(79),LIN$(12),LIN1$(12) 1080FOR I=E TO 79 1090BL$=BL$+" " 1100NEXT I 1110PROC CALC(AR3,B1,B2,ES) 1120RES$=ES$;OP1$=B1$;OP2$=B2$;SI=B;FLAG=B;ART=AR3-6*(AR3>5) 1130CALL "P641210:REGN" 1140IF AR3<6 THEN 1150IF FLAG THEN STOP 1160ENDIF 1170ES$=RES$ 1180ENDPROC 1190PROC UDTÆL 1200J=W*(LMNR-E) 1210FOR K=4 TO W 1220FOR I=E TO 5 1230POST5$((I-E)*11+E:11)=TV$((K-E)*5+I) 1240NEXT I 1250PUT FIL2$,J+K:POST5$ 1260NEXT K 1270EXEC FEJL(-LMNR,-K,FIL2$) 1280ENDPROC 1290PROC INDTÆL 1300J=W*(LMNR-E) 1310FOR K=4 TO W 1320GET FIL2$,J+K:POST5$ 1330FOR I=E TO 5 1340TV$((K-E)*5+I)=POST5$((I-E)*11+E:11) 1350NEXT I 1360NEXT K 1370EXEC FEJL(LMNR,K,FIL2$) 1380ENDPROC 1390PROC SKRIVHOVED 1400PRINT 1410SLJNR=SLJNR+E 1420PRINT USING " SIDE ####":SLJNR; 1425PRINT " UDSKRIFTSDATO ";DAD$; 1430PRINT TAB(49);"LØNPERIODEN ";STARTPER$;" / ";SLUTPER$; 1440LINIE=5 1450PRINT TAB(35);"LØNJOURNAL" 1460PRINT TAB(35);"**********" 1470PRINT 1510ENDPROC 1520PROC INDVIRK 1530OPEN FIL$,W 1540EXEC FEJL(B,B,FIL$) 1550GET FIL$,E:POST3$ 1560GET FIL$,G:POST4$,SLJNR,MLMNR,ATPLM 1565GET FIL$,V:DAD$ 1570ENDPROC 1580PROC FEJL(P1,P2,P3) 1590IF STATUS(P3$)<>B THEN 1600OUTPUT T 1610PRINT "FIL-FEJL ";P3$;STATUS(P3$),P1;P2 1620STOP 1630ENDIF 1640ENDPROC 1650FIL2$="P641220:" 1660FIL$=FIL2$+"VIRKKART" 1670EXEC INDVIRK 1675FIL1$=FIL2$+"LØNMODRG" 1680OPEN FIL1$,R 1690FIL2$=FIL2$+"TÆLLEREG" 1700OPEN FIL2$,W 1710MF1$="P641210:LØNJOUR" 1720OPEN MF1$,R 1730MAXLIN=72 1740L$=BL$ 1745CURSOR E,11 1750GET MF1$:STARTPER$,SLUTPER$,LP$,ORK$,MFD 1760OUTPUT P 1770FOR I=E TO W 1780TOTAL$(I)=TAH$ 1790NEXT I 1800EXEC SKRIVHOVED 2820LMNR=B 2825PRINT " Rettelse i særlige årstælleværker" 2830PRINT " Lønnr";TAB(14);"Trækpligtig A-indk Trækfri A-indk";TAB(57); 2840PRINT "A-skat" 2850LINIE=LINIE+G 2860REPEAT 2870EXEC NÆSTE 2880IF LMNR<=MLMNR THEN 2890EXEC INDTÆL 2900EXEC CALC(E,TV$(36),TV$(35),RESUL$) 2910EXEC CALC(E,TV$(39),TV$(38),RESUL1$) 2920EXEC CALC(E,TV$(42),TV$(41),LIN$) 2930TV$(35)=TAH$(G:11);TV$(36)=TAH$(G:11) 2940TV$(38)=TAH$(G:11);TV$(39)=TAH$(G:11) 2950TV$(41)=TAH$(G:11);TV$(42)=TAH$(G:11) 2960OUTP=B 2970EXEC CALC(4,RESUL$,TAH$,RESUL$) 2980IF SI<>B THEN 2990OUTP=E 3000EXEC CALC(B,RESUL$,TOTAL$(E),TOTAL$(E)) 3010ENDIF 3020EXEC CALC(4,RESUL1$,TAH$,RESUL1$) 3030IF SI<>B THEN 3040OUTP=E 3050EXEC CALC(B,RESUL1$,TOTAL$(G),TOTAL$(G)) 3060ENDIF 3070EXEC CALC(4,LIN$,TAH$,LIN$) 3080IF SI<>B THEN 3090OUTP=E 3100EXEC CALC(B,LIN$,TOTAL$(V),TOTAL$(V)) 3110ENDIF 3120IF OUTP THEN 3130LINIE=LINIE+E 3140IF LINIE>MAXLIN-6 THEN 3150WHILE LINIE<MAXLIN 3160PRINT 3170LINIE=LINIE+E 3180ENDWHILE 3190PRINT 3195SLJNR=SLJNR+E 3196PRINT USING " SIDE ####":SLJNR; 3198PRINT " UDSKRIFTSDATO ";DAD$; 3200PRINT TAB(49);"LØNPERIODEN ";STARTPER$;" / ";SLUTPER$; 3205PRINT 3207PRINT 3210PRINT 3220LINIE=5 3240PRINT " Lønnr";TAB(14);"Trækpligtig A-indk Trækfri A-indk";TAB(57); 3250PRINT "A-skat" 3260LINIE=LINIE+V 3262ENDIF 3264IF RESUL$(12)="+" THEN RESUL$(12)=" " 3266IF RESUL1$(12)="+" THEN RESUL1$(12)=" " 3268IF LIN$(12)="+" THEN LIN$(12)=" " 3270PRINT USING "####":LMNR; 3272PRINT TAB(21);RESUL$;TAB(36);RESUL1$;TAB(52);LIN$ 3275ENDIF 3277EXEC UDTÆL 3278ENDIF 3279UNTIL LMNR=>MLMNR 3280FOR I=E TO V 3290IF TOTAL$(I,12)="+" THEN TOTAL$(I,12)=" " 3300NEXT I 3310PRINT " ***";TAB(21);TOTAL$(E);TAB(36);TOTAL$(G);TAB(52);TOTAL$(V) 3320FOR I=E TO V 3330TOTAL$(I)=TAH$ 3340NEXT I 3345PRINT 3347LINIE=LINIE+E 3350LMNR=B 3360IF LINIE>MAXLIN-10 THEN 3370WHILE LINIE<MAXLIN 3380PRINT 3390LINIE=LINIE+E 3400ENDWHILE 3410PRINT 3415SLJNR=SLJNR+E 3420PRINT USING " SIDE ####":SLJNR; 3421PRINT " UDSKRIFTSDATO ";DAD$; 3422PRINT TAB(49);"LØNPERIODEN ";STARTPER$;" / ";SLUTPER$; 3425PRINT 3427PRINT 3430PRINT 3440LINIE=5 3450ENDIF 3455PRINT " Rettelse i tælleværker til brug for ferie- og SH-opgørelse" 3460PRINT " Lønnr";TAB(18);"Sygeferiepenge Beregn feriep SH-opsparing"; 3470PRINT " SH-forskud" 3480LINIE=LINIE+G 3490REPEAT 3500EXEC NÆSTE 3510IF LMNR<=MLMNR THEN 3520EXEC INDTÆL 3530EXEC CALC(E,TV$(19),TV$(18),RESUL$) 3540EXEC CALC(E,TV$(22),TV$(21),RESUL1$) 3550EXEC CALC(E,TV$(25),TV$(24),LIN$) 3555EXEC CALC(E,TV$(28),TV$(27),LIN1$) 3560TV$(18)=TAH$(G:11);TV$(19)=TAH$(G:11) 3570TV$(21)=TAH$(G:11);TV$(22)=TAH$(G:11) 3580TV$(24)=TAH$(G:11);TV$(25)=TAH$(G:11) 3585TV$(27)=TAH$(G:11);TV$(28)=TAH$(G:11) 3590OUTP=B 3600EXEC CALC(4,RESUL$,TAH$,RESUL$) 3610IF SI<>B THEN 3620OUTP=E 3630EXEC CALC(B,RESUL$,TOTAL$(E),TOTAL$(E)) 3640ENDIF 3650EXEC CALC(4,RESUL1$,TAH$,RESUL1$) 3660IF SI<>B THEN 3670OUTP=E 3680EXEC CALC(B,RESUL1$,TOTAL$(G),TOTAL$(G)) 3690ENDIF 3700EXEC CALC(4,LIN$,TAH$,LIN$) 3710IF SI<>B THEN 3720OUTP=E 3730EXEC CALC(B,LIN$,TOTAL$(V),TOTAL$(V)) 3740ENDIF 3741EXEC CALC(4,LIN1$,TAH$,LIN1$) 3742IF SI<>B THEN 3743OUTP=E 3744EXEC CALC(B,LIN1$,TOTAL$(4),TOTAL$(4)) 3745ENDIF 3750IF OUTP THEN 3760LINIE=LINIE+E 3770IF LINIE>MAXLIN-6 THEN 3780WHILE LINIE<MAXLIN 3790PRINT 3800LINIE=LINIE+E 3810ENDWHILE 3820PRINT 3825SLJNR=SLJNR+E 3830PRINT USING " SIDE ####":SLJNR; 3831PRINT " UDSKRIFTSDATO ";DAD$; 3832PRINT TAB(49);"LØNPERIODEN ";STARTPER$;" / ";SLUTPER$; 3835PRINT 3837PRINT 3840PRINT 3850LINIE=5 3870PRINT " Lønnr";TAB(18);"Sygeferiepenge Beregn feriep SH-opsparing"; 3880PRINT " SH-forskud" 3890LINIE=LINIE+V 3900ENDIF 3901IF RESUL$(12)="+" THEN RESUL$(12)=" " 3902IF RESUL1$(12)="+" THEN RESUL$(12)=" " 3903IF LIN$(12)="+" THEN LIN$(12)=" " 3904IF LIN1$(12)="+" THEN LIN1$(12)=" " 3905PRINT USING "####":LMNR; 3906PRINT TAB(21);RESUL$;TAB(36);RESUL1$;TAB(52);LIN$;TAB(68);LIN1$; 3910ENDIF 3912EXEC UDTÆL 3915ENDIF 3920UNTIL LMNR=>MLMNR 3930FOR I=E TO 4 3940IF TOTAL$(I,12)="+" THEN TOTAL$(I,12)=" " 3950NEXT I 3960PRINT " ***";TAB(21);TOTAL$(E);TAB(36);TOTAL$(G);TAB(52);TOTAL$(V); 3970PRINT TAB(68);TOTAL$(4); 3990LINIE=LINIE+G 4010WHILE LINIE<MAXLIN 4020PRINT 4030LINIE=LINIE+E 4040ENDWHILE 4170PUT FIL$,E:POST3$ 4180PUT FIL$,G:POST4$,SLJNR,MLMNR,ATPLM 4190CLOSE 4195OUTPUT T 4200CHAIN "P641210:LFERIE"