DataMuseum.dk

Presents historical artifacts from the history of:

MIKADOS

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about MIKADOS

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦ada3839d0⟧ SPC/1-COMAL-BIN

    Length: 11004 (0x2afc)
    Types: SPC/1-COMAL-BIN
    Notes: Mikados_B
    Names: »JOURNAL.B«

Derivation

└─⟦385f097a1⟧ Bits:30008988 SPC/1 COMAL programmer til bogføring
    └─⟦this⟧ »JOURNAL.B« 
└─⟦ff7f7aeee⟧ Bits:30009007 NBT	15/3-84
    └─⟦this⟧ »JOURNAL.B« 

SPC/1 COMAL-BIN

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

Full view