|
|
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: 12640 (0x3160)
Types: TextFile
Notes: Mikados_K
Names: »JOURNAL.K«
└─⟦385f097a1⟧ Bits:30008988 SPC/1 COMAL programmer til bogføring
└─⟦this⟧ »JOURNAL.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) 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),DAD$(6) 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=6 1450PRINT TAB(35);"LØNJOURNAL" 1460PRINT TAB(35);"**********" 1470PRINT " LØN TIMER FERIEB ATP PENSION A-INDK A-SKAT NETTOLØN"; 1480PRINT " UDBETALT" 1490PRINT " NR";TAB(18);"LØN";TAB(33);"LØNMODT IALT";TAB(56);"/FRADR"; 1500PRINT " TIL-PI KONTANT" 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$,W 1730MAXLIN=72 1740L$=BL$ 1750GET MF1$:STARTPER$,SLUTPER$,LP$,ORK$ 1760OUTPUT P 1770FOR I=E TO W 1780TOTAL$(I)=TAH$ 1790NEXT I 1792LINIE=MAXLIN 1794IF STARTPER$<>"00-00-00" THEN 1800EXEC SKRIVHOVED 1810GET MF1$:LMNR,MF11$ 1820WHILE LMNR<=MLMNR 1840IF LINIE>MAXLIN-7 THEN 1850WHILE LINIE<MAXLIN 1860PRINT 1870LINIE=LINIE+E 1880ENDWHILE 1890EXEC SKRIVHOVED 1910ENDIF 1915LINIE=LINIE+V 1920GET MF1$:MF12$ 1930FOR I=E TO 4 1940RESUL$=MF11$(E+(I-E)*10:10) 1950EXEC CALC(B,RESUL$,TOTAL$(I),TOTAL$(I)) 1960IF MF11$(I*10)="+" THEN MF11$(I*10)=" " 1970NEXT I 1980FOR I=5 TO W 1990RESUL$=MF12$(E+(I-5)*10:10) 2000EXEC CALC(B,RESUL$,TOTAL$(I),TOTAL$(I)) 2010IF MF12$((I-4)*10)="+" THEN MF12$((I-4)*10)=" " 2020NEXT I 2030PRINT USING "####":LMNR; 2040PRINT TAB(7);MF11$(E,10);TAB(23);MF11$(11,20);TAB(38);MF11$(21,30); 2050PRINT TAB(54);MF11$(31,40);TAB(70);MF12$(E,10); 2060PRINT TAB(15);MF12$(11,20);TAB(31);MF12$(21,30);TAB(46);MF12$(31,40); 2070PRINT TAB(62);MF12$(41,50) 2075PRINT "************************************************************"; 2076PRINT "*******************"; 2080GET MF1$:LMNR,MF11$ 2090ENDWHILE 2100FOR I=E TO W 2110IF TOTAL$(I,12)="+" THEN TOTAL$(I,12)=" " 2120NEXT I 2130PRINT " ***";TOTAL$(E);TAB(21);TOTAL$(G);TAB(36);TOTAL$(V); 2140PRINT TAB(52);TOTAL$(4);TAB(68);TOTAL$(5); 2150PRINT TAB(13);TOTAL$(6);TAB(29);TOTAL$(7);TAB(44);TOTAL$(8);TAB(60); 2160PRINT TOTAL$(W) 2170LINIE=LINIE+G 2175ENDIF 2180IF LINIE>MAXLIN-22 THEN 2190WHILE LINIE<MAXLIN 2200PRINT 2210LINIE=LINIE+E 2220ENDWHILE 2230PRINT 2240SLJNR=SLJNR+E 2250PRINT USING " SIDE ####":SLJNR; 2251PRINT " UDSKRIFTSDATO ";DAD$; 2252PRINT TAB(49);"LØNPERIODEN ";STARTPER$;" / ";SLUTPER$; 2253PRINT 2254PRINT 2255PRINT 2256LINIE=5 2258ENDIF 2260LINIE=LINIE+20 2270PRINT " Heraf" 2280GET MF1$:TOTAL$(E),TOTAL$(G),TOTAL$(V),TOTAL$(4),TOTAL$(5),TOTAL$(6) 2290TOTAL$(8)=TOTAL$(6) 2300FOR I=E TO 6 2310IF TOTAL$(I,12)="+" THEN TOTAL$(I,12)=" " 2320NEXT I 2330PRINT TAB(6);"LA 40 Ferietillæg";TAB(36);TOTAL$(E) 2340PRINT TAB(6);"LA 41 Sygedagpenge";TAB(36);TOTAL$(G) 2350PRINT TAB(6);"LA 42 SH-forskud";TAB(36);TOTAL$(V) 2360PRINT TAB(6);"LA*84 Trækfri A-indk";TAB(36);TOTAL$(4) 2370PRINT TAB(6);"LA 57-59 Nettoløndele";TAB(52);TOTAL$(5) 2380PRINT " Ferie og SH" 2390PRINT " opgørelse" 2400PRINT TAB(6);"LA 70 Feriep til beskatn";TAB(36);TOTAL$(6) 2410GET MF1$:TOTAL$(E),TOTAL$(G),TOTAL$(V),TOTAL$(4),TOTAL$(5),TOTAL$(6) 2420EXEC CALC(B,TOTAL$(8),TOTAL$(G),TOTAL$(8)) 2421EXEC CALC(B,TOTAL$(8),TOTAL$(V),TOTAL$(8)) 2422EXEC CALC(B,TOTAL$(8),TOTAL$(5),TOTAL$(8)) 2423EXEC CALC(B,TOTAL$(8),TOTAL$(6),TOTAL$(8)) 2424EXEC CALC(B,TOTAL$(E),TOTAL$(4),TOTAL$(7)) 2430FOR I=E TO 6 2440IF TOTAL$(I,12)="+" THEN TOTAL$(I,12)=" " 2450NEXT I 2460PRINT TAB(6);"LA*71 A-skat";TAB(44);TOTAL$(E) 2470PRINT 2480PRINT TAB(6);"LA*90 Beregnede feriep";TAB(36);TOTAL$(G) 2490PRINT TAB(6);"LA*91 Sygeferiepenge";TAB(36);TOTAL$(V) 2500PRINT TAB(6);"LA*92 A-skat";TAB(44);TOTAL$(4) 2510PRINT 2520PRINT TAB(6);"LA*95 SH-opsparing";TAB(36);TOTAL$(5) 2530PRINT TAB(6);"LA*96 SH-forskud";TAB(36);TOTAL$(6) 2550GET MF1$:TOTAL$(E),TOTAL$(G),TOTAL$(V),TOTAL$(4) 2560EXEC CALC(B,TOTAL$(E),TOTAL$(7),TOTAL$(7)) 2570EXEC CALC(B,TOTAL$(G),TOTAL$(V),TOTAL$(6)) 2580EXEC CALC(B,TOTAL$(4),TOTAL$(6),TOTAL$(6)) 2590FOR I=E TO 8 2600IF TOTAL$(I,12)="+" THEN TOTAL$(I,12)=" " 2610NEXT I 2620PRINT TAB(6);"LA*97 A-skat";TAB(44);TOTAL$(E) 2630PRINT TAB(6);"**";TAB(36);TOTAL$(8) 2640PRINT TAB(44);TOTAL$(7) 2645IF STARTPER$<>"00-00-00" THEN 2650TOTAL$(W)=TOTAL$(6) 2660TOTAL$(8)=TOTAL$(4) 2670TOTAL$(7)=TOTAL$(V) 2680TOTAL$(6)=TOTAL$(G) 2690FOR I=E TO 4 2700TOTAL$(I)=TAH$ 2710NEXT I 2720LMNR=B 2730IF LINIE>MAXLIN-10 THEN 2740WHILE LINIE<MAXLIN 2750PRINT 2760LINIE=LINIE+E 2770ENDWHILE 2780PRINT 2785SLJNR=SLJNR+E 2790PRINT USING " SIDE ####":SLJNR; 2795PRINT TAB(49);"LØNPERIODEN ";STARTPER$;" / ";SLUTPER$; 2797PRINT 2798PRINT 2800PRINT 2810LINIE=5 2820ENDIF 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 RESUL1$(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); 3980PRINT 3990LINIE=LINIE+G 4000IF LINIE>MAXLIN-8 THEN 4010WHILE LINIE<MAXLIN 4020PRINT 4030LINIE=LINIE+E 4040ENDWHILE 4050PRINT 4055SLJNR=SLJNR+E 4060PRINT USING " SIDE ####":SLJNR; 4061PRINT " UDSKRIFTSDATO ";DAD$; 4062PRINT TAB(49);"LØNPERIODEN ";STARTPER$;" / ";SLUTPER$; 4065PRINT 4067PRINT 4070PRINT 4080LINIE=5 4090ENDIF 4100PRINT " Beregnet i" 4110PRINT " Perioden" 4120PRINT TAB(6);"LA 72 Sygeferiepenge";TAB(52);TOTAL$(6) 4130PRINT TAB(6);"LA*78 Beregnede feriep";TAB(52);TOTAL$(7) 4140PRINT TAB(6);"LA*79 SH-opsparing";TAB(52);TOTAL$(8) 4150PRINT TAB(6);"**";TAB(52);TOTAL$(W) 4160LINIE=LINIE+7 4161ENDIF 4162WHILE LINIE<MAXLIN 4164PRINT 4165LINIE=LINIE+E 4166ENDWHILE 4170PUT FIL$,E:POST3$ 4180PUT FIL$,G:POST4$,SLJNR,MLMNR,ATPLM 4190CLOSE 4195OUTPUT T 4197IF STARTPER$<>"00-00-00" THEN 4200CHAIN "P641210:LFRADRAG" 4210ELSE 4220CHAIN "P641210:STARTB" 4230ENDIF