summaryrefslogtreecommitdiff
path: root/app/eudas/5.3/src/eudas.alt
blob: 41ca9b0c252b3f1a33be36021ae20281f5b432fb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
PACKET eudas alt nach neu 
 
  DEFINES 
 
  eudas alt nach neu : 
 
 
DATASPACE VAR scratch; 
 
PROC eudas alt nach neu (TEXT CONST datei alt, datei neu) :

  IF exists (datei neu) THEN
    errorstop ("Zieldatei existiert bereits")
  ELSE
    FILE VAR f := sequential file (input, datei alt);
    forget (scratch); scratch := nilspace;
    BOUND TEXT VAR zeile := scratch;
    BOUND SATZ VAR neu := scratch;
    zieldatei einrichten;
    kopieren;
    forget (scratch)
  END IF .

zieldatei einrichten :
  getline (f, zeile);
  IF (zeile ISUB 1) < 3 OR (zeile ISUB 1) > 256 THEN
    errorstop ("Ausgangsdatei ist keine EUDAS-Datei")
  END IF;
  EUDAT VAR e;
  oeffne (e, datei neu);
  feldnamen aendern (e, neu) .

kopieren :
  WHILE NOT eof (f) REP
    getline (f, zeile);
    satz einfuegen (e, neu);
    cout (satznr (e));
    weiter (e)
  END REP .

END PROC eudas alt nach neu;

END PACKET eudas alt nach neu;