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

⟦bedc65da6⟧ SPC/1-COMAL-BIN

    Length: 6341 (0x18c5)
    Types: SPC/1-COMAL-BIN
    Notes: Mikados_B
    Names: »AFSLJOUR.B«

Derivation

└─⟦385f097a1⟧ Bits:30008988 SPC/1 COMAL programmer til bogføring
    └─⟦this⟧ »AFSLJOUR.B« 
└─⟦ff7f7aeee⟧ Bits:30009007 NBT	15/3-84
    └─⟦this⟧ »AFSLJOUR.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),DAD$(6)
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)
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=5
1450 PRINT TAB(35);"LØNJOURNAL"
1460 PRINT TAB(35);"**********"
1470 PRINT
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$,R
1730 MAXLIN=72
1740 L$=BL$
1745 CURSOR E,11
1750 GET MF1$:STARTPER$,SLUTPER$,LP$,ORK$,MFD
1760 OUTPUT P
1770 FOR I=E TO W
1780 TOTAL$(I)=TAH$
1790 NEXT I
1800 EXEC SKRIVHOVED
2820 LMNR=B
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 RESUL$(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);
3990 LINIE=LINIE+G
4010 WHILE LINIE<MAXLIN
4020 PRINT
4030 LINIE=LINIE+E
4040 ENDWHILE
4170 PUT FIL$,E:POST3$
4180 PUT FIL$,G:POST4$,SLJNR,MLMNR,ATPLM
4190 CLOSE
4195 OUTPUT T
4200 CHAIN "P641210:LFERIE"

Full view