|
|
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: 2496 (0x9c0)
Types: TextFile
Notes: Mikados_K
Names: »DELETE.K«
└─⟦a3d38fea3⟧ Bits:30008985 PRODUKTION NBT.
└─⟦this⟧ »DELETE.K«
└─⟦eb89399bc⟧ Bits:30008990 SOM ISFORIG, MEN KUN K-FILER
└─⟦this⟧ »DELETE.K«
PROCEDURE DELETE(VAR ZO:ISFHEAD;VAR F:ISF;VAR REC:AR);
VAR J,K:INTEGER;
BEGIN
IER:=0;
WITH ZO DO
IF FILEOPEN THEN
IF FILEINIT THEN
BEGIN
FINDPOST(ZO,F,REC);
IF IER=0 THEN
BEGIN
IF RECINUSE>1 THEN
BEGIN
IF BLKENTRY=Z(BLT+(BLKINZONE-1)*ENTRYSIZE+1) THEN
BEGIN
IF BLKENTRY=1 THEN
BEGIN
IF Z(BUT+(BUCINZONE-1)*ENTRYSIZE+1)=1 THEN BUCINUSE:=BUCINUSE-1
ELSE
IF COMPARE(ZO,Z,Z,KEY1,BUT+(BUCINZONE-1)*ENTRYSIZE+2)=0 THEN
BEGIN
K:=BLKINZONE-1;
WHILE (K>0) AND (Z(BLT+(K-1)*ENTRYSIZE+1)=0) DO K:=K-1;
IF K=0 THEN BEGIN WRITE('TABELFEJL 3');K:=K DIV 0 END;
FOR J:=1 TO KEYSIZE DO
Z(BUT+(BUCINZONE-1)*ENTRYSIZE+1+J):=
Z(BLT+(K-1)*ENTRYSIZE+1+J)
END;
BLKINUSE:=BLKINUSE-1
END
ELSE
SÆTKEY(ZO,BLKENTRY-1)
END
ELSE
FSKDIBLK(ZO,-BLKENTRY);
Z(BLT+(BLKINZONE-1)*ENTRYSIZE+1):=Z(BLT+(BLKINZONE-1)*ENTRYSIZE+1)-1;
Z(BUT+(BUCINZONE-1)*ENTRYSIZE+1):=Z(BUT+(BUCINZONE-1)*ENTRYSIZE+1)-1;
RECINUSE:=RECINUSE-1;
BLKCHG:=TRUE;BLTCHG:=TRUE;BUTCHG:=TRUE;
NEXTREC(ZO,F,REC);
IF IER>0 THEN EXIT(DELETE);
IER:=0
END ELSE IER:=-9
END ELSE IF IER=-1 THEN IER:=-6
END ELSE IER:=-12 ELSE IER:=-3
END;