|
|
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: 6240 (0x1860)
Types: TextFile
Notes: Mikados_K
Names: »NBTMAIN.K«
└─⟦a3d38fea3⟧ Bits:30008985 PRODUKTION NBT.
└─⟦this⟧ »NBTMAIN.K«
PROCEDURE MAINTAIN;
VAR KARMPROFIL,
RAMMEPROFIL,
POST1,
VKARM:INTEGER;
RAMME16:AR116;
VBESLAG:AR14;
VBREDDE:AR13;
VHØJDE:AR13;
KBESLAG,
KFORSTÆRK:AR14;
KVREGEL,
KLREGEL:AR13;
FARVEKODE,
FARVENR:DOBBTAL;
GLASKODE,
GLASNR:AR13;
GLASTYPE:INTEGER;
J:INTEGER;
BEGIN
ÅBEN;
POS:=1;NULLER(1):=0;NULLER(2):=0;
REPEAT
BEGIN
OLINIE.ORDRENR:=ORDRENUM;OLINIE.POSITION:=POS;KGUMMI:=NULLER;PLACERING:=0;
GETREC(OLIZ.H,OLIF,OLINIE.A);
IF (IER<>0) AND (IER<>-6) THEN IOF (OLIZ.H.FILENAME);
IF IER=0 THEN
BEGIN
CLEARSCREEN;
GOTOXY(15,12);
WRITELN('Nu behandles ordrenr: ',ORDRENUM:4,' Positionsnr: ',POS:3);
IF OLINIE.VINDUENR>0 THEN
BEGIN
CHECKBH (OLINIE.BREDDE);CHECKBH(OLINIE.HØJDE);
HENTKOMBI(KARMPROFIL,RAMMEPROFIL,POST1,FILER(1));
HENTVINDUE(VKARM,RAMME16,VBESLAG,VBREDDE,VHØJDE,FILER(2));
HENTKARM(VKARM,KBESLAG,KFORSTÆRK,KVREGEL,KLREGEL,FILER(3));
BESTEMGLAS(GLASKODE,GLASNR);
KPROFIL.NR:=KARMPROFIL;
GETREC(PROZ.H,PROF,KPROFIL.A);
IF IER<>0 THEN IOF(PROZ.H.FILENAME);
KPPROFIL.NR:=POST1;
GETREC(PROZ.H,PROF,KPPROFIL.A);
IF IER<>0 THEN IOF(PROZ.H.FILENAME);
BESTEMFARVE(FARVEKODE,FARVENR,FILER(4));
FOR I1:=1 TO 16 DO
BEGIN
RAMME.NR:=RAMME16(I1);
IF RAMME.NR>19 THEN
BEGIN
GETREC(RAMZ.H,RAMF,RAMME.A);
IF IER<>0 THEN IOF(RAMZ.H.FILENAME);
GOTOXY(15,14);
WRITELN('Rammenr: ',I1);
DK:=KPROFIL.DIM(1); DKP:=KPPROFIL.DIM(1);
IF RAMME.TYP=3 THEN
BEGIN
DK:=KPROFIL.DIM(2);
DKP:=KPPROFIL.DIM(2);
END;
UDSKRIV(7,BREDDE);
UDSKRIV(7,DK);
UDSKRIV(7,DKP);
REGN(BREDDE,I1,1,(I1-1)MOD 4+1,OLINIE.BLAMBRED,OLINIE.BREDDE,
VBREDDE,RAMME16);
UDSKRIV(7,BREDDE);
REGN(HØJDE,I1,4,(I1+3)DIV 4,OLINIE.BLAMHØJD,OLINIE.HØJDE,VHØJDE,
RAMME16);
J:=1;
WHILE (I1<>OLINIE.RAMMENR(J)) AND (J<3) DO J:=J+1;
IF RAMME.TYP=3 THEN
BEGIN
TILBEHØR.NR:=KARMPROFIL;TILBEHØR.GLASKODE:=GLASKODE(J);
GETREC(TILZ.H,TILF,TILBEHØR.A);
IF IER<>0 THEN IOF(TILZ.H.FILENAME);
FAKODE:=FARVEKODE(1);GLASTYPE:=3;KGUMMI:=TILBEHØR.GLASGUM;
FANR:=FARVENR(1);
END
ELSE
BEGIN
TILBEHØR.NR:=RAMMEPROFIL;TILBEHØR.GLASKODE:=GLASKODE(J);
GETREC(TILZ.H,TILF,TILBEHØR.A);
IF IER<>0 THEN IOF(TILZ.H.FILENAME);
GENER2(6,KPROFIL.TÆTGUM,BREDDE,HØJDE); (*KARMTÆTNING*)
RPROFIL.NR:=RAMMEPROFIL;
GETREC(PROZ.H,PROF,RPROFIL.A);
IF IER<>0 THEN IOF(PROZ.H.FILENAME);
GENER2(7,RPROFIL.TÆTGUM,BREDDE,HØJDE); (*RAMMETÆTNING*)
FAKODE:=FARVEKODE(2);GLASTYPE:=2;FANR:=FARVENR(2);
BESTEMFORSTÆRKNING;
MÅL:=BREDDE;STÆRKR1:=RAMME.VREGEL(REGELNR);
STÆRKR2:=RAMME.LREGEL(REGELNR);STÆRKR:=STÆRKR1;
PROFILBEHANDLING(HØJDE,RAMME.FORSTÆRK,RPROFIL.FORSTÆR,
RAMME.BESLAG,RAMMEPROFIL,RPROFIL.TÆTGUM,
TILBEHØR.GLASGUM); (*RAMMEPROFILER*)
BREDDE:=BREDDE-2*RPROFIL.DIM(1);HØJDE:=HØJDE-2*RPROFIL.DIM(1);
END;
PLACERING:=20;TYPE1:=NULLER;TYPE2:=0;
GENER1(0,TILBEHØR.GLASLIST,BREDDE,HØJDE,0,TILBEHØR.GLASLGUM,NULLER)
; (*GLASLISTE*)
GENER2(9,TILBEHØR.GLASGUM,BREDDE,HØJDE); (*GLASGUMMI*)
GPROFIL.NR:=TILBEHØR.GLASLIST;
GETREC(PROZ.H,PROF,GPROFIL.A);
IF IER<>0 THEN IOF(PROZ.H.FILENAME);
BREDDE:=BREDDE-2*GPROFIL.DIM(1);HØJDE:=HØJDE-2*GPROFIL.DIM(1);
TYPE1(1):=0;TYPE1(2):=GLASNR(J);
GENER2(8,TILBEHØR.GLASLGUM,BREDDE,HØJDE); (*GLASLISTEGUMMI*)
GENER2(GLASTYPE,TYPE1,BREDDE,HØJDE);
END;
END;
I1:=0;FANR:=FARVENR(1);FAKODE:=FARVEKODE(1);
BESTEMFORSTÆRKNING;
MÅL:=OLINIE.BLAMBRED;STÆRKR1:=KVREGEL(REGELNR);
STÆRKR2:=KLREGEL(REGELNR);STÆRKR:=STÆRKR1;
PROFILBEHANDLING(OLINIE.BLAMHØJD,KFORSTÆRK,KPROFIL.FORSTÆR,
KBESLAG,KARMPROFIL,KPROFIL.TÆTGUM,KGUMMI);
(*KARMPROFILER*)
BESTEMFORSTÆRKNING;
FOR PLACERING:=5 TO 19 DO
BEGIN
TYPE1:=NULLER;TYPE2:=0;
POST.KARMNR:=VKARM;POST.NR:=PLACERING-4;
GETREC(POSZ.H,POSF,POST.A);
IF (IER<>0) AND (IER<>-6) THEN IOF(POSZ.H.FILENAME);
IF IER=0 THEN
BEGIN
IF POST.VANDLOD=0 THEN
POSTBEREGN(OLINIE.BREDDE,OLINIE.BLAMBRED)
ELSE
POSTBEREGN(OLINIE.HØJDE,OLINIE.BLAMHØJD);
MÅL:=LÆNGDE;STÆRKR:=POST.FORSTÆRK(REGELNR);
STÆRKNING;
TYPE1:=KPPROFIL.FORSTÆR(TYPER);
GENER2(4,TYPE1,0,LÆNGDE); (*FORSTÆRKNING*)
GENER1(0,POST1,LÆNGDE,MÅL,0,NULLER,NULLER);
(*POSTPROFIL*)
END
ELSE
IER:=0;
END;
POS:=POS+1;
END;
END;
END;
UNTIL (IER=-6) OR (POS=100);
LUK;
END;