summaryrefslogtreecommitdiff
path: root/dialog/ls-DIALOG-gen
blob: b5c786773ad62df5ece08d37dda351d19206aaf1 (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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
(* 
        
          ********************************************************* 
          ********************************************************* 
          **                                                     ** 
          **                      ls-DIALOG                      ** 
          **                  GENERATORPROGRAMM                  ** 
          **                     Version 1.2                     ** 
          **                                                     ** 
          **                  (Stand: 04.11.88)                  ** 
          **                                                     ** 
          **                                                     ** 
          **         Autor: Wolfgang Weber, Bielefeld            ** 
          **                                                     ** 
          **                                                     ** 
          ** Copyright (C) 1987, 1988 Eva Latta-Weber, Bielefeld ** 
          **                                                     ** 
          ** Copyright (C) 1988 ERGOS GmbH, Siegburg             ** 
          **                                                     ** 
          ********************************************************* 
          ********************************************************* 
 
                                                                           *) 
 
LET mm taskname = "ls-MENUKARTEN",
    datei 1     = "ls-DIALOG 1",
    datei 2     = "ls-DIALOG 2",
    datei 3     = "ls-DIALOG 3",
    datei 4     = "ls-DIALOG 4",
    datei 5     = "ls-DIALOG 5",
    datei 6     = "ls-DIALOG 6",
    datei 7     = "ls-DIALOG 7",
    menukarte   = "ls-MENUKARTE:Archiv";
PROC stelle existenz des mm sicher:
  cursor (1, 5); out (""4"");
  IF NOT exists (task (mm taskname))
     THEN errorstop ("Unbedingt erst den 'MENUKARTEN-MANAGER' generieren!");
  FI

END PROC stelle existenz des mm sicher;
PROC vom archiv (TEXT CONST datei):
  cursor (1,5); out (""4"");
  out ("  """); out (datei); putline (""" wird geholt.");
  fetch (datei, archive)
END PROC vom archiv;
PROC hole (TEXT CONST datei):
  IF NOT exists (datei) THEN vom archiv (datei) FI
END PROC hole;
PROC in (TEXT CONST datei):
  hole (datei);
  cursor (1, 5); out (""4"");
  out ("  """); out (datei); out (""" wird übersetzt: ");
  insert (datei);
  forget (datei, quiet);
END PROC in;

PROC schicke (TEXT CONST datei):
  cursor (1, 5); out (""4"");
  out ("  """); out(datei);
  out (""" wird zum MENUKARTEN-MANAGER geschickt!");
  command dialogue (FALSE);
  save (datei, task (mm taskname));
  command dialogue (TRUE);
  forget (datei, quiet)
END PROC schicke;
INT VAR size, used;
BOOL VAR einzeln;
storage (size, used);
einzeln := size - used < 500;
forget ("ls-DIALOG/gen", quiet);
wirf kopfzeile aus;
stelle existenz des mm sicher;
hole die dateien;
insertiere die dateien;

mache global manager aus der task.
wirf kopfzeile aus:
  page;
  putline ("                      "15"ls-DIALOG - Automatische Generierung "14"").
hole die dateien:
  IF     NOT exists (datei 1) COR NOT exists (datei 2)
     COR NOT exists (datei 3) COR NOT exists (datei 4)
     COR NOT exists (datei 5) COR NOT exists (datei 6)
     COR NOT exists (datei 7) COR NOT exists (menukarte)
     THEN hole dateien vom archiv
  FI.
hole dateien vom archiv:
  cursor (1,3);
  IF yes ("Ist das Archiv angemeldet und die 'ls-DIALOG' - Diskette eingelegt")

     THEN lese ein
     ELSE line (2);
          errorstop ("Ohne die Diskette kann ich das System nicht generieren!")
  FI.
lese ein:
  cursor (1, 3); out (""4"");
  out ("                      "15"Bitte die Diskette eingelegt lassen! "14"");
  IF NOT einzeln
     THEN hole (datei 1);
          hole (datei 2);
          hole (datei 3);
          hole (datei 4);
          hole (datei 5);
          hole (datei 6);
          hole (datei 7);
          hole (menukarte);
          cursor (1, 3); out(""4"");

          out ("                     "15"Die Diskette wird nicht mehr benötigt! "14"");
          release (archive)
  FI.
insertiere die dateien:
  check off;
  in (datei 1);
  in (datei 2);
  in (datei 3);
  in (datei 4);
  in (datei 5);
  in (datei 6);
  in (datei 7);
  schicke (menukarte);
  IF einzeln THEN release (archive) FI;
  check on.
mache global manager aus der task:
  global manager.