|
|
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: »ÅRSOPL.K«
└─⟦385f097a1⟧ Bits:30008988 SPC/1 COMAL programmer til bogføring
└─⟦this⟧ »ÅRSOPL.K«
0110DIM STARTPER$(8),SLUTPER$(8),LP$(E),ORK$(E) 0120DIM RES$(15),OP1$(12),OP2$(12),TAH$(12),TRE$(12) 0130DIM TOTAL$(4,12),L$(12),LIN$(12) 0140DIM RESUL$(12),RESUL1$(12),TV$(45,11) 0150DIM FIL$(16),FIL2$(16),POST1$(71),POST2$(27),POST3$(55),POST4$(34) 0160DIM MF1$(16) 0162DIM POST5$(55) 0170TAH$=" 0+" 0180TRE$=" 3,00+" 0370PROC CALC(AR3,B1,B2,ES) 0380RES$=ES$;OP1$=B1$;OP2$=B2$;SI=B;FLAG=B;ART=AR3-6*(AR3>5) 0390CALL "P641210:REGN" 0400IF AR3<6 THEN 0410IF FLAG THEN STOP 0420ENDIF 0430ES$=RES$ 0440ENDPROC 0550PROC INDTÆL 0560J=W*(LMNR-E) 0570FOR K=E TO W 0580GET FIL2$,J+K:POST5$ 0590FOR I=E TO 5 0600TV$((K-E)*5+I)=POST5$((I-E)*11+E:11) 0610NEXT I 0620NEXT K 0630EXEC FEJL(LMNR,K,FIL2$) 0640ENDPROC 0800PROC INLØNMOD(N) 0810GET FIL$,G*N-E:POST1$ 0820GET FIL$,G*N:POST2$,C1,C2,LT,LF,LR,LA,RPI,K1,K2,FG,FD 0830EXEC FEJL(E,N,FIL$) 0840ENDPROC 1000PROC UDTÆL 1010J=W*(LMNR-E) 1020FOR K=E TO W 1030FOR I=E TO 5 1040POST5$((I-E)*11+E:11)=TV$((K-E)*5+I) 1050NEXT I 1060PUT FIL2$,J+K:POST5$ 1070NEXT K 1080EXEC FEJL(-LMNR,-K,FIL2$) 1090ENDPROC 1100PROC UDLØNMOD(N) 1110PUT FIL$,G*N-E:POST1$ 1120PUT FIL$,G*N:POST2$,C1,C2,LT,LF,LR,LA,RPI,K1,K2,FG,FD 1130EXEC FEJL(G,N,FIL$) 1140ENDPROC 1150PROC CONV(NR2,OK22,CIF) 1160OK2=OK22 1170NR2$="" 1180REPEAT 1190NR2$=CHR((OK2 MOD 10)+48)+NR2$ 1200CIF=CIF-E 1210OK2=OK2 DIV 10 1220IF CIF<B AND OK2=B THEN CIF=B 1230UNTIL CIF=B 1240ENDPROC 1890PROC INDVIRK 1900OPEN FIL$,R 1910EXEC FEJL(B,B,FIL$) 1920GET FIL$,E:POST3$ 1930GET FIL$,G:POST4$,SLJNR,MLMNR,ATPLM 1940ENDPROC 1950PROC FEJL(P1,P2,P3) 1960IF STATUS(P3$)<>B THEN 1970OUTPUT T 1980PRINT "FIL-FEJL ";P3$;STATUS(P3$),P1;P2 1990STOP 2000ENDIF 2010ENDPROC 3440PROC NÆSTE 3450REPEAT 3460LMNR=LMNR+E 3470LA=E 3480IF LMNR<=MLMNR THEN 3490EXEC INLØNMOD(LMNR) 3500IF LP$<>POST2$(21) THEN LA=B 3510IF ORK$="A" AND POST2$(24,25)>"89" THEN LA=B 3520IF ORK$="F" AND POST2$(24,25)<"90" THEN LA=B 3530ENDIF 3540UNTIL LA>B 3550ENDPROC 8182TOTAL$(E)=TAH$;TOTAL$(G)=TAH$ 8183TOTAL$(V)=TAH$;TOTAL$(4)=TAH$ 8190FIL$="P641220:VIRKKART" 8200EXEC INDVIRK 8210CLOSE FIL$ 8220FIL$="P641220:LØNMODRG" 8230OPEN FIL$,W 8260FIL2$="P641220:TÆLLEREG" 8270OPEN FIL2$,W 8291MF1$="P641210:LØNJOUR" 8292OPEN MF1$,R 8300INPUT "Isæt årsoplysningssedler, RETURN ",LP$ 8350MAXLIN=72 8360LMNR=B 8370ABL=B 8372GET MF1$:STARTPER$,SLUTPER$,LP$,ORK$,MFD 8410STD=100000*(ORD(STARTPER$(E))-48)+10000*(ORD(STARTPER$(G))-48) 8420STD=STD+1000*(ORD(STARTPER$(4))-48)+100*(ORD(STARTPER$(5))-48) 8430STD=STD+10*(ORD(STARTPER$(7))-48)+ORD(STARTPER$(8))-48 8440SLD=100000*(ORD(SLUTPER$(E))-48)+10000*(ORD(SLUTPER$(G))-48) 8450SLD=SLD+1000*(ORD(SLUTPER$(4))-48)+100*(ORD(SLUTPER$(5))-48) 8460SLD=SLD+10*(ORD(SLUTPER$(7))-48)+ORD(SLUTPER$(8))-48 8465CURSOR E,14 8470OUTPUT P 8490REPEAT 8500EXEC NÆSTE 8510IF LMNR<=MLMNR THEN 8520EXEC INDTÆL 8521EXEC CALC(B,TV$(34),TV$(37),RESUL$) 8522EXEC CALC(G,TRE$,TV$(43),RESUL1$) 8523TV$(34)=RESUL$(G:11) 8524TV$(43)=RESUL1$(G:11) 8529ABL=ABL+E 8530EXEC CALC(B,TV$(43),TOTAL$(E),TOTAL$(E)) 8540EXEC CALC(B,TV$(34),TOTAL$(G),TOTAL$(G)) 8542EXEC CALC(B,TV$(40),TOTAL$(V),TOTAL$(V)) 8544EXEC CALC(B,TV$(37),TOTAL$(4),TOTAL$(4)) 8545TV$(34,W,11)="00 " 8546TV$(43,W,11)="00 " 8547TV$(40,W,11)="00 " 8548TV$(37,W,11)="00 " 8550IF STD>LA THEN 8560STDA=STD 8570ELSE 8580STDA=LA 8590ENDIF 8600IF SLD<FD OR FD=B THEN 8602SLDA=SLD 8604ELSE 8606SLDA=FD 8608ENDIF 8609IF FD>B THEN LA=B;FD=B 8610FOR I=E TO 7 8612IF TV$(34,I)=" " THEN TV$(34,I)="*" 8614IF TV$(43,I)=" " THEN TV$(43,I)="*" 8616IF TV$(40,I)=" " THEN TV$(40,I)="*" 8618IF TV$(37,I)=" " THEN TV$(37,I)="*" 8620NEXT I 8622PRINT 8624PRINT 8626PRINT 8628EXEC CONV(L$,C1,6) 8630EXEC CONV(LIN$,C2,4) 8632L$=L$+LIN$ 8634PRINT TAB(W);L$;TAB(58);POST3$(E,7) 8636PRINT 8638PRINT 8640PRINT TAB(46);POST3$(8,32) 8642PRINT TAB(46);POST3$(33,55) 8644PRINT TAB(46);POST4$(E,4);" ";POST4$(5,18) 8646PRINT 8648PRINT TAB(W);POST1$(E,25); 8650PRINT USING " ####":LMNR 8652PRINT 8654PRINT TAB(W);POST1$(26,48) 8656PRINT TAB(W);POST1$(49,71) 8658PRINT TAB(W);POST2$(E,4);" ";POST2$(5,18) 8660PRINT 8662PRINT 8664PRINT TAB(24);STDA;"-";SLDA;" " 8666PRINT 8668PRINT 8670PRINT TAB(68);"*";TV$(43,E,7) 8672PRINT 8674PRINT 8676PRINT TAB(68);"*";TV$(34,E,7) 8678PRINT 8680PRINT 8682PRINT 8684PRINT 8686PRINT TAB(68);"*";TV$(40,E,7) 8688PRINT 8690PRINT 8692PRINT TAB(68);"*";TV$(37,E,7) 8694FOR I=E TO 45 8696TV$(I)=TAH$(G:11) 8698NEXT I 8700LT=B 8702LF=B 8704LR=B 8706FOR I=33 TO 48 8708PRINT 8710NEXT I 8712EXEC UDLØNMOD(LMNR) 8714EXEC UDTÆL 8880ENDIF 8890UNTIL LMNR=>MLMNR 8900FOR I=E TO 4 8910FOR J=E TO 8 8920IF TOTAL$(I,J)=" " THEN TOTAL$(I,J)="*" 8930NEXT J 8940NEXT I 8950PRINT 8960PRINT 8970PRINT 8980PRINT TAB(58);POST3$(E,7) 8990PRINT 9000PRINT 9010PRINT TAB(46);POST3$(8,32) 9020PRINT TAB(46);POST3$(33,55) 9030PRINT TAB(46);POST4$(E,4);" ";POST4$(5,18) 9040PRINT 9050PRINT 9060PRINT 9070PRINT TAB(W);"**T O T A L B I L A G**" 9080PRINT TAB(W);"ANTAL BILAG";ABL;" " 9090PRINT 9100PRINT 9110PRINT 9120PRINT 9130PRINT 9140PRINT 9150PRINT TAB(68);TOTAL$(E,E,8) 9160PRINT 9170PRINT 9180PRINT TAB(68);TOTAL$(G,E,8) 9190PRINT 9200PRINT 9210PRINT 9220PRINT 9230PRINT TAB(68);TOTAL$(V,E,8) 9240PRINT 9250PRINT 9260PRINT TAB(68);TOTAL$(4,E,8) 9265FOR I=33 TO 48 9270PRINT 9275NEXT I 9730CLOSE 9735OUTPUT T 9740CHAIN "P641210:STARTB"