summaryrefslogtreecommitdiff
path: root/app/eudas/5.3/src/eudas.alt
diff options
context:
space:
mode:
Diffstat (limited to 'app/eudas/5.3/src/eudas.alt')
-rw-r--r--app/eudas/5.3/src/eudas.alt44
1 files changed, 44 insertions, 0 deletions
diff --git a/app/eudas/5.3/src/eudas.alt b/app/eudas/5.3/src/eudas.alt
new file mode 100644
index 0000000..41ca9b0
--- /dev/null
+++ b/app/eudas/5.3/src/eudas.alt
@@ -0,0 +1,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;
+