|
|
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: 11004 (0x2afc)
Types: SPC/1-COMAL-BIN
Notes: Mikados_B
Names: »JOURNAL.B«
└─⟦385f097a1⟧ Bits:30008988 SPC/1 COMAL programmer til bogføring
└─⟦this⟧ »JOURNAL.B«
└─⟦ff7f7aeee⟧ Bits:30009007 NBT 15/3-84
└─⟦this⟧ »JOURNAL.B«
0900 PROC INLØNMOD(N) 0902 GET FIL1$,G*N-E:POST1$ 0904 GET FIL1$,G*N:POST2$,C1,C2,LT,LF,LR,LA,RPI,K1,K2,FG,FD 0906 EXEC FEJL(E,N,FIL1$) 0908 ENDPROC 0910 PROC NÆSTE 0912 REPEAT 0914 LMNR=LMNR+E 0916 LA=E 0918 IF LMNR<=MLMNR THEN 0920 EXEC INLØNMOD(LMNR) 0922 IF LP$<>POST2$(21) THEN LA=B 0924 IF ORK$="A" AND POST2$(24,25)>"89" THEN LA=B 0926 IF ORK$="F" AND POST2$(24,25)<"90" THEN LA=B 0928 ENDIF 0930 UNTIL LA>B 0932 ENDPROC 1000 DIM STARTPER$(8),SLUTPER$(8) 1010 DIM RES$(15),OP1$(12),OP2$(12),TAH$(12) 1020 DIM TOTAL$(W,12),FIL1$(16),LP$(E),ORK$(E),POST1$(71),POST2$(27) 1030 DIM RESUL$(12),RESUL1$(12),TV$(45,11),POST5$(55),MF11$(40),MF12$(50) 1040 DIM FIL$(16),FIL2$(16),POST3$(55),POST4$(34),DAD$(6) 1050 DIM MF1$(16) 1060 TAH$=" 0+" 1070 DIM BL$(79),L$(79),LIN$(12),LIN1$(12) 1080 FOR I=E TO 79 1090 BL$=BL$+" " 1100 NEXT I 1110 PROC CALC(AR3,B1,B2,ES) 1120 RES$=ES$;OP1$=B1$;OP2$=B2$;SI=B;FLAG=B;ART=AR3-6*(AR3>5) 1130 CALL "P641210:REGN" 1140 IF AR3<6 THEN 1150 IF FLAG THEN STOP 1160 ENDIF 1170 ES$=RES$ 1180 ENDPROC 1190 PROC UDTÆL 1200 J=W*(LMNR-E) 1210 FOR K=4 TO W 1220 FOR I=E TO 5 1230 POST5$((I-E)*11+E:11)=TV$((K-E)*5+I) 1240 NEXT I 1250 PUT FIL2$,J+K:POST5$ 1260 NEXT K 1270 EXEC FEJL(-LMNR,-K,FIL2$) 1280 ENDPROC 1290 PROC INDTÆL 1300 J=W*(LMNR-E) 1310 FOR K=4 TO W 1320 GET FIL2$,J+K:POST5$ 1330 FOR I=E TO 5 1340 TV$((K-E)*5+I)=POST5$((I-E)*11+E:11) 1350 NEXT I 1360 NEXT K 1370 EXEC FEJL(LMNR,K,FIL2$) 1380 ENDPROC 1390 PROC SKRIVHOVED 1400 PRINT 1410 SLJNR=SLJNR+E 1420 PRINT USING " SIDE ####":SLJNR; 1425 PRINT " UDSKRIFTSDATO ";DAD$; 1430 PRINT TAB(49);"LØNPERIODEN ";STARTPER$;" / ";SLUTPER$; 1440 LINIE=6 1450 PRINT TAB(35);"LØNJOURNAL" 1460 PRINT TAB(35);"**********" 1470 PRINT " LØN TIMER FERIEB ATP PENSION A-INDK A-SKAT NETTOLØN"; 1480 PRINT " UDBETALT" 1490 PRINT " NR";TAB(18);"LØN";TAB(33);"LØNMODT IALT";TAB(56);"/FRADR"; 1500 PRINT " TIL-PI KONTANT" 1510 ENDPROC 1520 PROC INDVIRK 1530 OPEN FIL$,W 1540 EXEC FEJL(B,B,FIL$) 1550 GET FIL$,E:POST3$ 1560 GET FIL$,G:POST4$,SLJNR,MLMNR,ATPLM 1565 GET FIL$,V:DAD$ 1570 ENDPROC 1580 PROC FEJL(P1,P2,P3) 1590 IF STATUS(P3$)<>B THEN 1600 OUTPUT T 1610 PRINT "FIL-FEJL ";P3$;STATUS(P3$),P1;P2 1620 STOP 1630 ENDIF 1640 ENDPROC 1650 FIL2$="P641220:" 1660 FIL$=FIL2$+"VIRKKART" 1670 EXEC INDVIRK 1675 FIL1$=FIL2$+"LØNMODRG" 1680 OPEN FIL1$,R 1690 FIL2$=FIL2$+"TÆLLEREG" 1700 OPEN FIL2$,W 1710 MF1$="P641210:LØNJOUR" 1720 OPEN MF1$,W 1730 MAXLIN=72 1740 L$=BL$ 1750 GET MF1$:STARTPER$,SLUTPER$,LP$,ORK$ 1760 OUTPUT P 1770 FOR I=E TO W 1780 TOTAL$(I)=TAH$ 1790 NEXT I 1792 LINIE=MAXLIN 1794 IF STARTPER$<>"00-00-00" THEN 1800 EXEC SKRIVHOVED 1810 GET MF1$:LMNR,MF11$ 1820 WHILE LMNR<=MLMNR 1840 IF LINIE>MAXLIN-7 THEN 1850 WHILE LINIE<MAXLIN 1860 PRINT 1870 LINIE=LINIE+E 1880 ENDWHILE 1890 EXEC SKRIVHOVED 1910 ENDIF 1915 LINIE=LINIE+V 1920 GET MF1$:MF12$ 1930 FOR I=E TO 4 1940 RESUL$=MF11$(E+(I-E)*10:10) 1950 EXEC CALC(B,RESUL$,TOTAL$(I),TOTAL$(I)) 1960 IF MF11$(I*10)="+" THEN MF11$(I*10)=" " 1970 NEXT I 1980 FOR I=5 TO W 1990 RESUL$=MF12$(E+(I-5)*10:10) 2000 EXEC CALC(B,RESUL$,TOTAL$(I),TOTAL$(I)) 2010 IF MF12$((I-4)*10)="+" THEN MF12$((I-4)*10)=" " 2020 NEXT I 2030 PRINT USING "####":LMNR; 2040 PRINT TAB(7);MF11$(E,10);TAB(23);MF11$(11,20);TAB(38);MF11$(21,30); 2050 PRINT TAB(54);MF11$(31,40);TAB(70);MF12$(E,10); 2060 PRINT TAB(15);MF12$(11,20);TAB(31);MF12$(21,30);TAB(46);MF12$(31,40); 2070 PRINT TAB(62);MF12$(41,50) 2075 PRINT "************************************************************"; 2076 PRINT "*******************"; 2080 GET MF1$:LMNR,MF11$ 2090 ENDWHILE 2100 FOR I=E TO W 2110 IF TOTAL$(I,12)="+" THEN TOTAL$(I,12)=" " 2120 NEXT I 2130 PRINT " ***";TOTAL$(E);TAB(21);TOTAL$(G);TAB(36);TOTAL$(V); 2140 PRINT TAB(52);TOTAL$(4);TAB(68);TOTAL$(5); 2150 PRINT TAB(13);TOTAL$(6);TAB(29);TOTAL$(7);TAB(44);TOTAL$(8);TAB(60); 2160 PRINT TOTAL$(W) 2170 LINIE=LINIE+G 2175 ENDIF 2180 IF LINIE>MAXLIN-22 THEN 2190 WHILE LINIE<MAXLIN 2200 PRINT 2210 LINIE=LINIE+E 2220 ENDWHILE 2230 PRINT 2240 SLJNR=SLJNR+E 2250 PRINT USING " SIDE ####":SLJNR; 2251 PRINT " UDSKRIFTSDATO ";DAD$; 2252 PRINT TAB(49);"LØNPERIODEN ";STARTPER$;" / ";SLUTPER$; 2253 PRINT 2254 PRINT 2255 PRINT 2256 LINIE=5 2258 ENDIF 2260 LINIE=LINIE+20 2270 PRINT " Heraf" 2280 GET MF1$:TOTAL$(E),TOTAL$(G),TOTAL$(V),TOTAL$(4),TOTAL$(5),TOTAL$(6) 2290 TOTAL$(8)=TOTAL$(6) 2300 FOR I=E TO 6 2310 IF TOTAL$(I,12)="+" THEN TOTAL$(I,12)=" " 2320 NEXT I 2330 PRINT TAB(6);"LA 40 Ferietillæg";TAB(36);TOTAL$(E) 2340 PRINT TAB(6);"LA 41 Sygedagpenge";TAB(36);TOTAL$(G) 2350 PRINT TAB(6);"LA 42 SH-forskud";TAB(36);TOTAL$(V) 2360 PRINT TAB(6);"LA*84 Trækfri A-indk";TAB(36);TOTAL$(4) 2370 PRINT TAB(6);"LA 57-59 Nettoløndele";TAB(52);TOTAL$(5) 2380 PRINT " Ferie og SH" 2390 PRINT " opgørelse" 2400 PRINT TAB(6);"LA 70 Feriep til beskatn";TAB(36);TOTAL$(6) 2410 GET MF1$:TOTAL$(E),TOTAL$(G),TOTAL$(V),TOTAL$(4),TOTAL$(5),TOTAL$(6) 2420 EXEC CALC(B,TOTAL$(8),TOTAL$(G),TOTAL$(8)) 2421 EXEC CALC(B,TOTAL$(8),TOTAL$(V),TOTAL$(8)) 2422 EXEC CALC(B,TOTAL$(8),TOTAL$(5),TOTAL$(8)) 2423 EXEC CALC(B,TOTAL$(8),TOTAL$(6),TOTAL$(8)) 2424 EXEC CALC(B,TOTAL$(E),TOTAL$(4),TOTAL$(7)) 2430 FOR I=E TO 6 2440 IF TOTAL$(I,12)="+" THEN TOTAL$(I,12)=" " 2450 NEXT I 2460 PRINT TAB(6);"LA*71 A-skat";TAB(44);TOTAL$(E) 2470 PRINT 2480 PRINT TAB(6);"LA*90 Beregnede feriep";TAB(36);TOTAL$(G) 2490 PRINT TAB(6);"LA*91 Sygeferiepenge";TAB(36);TOTAL$(V) 2500 PRINT TAB(6);"LA*92 A-skat";TAB(44);TOTAL$(4) 2510 PRINT 2520 PRINT TAB(6);"LA*95 SH-opsparing";TAB(36);TOTAL$(5) 2530 PRINT TAB(6);"LA*96 SH-forskud";TAB(36);TOTAL$(6) 2550 GET MF1$:TOTAL$(E),TOTAL$(G),TOTAL$(V),TOTAL$(4) 2560 EXEC CALC(B,TOTAL$(E),TOTAL$(7),TOTAL$(7)) 2570 EXEC CALC(B,TOTAL$(G),TOTAL$(V),TOTAL$(6)) 2580 EXEC CALC(B,TOTAL$(4),TOTAL$(6),TOTAL$(6)) 2590 FOR I=E TO 8 2600 IF TOTAL$(I,12)="+" THEN TOTAL$(I,12)=" " 2610 NEXT I 2620 PRINT TAB(6);"LA*97 A-skat";TAB(44);TOTAL$(E) 2630 PRINT TAB(6);"**";TAB(36);TOTAL$(8) 2640 PRINT TAB(44);TOTAL$(7) 2645 IF STARTPER$<>"00-00-00" THEN 2650 TOTAL$(W)=TOTAL$(6) 2660 TOTAL$(8)=TOTAL$(4) 2670 TOTAL$(7)=TOTAL$(V) 2680 TOTAL$(6)=TOTAL$(G) 2690 FOR I=E TO 4 2700 TOTAL$(I)=TAH$ 2710 NEXT I 2720 LMNR=B 2730 IF LINIE>MAXLIN-10 THEN 2740 WHILE LINIE<MAXLIN 2750 PRINT 2760 LINIE=LINIE+E 2770 ENDWHILE 2780 PRINT 2785 SLJNR=SLJNR+E 2790 PRINT USING " SIDE ####":SLJNR; 2795 PRINT TAB(49);"LØNPERIODEN ";STARTPER$;" / ";SLUTPER$; 2797 PRINT 2798 PRINT 2800 PRINT 2810 LINIE=5 2820 ENDIF 2825 PRINT " Rettelse i særlige årstælleværker" 2830 PRINT " Lønnr";TAB(14);"Trækpligtig A-indk Trækfri A-indk";TAB(57); 2840 PRINT "A-skat" 2850 LINIE=LINIE+G 2860 REPEAT 2870 EXEC NÆSTE 2880 IF LMNR<=MLMNR THEN 2890 EXEC INDTÆL 2900 EXEC CALC(E,TV$(36),TV$(35),RESUL$) 2910 EXEC CALC(E,TV$(39),TV$(38),RESUL1$) 2920 EXEC CALC(E,TV$(42),TV$(41),LIN$) 2930 TV$(35)=TAH$(G:11);TV$(36)=TAH$(G:11) 2940 TV$(38)=TAH$(G:11);TV$(39)=TAH$(G:11) 2950 TV$(41)=TAH$(G:11);TV$(42)=TAH$(G:11) 2960 OUTP=B 2970 EXEC CALC(4,RESUL$,TAH$,RESUL$) 2980 IF SI<>B THEN 2990 OUTP=E 3000 EXEC CALC(B,RESUL$,TOTAL$(E),TOTAL$(E)) 3010 ENDIF 3020 EXEC CALC(4,RESUL1$,TAH$,RESUL1$) 3030 IF SI<>B THEN 3040 OUTP=E 3050 EXEC CALC(B,RESUL1$,TOTAL$(G),TOTAL$(G)) 3060 ENDIF 3070 EXEC CALC(4,LIN$,TAH$,LIN$) 3080 IF SI<>B THEN 3090 OUTP=E 3100 EXEC CALC(B,LIN$,TOTAL$(V),TOTAL$(V)) 3110 ENDIF 3120 IF OUTP THEN 3130 LINIE=LINIE+E 3140 IF LINIE>MAXLIN-6 THEN 3150 WHILE LINIE<MAXLIN 3160 PRINT 3170 LINIE=LINIE+E 3180 ENDWHILE 3190 PRINT 3195 SLJNR=SLJNR+E 3196 PRINT USING " SIDE ####":SLJNR; 3198 PRINT " UDSKRIFTSDATO ";DAD$; 3200 PRINT TAB(49);"LØNPERIODEN ";STARTPER$;" / ";SLUTPER$; 3205 PRINT 3207 PRINT 3210 PRINT 3220 LINIE=5 3240 PRINT " Lønnr";TAB(14);"Trækpligtig A-indk Trækfri A-indk";TAB(57); 3250 PRINT "A-skat" 3260 LINIE=LINIE+V 3262 ENDIF 3264 IF RESUL$(12)="+" THEN RESUL$(12)=" " 3266 IF RESUL1$(12)="+" THEN RESUL1$(12)=" " 3268 IF LIN$(12)="+" THEN LIN$(12)=" " 3270 PRINT USING "####":LMNR; 3272 PRINT TAB(21);RESUL$;TAB(36);RESUL1$;TAB(52);LIN$ 3275 ENDIF 3277 EXEC UDTÆL 3278 ENDIF 3279 UNTIL LMNR=>MLMNR 3280 FOR I=E TO V 3290 IF TOTAL$(I,12)="+" THEN TOTAL$(I,12)=" " 3300 NEXT I 3310 PRINT " ***";TAB(21);TOTAL$(E);TAB(36);TOTAL$(G);TAB(52);TOTAL$(V) 3320 FOR I=E TO V 3330 TOTAL$(I)=TAH$ 3340 NEXT I 3345 PRINT 3347 LINIE=LINIE+E 3350 LMNR=B 3360 IF LINIE>MAXLIN-10 THEN 3370 WHILE LINIE<MAXLIN 3380 PRINT 3390 LINIE=LINIE+E 3400 ENDWHILE 3410 PRINT 3415 SLJNR=SLJNR+E 3420 PRINT USING " SIDE ####":SLJNR; 3421 PRINT " UDSKRIFTSDATO ";DAD$; 3422 PRINT TAB(49);"LØNPERIODEN ";STARTPER$;" / ";SLUTPER$; 3425 PRINT 3427 PRINT 3430 PRINT 3440 LINIE=5 3450 ENDIF 3455 PRINT " Rettelse i tælleværker til brug for ferie- og SH-opgørelse" 3460 PRINT " Lønnr";TAB(18);"Sygeferiepenge Beregn feriep SH-opsparing"; 3470 PRINT " SH-forskud" 3480 LINIE=LINIE+G 3490 REPEAT 3500 EXEC NÆSTE 3510 IF LMNR<=MLMNR THEN 3520 EXEC INDTÆL 3530 EXEC CALC(E,TV$(19),TV$(18),RESUL$) 3540 EXEC CALC(E,TV$(22),TV$(21),RESUL1$) 3550 EXEC CALC(E,TV$(25),TV$(24),LIN$) 3555 EXEC CALC(E,TV$(28),TV$(27),LIN1$) 3560 TV$(18)=TAH$(G:11);TV$(19)=TAH$(G:11) 3570 TV$(21)=TAH$(G:11);TV$(22)=TAH$(G:11) 3580 TV$(24)=TAH$(G:11);TV$(25)=TAH$(G:11) 3585 TV$(27)=TAH$(G:11);TV$(28)=TAH$(G:11) 3590 OUTP=B 3600 EXEC CALC(4,RESUL$,TAH$,RESUL$) 3610 IF SI<>B THEN 3620 OUTP=E 3630 EXEC CALC(B,RESUL$,TOTAL$(E),TOTAL$(E)) 3640 ENDIF 3650 EXEC CALC(4,RESUL1$,TAH$,RESUL1$) 3660 IF SI<>B THEN 3670 OUTP=E 3680 EXEC CALC(B,RESUL1$,TOTAL$(G),TOTAL$(G)) 3690 ENDIF 3700 EXEC CALC(4,LIN$,TAH$,LIN$) 3710 IF SI<>B THEN 3720 OUTP=E 3730 EXEC CALC(B,LIN$,TOTAL$(V),TOTAL$(V)) 3740 ENDIF 3741 EXEC CALC(4,LIN1$,TAH$,LIN1$) 3742 IF SI<>B THEN 3743 OUTP=E 3744 EXEC CALC(B,LIN1$,TOTAL$(4),TOTAL$(4)) 3745 ENDIF 3750 IF OUTP THEN 3760 LINIE=LINIE+E 3770 IF LINIE>MAXLIN-6 THEN 3780 WHILE LINIE<MAXLIN 3790 PRINT 3800 LINIE=LINIE+E 3810 ENDWHILE 3820 PRINT 3825 SLJNR=SLJNR+E 3830 PRINT USING " SIDE ####":SLJNR; 3831 PRINT " UDSKRIFTSDATO ";DAD$; 3832 PRINT TAB(49);"LØNPERIODEN ";STARTPER$;" / ";SLUTPER$; 3835 PRINT 3837 PRINT 3840 PRINT 3850 LINIE=5 3870 PRINT " Lønnr";TAB(18);"Sygeferiepenge Beregn feriep SH-opsparing"; 3880 PRINT " SH-forskud" 3890 LINIE=LINIE+V 3900 ENDIF 3901 IF RESUL$(12)="+" THEN RESUL$(12)=" " 3902 IF RESUL1$(12)="+" THEN RESUL1$(12)=" " 3903 IF LIN$(12)="+" THEN LIN$(12)=" " 3904 IF LIN1$(12)="+" THEN LIN1$(12)=" " 3905 PRINT USING "####":LMNR; 3906 PRINT TAB(21);RESUL$;TAB(36);RESUL1$;TAB(52);LIN$;TAB(68);LIN1$; 3910 ENDIF 3912 EXEC UDTÆL 3915 ENDIF 3920 UNTIL LMNR=>MLMNR 3930 FOR I=E TO 4 3940 IF TOTAL$(I,12)="+" THEN TOTAL$(I,12)=" " 3950 NEXT I 3960 PRINT " ***";TAB(21);TOTAL$(E);TAB(36);TOTAL$(G);TAB(52);TOTAL$(V); 3970 PRINT TAB(68);TOTAL$(4); 3980 PRINT 3990 LINIE=LINIE+G 4000 IF LINIE>MAXLIN-8 THEN 4010 WHILE LINIE<MAXLIN 4020 PRINT 4030 LINIE=LINIE+E 4040 ENDWHILE 4050 PRINT 4055 SLJNR=SLJNR+E 4060 PRINT USING " SIDE ####":SLJNR; 4061 PRINT " UDSKRIFTSDATO ";DAD$; 4062 PRINT TAB(49);"LØNPERIODEN ";STARTPER$;" / ";SLUTPER$; 4065 PRINT 4067 PRINT 4070 PRINT 4080 LINIE=5 4090 ENDIF 4100 PRINT " Beregnet i" 4110 PRINT " Perioden" 4120 PRINT TAB(6);"LA 72 Sygeferiepenge";TAB(52);TOTAL$(6) 4130 PRINT TAB(6);"LA*78 Beregnede feriep";TAB(52);TOTAL$(7) 4140 PRINT TAB(6);"LA*79 SH-opsparing";TAB(52);TOTAL$(8) 4150 PRINT TAB(6);"**";TAB(52);TOTAL$(W) 4160 LINIE=LINIE+7 4161 ENDIF 4162 WHILE LINIE<MAXLIN 4164 PRINT 4165 LINIE=LINIE+E 4166 ENDWHILE 4170 PUT FIL$,E:POST3$ 4180 PUT FIL$,G:POST4$,SLJNR,MLMNR,ATPLM 4190 CLOSE 4195 OUTPUT T 4197 IF STARTPER$<>"00-00-00" THEN 4200 CHAIN "P641210:LFRADRAG" 4210 ELSE 4220 CHAIN "P641210:STARTB" 4230 ENDIF