RAPGEN

 

Installations Handbuch

 

 

Teil 1.


 


                                                                            Inhaltsverzeichnis

 

1.           COPYALL und Anforderungen an das Betriebssystem...........................................................................................................   4

1.1.         Kopieren von der 'Master‑Disc'...................................................................................................................................................   4

1.1.1.       Inhalt des Dateiverzeichnisses...................................................................................................................................................   4

1.2.         SYSMOD Anforderungen / Voraussetzungen..........................................................................................................................   4

1.2.1.       Betriebssystem..............................................................................................................................................................................   4

1.3.         Anforderungen an die Platten‑Kapazität...................................................................................................................................   5

1.4.          Schritt für Schritt...........................................................................................................................................................................   5

 

2.           DMS.RAPGEN.SYS System definitionen....................................................................................................................................   6

2.1.         Anlage/Erweiterung einer RAPGEN‑Datei.................................................................................................................................   7

2.2.         Systemparameter in DMS.RAPGEN.SYS...................................................................................................................................   7

2.2.1.       Systemname...................................................................................................................................................................................   7

2.2.2.       DRN‑Datei......................................................................................................................................................................................   7

2.2.3.       (z.Zt. nicht genutzt)......................................................................................................................................................................   7

2.2.4.       Anwender Rapport‑Datei............................................................................................................................................................   7

2.2.5.       Dateidefinition‑Datei....................................................................................................................................................................   7

2.2.6.       Sortier‑Arbeitsdatei......................................................................................................................................................................   7

2.2.7.       Phantom Port.................................................................................................................................................................................   8

2.2.8.       Standard Zeilenlänge...................................................................................................................................................................   8

2.2.9.       Auslauf Datum..............................................................................................................................................................................   8

2.2.10.      Maximale Programmgrösse in KByte........................................................................................................................................   8

2.2.11.      RAPGEN lu...................................................................................................................................................................................   8

2.2.12.      Rücksprung aus dem Rapport‑Generator.................................................................................................................................   8

2.2.13.      Printer‑Nummer............................................................................................................................................................................   8

2.2.14.      DLU‑Tabelle.................................................................................................................................................................................   8

2.2.15.      Anzahl der gespeicherten Rapports.........................................................................................................................................   8

2.2.16.      Betriebssystem und RAP/DAP.................................................................................................................................................   9

2.2.17.      Anzahl der Bildschirm‑Arbeitsdateien.....................................................................................................................................   9

2.2.18.      System (0=OS, 1=ST, 2=TAMOS).............................................................................................................................................   9

2.2.19.      Opt.‑Kode (0/1/2).........................................................................................................................................................................   9

2.2.20.      Programmwahl‑Kode (0/1)..........................................................................................................................................................   9

2.2.21.      Sprach‑Kode.................................................................................................................................................................................   9

2.2.22.      Multidatei‑Kode.........................................................................................................................................................................   10

2.2.23.       XXDATAFIL.............................................................................................................................................................................   10

2.2.24.       XXREPORT...............................................................................................................................................................................   10

2.2.25.       XXFILES....................................................................................................................................................................................   10

2.2.26.       XXSORTWORK.......................................................................................................................................................................   10

2.2.27.       Drucker Parameter.....................................................................................................................................................................   10

 

3.           TAMOS Programmwahl und Warteschlange (Jobqueue)......................................................................................................   11

3.1.         DMS.R Start Interface Program.................................................................................................................................................   11

3.2.         DMSE End Interface Program....................................................................................................................................................   13

3.3.         DMS.RAPGEN.TAQ  TAMOS Jobqueue Interface...............................................................................................................   13

 

4.           Dateistruktur..................................................................................................................................................................................   14

4.1.         Systemdefinitions‑Datei 0/CHSYSTEM...................................................................................................................................   14

4.2.         Dateidefinitions‑Dateien.............................................................................................................................................................   14

4.2.1.       XXFILES Dateiindexdefinitionen.............................................................................................................................................   14

4.2.2.       XXDATAFILY Felddefinitionen..............................................................................................................................................   15

4.2.3.       XXREAD.FF Lese‑Befehl..........................................................................................................................................................   15

4.3.         Arbeitsdateien für Programmgenerierung und Sorti­eren.......................................................................................................   16

4.4.         Anwenderrapport‑Datei und Programm‑Datei........................................................................................................................   16

 

5.           Dateidefinitions‑Modul...............................................................................................................................................................   17

5.1.         Vergehensweise bei einer Dateidefinition................................................................................................................................   17

5.2.         Auswahl der einzelnen Funktionen..........................................................................................................................................   17

5.3.         Definition neuer DRN (Felder)...................................................................................................................................................   18

5.4.         Definition eines einzelnen Feldes..............................................................................................................................................   19

5.4.1.       Erweiterte Felddefinitionen.......................................................................................................................................................   19

5.5.         Anzeigen und Hinzufügen von Feldern...................................................................................................................................   20

5.6.         Definition einer Datei (DEF).......................................................................................................................................................   20

5.7.         Nicht im Dateisatz eingeschlossene Felder.............................................................................................................................   21

5.7.1.       Nicht im Dateisatz eingeschlossene Schlüssel......................................................................................................................   21

5.8.         Hinzufügen von Definitionen....................................................................................................................................................   21

5.9.         Der MAT READ Befehl..............................................................................................................................................................   21

5.10.        Einsetzen / Löschen von Feldern.............................................................................................................................................   22

5.11.        Andere Kommandos..................................................................................................................................................................   22

5.12.        Zusätzliche Feld‑Beschreibungen (Dokumentation).............................................................................................................   22

5.13.        Generierung von Lesebefehlen.................................................................................................................................................   23

5.14.        Pflege der Dateidefinitionen......................................................................................................................................................   24

5.14.1.      Datei‑Grundinformationen........................................................................................................................................................   25

5.14.1.1.    Dateikurzname...........................................................................................................................................................................   25

5.14.1.2.    Dateiname..................................................................................................................................................................................   25

5.14.1.3.    Text.............................................................................................................................................................................................   25

5.14.1.4.    Kennwort...................................................................................................................................................................................   25

5.14.1.5.    Satzlänge....................................................................................................................................................................................   25

5.14.1.6.    Anzahl Sätze..............................................................................................................................................................................   25

5.14.1.7.    DRN............................................................................................................................................................................................   25

5.14.1.8.    Utilities.......................................................................................................................................................................................   25

5.14.1.9.    Cont. End Mark.........................................................................................................................................................................   25

5.14.1.10.   Subsystem................................................................................................................................................................................   26

5.14.1.11.   STAR DRN‑Nr..........................................................................................................................................................................   26

5.14.1.12.   KEY NOT IN RECORD............................................................................................................................................................   26

5.14.1.13.   Andere Felder...........................................................................................................................................................................   26

5.14.2.      Index und Dateiverweis............................................................................................................................................................   26

5.14.2.1.    Nummer......................................................................................................................................................................................   26

5.14.2.2.    Var...............................................................................................................................................................................................   26

5.14.2.3.    Indexdatei...................................................................................................................................................................................   26

5.14.2.4.    Directory Nr...............................................................................................................................................................................   27

5.14.2.5.    Schlüsselfelder..........................................................................................................................................................................   27

5.14.2.6.    Name...........................................................................................................................................................................................   27

5.14.2.7.    Länge..........................................................................................................................................................................................   27

5.14.2.8.    Option‑Code..............................................................................................................................................................................   27

5.14.3.      Struktur der Schlüsselfeld‑Definitionen.................................................................................................................................   27

5.14.3.1.    Felder..........................................................................................................................................................................................   27

5.14.3.2.    Funktionen.................................................................................................................................................................................   27

5.14.3.3.    Kombinationen aus Feldern und Funktionen.......................................................................................................................   27

5.14.3.4.    Beispiele einer Schlüsselstruktur...........................................................................................................................................   28

 

6.           Dateinamen und 'Interface‑Programs'........................................................................................................................................   29

6.1.         Dateiname.....................................................................................................................................................................................   29

6.1.1.       DMS.RAPGEN.LU Umwandlung eines Dateinamens...........................................................................................................   29

6.1.2.       Regeln für die Konvertierung von Dateinamen.....................................................................................................................   30

6.2.         DMS.COMET Schnittstelle zu den Parameterdateien............................................................................................................   31

 

7.           Programmierung eines Lesebefehls...........................................................................................................................................   32

7.1.         Der einfache Lesebefehl.............................................................................................................................................................   32

7.2.         Laden des Lesebefehls...............................................................................................................................................................   32

7.3.         Laden des Lesebefehls für verknüpfte Dateien......................................................................................................................   32

7.4.         Lesebefehl für gepackte Felder..................................................................................................................................................   32

7.5.         'Entpacken' von Zugriffschlüsseln............................................................................................................................................   33

7.6.         Berechnungen innerhalb des Lesebefehls...............................................................................................................................   33

7.7.         Unterprogramme 4000 und 4100................................................................................................................................................   34

7.8.         Anfangs‑Dimensionierungen (deallo/dim)..............................................................................................................................   34

7.9.         Besondere Unterprogramme......................................................................................................................................................   34

7.10.        Varianten des Lesebefehls........................................................................................................................................................   34

7.11.        Schreibbefehle.............................................................................................................................................................................   34

7.12.        Eröffnen spezieller Dateien........................................................................................................................................................   35

7.13.         Random und serielle Dateien...................................................................................................................................................   35

7.14.        Dateien mit unterschiedlichen Satzstrukturen........................................................................................................................   35

 

8.           Sprachabhängige Texte...............................................................................................................................................................   36

 

9.           Struktur eines generierten Ausgabe‑Programmes...................................................................................................................   37

9.1.         Generieren eines Ausgabe‑Programmes..................................................................................................................................   37

9.2.         Unterprogramme im generierten Programm..............................................................................................................................   38

9.3.         Zeilennummern im generierten Programm................................................................................................................................   39

9.4.         Im generierten Programm benutze Kanäle................................................................................................................................   40

9.5.         Im generierten Programm benutzen Variablen.........................................................................................................................   40

9.5.1.       System Konstanten....................................................................................................................................................................   40

9.5.2.       Start Parameter............................................................................................................................................................................   41

9.5.3.       DRN und Datei‑Variable............................................................................................................................................................   41

9.5.4.       Rapport Variable.........................................................................................................................................................................   42

9.5.5.       READ/WRITE Variable..............................................................................................................................................................   42

9.5.6.       Arbeits Variable..........................................................................................................................................................................   43

 

10.          Record descriptions for system files........................................................................................................................................   44

10.1.        Structure of COMMON‑AREA (DMS.RAPGEN.PCB) and 0/CHSYSTEM.......................................................................   44

10.2.        Structure of the DRN field definitions z/zzDATA­FILs.........................................................................................................   46

10.3.        Structure of y/yyREPORT.........................................................................................................................................................   48

10.4.        Structure of the file definition file f/ffFILES............................................................................................................................   50

10.5.        Structure of the language textfile x/DMS.RAPGEN.T...........................................................................................................   52

10.6.        Structure of additional field textfile z/zzs.TEXTnn................................................................................................................   52

 

11.          Internal structure of the report generator................................................................................................................................   53

11.1.        Link segments in the report generator.....................................................................................................................................   53

11.2.        Standard routines loaded into the generated program.........................................................................................................   54

11.3.        Channel usage in definition modules......................................................................................................................................   54

11.4.        Temporary used channels.........................................................................................................................................................   54

11.5.        Temporary channels in start segment DMS.RAPGEN.99.....................................................................................................   54

 

12.          Printout of the library lists..........................................................................................................................................................   55

 

Figuren.........................................................................................................................................................................................................   59

 

Stichwort......................................................................................................................................................................................................   60

 


1.           COPYALL und Anforderungen an das Betriebssystem.

 

2.1.         Kopieren von der 'Master‑Disc'.

 

   Der Rapport‑Generator, einschliesslich des Dateiverzeichnisses DMS.COMET.LIB, wird von der 'Master‑Disc' mit Hilfe der Funktion COPYALL kopiert.

 

    Der Rapport‑Generator kann auf jede 'logical unit (lu)' von 0 bis 9 kopiert werden.

 

    Es ist möglich, alle Basic‑Programme mit Hilfe der EXPERT Programmwahl zu optimieren.

 

2.2.1.       Inhalt des Dateiverzeichnisses.

 

   Das Dateiverzeichnis DMS.COMET.LIB beinhaltet:

   

    1. Rapport‑Generator‑Programme und Installationsprogramme.

    2. Programme für Dateidefinitionen (DATAMASTER).

    3. Dateidefinitionen und READ‑Statements für die am meisten verwendeten COMET‑TOP Dateien.

    4. Programme zum Lesen der COMET‑TOP Parameter‑Dateien und Aktualisieren des 'byte displacement' u.s.w.

       in READ‑Statements.

 

    Das Dateiverzeichnis DMS.RAPGEN.LIB beinhaltet alle Programme des RapportGenerators. Das Dateiverzeichnis DMS.XLIB beinhaltet alle Programm für die Dateidefinitionen (DATAMASTER).

 

    Liegen ihre eigenen Dateidefinitionen auf einem 'Master‑Pack', brauchen Sie nur die Definitionen zusammen mit den RAPGEN‑Programme (DMS.RAPGEN.LIB) auf das Anwendersystem zu kopieren.

 

    Falls Sie die Dateidefinitionen auf dem Anwendersystem erweitern möchten, ist es in jedem Falle notwendig, die Dateidefinitionsprogramme (DMS.XLIB) zu kopieren.

 

2.3.         SYSMOD Anforderungen / Voraussetzungen.

 

   Der Rapport‑Generator erwartet eine mindest Partition‑Grösse von 18 KByte. Ferner müssen mindestens 14 Daten‑Dateien eröffnet sein.

 

    Alle Programme werden mit der Länge 0 gespeichert. Vermeiden Sie deshalb, die Standard Dateilänge von Basic‑Programmen vor dem Kopieren zu setzen. Die Länge der Programme und der vom Anwender definierten Rapport‑Programme sind von dem Parameter MAX.PROGRAM.SIZE im Rapport‑Generator‑System abhängig. Hiervon sind u.a. auch die Grösse der Variablen abhängig.

 

    Alle generierten Programme werden mit einer Standard‑Partition‑Grösse gespeichert. Diese sollte der Hauptpartitiongrösse entsprechen.

 

    Wollen Sie mit Hilfe des DATAMASTER‑Programmes Dateien definieren, sollten mindestens 20 Datendateien angelegt sein.    

 

2.4.1.       Betriebssystem.    

 

   Der Rapport‑Generator kann unter den Betriebssystem NIROS 3.0 bis 7.0 betrieben werden.

 

    Der Rapport‑Generator Version 01/01/87 verlangt, u.a. aufgrund der Hilfsfunktionen, das Betriebssystem NIROS 5.0 oder später.

 

    Der Parameter, der die Betriebssystem‑Version angibt, wird während der Installation gesetzt, um zu verhindern, dass neue Basic‑Programme unter einem 'alten' Betriebssystem betrieben werden.  


2.5.         Anforderungen an die Platten‑Kapazität.

 

   DMS.RAPGEN benötigte Platz kann wie folgt berechnet werden:

 

   

                                   Benötigt  Beispiel  Gesamt

 

   1. DMS.RAPGEN Programme                             1000 S

   2. Jeder zusätzliche Anw.       x * 75 S       1      75 S

   3. Je Datei                     x * 20 S      10     200 S

   4. Je Rapport                   x *  4 S      44     176 S

   5. Textdatei je Rapport         x *  4 S      44     176 S

   6. Programm je Rapport          x * 16 S      44     704 S

   7. Sortierdatei je 1000 R       x *150 S    1000     150 S

 

                                               Total:  2481 S

   (S = Sektor(en), R = Sätze (Records))

 

Steht einer Installation nur begrenzt Platz auf der Platte zur Verfügung, kann der Punkt 6, Programm je Rapport, vernachlaessigt werden. Dieses beeinträchtigt das Leistungsverhalten des Generators, verhindert jedoch nicht das Ausdrucken von Rapporten. 

 

2.7.          Schritt für Schritt.

 

   Der erste Schritt in der Installation des Rapport‑Generators ist das COPYALL von der 'Master‑Disc'. Als nächstes muss immer das Programm DMS.RAPGEN.SYS gestartet werden. In diesem Programm werden die lu‑Nummern und die Parameter für den Rapport‑Generator gesetzt.

 

    Installieren Sie den Rapport‑Generator auf einem Standardsystem, wie COMET‑TOP oder STAR, sind die Standard‑Dateidefinitionen bereits auf die Anwender‑Platte kopiert. Sie brauchen sich also nicht um Dateidefinitionen u.s.w. zu bekümmern. In diesem Falle müssen Sie nur das Programm DMS.COMET bzw. DMS.STARDRN starten, um die Dateidefinitionen mit den aktuellen ByteNummern, Spezial‑Feldern u.s.w. zu aktualisieren.

 

    Installieren Sie ein neues, individuell zugeschnittenes System, müssen, bevor der Rapport‑Generator aufgerufen wird, die benötigten Dateien definiert sein. Die vorliegende Anleitung beschreibt, wie dies zu tun ist und wie diese speziellen Dateien zu behandeln sind. Der Rapport‑Generator kann jede Art von Dateien ansprechen, da dessen Basis‑Routinen die Verbindung zwischen dem Anwender und den physikalischen Leseoperationen herstellt.

 

    Die Installation wird mit dem Aufruf des Programmes DMS.RAPGEN.LU beendet. In diesem Programm werden die lu‑Nummern für die jeweilige Installation bestimmt.


3.           DMS.RAPGEN.SYS System definitionen.

 

   Der Rapport‑Generator wird mit Hilfe des Programmes DMS.RAPGEN.SYS installiert. Dieses Programm hat zwei Funktionen:

   

    1. Pflege der 0/CHSYSTEM Parameter.

    2. Anlage/Erweiterung der Rapport‑Generator Dateien.

 

 Das Programm kann direkt, oder über die TAMOS‑Programmwahl, angesteuert werden.

 

 

Figur 1  DMS.RAPGEN.SYS System Auswahl.

 

 DMS.RAPGEN    VERSION 01/01‑1987,RELEASE 01/01‑1987                             

 SYSTEM NR.?                                       1      2      3      4      5 

 01 SYSTEM:                                 NO.  REC RECLEN    KEY   SIZE  ITEMS 

 02/03 DRN FILE:                   DATAFIL  10:                                  

 04 USER REPORT FILE:              REPORT   20:                                  

 05 FILE DEFINITION FILE:          FILES    30:                                  

 06 SORT WORKFILE                  SORTWORK 40:                                  

 07 PHANTOM PORT                                                                 

 08 DEFAULT PAGELENGTH            LINES                                          

 09 EXPIRATION DATE                                                              

 10 MAX.PROGRAM SIZE              KB                                             

 11 RAPGEN LU                    DMS.RAPGEN                                      

 12 BACKCHAIN TO PROGRAM                                                         

 13 NO.OF PRINTERS                                                                

 14 DLU TABLE                                                                    

 15 NO.OF SAVED REPORTS                                                          

 16 OPR.SYSTEM AND RAP/DAP                                                        

 17 NO.OF SCREEN‑WORKFILES                                                       

 18 SYSTEM (0=OS,1=ST,2=TAMOS)                                                   

 19 OPT.CODE (0/1/2)                                                              

 20 SELECTOR CODE (0/1)                                                          

 21 LANGUAGE SUFFIX                DMS.RAPGEN.T                                  

 22 MULTIFILE CODE:                                                               

 

 

 

 

Zuerst wird die System‑Nummer, die jeweils einem Satz (Record) in der Datei CHSYSTEM entspricht, verlangt. Jedes System muss als eigenständige Installation des Rapport‑Generators gesehen und, falls der RapportGenerator über TAMOS gestartet wurde, über das Start‑Programm angesteuert werden.

 

    Nach Eingabe der System‑Nummer erscheinen die Parameter des Jeweiligen Systems auf dem Bildschirm. Durch Angabe der Feldnummer können jetzt die einzelnen Parameter geändert bzw. ergänzt werden.

 

    Das Programm wird dadurch beendet, dass bei Eingabe einer Feldnummer nur die CR‑Taste (Carriage Return) gedrückt wird. Antworten Sie auf die Frage OUTPUT TO LINE PRINTER mit Y (yes), erhalten Sie einen Ausdruck des Bildschirmes und eine Übersicht über alle dazugehörenden Dateien.

 

   

 

Figur 2  DMS.RAPGEN.SYS.

 

 DMS.RAPGEN    VERSION 01/01‑1987,RELEASE 01/01‑1987                            

 SYSTEM NR.? 63                                    1      2      3      4      5

 01 SYSTEM:  D.M.S.  C O M E T              NO.  REC RECLEN    KEY   SIZE  ITEMS

 02/03 DRN FILE:               9/DMDATAFIL  10         3000           177       

 04 USER REPORT FILE:          9/DMREPORT   20   256    256           257     66

 05 FILE DEFINITION FILE:      9/DMFILES    30   150     96      3    101       

 06 SORT WORKFILE              9/DMSORTWORK 40   300     16     15     64       

 07 PHANTOM PORT               1                                                

 08 DEFAULT PAGELENGTH         51 LINES                                         

 09 EXPIRATION DATE            9999990                                          

 10 MAX.PROGRAM SIZE           24 KB          NO. S..E..L.. PRINTER NAME        

 11 RAPGEN LU                  9/DMS.RAPGEN   501 000131072 $RPL4               

 12 BACKCHAIN TO PROGRAM       9/DMSE         502                               

 13 NO.OF PRINTERS             2              503                               

 14 DLU TABLE                  0123456789     504                               

 15 NO.OF SAVED REPORTS        99             505                               

 16 OPR.SYSTEM AND RAP/DAP     514R                                              

 17 NO.OF SCREEN‑WORKFILES     01                                               

 18 SYSTEM (0=OS,1=ST,2=TAMOS) 2                                                

 19 OPT.CODE (0/1/2)           1                                                 

 20 SELECTOR CODE (0/1)        1                                                

 21 LANGUAGE SUFFIX                DMS.RAPGEN.TE                                

 22 MULTIFILE CODE:            m                                                 

                     FIELDNO:                                                   

 

 

 

 


4.1.         Anlage/Erweiterung einer RAPGEN‑Datei.

 

    Ist die Datei 0/CHSYSTEM nicht vorhanden, wenn DMS.RAPGEN.SYS gestartet wird, wird diese Datei automatisch angelegt.

 

    Wählen Sie ein System, das vorher nicht definiert wurde, werden eine Reihe von Standardwerte als Parameter eingesetzt.

 

    Die Informationen über das System werden zusammen mit den Informationen über die Rapport‑Generator‑Dateien auf dem Bildschirm angezeigt.

 

    Bei Beendigung dieses Programmes werden die entsprechenden Dateien angelegt bzw. erweitert.

 

    Arbeitsdateien werden entsprechend der Angabe in Feld 17 (Number of Screens) angelegt.

 

    Haben Sie einen oder mehrere Feldinhalte betreffend Dateiinformationen geändert (Anwahl durch Angabe der Zeilen‑ und Spaltennummer, z.B. 101, 201), wird eine entsprechende Datei angelegt. Der Inhalt einer eventuell bereits bestehenden Datei wird in die neu angelegte Datei übernommen (kopiert).

 

    Bei Änderung der lu oder des Prefix, und bei Änderung der Dateiinformationen, wird die geänderte Datei neu angelegt und die alte Datei bewahrt. In allen anderen Fällen wird die alte Datei gelöscht. Es wird empfolen, Sicherungskopien der betreffenden Dateien anzulegen.

 

    Alle Dateien, mit Ausnahme der Datei XXREPORT können über die Funktionen FORMAT, COPY, BUILDXF und IFCOPY angelegt bzw. erweitert werden.

 

    Ändern Sie das Prefix für eine Rapport‑Datei, müssen anschliessend die Textdateien und Programme manuell über das Kommando COPYALL kopiert werden.    

 

4.3.         Systemparameter in DMS.RAPGEN.SYS.

 

    Die System‑Nr. ist identisch mit der Satz‑Nr. in der Datei 0/CHSYSTEM.

 

    Jedes System muss als separate Installation eines Rapport‑Generators betrachtet werden.

 

    Die System‑Nr. wird bei Start des Programmes DMS.R auf Basis der TAMOSProgrammwahl‑Parameter bestimmt.

 

4.4.1.       Systemname.

 

    30 alphanumerische Zeichen zur Identifizierung des Systems. 

 

4.4.3.       DRN‑Datei.

 

   Lu (logical unit) und Prefix für die Felddefinition der Datei 1/XXDATAFIL.     

 

4.4.5.       (z.Zt. nicht genutzt).

 

4.4.7.       Anwender Rapport‑Datei.

 

   Lu und Prefix für die Rapport‑Datei 1/XXREPORT, die Rapport‑Textdateien 1/XXT10nn und die Programmdateien 1/XX10nn.

 

    Beachten Sie bitte, dass der notwendige Platz für die Rapport‑Programme dynamisch unter der jeweiligen lu bereitgestellt wird. 

 

4.4.9.       Dateidefinition‑Datei.

 

   Lu und Prefix für die Dateiindex‑Datei 1/XXFILES und die Datei 1/XXREAD.FF.

 

4.4.11.       Sortier‑Arbeitsdatei.

 

   Lu und Prefix für die Sortier‑Arbeitsdatei 1/XXSORTWORK.


4.4.13.       Phantom Port.

 

   Wird auf die Frage START (Y/N) mit Y (yes) geantwortet, wird ein Standard 'Phantom Port' (Hintergrundsprozess) verwendet. Normalerweise ist dieser Parameter auf 1 gesetzt. Der Anwender kann durch Eingabe eines Wertes das Phantom Port selbst bestimmen (der Standardwert wird überschrieben).    

 

4.4.15.       Standard Zeilenlänge.

 

   Standardwert bei Definition eines neuen Rapports. Der Anwender kann diesen Wert durch Eingabe eines neuen Wertes überschreiben. 

 

4.4.17.       Auslauf Datum.

 

   Normalerweise ist dieser Wert auf 999999 gesetzt.

 

   Es ist nicht möglich, den Rapport‑Generator zu verwenden, wenn das SystemDatum diesen Wert übersteigt.

 

   Das Datum hat das Format JJMMTT und wird normalerweise nur verwendet, wenn der Rapport‑Generator für eine begrenzte Zeit gemietet wurde.

 

4.4.19.      Maximale Programmgrösse in KByte.

 

   Minimum 18 KByte.

 

   Dieser Wert sollte den Standardwert für die Grösse der Basic‑Programme, die in SYSMOD gesetzt wurde, nicht übersteigen. Diese Angabe wird für die Dimensionierung der Puffer und für die Überprüfung, ob ein definierter Rapport eine zulässige Grösse überschreitet, herangezogen.

 

4.4.21.

2.2.11.      RAPGEN lu.

 

   'Logical Unit Number' für die Programme und Arbeitsdateien des RapportGenerators. Das Dateidefinition‑Modul DATAMASTER muss ebenfalls dieser 'lu' entsprechen.

 

4.4.23.      Rücksprung aus dem Rapport‑Generator.

 

   Normalerweise wird der Rapport‑Generator über das Programm DMSE beendet. Dieses Programm wird aufgerufen, wenn der Anwender den Rapport‑Generator verlässt. Ist der Parameter auf 1/ST.E gesetzt, wird eine spezielle Bildschirmmaske, die der Unterstützung von STAR‑Installationen dient, aufgerufen.

 

4.4.25.

2.2.13.      Printer‑Nummer.

 

   Dieser Parameter ist normalerweise auf 1 gesetzt, und überlässt damit dem TAMOS‑System die Zuordnung der Drucker. Ist dieser Wert auf 2 bis 6 gesetzt, kann der Anwender einen bestimmten Drucker bei der Definition eines neuen Rapports auswählen. Die vom Anwender ausgewählten Drucker sind in einer Tabelle (Felder 501 bis 505) definiert.

 

4.4.27.      DLU‑Tabelle.

 

   Dieser Parameter ist immer auf 0123456789 gesetzt.

 

   Alle lu‑Nummern der Anwenderdateien werden entsprechend dieser Tabelle umgesetzt.

 

4.4.29.      Anzahl der gespeicherten Rapports.

 

   Dieser Parameter hat normalerweise den Wert 99.

 

   Der Wert kann reduziert werden, wenn man auf Platzprobleme während der Installation stösst. Alle Rapport‑Programme mit einer Rapport‑Nummer grösser als der im Parameter angegebene Wert, werden bei Programstart jeweils neu generiert. Dieses verlangt keinen extra Platz auf dem Plattenspeicher.


4.4.31.      Betriebssystem und RAP/DAP.

 

   4 alphanumerische Zeichen (ABCD).

 

   A wird zur Bestimmung, welche Functionen des Betriebssystem unter dem Rapport‑Generator genutzt werden können, herangezogen. Ist dieser Parameter nicht korrekt gesetzt, können Fehler während der Definition/Ablauf eines Rapports auftreten.

 

   B und C dient nur als Kommentar.

 

   D muss bei Verwendung der alten DAP‑Bildschirme immer auf 'D' gesetzt sein, um nicht relevante Tastatur‑Werte zu ignorieren.

 

4.4.33.      Anzahl der Bildschirm‑Arbeitsdateien.

 

   Anzahl der Anwender, die einen Rapport‑Generator gleichzeitig nutzen können. Beim Verlassen des Rapport‑Generators werden Arbeitsdateien, falls nicht bereits vorhanden, entsprechend diesem Parameter angelegt.

 

4.4.35.      System (0=OS, 1=ST, 2=TAMOS).

 

   Für normale Installationen muss dieser Wert auf 2 gesetzt werden.

 

           0 aktiviert Konventionen für DMS‑Dateinamen.

           1 aktiviert Konventionen für STAR SYSTAR Dateinamen‑Datei.

           2 aktiviert TF.LOGFILE/TF.PARAM auf Kanal 0 und 1.

           3 aktiviert in Kombination mit Programmrückkehr (Backchain) nach 1/ST.E die ST.PARAM Dateien.

           4 aktiviert 'Superstar'.

 

4.4.37.      Opt.‑Kode (0/1/2).

 

   Normalerweise ist dieser Parameter auf 1 gesetzt.

 

   Durch diesen Parameter wird bestimmt, ob während der Programm‑generierung die Funktion 'Program is being optimized' aufgerufen wird. Diese Funktion transformiert alle Parametern, die in den Rapport‑Definition‑Dateien verwendet werden, in Basic‑Befehle. Dies gilt insbesondere für die Drucker Befehle.

 

           0 = Programme werden über Parameter gesteuert.

           1 = Parameter werden nicht verwendet, Basic‑Befehle wurden generiert.

           2 = wie 1. Darüberhinaus wird das Programm im optimierten Zustand bei Verwendung des Befehls

               SAVE ,D,XX10nn gespeichert.

 

Der Wert muss auf 0 gesetzt sein, wenn eine Integration zu anderen Dateien innerhalb eines Rapports gewünscht wird.

 

4.4.39.      Programmwahl‑Kode (0/1).

 

           0 = keine Programmwahl‑Integration.

           1 = Programmwahl‑Integration.

 

 Ist der Wert auf 1 gesetzt, wird der Anwender bei der Definition eines neuen Rapports gebeten anzugeben, wo innerhalb der Programmwahl der Rapport platzieret werden soll. Ist der Wert auf 0 gesetzt, wird diese Frage übersprungen.

 

   Unabhängig davon kann der Rapport durch Aufruf der Funktion EXPERTProgrammwahl‑Pflege in der Programmwahl definiert werden.

 

4.4.41.      Sprach‑Kode.

 

   Ein Zeichen des Suffix bestimmt die sprachabhängigen Texte in der Datei DMS.RAPGEN.Tx. Dieses Zeichen wird auch für die Sprachbestimmung des Dateidefinitions Moduls (DATAMASTER) DMX.XTEXTx (Textdatei) herangezogen.

 

          blank = dänish   (DMS.RAPGEN.T_)

            E   = englisch (DMS.RAPGEN.TE)

            Y   = deutsch  (DMS.RAPGEN.TY)


4.4.43.      Multidatei‑Kode.

 

   Diser Parameter hat normalerweise den Wert M.

 

   Bei ' ' (blank) ist es dem Anwender nicht gestattet die Integration zu anderen Dateien im Sinne des READ(XX) u.s.w. zu verwenden. Die Grossbuchstaben A‑Z erleuben diese Funktion. Kleinbuchstaben a‑z lassen diese Funktion ebenfalls zu, erlauben aber weiterhin, dass der RapportGenerator im 'test‑mode' ablaufen kann. Dabei wird die Handhabung der Escape‑Funktion in kritischen Abschnitten verändert, und es ist möglich, den Generator über LKY4 zwischen den 'link segments' zu stoppen.

 

4.4.45.       XXDATAFIL.

 

   Entsprechend der Angabe in Feld 101 wird die Dateidefinitions‑Datei angelegt bzw. erweitert.   

 

4.4.47.       XXREPORT.

 

   Entsprechend der Anzahl Sätze in Feld 201 und der Anzahl der Rapporte in Feld 205 wird die Rapport‑datei XXREPORT angelegt bzw. erweitert. Die Anzahl der Sätze sollte normalerweise 4 mal der Anzahl der Rapports betragen, da eine Rapportdefinition durchschnittlich 4 Sätze belegt. Die Datei kann durch diese Funktion erweitert bzw. verkleinert werden, und eine automatische 'cleanup'‑Funktion säubert die Datei von unnötig bereitsgestelltem Platz. 

 

4.4.49.       XXFILES.

 

   Entsprechend der Angabe in diesem Feld (Anzahl Sätze) wird die Datei XXFILES angelegt bzw. erweitert.

 

4.4.51.       XXSORTWORK.

 

   Über diese Parameter bzw. über die Funktion BUILDXF kann eine SORTWORKDatei angelegt werden. Als Standardwerte für das Schlüsselfeld (key) und Anzahl Datensätze werden 15 Worte bzw. Anzahl 0 eingesetzt.

 

4.4.53.       Drucker Parameter.

 

   Diese Parameter beziehen sich auf das Feld 13, Anzahl Drucker.

 

   In diesen Feldern werden den Druckern die Anfangsposition, die Endposition und Anzahl Zeilen pro Seite, gefolgt von einer Leerstelle und dem Druckernamen, vorgegeben. Die Druckerdefinitionen werden im Satz 0 der Datei CHSYSTEM abgelegt und gelten für alle Systeme.


5.           TAMOS Programmwahl und Warteschlange (Jobqueue).

 

   DMS.RAPGEN wird einschliesslich eines Programmwahl‑Menüs auf einer 'Master‑Disc' unter dem Kennwort RAP in den Dateien TF.SYSTEMRAP und TF.PROGRAP geliefert.

   

 

Figur 3  TAMOS Programmwahl, Installation.

 

 T A M O S            RAPPORTGENERATOR     RAPPORTGENERATOR    # 3 86.11.18/21:4

                                                                                

                                                                                

                                                                                

                     D.M.S. RAPPORTGENERATOR                                    

                                                                                

                     1 ... REPORT GENERATOR                                     

                     2 ... DMS.RAPGEN INSTALL                                   

                     3 ... DMS.RAPGEN TEXTES                                    

                     4 ... FILE LU CHECK/SETUP                                  

                     5 ... COMET INSTALLATION                                   

                     6 ... FILE DEFINITIONS                                     

                     7 ... INSERT IN SELECTOR                                   

                                                                                

                    VÆLG NR.(ELLER CR)     .......                              

                                                                                 

                                                                                

                                                                                

                                                                                 

                                                                                

                                                                                

                                                                                 

                                                                                

                                                                                

 MEDDELELSE :                                                                    

 

 

 

 

Die Programmwahl beinhaltet die folgenden Funktionen:

   

            1. Rapport‑Generator               (DMS.RAPGEN)

            2. Installation                    (DMS.RAPGEN.SYS)

            3. Texte                           (DMS.TEXT)

            4. Datei lu‑Test/Setup             (DMS.RAPGEN.LU)

            5. COMET Installation              (DMS.COMET)

            6. Dateidefinitionen               (DMS.XDRN)

            7. Einfügen in die Programmwahl

 

Die einzelnen Funktionen sind in dieser Anleitung im Detail beschrieben.

 

   Die Funktion 1 ruft den Rapport‑Generator auf, und die Funktion 7 betrifft das Einfügen eines Rapports in die Programmwahl.

 

6.1.         DMS.R Start Interface Program.

 

   Der Ausdruck der Programmwahl sieht wie folgt aus:

   

 

Figur 4  TAMOS Programmwahl‑Definitionen.

 

 SELECTOR ID.                          LEVEL HEADING                             

 RAP                                   D.M.S. RAPPORTGENERATOR                   

                                                                                 

        DESCRIPTION          PROGRAM NAME       NO.  PASSWORD      ABORT   RUNMOD

                                                                                 

  1 ... REPORT GENERATOR     09/DMS.R,006300                         YES        0

                                                                                 

  2 ... DMS.RAPGEN INSTALL   09/DMS.R,910000                         YES        0

                                                                                  

  3 ... DMS.RAPGEN TEXTES    09/DMS.R,920000                         YES        0

                                                                                 

  4 ... FILE LU CHECK/SETUP  09/DMS.R,936300                         YES        0

                                                                                 

  5 ... COMET INSTALLATION   09/DMS.R,946300                         YES        0

                                                                                  

  6 ... FILE DEFINITIONS     09/DMS.R,956300                         YES        0

                                                                                 

  7 ... INSERT IN SELECTOR   09/DMS.R,126300                         YES        0

                                                                                 

 


Alle Funktionen innerhalb der Programmwahl werden über das 'Start Interface Program' DMS.R aufgerufen.

 

    Der Programmname innerhalb der Programmwahl hat folgenden Aufbau:

   

           lu/DMS.R.xxyyzz

 

 wobei xxyyzz folgende Bedeutung haben:

   

   xx =   Funktionsnr.

 

          00 = Rapport‑Generator

          01‑10 = Funktionen des Rapport‑Generator‑Menüs

          12 = Einfügen in die Programmwahl

          91 = DMS.RAPGEN.SYS

          92 = DMS.TEXT

          93 = DMS.RAPGEN.LU

          94 = DMS.COMET

          95 = DMS.XDRN

 

   yy =   Systemnummer des Rapport‑Generators

  

   zz =   Rapportnummer, falls erforderlich

 

Alle Rapporte, die in die Programmwahl eingefügt wurden, werden über dieses Programm aufgerufen.

 

    DMS.R liest die 'Common Area' des TAMOS und versorgt DMS.RAPGEN sowohl mit den darin enthaltenen Parametern, als auch mit den 'Setup'‑Werten (CHSYSTEM) des Rapport‑Generators. Diese Werte werden in der Datei 0/DMS.RAPGEN.PCB abgelegt. Ist diese Datei nicht vorhanden, wird sie automatisch angelegt.

 

    Falls notwendig, können Änderungen im 'Start Interface Program' vorgenommen werden. Dies kann notwendig werden, wenn die Systemnummer des RapportGenerators eingegeben oder die Berechtigung geprüft werden soll. Im folgenden erhalten Sie eine Auflistung des Programmes.

   

 

Figur 5  Start Interface Program DMS.R.

 

 1 REM DMS.R   VERSION 01/01‑1987   RELEASE 01/06‑1987                           

 10 IF  ERR 0  /*                                                                

 20 DIM J0$(512),B$(512),1%,J0,Z8,R0                                             

 25 LET J0= SPC 6                                                                

 30 OPEN #0,"TF.LOGFILE","TF.PARAM"                                              

 40 IF  ERR 0 GOSUB  240                                                         

 50 OPEN #3,"0/DMS.RAPGEN.PCB"                                                   

 60 IF  ERR 0 STOP                                                               

 70 OPEN #2,"0/CHSYSTEM"                                                         

 100 CALL 3,J0,B$                                                                

 110 LET Z8=B$(105,106)  /*FUNCTION                                              

 120 LET S0=B$(107,108)  /*SYSTEM                                                

 130 LET R0=B$(109,110)  /*REPORT                                                

 140 MAT  READ #2,S0;J0$;                                                        

 145 REM LET J0$(372,372)="Y"  /*LANGUAGE                                        

 150 LET J0$(373,375)=B$(93,95),"   "  /*TAMOS SYSTEM xxx,2.SELECTOR PARAM       

 160 LET J0$(327,329)=B$(90,92),"   "  /*TAMOS SYSTEM xxx,1.SELECTOR PARAM       

 170 LET J0$(330,332)=B$(111,113),"   "  /*TAMOS PROGRAM NO.                     

 180 LET J0$(341,341)="3"  /*FLAG TAMOS STARTET                                  

 190 IF  ABS Z8+ ABS R0 LET J0$(376,376)="1"  /*BACKCHAIN TO SELECTOR AFTER USE  

 200 CALL 72,J0$,Z8,R0                                                           

 210 MAT  WRITE #3,J0;J0$;                                                        

 220 CLOSE #2,#3                                                                 

 230 LET J0$=J0$(277,278),"DMS.RAPGEN"                                           

 231 IF Z8<=90 CHAIN J0$                                                          

 232 IF Z8=91 LET J0$(3)="DMS.RAPGEN.SYS"                                        

 233 IF Z8=92 LET J0$(3)="DMS.TEXT"                                              

 234 IF Z8=93 LET J0$(3)="DMS.RAPGEN.LU"                                          

 235 IF Z8=94 LET J0$(3)="DMS.COMET"                                             

 236 IF Z8=95 LET J0$(3)="DMS.XDRN"                                              

 237 IF Z8=95 CALL 2,J0,J0$                                                      

 239 CHAIN J0$                                                                   

 240 IF  ERR 0 STOP                                                              

 250 BUILD #3,"(10:256)0/DMS.RAPGEN.PCB"                                         

 260 RETURN                                                                      

 

 


6.3.         DMSE End Interface Program.

 

   Der Parameter BACKCHAIN TO im Programm DMS.RAPGEN.SYS muss den Programmnamen DMSE beinhalten, um den Rücksprung in das TAMOS‑System zu gewährleisten. Das Programm DMSE sichert, dass die Kanäle 0 und 1 geöffnet sind.

 

6.5.         DMS.RAPGEN.TAQ  TAMOS Jobqueue Interface.

 

   Der Anwender kann jeden Rapport in die TAMOS‑Jobqueue (Warteschlange) eingliedern, indem auf die Frage 'START (YES/NO)' Q eingegeben wird.

 

    Ebenso, wie DMS.R die Schnittstelle für die Programmwahl darstellt, bildet DMS.RAPGEN.TQA die Schnittstelle gegenüber der TAMOS‑Jobqueue. Dies bedeutet, dass dieses Programm in die Jobqueue eingegliedert wird. Erst anschliessend wird DMS.RAPGEN mit den richtig eingestellten Parametern aufgerufen.

 

    Ist ein Rapport in die Wartenschlange eingereiht, wird ein Satz, der alle Start‑ und Systemparameter (Kopie der 'Common Area' in DMS.RAPGEN.PBC für diesen Rapport enthält, in die Datei 0/DMS.JOBQUEUE00000 geschrieben. Die entsprechende Satznummer wird in DMS.RAPGEN.TQA über den WartenschlangenEingang übertragen.

 

    Die Datei 0/DMS.JOBQUEUE00000 wird, falls nicht bereits für vorhanden, automatisch angelegt und nach Beendigung aller Aufträge wieder gelöscht.


7.           Dateistruktur.

 

   Die Dateien des Rapport‑Generators können wie folgt unterschieden werden:

   

             1. Systemdefinitions‑Dateien

             2. Dateidefinitions‑Dateien

             3. Arbeitsdateien für Programmgenerierung und Sortieren

             4. Anwender‑Rapport‑Dateien und Programme

 

8.1.         Systemdefinitions‑Datei 0/CHSYSTEM.

 

   Die Datei 0/CHSYSTEM muss auf der systemplatte vorhanden sein. Diese Datei enthält alle lu‑Nummern sämtlicher Dateien und Programme.

 

    Die Datei enthält 64 Sätze mit einer Satzlänge von 256 Worten.

 

    Jeder Satz dieser Datei identifiziert ein Rapport‑Generator‑System. Wird der Rapport‑Generator über TAMOS aufgerufen, dann wird der entsprechende Satz mit Hilfe des 'Start Interface Program' in die Datei 0/DMS.RAPGEN.PCB übertragen. Die Datei 0/DMS.RAPGEN.PCB ersetzt die 'Common Area' früherer Versionen des Rapport‑Generators.

 

    Abhängig von diesen Informationen eröffnet der Rapport‑Generator die festgelegten und notwendigen Dateien etc.

 

    Für jedes System kann ein Prefix für die Dateidefinitions‑Dateien, die Anwender‑Rapport‑Dateien und die Programm‑Dateien definiert werden. Aus diesem Grunde kann der Rapport‑Generator auf einem System installiert werden, das unterschiedliche Datei‑definitionen bzw. verschiedene Rapport‑Dateien enthält.

 

    Das 'Start Interface‑Program', das von der TAMOS Programmwahl aufgerufen wird, kann so modifiziert werden, dass ein Rapport‑Generator‑System in Abhängigkeit der Parameter, der Anwender‑Nr oder auch durch Eingabe der System‑Nummer aufgerufen wird.

 

    In den folgenden Abschnitten gehen wir vor dem Prefix XX für alle Dateien aus.    

 

8.3.         Dateidefinitions‑Dateien.

 

   Die Dateidefinitionen werden in folgenden Dateien gespeichert:

   

             1. XXFILES       Dateiindexdefinitionen

             2. XXDATAFILY    Felddefinitionen

             3. XXREAD.FF     Lese‑Befehle für die Datei FF

 

8.4.1.       XXFILES Dateiindexdefinitionen.

 

   XXFILES ist eine indexierte Datei mit drei unterschiedlichen Schlüsseln:

   

             1. Kurzname der Datei

             2. Kurzname der Datei plus Index‑Nummer

             3. Kurzname der Datei plus Kurzname der verknüpften Datei

 

 Die Datei enthält Zeiger, die auf die Felddefinitionen in XXDATAFILY verweisen, den physikalischen Dateinamen auf der Platte, alle Indices und die Definitionen zur verknüpften Datei.

 

    Diese Datei wird mit Hilfe der Funktion 6 des Dateidefinitions‑Moduls gepflegt. Die Datei kann über die Funktion IFCOPY erweitert werden.


8.4.3.       XXDATAFILY Felddefinitionen.

 

   Diese Datei ist eine fortlaufende Datei mit x Anzahl Sätzen und eine Satzlänge von 3000 Worten. Jeder Satz enthält die vollständige Definition von bis zu 100 Feldern, einschliesslich Dateiname, Dateitype und 'Displacement'.

 

    Diese Datei wird durch das Dateidefinitions‑Modul gepflegt.

 

    Y kann die Ziffern 1‑9, oder eine Leerstelle enthalten. Hierdurch wird die Nummer des SUBSYSTEM's angegeben. Der Grund hierfür liegt einzig darin, dass man dadurch in der Lage ist, eine grosse Anzahl von Dateidefinitionen in verschiedene logische Blöcke zu teilen, und dass jeder logische Block unabhängig von einander kopiert werden kann.

 

    In einer normalen Installation wird nur die Datei XXDATAFIL unterhalten.

 

    Benutzt ein Anwender DATAMASTER, werden diese Dateien im Subsystem 9 (XXDATAFIL9) definiert.

 

    Ein neues Subsystem kann durch folgendes Kommando angelegt werden:

    

              #FORMAT (X:3000)XXDATAFIL1

 

und durch folgendes Kommando erweitert werden:

   

             #COPY (X:3000)XXDATAFIL1! =XXDATAFIL1

 

Die Satz‑Nummer in einer Dateidefinitions‑Datei wird als DRN (Data Record Number) bezeichnet.

 

    Jeder Satz (Datei) innerhalb der Dateidefinitions‑Datei zeigt über ein Subsystem‑Nummer und eine DRN‑Nummer auf eine DRN‑Felddefinition.   

 

8.4.5.       XXREAD.FF Lese‑Befehl.

 

   Jede Dateidefinition muss einer Textdatei, die den Lese‑Befehl für alle Felder der Datei enthält, zugeordnet sein.

 

    Die lu und das Prefix dieser Datei müssen identisch sein mit denen für die Dateidefinitions‑Datei XXFILE.

 

    Die Lese‑Befehle können über die Felddefinitionen generiert werden, indem man die Funktion 5 des Dateidefinitions‑Moduls benutzt.

 

    Die Datei enthält normale Basic‑READ‑Befehle in den unmittelbar in Anschluss an die Standardroutinen geladen. Anschliessend werden die Rapportdefinitionen eingelesen. Die Datei kann gesonderte Modifikationen für alle Routinen enthalten, um so spezielle Dateien zu implementieren.

 

    Die Hauptfunktion dieser besteht darin, eine Schnittstelle zwischen der physikalischen Datei und den definierten Feldern herzustellen. In den meisten Fällen bedeutet dies ein einfaches Lesen (eventuel 'Entpacken') der Felder.

 

    Die Datei kann in normalem BASIC geschrieben und über die Funktion DUMPED als Textdatei angelegt werden. In diesem Falle müssen keine Verbindungen zwischen den Felddefinitionen/'Byte Displacements' und der physikalischen Struktur der Datei bestehen. Die Unterprogramme müssen dafür sorgen, dass die richtigen Werte in den Feldern mit Hilfe notwendiger BASIC‑Funktionen (Packen, IBM Entpacken, bit‑Umwandlung) generiert werden.


8.5.         Arbeitsdateien für Programmgenerierung und Sortieren.

 

   Der Rapport‑Generator verlangt für jeden aktiven Arbeitsplatz eine Textdatei und eine Random‑Arbeitsdatei. Diese Dateien werden automatisch von DMS.RAPGEN.SYS in Abhängigkeit des Parameters NO. OF SCREENS angelegt.

 

    Die Sortierdatei XXSORTWORK ist eine Indexdatei, die bei der Installation über die Funktion BUILDXF oder DMS.RAPGEN.SYS gesondert angelegt werden muss.

 

    Die Anzahl der Sätze in dieser Datei sollte der maximalen Anzahl von Sätzen, die der Anwender zu Sortieren gedenkt, entsprechen. Falls möglich, sollte dieser Wert der Anzahl Sätze der grössten Datei des Systems entsprechen.

 

    Die Länge des Schlüsselwortes sollte entsprechend der maximalen Länge eines Sortierbegriffes plus 3 byte (für 'randomization') ausgelegt sein.

 

    Die Satzlänge kann, wenn über DMS.RAPGEN.SYS angelegt, 0 Worte, wenn über BUILDXF angelegt, 2 worte betragen.

 

    Sollen Dateien des Types KEY NOT CONTAINED IN RECORD sortiert werden, muss die Satzlänge der Datei XXSORTWORK mindestens 16 Worte betragen, da dieser Platz zwischenzeitlich für das Speichern des Sortierbegriffes benötigt wird.

 

    Die Datei kann jederzeit gelöscht bzw. neu angelegt werden.

 

    Ist die Datei nicht angelegt, kann der Anwender keine Sortiervorgänge definieren oder ausführen.

 

8.7.         Anwenderrapport‑Datei und Programm‑Datei.

 

   Die Rapportdefinitionen werden in der Rapport‑Datei XXREPORT und in der Textdatei XXT10nn gespeichert (nn = Rapport‑Nr.). Bei Start eines Rapports wird ein Basic‑Programm XX10nn generiert. Die lu und das Prefix dieser Rapport‑Datei bestimmen auch die lu und das Prefix der Textdateien und Programmdateien.

 

    Die Rapport‑Datei XXREPORT ist eine Random‑Datei mit der Satzanzahl x, und einer Satzlänge von 256 Worten. Die Datei muss über DMS.RAPGEN.SYS angelegt/erweitert sein, da die ersten Sätze der Datei eine Liste über die freien Sätze enthalten.

 

    Die Datei enthält die wesentlichen Information, so wie Rapport‑name, Drucker, Standardroutinen, Druck‑Layout u.s.w.. Die Definitionen eines Rapports können sich über mehrere Sätze dieser Datei erstrecken.

 

    Die Textdatei XXT10nn enthält neben Berechnungen u.s.w. generierte BASICBefehle, die in das Objekt‑Programm geladen werden. Die Datei besteht aus einzelnen Seiten (getrennt durch Seiten‑vorschub), und jede Funktion der Rapportdefinition (Auswahl, Sortieren, Rechenregel u.s.w.) belegt eine Seite in dieser Datei. Die Datei kann direkt aus dem BASIC geladen werde. Vermeiden Sie jedoch ein Kopieren in diese Datei, da dadurch die Seitenteilung überschrieben wird, und somit spätere Erweiterungen nicht möglich sind.

 

    Die Programmdatei XX10xx wird, falls bei Programmstart nicht vorhanden, automatisch generiert und bewahrt. Werden vom Anwender RapportErweiterungen vorgenommen, wird diese Datei gelöscht. Für Testzwecke ist es jedoch möglich, Erweiterungen vorzunehmen, ohne dass die Datei sofort gelöscht wird.


9.           Dateidefinitions‑Modul.

 

    Die Dateidefinitionen werden mit Hilfes des DATAMASTER Moduls (Sonderversion für Programmierer) gepflegt.

 

    Mit Hilfe des DATAMASTER ist der Anwender in der Lage, seine eigenen Dateien zu definieren, anzulegen, zu ändern und zu pflegen. Mit der DATAMASTER Programmierer‑Version können bestehende Dateien neu definiert werden, ohne dass die dazugehörenden Dateien selbst aktualisiert werden.

 

    Das Programm hat den Namen DMS.XDRN und wird über die TAMOS‑Programmwahl gestartet.   

 

10.1.         Vergehensweise bei einer Dateidefinition.

 

   Die Definition einer Datei erfolgt nicht so automatisch wie im DATAMASTER, sondern erfordert 4 Schritte:

   

      1. Anlegen eines neuen DRN (Funktion 1).

         Definition der Felder mit Namen, Länge und Typ.

      2. Definition der Datei (DEF Kommando).

         Setzen des Byte Displacements und Verweis auf Dateiname und Dateikurzname.

      3. Generierung des READ‑Befehls (Funktion 5).

         Anlegen der Datei XXREAD.FF.

      4. Definition der Indices/Verweise (Funktion 6).

         Freigabe für den Rapport‑Generator, Definition der Index‑Struktur und automatischer Verweis auf andere Dateien.

 

In folgenden Fällen können einige dieser Punkte übergangen werden:

 

    Bestehen die READ‑Befehle bereits, können Sie die Textdatei, die diese READ‑Befehle enthalten soll, aus dem BASIC kopieren. In diesem Falle brauchen Sie sich nicht über 'Byte Displacements' zu bekümmern, da diese nur für die Generierung der READ‑Befehle verlangt werden.

 

    Eine Definition der Indices ist nur für die Anzeige möglicher Indices notwendig, wenn der Anwender die Definition komplet übergeht bzw. nur Indices ohne Felddefinitionen festlegt.

 

    Die Definition von Dateiverweisen erleichert ausschliesslich das Lesen anderer Dateien. Wird dieser Punkt übergangen, können weiterhin andere Dateien gelesen werden. In diesem Falle muss jedoch der Anwender die Struktur als Zugriffsschlüssel (key) genau kennen. Dateiverweise können jederzeit im System hinzugefügt werden.

 

10.3.         Auswahl der einzelnen Funktionen.

 

   Nach Start des Dateidefinitions‑Moduls, erhalten Sie folgende Bildschirmmaske:

   

 

Figur 6  Funktionen des Dateidefinitions‑Moduls.

 

 DATAMASTER VERSION 01/01‑1987   SYSTEM 63  D.M.S.  C O M E T                    

                                                                                 

 NR.NAME                       FORMAT CHECK  PSEUDO TYPE   VARIABEL   BYTE REF. W

                                                                                 

                                                                                  

                                                                                 

                                                                                 

                                                                                  

                                                                                 

                                                                                 

                                                                                  

                                                                                 

                                                                                 

                                                                                  

                                                                                 

                                                                                 

                                                                                  

                                                                                 

                                                                                 

                                                                                 

                                                                                 

 NR.NAME                       FORMAT CHECK  PSEUDO TYPE   VARIABEL   BYTE REF. W

 FUNKTION ?          1=ANLEGEN , 2=DRUCKEN , 3=ANDERN, 4=LOSCHEN                 

                     5=GEN.READ/WRITE/INDEX , 6=DATAIBESCHREIBUNG, 7=BUILD FILES 

 ?=ZEIGE DRN , F=FORM VORFUHRUNG , SYSTEM=SYSTEM WECHSELN                        

 


 Folgenden Funktionen können gewählt werden:

    

            1      Anlage einer neuen DRN‑Felddefinition.

            2      Ausdruck einer oder mehrerer DRN.

            3      Änderungen/Erweiterungen einer DRN.

            4      Löschen einer DRN.

            5      Generieren eines READ‑Befehls.

            6      Dateidefinition.

            END    Beenden dieses Programmes (CR).

            F      Seitenvorschub auf dem Drucker.

            ?      DRN Übersicht.

            SYSTEM Auswahl eines Systems bzw. Subsystems.

 

Die Funktionen 1‑4 betreffen die DRN Felddefinitionen.

 

    Die Funktion 5 generiert die Textdatei XXREAD.FF. Die Funktion 6 dient der Pflege der Dateidefinitionen in XXFILES.

 

    Über die SYSTEM‑Funktion kann ein bestimmtes Rapport‑Generator‑System (ein Satz der Datei 0/CHSYSTEM) oder ein Subsystem, durch Änderung des Y (0‑9) in XXDATAFILY, angewählt werden. Die Dateien müssen im verhinein über die Funktion FORMAT angelegt sein. Hierüber können die Dateidefinitionen aufgeteilt werden.

 

10.5.         Definition neuer DRN (Felder).

 

   Nach Anwahl der Funktion werden Sie nach der DRN‑Nummer gefragt. Drücken Sie hier nur die CR‑Taste (Carriage Return), und Sie erhalten die nächste freie Nummer. Ein entsprechender Satz in der Datei XXDATAFILY wird bereitgestellt.

 

    Über die jetzt gezeigte Bildschirmmaske können Sie Feld für Feld definieren.

   

 

Figur 7  Felddefinitionen.

 

 DATAMASTER VERSION 01/01‑1987   SYSTEM 63,8  D.M.S.  C O M E T                  

 DRN NR: 1  EI             VA                             FELTER: 10 BYTES:  57  

 NR.NAME                       FORMAT CHECK  PSEUDO TYPE   VARIABEL   BYTE REF. W

                                                                                  

                                                                                 

                                                                                 

                                                                                  

                                                                                 

                                                                                 

                                                                                  

  1 ARTIKELNR                    4  K 3*****           0   S$(1,4)       4 VA#1  

  2 BEZEICHNUNG                 20                     0   S$(5,24)      8 VA#2  

  3 VERKAUFSPREIS                6,2                   3   S3(1)        28 VA#3  

  4 EINKAUFSPREIS                6,2                   3   S3(2)        34 VA#4  

  5 LETZT.EINKAUFSDATUM        , 6,   4DATO            2   S2(1)        40 VA#5  

  6 LIEFERANTENNR                3                     0   S$(25,27)    44 VA#6  

  7 GRUPPENNR                    2,                    1   S1(1)        48 VA#7  

  8 BESTAND                    ‑ 6,                    2   S2(2)        50 VA#8  

  9 ALT.LIEFERANTNR              3,                    1   S1(2)        54 VA#9  

 10 FREIFELD                   ‑ 6,2                   3   S3(3)        56 VA#10 

                                                                                 

 NR.NAME                       FORMAT CHECK  PSEUDO TYPE   VARIABEL   BYTE REF. W

 'HELP' FUR ANZEIGEN ZULASSIGER BEFEHLE                                          

                                                                                 

                                                                                  

 

 

 

Sie beenden den Vorgang, indem Sie END in die Spalte 'Feld‑Nummer' eingeben. Anschliessend wird der Bildschirminhalt in die Datei geschrieben.

 

    Der Vorgang kann jederzeit beendet und über die Funktion 3, Änderungen/Erweiterungen einer DRN, wieder aufgenommen werden.


10.7.         Definition eines einzelnen Feldes.

 

   Drücken Sie in der Spalte 'Feld‑Nummer' nur die CR‑Taste (Carriage Return), wird der Cursor auf den Feldnamen gesetzt. Hier können Sie einen Text eingeben (so kurz wie möglich), der als Feldbezeichnung im Rapport auftritt.

 

    Nach Eingabe des Namens können Sie das Feldformat entsprechend der Notation , wie Sie in der Bedienungsanleitung beschrieben ist, eingeben. Z.B. definiert '10' ein alphanumerisches Feld von der Länge 10, '8,2' ein numerisches Feld mit 10 Stellen, davon 2 nach dem Komma, und '3,' ein numerisches Feld mit drei Stellen ohne Nachkommastellen.

 

    Soll ein numerisches Feld mit Vorzeichen gedruckt werden, muss dieses mitangegeben werden ('‑8,2' oder '‑3,').

 

    Die Feldtypen 1%, 2%, 3% 4%, und $ werden mit Hilfe der Formatspezifikationen berechnet und auf dem Bildschirm angezeigt.     

 

10.8.1.       Erweiterte Felddefinitionen.

 

   Drücken Sie nach der Formatdefinition nur die CR‑Taste (Carriage Return), springt der Cursor auf das nächste Feld. Benutzen Sie eine der Funktionstasten (Taste 3‑17), setzen Sie mit den Feldinformationen in der gleichen Zeile mit folgenden Feldern fort:

   

    CHECK      Tasten Sie hier nur CR.

               Dieses Feld ist nur von Bedeutung, wenn das DATAMASTER 'Datei‑Update' verwendet wird.

 

    PSEUDO     Hier können Sie die wirkliche Länge eines alphanumerischen Feldes angeben.

               Z.B. Sie haben ein Schlüsselfeld mit der Länge 10,

               wovon jedoch nur die ersten vier Zeichen benutzt werden.

               Sie geben dann als Feldformat '4' und als Pseudolänge '10' an.

 

    DELIMITER  Geben Sie am Ende eines Alphanumerischen Feldes das Zeichen S (Stop Character) in die Pseudospalte

               ein, wird ein zusätliches Zeichen zur Feldlänge hinzugefügt.

               Dies bewirkt, dass der READ‑Befehl das nächste alphanumerische Feld getrennt liest.

 

    TYPE       Die Feldtype wird über die Formatdefinition berechnet.

               Geben Sie eine '4' ein, wird als Feldtype 2% eingesetzt.

               Sie haben hierdurch die Möglichkeit, die Feldtype zu ändern

               (z.B. können 4 Ziffern in einer 1%‑Variablen untergebracht werden).

 

    PACKING    Wünscht man ein Feld gepackt, gibt man 'P' zusammen mit dem Feldtype ein.

               Dies gilt sowohl für alphanumerische als auch für numerische Felder.

 

Es wird jetzt mit dem nächsten Feld fortgesetzt, es sein denn, Sie Drücken eine Funktionstaste nach der TYPE‑Spezifikation. In diesem Falle können Sie folgende Definition vornehmen:

   

    BYTE       Hier ist es möglich, eine bestimmte Bytenummer,

               die die berechnete Byte‑Nummer für dieses Feld ersetzt, anzugeben.

 

Das Feld VARIABLE wird immer automatisch als BASIC‑Variable mit den Namen S$, S1, S2, S3, S4, abhängig vom Feldtyp, berechnet. Die Felder REF und W sind für den Rapport‑Generator nicht von Bedeutung.


10.9.         Anzeigen und Hinzufügen von Feldern.

 

   Befindet sich der Cursor in der Spalte 'Feld‑Nummer', können Sie folgende Eingaben machen:

    

    CR         Hinzufügen/Definieren dieses Feldes.

    xx         Feldnummer, auf die der Cursor gesetzt werden soll.

    gg         Weiter zum nächsten unbenutzten Feld.

    L          Anzeigen einer Seite, beginnend mit Diesem Feld.

    Sx(xx)     Name einer Variablen. Setzt den Cursor auf die Feldnummer mit dieser Variablen.

    Text       Gefolgt von einer Funktionstaste (3‑17).

               Durchsucht alle Felder nach diesem Namen und zeigt den Inhalt des entsprechenden Feldes an.

 

 Hierdurch können Sie den Cursor auf jedes beliebige Feld setzen und Hinzufügungen zu bestehenden Definitionen vornehmen.

 

    Bei Drücken der CR‑Taste wird die jeweilige Felddefinition nicht verändert. Zeichen eines Feldnamens können über die Taste 'Pfeil hoch' kopiert werden.

 

10.11.         Definition einer Datei (DEF).

 

   Nachdem alle Feldeingaben vorgenommen worden sind, kann in der Spalte 'Feld‑Nummer' das Kommando DEF abgesetzt werden.

 

Figur 8  Definition einer Datei (DEF Kommando).

 

 DATAMASTER VERSION 01/01‑1987   SYSTEM 63,8  D.M.S.  C O M E T        ANDERN    

 DRN NR: 1  EI             VA                             FELTER: 10 BYTES:  57  

 NR.NAME                       FORMAT CHECK  PSEUDO TYPE   VARIABEL   BYTE REF. W

                                                                                  

                                                                                 

                                                                                 

                                                                                  

                                                                                 

                                                                                 

                                                                                  

                                                                                 

                                                                                 

                                                                                  

                                                                                 

                                                                                 

  1 ARTIKELNR                    4  K 3*****           0   S$(1,4)               

 DEF                                                                             

 NR.NAME                       FORMAT CHECK  PSEUDO TYPE   VARIABEL   BYTE REF. W

 DATEIKURZEL: FF DATEINAME ? 9/ARTIKELabc                                        

 TEXT:ARTIKELDATEI                                                               

 FELDER (1‑99):1‑99                                                              

 FELDTYPEN OPTIMIEREN:                             START DISPLACEMENT.?          

 "X" = OPTIMIERUNG, LEERTASTE= KEINE VERAND.                                     

 

 

 

 

Das Programm erwartet jetzt folgende Eingaben:

   

    Dateikurzname       2 Zeichen zur Identifikation der Datei.

    Dateiname           lu/Dateiname der Platten‑Datei.

    Dateitext           24 Zeichen zur Beschreibung der Datei.

    Anzahl Felder       1‑99.

    Optimieren Feldtyp  ($1234).

                        Normalerweise geben Sie hier 5 Leerstellen ein.

                        Geben Sie in einer der Positionen ein 'x' ein, werden alle Felder dieses Types,

                        unabhängig von der Feldnummer, zusammen abgespeichert.

                        Diese Funktion kann im Zusammenhang mit dem MAT‑Lesebefehl genutzt werden.

    Start Byte‑Nr.      Normalerweise 0 oder 2.

                        Das erste Byte‑Displacement erhält diesen Wert.

Die Datei wird mit ihrem Kurzname und einem Zeiger, der auf die zugehörigen DRN‑Definitionen verweist, im Dateiindex XXFILES notiert. Das Programm antwortet mit der Angabe der definierten Satzlänge, welche Sie mit ihrer Dokumentation vergleichen sollten. 


10.13.         Nicht im Dateisatz eingeschlossene Felder.

 

   Es können Felder definiert werden, die nicht im Dateisatz über das DEFKommando eingeschlossen sind.

 

   Diese Felder erhalten während der Laufzeit des Rapport‑Generators den Wert 0 (Null) und werden nicht gelesen, es sei denn, dass im Zusammanhang mit den Lesebefehlen BASIC‑Berechnungen für das Feld definiert wurden. 

 

10.14.1.       Nicht im Dateisatz eingeschlossene Schlüssel.

 

   Ist der Zugriffsschlüssel für die Datei kein Teil des Satzes, muss ein Feld mit der Länge 30 Zeichen für den Zugriffsschlüssel definiert werden. Weiterhin muss diese Feldnummer in KEY NOT IN RECORD angegeben werden (Funktion 6). Der Rapport‑Generator setzt den Zugriffschlüssel in dieses Feld ein und benutzt das Feld während des Sortierens in XXSORTWORK.

 

10.15.         Hinzufügen von Definitionen.

 

   Wird ein beliebiges Feld nach einem durchgeführten DEF‑Kommando hinzugefügt, werden Sie bemerken, dass die Feldtype nicht entsprechend dem Feldformat geändert wird, und dass es nicht mehr möglich ist, ein alphanumerisches Feld mit einer zugehörigen Byte‑Nummer zu erweitern, d.h. das Satzformat wird beibehalten.

 

    Um das Satzformat zu ändern, müssen Sie das Kommando ZERO absetzen. Hierdurch werden alle zugehöringen Byte‑Nummern entfernt, und ein neues Satzformat kann definiert werden.

 

    Bei erneuter DEF‑Kommando ist der Dateikurzname, der Plattenname und der Text bereits bekannt.

 

    Wollen Sie Felder am Ende des Satzes hinzufügen, kann dies ohne das Kommando ZERO erfolgen. Anstelle ZERO benutzen Sie REDEF, um die ByteNummern der hinzugefügten Felder zu setzen. Der Datei‑name und ‑text kann über die Funktion 6 geändert werden. 

 

10.17.         Der MAT READ Befehl.

 

   Soll der MAT READ Befehl für die Datei angewendet werden können, muss der Befehl MAT in der Spalte 'Feldnummer' angegeben werden.   

 

Figur 9  Definition des MAT READ Befehls.

 

 DATAMASTER VERSION 01/01‑1987   SYSTEM 63,8  D.M.S.  C O M E T        ANDERN    

 DRN NR: 1  EI             VA                             FELTER: 10 BYTES:  57  

 NR.NAME                       FORMAT CHECK  PSEUDO TYPE   VARIABEL   BYTE REF. W

                                                                                  

                                                                                 

                                                                                 

                                                                                  

  1 ARTIKELNR                    4  K 3*****           0   S$(1,4)       4 VA#1  

  2 BEZEICHNUNG                 20                     0   S$(5,24)      8 VA#2  

  3 VERKAUFSPREIS                6,2                   3   S3(1)        28 VA#3  

  4 EINKAUFSPREIS                6,2                   3   S3(2)        34 VA#4  

  5 LETZT.EINKAUFSDATUM        , 6,   4DATO            2   S2(1)        40 VA#5  

  6 LIEFERANTENNR                3                     0   S$(25,27)    44 VA#6  

  7 GRUPPENNR                    2,                    1   S1(1)        48 VA#7  

  8 BESTAND                    ‑ 6,                    2   S2(2)        50 VA#8  

  9 ALT.LIEFERANTNR              3,                    1   S1(2)        54 VA#9  

 10 FREIFELD                   ‑ 6,2                   3   S3(3)        56 VA#10 

 MAT                                                                             

 NR.NAME                       FORMAT CHECK  PSEUDO TYPE   VARIABEL   BYTE REF. W

 VARIABLE TYPES FOR MAT READ ARE:$1234                                           

 VARIABLE TYPES FOR MAT READ    :                                                

 MARK WITH X FOR MAT READ , ELSE SPACE                                            

 

 

 

 

Sie werden danach gefragt, für welche Variablentype der MAT READ Befehl gilt ($1234). Geben Sie hier 5 Zeichen ein, wobei 'x' MAT READ, und '_' (blank) normales READ definiert.

 

    Bei erneuter Angabe des MAT werden die vorherigen Definitionen übershrieben.

 

    Der MAT Befehl ändert den Array‑Index numerischer Variablen von 1 auf 0 (z.B. S4(0) statt S4(1) als erste 4%‑Variable) und bewirkt, dass die Lesebefehle über MAT READ generiert werden.

                    

    Anmerkung: MAT READ wird nicht generiert, wenn die Felder gleichen Types nicht in Bytenummernfolge aufeinander folgen, und wenn ein Feld als 'gepackt' definiert ist. In diesen Fällen müssen die Lesebefehle manuell hinzugefügt werden.


10.19.        Einsetzen / Löschen von Feldern.

 

   Mit Hilfe des Kommandos 'I' (in der Spalte 'Feldnummer'), können ein oder mehrere Felder vor die aktuelle Feldnummer eingefügt werden.

 

    Mit Hilfe des Kommandos 'D' kann das aktuelle Feld gelöschen werden.

 

10.21.

5.11.        Andere Kommandos.

 

   Ein Reihe anderer Kommandos kann in der Spalte 'Feldnummer' eingegeben werden. Die Funktion HELP gibt ihnen eine Übersicht über die verfügbaren Kommandos.

   

 

Figur 10 HELP‑Funktion im Felddefinitions‑Modul.

 

 DATAMASTER VERSION 01/01‑1987   SYSTEM 63,8  D.M.S.  C O M E T                  

 DRN NO: 1  VAREKARTOTEK                                  FIELDS: 10 BYTES:  57  

 NO.NAME                       FORMAT CHECK  PSEUDO TYPE   VARIABLE   BYTE REF. W

 L      LIST FIELDS ON SCREEN                   HELP   DISPLAY COMMANDS          

 I      INSERT FIELDS BEFORE CURRENT FIELD      F      FORM FEED ON PRINTER      

 D      DELETE FIELDS FROM   CURRENT FIELD      MAT    MAT READ MODE (INXEX 0)   

 GET    GET FIELDS FROM OTHER DRN               USED   LIST PROGRAMS USING DRN   

 REGET  GET NEW FIELDDEFINITIONS                T      AMEND EXTERNAL TEXTES     

 N      SET DRN NAME                            DB     SET VARIABLE MODE         

 ZERO   ZERO FILE DEFINITIONS                   BYTES  SET BYTES FROM READSTAT.  

 PRINT  PRINT DRN                                                                

 DEF    DEFINE FILE                                                              

 REDEF  INSERT EXTRA FIELDS IN DEFINITION                                        

 W      SET FIELD WRITE ACCESS                                                   

 R      SET FIELD READ ACCESS                                                    

 FIL    SET FILE CONNECTIONS                                                     

 END    WRITE DRN                                                                

 SPR    ABORT                                                                    

 Sx(xx) SEARCH FOR FIELD                                                          

  1 ARTIKELNR                    4  K 3*****           0   S$(1,4)       4 VA#1 W

                                                                                 

 NO.NAME                       FORMAT CHECK  PSEUDO TYPE   VARIABLE   BYTE REF. W

 CHECK/PSEUDOLENGTH AND TYPE CAN BE ENTERED                                      

 IF ONE OF THE SPECIAL KEYS IS USED AFTER FORMAT (FOR DAP:THE 'N'KEY)            

 

 

 

Nur die in dieser Anleitung beschriebenen Kommandos sind bei der Installation des Rapport‑Genewrators von Interesse. Die nicht beschriebenen Kommandos werden im Zusammenhang mit DATAMASTER oder anderen Programmentwicklungen benütigt.

 

10.23.        Zusätzliche Feld‑Beschreibungen (Dokumentation).

 

   Die HELP‑Funktion des Rapport‑Generators gibt dem Anwender eine Übersicht über alle implementierten Dateien und alle Felder einer Datei.

 

    Zusätliche Feldbeschreibungen können mit Hilfe der HELP‑Funktion eingefügt werden (Siehe Bedienungsanleitung). Über das Kommando 'T' (Spalte 'Feldnummer') wechselt das System aus dem Definitions‑Modul in das PflegeModul für Hilfstexte.

 

Figur 11 Eingabe zusätzlicher Hilfstexte.

 

 DATAMASTER VERSION 01/01‑1987   SYSTEM 63,8  D.M.S.  C O M E T        ANDERN    

 DRN NR: 1  EI             VA                             FELTER: 10 BYTES:  57  

 NR.NAME                       FORMAT CHECK  PSEUDO TYPE   VARIABEL   BYTE REF. W

  1 ARTIKELNR                    4  K 3*****           0   S$(1,4)       4 VA#1  

  2 BEZEICHNUNG                 20                     0   S$(5,24)      8 VA#2  

  3 VERKAUFSPREIS                6,2                   3   S3(1)        28 VA#3  

  4 EINKAUFSPREIS                6,2                   3   S3(2)        34 VA#4  

  5 LETZT.EINKAUFSDATUM        , 6,   4DATO            2   S2(1)        40 VA#5  

  6 LIEFERANTENNR                3                     0   S$(25,27)    44 VA#6  

  7 GRUPPENNR                    2,                    1   S1(1)        48 VA#7  

  8 BESTAND                    ‑ 6,                    2   S2(2)        50 VA#8  

  9 ALT.LIEFERANTNR              3,                    1   S1(2)        54 VA#9  

 10 FREIFELD                   ‑ 6,2                   3   S3(3)        56 VA#10 

 MAX. 7990 CHARS TEXT  , 378  CHARS USED.                                        

  1 ARTIKELNR                                                                    

    SUCHBEGRIFF 1                                                                

    MUSS EINDEUTIG SEIN                                                           

  2 BEZEICHNUNG                                                                  

  3 VERKAUFSPREIS                                                                

    RICHTUNGSWEISENDER VERKAUFSPREIS.IN DKR.                                     

  3 VERKAUFSPREIS                                                                

 NR.NAME                       FORMAT CHECK  PSEUDO TYPE   VARIABEL   BYTE REF. W

 FIELDNO.? 3         CHANGE THIS TEXT (Y/N/D) ? Y                                

 TX:      NGSWEISENDER VERKAUFSPREIS.IN DKR.                                     

                                                                                 

 


    Durch Eingabe einer Feldnummer können Sie eine Anzahl von Textzeilen diesem Feld zuordnen. 'END' oder CR (Carriage Return) bewirkt den Rücksprung in das Definitions‑Modul.

 

    Diese Funktion ist besonders wertvoll für Kode‑Felder.

 

    Die eingebenen Texte werden in der Textdatei 1/xxDMs.TEXTnn gespeichert, wobei 1/xx das Prefix für 1/xxDATAFILs, s die Nummer des Subsystems, und nn die DRN‑Nummer ist.

 

10.25.

5.13.        Generierung von Lesebefehlen.

 

   Zum Generieren der Datei XXREAD.FF, die die Lesebefehle beinhaltet, muss die Funktion 5 gewählt werden.

 

    Bei der Frage nach der DRN‑Nummer kann entweder mit der jeweiligen Nummer oder mit dem Dateikurznamen geantwortet werden.

 

Figur 12 Generierung eines READ‑Befehles.

 

 DATAMASTER VERSION 01/01‑1987   SYSTEM 63,8  D.M.S.  C O M E T       READ/WRITE 

 NR.NAME                       FORMAT CHECK  PSEUDO TYPE   VARIABEL   BYTE REF. W

                                                                                  

                                                                                 

                                                                                 

                                                                                  

                                                                                 

                                                                                 

                                                                                  

                                                                                 

                                                                                 

                                                                                  

                                                                                 

                                                                                 

 LESEN‑/SCHREIBEN VON DATEI WIRD GENERIERT ‑ W A R T E...                        

                                                                                 

                                                                                 

                                                                                  

                                                                                 

                                                                                 

 NR.NAME                       FORMAT CHECK  PSEUDO TYPE   VARIABEL   BYTE REF. W

 TEXTDATEINAME FUR LESEN/SCHREIBEN/INDEX BEFEHLE (CR=9/R3!) ? R                  

                                                                                 

 READ STATEMENTS #1 ALEINE,ALLEN FELDER (DMS.INFOGEN)9/DMREAD.VA!/               

 

 

 

 

Bei der Frage nach dem 'Dateinamen für Lese/Schreib‑Befehle' geben Sie 'R' ein, welches bewirkt, dass für alle Felder die Lesebefehle mit den korrekten Dateinamen, der vom Rapport‑Generator verwendet wird, generiert werden.

 

    Sie können die Textdateien nach der Generierung laden, prüfen, ändern und drucken.

 

    Schreiben Sie einen Lesebefehl selber bzw. kopieren einen Befehl aus einem anderen Programm, brauchen Sie sich nicht um Byte‑Nummern oder Generierungen zu bekümmern.


10.27.        Pflege der Dateidefinitionen.

 

   Wählen Sie die Funktion 6 in der Hauptfunktions‑Auswahl, erhalten Sie folgendes Schirmbild:

   

 

Figur 13 Dateipflege‑Funktion.

 

 03 SHORTNAME        01 FILENAME                           04 PASSWORD           

                     02 TEXT                                                     

 DLU:0123456789                                    05 RECORDLENGTH               

     9999999999      07 DRN                        06 NO.OF RECORDS              

 SCREEN NO.   3      10 SUBSYSTEM                  09 CONT.END MARK              

 FILE SUFFIX:        08 UTILITIES                  11 STAR DRN NO.               

 KEYS:                                             12 KEY NOT IN RECORD          

     xx1 xx2  xx3   xx4  xx5                       xx6               xx7  xx8    

     NO. VAR. HOUSE DIR. KEYFIELDS                 NAME              LEN  OPTION 

 100:                                                                            

 200:                                                                            

 300:                                                                            

 400:                                                                            

 500:                                                                            

 600:                                                                             

 700:                                                                            

 800:                                                                            

 900:                                                                             

                                                                                 

                                                                                 

                                                                                  

 FUNCTION:                                                                       

 1=CREATE  2=READ    3=CHANGE  4=DELETE  5=DISPLAY  6=CHECK                      

 

 

 

 

Über dieses Modul können Sie alle Informationen, die in der Dateidefinitionsdatei XXFILE gespeichert sind, pflegen, z.B. Dateiname, Index, Dateiverweise u.s.w.

 

    Sie können eine der folgenden Unterfunktionen anwählen:

   

                1 = Anlage einer neuen Dateidefintion.

                2 = Anfrage.

                3 = Erweiterung.

                4 = Löschen.

                5 = Anzeigen der Liste aller Felder.

                6 = Prüfen (nur für internen Gebrauch).

              END = Rücksprung in die Hauptfunktions‑Auswahl.

 

 Wollen sie Die Datei VA aus der Bedienungsanleitung hinzufügen, erhalten Sie nach Eingabe der Funktionsnummer (3) und des Dateikurznamens (VA) folgendes Schirmbild:

   

 

Figur 14 Pflege der Dateidefinitionen.

 

 03 SHORTNAME VA     01 FILENAME 9/DM.VAKA#                04 PASSWORD           

                     02 TEXT     ARTIKELDATEI                                    

 DLU:0123456789                                    05 RECORDLENGTH       0       

     0123456789      07 DRN            1           06 NO.OF RECORDS      0       

 SCREEN NO.   3      10 SUBSYSTEM      8           09 CONT.END MARK      0       

 FILE SUFFIX:        08 UTILITIES    999           11 STAR DRN NO.       0       

 KEYS:                              5‑10,1         12 KEY NOT IN RECORD  0       

     xx1 xx2  xx3   xx4  xx5                       xx6               xx7  xx8    

     NO. VAR. HOUSE DIR. KEYFIELDS                 NAME              LEN  OPTION 

 100:01  00           1  1,S                       ARTIKELNR           0     0   

 200:02  00           2  6,1,S                     LIEFERANTENNR       0     0   

 300:GR  00   GR      1  7,S                       ARTIKEL==>GRUPPE    0     0   

 400:LE  00   LE      1  6,S                       ARTIKEL==>LIEFER.   0     0   

 500:                                                                            

 600:                                                                            

 700:                                                                             

 800:                                                                            

 900:                                                                            

                                                                                  

                                                                                 

                                                                                 

 FUNCTION:3=CHANGE   FIELDNO:     "                                               

                                                                                 

 

 

 

 

Entsprechend DMS.RAPGEN.SYS können Sie jetzt die einzelnen Felder durch Angabe der Feldnummer ändern. Um in die Funktionsauswahl zurückzukehren, drücken Sie einfach CR (Carriage Return).


    Die obere Hälfte des Schirmbildes beinhaltet die Grundinformationen der Datei, die untere Hälfte je einer Zeile pro Index oder Dateiverweis. Jede dieser Zeilen entspricht einem Satz in der Datei XXFILES.

 

    Ein Feld in der Indexzeile wird durch Eingabe von 'xyy' ausgewählt, wobei 'x' die Zeilennummer und 'yy' die Feldnummer ist. Ist die Zeile nicht benutzt, leitet das Programm Sie durch die einzelnen Felder und die Zeile wird anschliessend angelegt.

 

    Bei mehr als 9 Indices/Dateiverweisen rollt das Schirmbild bei Drücken der CR‑Taste (Carriage Return) nach oben.

 

    Haben Sie z.B. die Felder 1 oder 2 geändert (Dateikurzname oder Dateiname), sorgt das Programm dafür, dass in sämtliche DRN‑Definitionen die entsprechenden Informationen aktualisiert werden.

 

10.28.1.      Datei‑Grundinformationen.

 

   Die Grundinformationen einer Datei bestehen aus folgenden Feldern:

 

10.28.2.1.    Dateikurzname.

 

   2 Zeichen zur Identifizierung der Datei.   

 

10.28.2.3.    Dateiname.

 

   Lu/Dateiname der physischen Datei auf einer Platte. Wir verweisen hier auf den nächsten Abschnitt 'Dateinamen und Interface‑Programs'.

 

10.28.2.5.    Text.

 

   24 Zeichen zur Beschreibung der Datei.

 

10.28.2.7.    Kennwort.

 

   Ein 6 Zeichen langes Kennwort kann der Datei zugeordnet werden. Dieses Kennwort muss vom Anwender eingegeben werden, wenn ein neuer Rapport aus Basis dieser Datei angelegt werden soll. Der Anwender ist selber dafür verantwortlich, dass der entsprechende Rapport durch ein Kennwort geschützt wird.

 

10.28.2.9.    Satzlänge.

 

   Nur zur Information. Wird von DATAMASTER beim Aufbau einer Datei verwendet.

 

10.28.2.11.    Anzahl Sätze.

 

   Nur zur Information. Wird von DATAMASTER beim Aufbau einer Datei verwendet.

 

10.28.2.13.    DRN.

 

   Die DRN‑Nummer verweist auf die Satznummer in der Datei XXDATAFILY, in der die Felddefinitionen gespeichert sind. Dieser Verweis wird automatisch bei der Definition einer neuen Datei gesetzt.

 

10.28.2.15.    Utilities.

 

   Hier wird angegeben, ob die Datei über Utilities bearbeitet werden darf.

   

      999 =   Bearbeitung über Utilities zugelassen.

        0 =   Die Datei wird von der Dateiliste des Rapportgenerators gestrichen.

              Es ist nicht möglich, einen Rapport auf Basis dieser Datei zu definieren,

              auch wenn die Datei physisch vorhanden ist.

     6999 =   Erlaubt dem Anwender, die Datei über DATAMASTER neu zu definieren.

 

10.28.2.17.    Cont. End Mark.

 

   Z.Zt. nicht benutzt. Für zukünftige Verwendung reserviert (Anzahl der in einer fortlaufenden Datei verwendeten Sätze, neue EOD Basisfunktion).


10.28.2.19.   Subsystem.

 

   Die Nummer des Subsystems wird bei Dateidefinition automatisch vergeben. Das Suffix 'Y' in der Datei XXDATAFILY kann dazu verwendet werden, Dateidefinitionen in logische Blöcke aufzuteilen, z.B. Standardsystem, private Dateien u.s.w. Normalerweise auf 0 gesetzt (XXDATAFIL). DATAMASTER verwendet als Suffix '9' (XXDATAFIL9).

 

10.28.2.21.

5.14.1.11.   STAR DRN‑Nr.

 

    Z.Zt. nicht benutzt.

 

    Bei Installation unter STAR setzt DMS.STARDRN die ursprüngliche START DRNNr. hier für Dokumentationszwecke ein. 

 

10.28.2.23.   KEY NOT IN RECORD.

 

    Normalerweise auf 0 gesetzt.

 

    Wird nur benutzt, wenn ein Sortieren einer Datei, deren Sätze den Sortierschlüssel nicht enthalten, vorgenommen wird. Der Rapport‑Generator speichert vorübergehend den Schlüssel während des Sortierens in dem Satz der Datei XXSORTWORK ab. Dieser wird später beim Ausdruck des Rapports als Suchbegriff verwendet.

 

    Die Nummer eines 30 Zeichen langen freien Feldes in der DRN‑Definition muss hier eingegeben werden. Der Feldinhalt kann zum Drucken bzw. für Berechnungen benutzt werden.

 

10.28.2.25.

5.14.1.13.   Andere Felder.

 

    Die DLU und das Datei‑Suffix des Systems wird angezeigt. Die Nummer des Arbeitsplatzes erscheint aus SPC 6. Das Schlüsselfeld wird ausschliesslich für DATAMASTER‑Dateien angezeigt.

 

10.28.3.      Index und Dateiverweis.

 

   Keine der folgenden Informationen müssen bei Installation des RapportGenerators eingegeben werden, sondern können auch später, falls gewünscht, hinzugefügt/erweitert werden.

 

    Die Index‑Definitionen werden nur dazu benutzt, dem Anwender bei Start  eines Rapports die möglichen Indices anzuzeigen. Es wird nur der Index‑Name gezeigt. Eventuelle zusätzliche Index‑Informationen dienen ausschlisslich der (guten) Dokumentation.

 

    Die Definition von Dateiverweisen erleichtert dem Anwender den Gebrauch von mehreren miteinander integrierten Dateien wesentlich, da man sich dann nicht um Schlüsselfelder, vorangestellte Nullen oder anderen Konstanten zu bekümmern braucht.

 

    Die Felder einer Definitionszeile sind:   

 

10.28.4.1.    Nummer.

 

   Index‑Nummer oder Kurzname der verbundenen Datei. Der Kurzname wird als Referenz in READ(XX)‑Befehlen verwendet.

 

10.28.4.3.    Var.

 

   Immer '00'. Dieses Feld ist für spätere Anwendung in Zusammenhang mit der Definition mehrerer Verweise zwischen gleichen Dateien reserviert. 

 

10.28.4.5.    Indexdatei.

 

   Die Indexdatei ist leer, wenn es sich um Indexdefinitionen handelt, und beinhaltet die Kurznamen, wenn es sich um Dateiverweise auf verknüpfte Dateien handelt.

 

    Der SEARCH‑Befehl benutzt diese Indexdatei, wenn es sich um einen bestimmten Zugriffsschlüssel handelt, wohingegen der READ‑Befehl direkt auf der zu lesenden Datei (Parameter 1) aufsetzt. Dies bedeutet, dass Index und Datensatz in verschiedenen Dateien gespeichert werden können.


10.28.4.7.    Directory Nr.

 

    Directory‑Nummer der Datei, die den Index beinhaltet.

 

    Bei Index‑Definitionen sollte dieser Wert normalerweise dem Parameter 1 entsprechen. Bei Dateiverweis‑Definitionen soll hier die Directory‑Nummer der Datei, auf die verwiesen wird, eingetragen werden.

 

10.28.4.9.    Schlüsselfelder.

 

    Der Zugriffschlüssel für entweder den Index dieser Datei selber, oder für eine verbundene Datei wird über die Feldnummer, oder eine Kombination der Felder dieser Datei, gebildet. Die Syntax des Zugriffschlüssel ist in dem folgenden Hauptabschnitt beschrieben.

 

    Ist die verbundene Datei eine rein numerische Datei, sollten Sie beachten, dass die definierte Schlüssellänge kürzer als die Schlüssellänge der Ausgangsdatei ist, d.h. ein Teil des Zugriff‑Schlüssels wird durch die Kundennnummer gebildet.

 

    Die Definition des Schlüsselfeldes kann in dem Feld NAME fortgesetzt werden, falls die 25 Zeichen nicht ausreichend sind.

 

10.28.4.11.    Name.

 

    18 alphanumerische Zeichen.

 

10.28.4.13.    Länge.

 

    Nicht benutzt. Wird nur vom DATAMASTER verwendet.

 

10.28.4.15.    Option‑Code.

 

    Z.Zt. nicht benutzt. Reserviert für zukünftige Behandlung von Satznummernverweise, d.h. die Behandlung eines Teiles des Schlüssels als externer Index für die Satznummer dieser Datei.

 

10.28.5.      Struktur der Schlüsselfeld‑Definitionen.

 

   Im folgenden wird die vollständige Syntax der Schlüsselfeld‑Definitionen erlüutert:

 

10.28.6.1.    Felder.

 

   Felder werden als Feldnummern ohne führende geschrieben.

   

      10         = Feldnummer 10.

      10(5,6)    = Zeichen 5‑6 im Feld 10.

      R          = Satznummer, absolut.

      N          = Satznummer, relativ zum ersten Datensatz.

      'XX'       = Textkonstanten.

 

10.28.6.3.    Funktionen.

 

   Die Funktionen werden unmittelbar nach dem 'Feld' als Buchstabe geschrieben.

   

      D          = Umkehren des Datums TTMMJJ ‑‑‑> JJMMTT (FND).

      P          = Gepackt.

      Z          = Vornullen Unterdrückung.

      S          = Auffüllen mit Leerstellen (blanks).

 

10.28.6.5.    Kombinationen aus Feldern und Funktionen.

 

    Mehrfach‑Felder werden durch Komma (,) getrennt.

 

    Die P‑Funktion kann für jedes Feld oder alleine (ohne Feldnummer) benutzt werden. Im letzteren Falle werden alle Zeichen, die vorher definiert wurde, gepackt.

    Die S‑Funktion kann nur alleine oder am Ende benutzt werden.


10.28.6.7.    Beispiele einer Schlüsselstruktur.

 

     1.  1           Feld 1.

     2.  1,2         Feld 1 gefolgt von Feld 2.

     3.  1,2,P       Feld 1 gefolgt von Feld 2, gepackt.

     4.  1P,2        Feld 1 gepackt, gefolgt von Feld 2 ungepackt.

     5.  1(3,4),2    Position 3 und 4 des 1. Feldes gefolgt von Feld 2.

     6.  "01",1      Die Konstante 01 gefolgt von Feld 1.

     7.  1,S         Feld 1, aufgefüllt auf gerade Schlüssellänge mit Leerstellen.

     8.  2,NP,S      Feld 2, relative Satznummer, gepackt, mit Leerstellen aufgefüllt.

 

 Die zwei zuletzt gezeigten Beispiele werden normalerweise vom DATAMASTER benutzt. Das erste Beispiel zeigt einen eindeutigen Schlüssel, das zweite einen Schlüssel, wo Duplikate erlaubt sind.


11.           Dateinamen und 'Interface‑Programs'.

 

   Dieser Abschnitt beschreibt die Schnittstelle zu Standardpaketen und individuellen Programmen durch externe Parameter Dateien. 

 

12.1.         Dateiname.         

 

   Die meisten Programme und alle Standardpakete enthalten einen Dateinamen, der normalerweise ganz ohne teilweise (lu) in externen Dateien gespeichert ist. Dieser Dateiname kann direkt vor dem Eröffnen einer Datei (OPEN) durch die aktuelle Systemnummer, die Anwendernummer oder die Arbeitsplatznummer ergänzt bzw. modifiziert werden.

 

    DMS.RAPGEN unterstützt nahezu alle diese Varianten. Es kann jedoch notwendig werden, hier spezielle Routinen für die Behandlung von Dateinamen zu programmieren. Alle Dateien werden über ein und das gleiche Modul eröffnet (OPEN), nämlich DMS.RAPGEN.99.

 

    Der Grunddateiname wird in der Datei XXFILES abgespeichert, und ist mit dem Dateikurznamen verknüpft. Alle Dateieröffnungen basieren auf diesem Dateinamen, der um die externen Parameter erweitert ist.

 

    Die Umwandlung des Grunddateinamens in einen physikalischen Dateinamen erfolgt entsprechend den Regeln, wie sie in den folgende Abschnitten beschrieben sind. Die Umwandlung kann in zwei verschiedenen Programmen erfolgen:

   

    ‑ DMS.RAPGEN.99 unmittelbar von einem OPEN.

 

    ‑ DMS.RAPGEN.LU kann von jedem System bei Installation aufgerufen werden, um die Umwandlung aller Dateinamen

      in interaktiven Modus vorzunehmen. Hierdurch wird erreicht, dass das Vorhandensein aller Dateien überprüft,

      und dem Modul DMS.RAPGEN.99 die konvertierten Dateinamen zur Verfügung gestellt werden.

 

12.2.1.       DMS.RAPGEN.LU Umwandlung eines Dateinamens.

 

   Dieses Programm sollte aus der Installations‑Programmwahl aufgerufen, und mit der TAMOS Systemnummer versorgt werden (z.B. 001).

 

    Falls keine spezielle Platteneinheit angegeben wird, wird auf den lu 1‑9 (falls aktiv) nach den jeweiligen Dateien gesucht.

   

 

Figur 15 Aktualisieren eines Dateinamens über DMS.RAPGEN.LU.

 

 SYSTEM:63  D.M.S.  C O M E T                                                    

                                                                                 

 TAMOS SYSTEM:001                                                                

                                                                                 

 SEARCH DISK:(CR=00010203040506070809) ?                                         

                                                                                 

 BU 9/GF‑01200abc     BUDGETDATEI              09/GF‑01200001                    

 DB 9/GF‑03100abc     DEB/KRED BEWEGUNG        09/GF‑03100001                    

 DK 9/GF‑03000abc     DEB/KRED STAMDATEI       09/GF‑03000001                    

 GR 9/DM.GRKA#        VARENGRUPPENDATEI        09/DM.GRKA                        

 KB 9/GF‑01100abc     SACHKONTEN‑BEWEGUNG      09/GF‑01100001                    

 KO 9/GF‑01000abc     SACHKONTEN‑STAMMDATEI    09/GF‑01000001                    

 KU 9/DM.KUKA#        VALUTADATEI              09/DM.KUKA                        

 L2 9/LF‑06000abc     ARTIKELSTAMM 2/LAWI      09/LF‑06000001                    

 L3 9/LF‑06000abc     ARTIKELSTAMM 3/LSTAP     09/LF‑06000001                    

 L4 9/LF‑06000abc     ARTIKELSTAMM 6/ AB/F     09/LF‑06000001                    

 L5 9/LF‑06000abc     ARTIKELSTAMM ‑ FEROS     09/LF‑06000001                    

 L6 9/LF‑06000abc     ARTIKELSTAMM COSTING     09/LF‑06000001                    

 LA 9/LF‑06000abc     ARTIKEL‑STAMKARTOTEK     09/LF‑06000001                    

 LE 9/DM.LEKA#        LIEFERANTDATEI           09/DM.LEKA                        

 LO 9/LF‑06001abc     LAGERORTDATEI            09/LF‑06001001                    

 NF 9/DX.NFKA#        GESTE STAMMDATEI         09/DX.NFKA                        

 NG 9/DX.NGKA#        GESTS ADDITIONAL FIL     09/DX.NGKA                        

 NK 9/NF‑01200000     LEISTUNGS‑/KONTOPOSITION                                   

 

 

 

 

Das Programm durchlöuft die Dateidefinitionsdatei XXFILES und wandelt entsprechend den Regeln die Grunddateinamen in pysikalische Namen um, und überprüpft das Vorhandsein von aller Dateien.

 

    Ist die Datei gefunden, und existiert keine andere Datei mit dem gleichen Namen auf einer der angegebenen Plattenaufwerke, setzt das Programm mit dem nächsten Dateinamen fort. Der Rest der Dateinamenkonvertierung wird dann im Modul DMS.RAPGEN.99 vorgenommen.

 

    Wird der Dateiname nicht unmittelbar gefunden, werden alle anderen lu's durchsucht.


    Belibt auch diese Suche erfolglos, wird der Bediener nach dem Dateinamen gefragt, bzw. ob diese Datei übersprungen werden soll.

 

    Werden mehrere Dateien mit dem gleichen Namen auf verschiedenen Plattenaufwerken gefunden, muss der Bediener entscheiden, welche der Dateien benutzt werden soll.

 

    In den Fällen, wo der Dateiname nicht direkt aus dem Grunddateinamen abgeleitet werden kann, wird der konvertierte Dateiname als Index 4 der Dateidefinitionsdatei XXFILES, gefolgt vom Dateikurznamen, der Systemnummer und der TAMOS‑Systemnummer, eingetragen. Findet DMS.RAPGEN.99 einen solchen Eintrag, wird dieser anstelle einer Konvertierung des Grunddateinamens benutzt.

 

    DMS.RAPGEN.LU sollte für jedes aktive TAMOS‑System initiert werden. Dies gilt ebenfalls, wenn Dateien auf andere Plattenlaufwerke kopiert wurden.

 

    Jedesmal, wenn DMS.RAPGEN.LU aufgerufen wird, werden alle bereits konvertierte Dateinamen gelöscht.

 

12.2.3.       Regeln für die Konvertierung von Dateinamen.

 

   In den Dateidefintionen muss der Grunddateiname als 'lui/dateiname' in Grossbuchstaben angegeben werden. Kleinbuchstaben und Sonderzeichen verursachen eine Konvertierung.

 

    Der Name einer COMET‑TOP‑Anwenderdatei kann z.B. 1/GF‑03000abc lauten. Kleinbuchstaben und Sonderzeichen werden wie folgt konvertiert:

 

   

            abc =   TAMOS‑Programmwahl Parameter 1.

            def =   TAMOS‑Programmwahl Parameter 2.

            ghi =   TAMOS‑Programmnummer.

            jk  =   Start Port‑Nr. (Arbeitsplatz‑Nr.).

            l   =   DMS Suffix‑Nr.

            mn  =   System‑Nr. des Rapport‑Generators.

            o   =   Sprach‑Suffix des Rapport‑Generators.

            pq  =   (Reserviert, alt. DMS‑PROGRAMM‑Prefix).

            r‑z =   (Nicht benutzt).

            @   =   Datei‑Suffix des Rapport‑Generators.

            #   =   Arbeitsplatz‑Nr. (1‑9), nur am Ende des Namens.

 

 Die Logical‑Unit‑No. wird durch die der DLU‑Tabelle entsprechenden Nummer, die durch DMS.RAPGEN.SYS definiert wurde, ersetzt. Um ein Ersetzen zu vermeiden, empfehlen wir, hier immer 0123456789 einzusetzen, da sonst diese Aufgabe von DMS.RAPGEN.LU durchgeführt werden muss.

 

    Gesonderte Konvertierungen werden im Zusammenhang mit STAR, SUPERSTAR and NYRUP in Abhängigkeit der Parameter in DMS.RAPGEN.SYS durchgeführt. Für Einzelheiten verweisen hierbei auf die gesonderte Dokumentation.


12.3.         DMS.COMET Schnittstelle zu den Parameterdateien.

 

   Die Funktion des DMS.COMET ist es, die COMET‑TOP Parameterdateien zu lesen und deren CHICO‑Informationen, wie z.B. Byte‑Nummern und Datei‑Flags, zu übernehmen. Diese Informationen werden in vordefinierten COMET‑TOP‑Dateien gespeichert. READ‑Befehle werden anschliessend für alle Dateien mit variablen Satzlängen generiert.

 

    Das Programm kann entweder aus der Installations‑Programmwahl oder über das Betriebssystem aufgerufen werden. Dazu sind Angaben über die System‑Nr. des Rapport‑Generators und die TAMOS‑System‑Nr. notwendig. Ferner muss die lu der COMET‑TOP‑Parameterdatei angegeben werden (normalerweise 0).

 

    Eine oder mehrere Dateien können in einem Vorgang aktualisiert werden.

   

 

Figur 16 Schnittstelle zwischen DMS.COMET und Parameterdateien.

 

 DMS.COMET ‑ TRANSFER COMET PARAMETER‑FILES TO DMS.RAPGEN                        

                                                                                 

 TO REPORT GENERATOR SYSTEM:(CR=63 D.M.S.  C O M E T   ) ?                       

                                                                                 

 63 DMS.COMET D.M.S.  C O M E T     9/DMDATAFIL, 9/DMFILES,  SYSTEM:000          

                                                                                 

 COMET SYSTEM NO. (cr=000) ? 001     COMET SYSTEM LU. (cr=0)  ? 9                

                                                                                  

 ENTER FILE‑SHORTNAMES (AA,BB) (cr=ALL FILES) ?                                  

                                                                                 

 0/LF‑06000001      LA 00 01  ARTIKEL‑STAMKARTOTEK                               

    OK.                                                                          

 0/XX               XX 00 13  TEST                                               

 9/GF‑01000abc      KO 00 10  SACHKONTEN‑STAMMDATEI                              

    OK.                                                                          

 9/GF‑01100abc      KB 00 11  SACHKONTEN‑BEWEGUNG                                

    OK.                                                                           

 9/GF‑01200abc      BU 00 12  BUDGETDATEI                                        

    NOT ACTIVE.                                                                  

 9/GF‑03000abc      DK 00 08  DEB/KRED STAMDATEI                                 

    OK.                                                                          

 

 

 

 

 

 

Um neue READ‑Befehle generieren zu können, muss das Dateidefinitions‑Modul auf dem System vorhanden sein (DATAMASTER, DMS.XDRN).


13.           Programmierung eines Lesebefehls.

 

14.1.         Der einfache Lesebefehl.

 

   Der einfache Lesebefehl, wie er durch das Dateidefinitions‑Modul generiert wird, kann wir folgt aussehen:

 

Figur 17 Der einfache Lesebefehl.

 

 8010 READ #R1,R2,4;S$(1,24),S3(1),S3(2),S2(1),S$(25,27),S1(1),S2(2),S1(2),S3(3);

 8011 RETURN                                                                     

 

 

 

Der Lesebefehl muss auf der Zeilennummer 8010 beginnen, und wird mit dem Kommando RETURN beendet.

 

    Die Kanalnummer muss als R1, die Satznummer als R2 und die Variablen als S$, S1, S2, S3 oder S4 entsprechend dem Feldtype angegeben werden.

 

14.3.         Laden des Lesebefehls.

 

   Der Lesebefehl für die Hauptdatei wird beim Generieren eines RapportProgrammes nach den Standardroutinen und vor den vom Anwender definierten Textdateien gelesen.

 

    Unterprogramme und Modifikationen für Standardroutinen können in diese Datei miteingeschlossen werden. Näheres dazu in den folgenden Abschnitten. Der Lesebefehl kann beliebig viele Zeilen belegen.

 

14.5.         Laden des Lesebefehls für verknüpfte Dateien.

 

   Handelt es sich um einen Lesebefehl für verknüpfte Dateien, wird dieser Befehl direkt in die zugehörige Rapport‑Textdatei geladen.

 

    Hierbei werden nur die Befehle 8010 und folgende, bis zum ersten RETURN, berücksichtigt. Alle Änderungen und spezielle Programmroutinen, die nicht innerhalb dieser Zeilen liegen, werden zurückgewiesen.

 

    Die Variablen‑Namen werden während des Ladens von S in B,C,D u.s.w. entsprechend der Kanalnr., die dieser Datei zugeordnet ist, geändert.

 

    Die Zeilen werden so nummeriert, dass die Leseroutine auf der nächsten freien Zeile in der 8010 Routine beginnt. Die ON‑GOTO Routine für diesen Befehl wird entsprechend aktualisiert.  

 

14.7.         Lesebefehl für gepackte Felder.

 

   Alle gepackte Felder sollten für den Lesebefehl 'entpackt' werden, da normalerweise der Anwender nicht in der Lage sein wird, eine Leseroutine für gepackte Felder zu schreiben. Der CALL 61 Befehl kann, wenn gewünscht, in die jeweilige Routine miteingebaut werden.

 

Figur 18 Lesebefehl mit 'Entpacken' von Feldern.

 

 8010 READ #R1,R2;S1(1)                                                          

 8011 READ #R1,R2,2;T9$(1,4)                                                     

 8012 LET T9$(5)=""                                                               

 8013 CALL 61,T9$,T2$                                                            

 8014 LET S3(1)=T2$(1,8)                                                         

 8015 READ #R1,R2,8;S$(1,161),S1(2),S1(3),S1(4),S1(5),S1(6),S1(7),S1(8),S1(9),S1(

 10),S1(11),S1(12),S4(1),S4(2),S4(3),S4(4),S4(5),S4(6),S4(7),S4(8),S4(9)         

 8016 READ #R1,R2,264;S4(10),S4(11),S4(12),S4(13),S1(13),S1(14),S2(1),S4(1),S4(1 

 5),S4(16),S4(17),S2(2),S1(15),S1(16),S1(17),S2(3),S4(18),S4(19),S4(20),S4(21)   

 8017 READ #R1,R2,382;S$(162,189)                                                

 8018 READ #R1,R2,410;T9$(1,4)                                                   

 8019 LET T9$(5)=""                                                               

 8020 CALL 61,T9$,T2$                                                            

 8021 LET S3(2)=T2$(1,8)                                                         

 8022 READ #R1,R2,416;S1(18),S1(19),S2(4),S2(5),S1(20),S4(22),S4(23),S4(24),S4(25

 ),S4(26),S4(27),S4(28),S$(190,204)                                              

 8023 READ #R1,R2,502;S$(206,224),S1(21),S1(22),S1(23),S1(24),S1(25),S1(26),S1(27

 ),S1(28),S1(29),S1(30),S1(31),S1(32),S1(33),S3(7),S3(8);                        

 8024 RETURN                                                                     

 

 

 

 

Das 'Entpacken' erfolgt automatisch beim Generieren eines Lesebefehls.


14.9.         'Entpacken' von Zugriffschlüsseln.

 

   Arbeitet man mit Dateien, die gepackte Zugriffschlüssel enthalten, müssen die Lesebefehle zum Packen/Entpacken in den Unterprogrammen 4800 und 4900 enthalten sein.

 

    Dies ist notwendig, da die eingegeben START/STOP Schlüssel immer ungepackt sind, und der eigentliche Lesebefehl jedoch gepackte Felder erwartet.

 

Figur 19 'Packen/Entpacken' in einem Lesebefehl.

 

 4800 IF R7<>R1 RETURN                                                           

 4801 IF R5<>1 RETURN                                                            

 4802 CALL 60,R$,R$                                                              

 4803 RETURN                                                                     

 4900 IF R7<>R1 RETURN                                                           

 4901 IF R5<>1 RETURN                                                            

 4902 CALL 61,R$,T2$                                                             

 4903 LET R$=T2$                                                                 

 4904 RETURN                                                                      

 

 

 

 

Die Routine zum Packen/Entpacken wird automatisch beim Generieren des Lesebefehls miteingesetzt, wenn die Indexdefinitionen gepackte  Zugrüffsshlüssel in dem Dateidefinitions‑Modul vorsehen.

 

    Im obigen Beispiel prüft der erste Befehl (R7/R1), ob ein Sortieren  vorgenommen wurde. Ist dies der Fall, darf kein Packen/Entpacken vorgenommen werden. Der nächste Befehl (R5) prüft die verwendete Indexnummer, da einige Indices als gepackt, andere als nicht gepackt definiert sein können. Der Aufruf 60/61 packt/entpacken/Entpacken ersetzt werden.

 

    Da diese Routinen nicht für verknüfte Dateien geladen werden, müssen sie in Verbindung mit dem Lesebefehl angegeben werden.

 

14.11.         Berechnungen innerhalb des Lesebefehls.

 

   Die Funktion eines Lesebefehls besteht darin, eine Verbindung zwischen  der physikalischen Datei und den Feldern in der DRN‑Dateidefinition     herzustellen.

 

    Die Felddefinitionen müssen nicht unbedingt mit der Satzstruktur der Datei übereinstimmen, obwohl dies wohl der normale Fall sein wird. Die Aufgabe' der Leseroutinen ist es, richtige Werte zu überreichen, unabhängig davon, ob nur gelesen oder gelesene Werte erst berechnet wurden.

 

    Dies wird normalerweise dazu benutzt, um einen Feldinhalt entsprechend der DRN‑Definition in verschiedene Felder zu konvertieren. Eine solche   Routine kann natürlich nicht automatisch generiert werden.

 

 

Figur 20 Aufteilen gepackter Datenfelder.

 

 4800 IF R7<>R1 RETURN                                                           

 4801 IF R5<>1 RETURN                                                            

 4802 CALL 60,R$,R$                                                              

 4803 RETURN                                                                     

 4900 IF R7<>R1 RETURN                                                           

 4901 IF R5<>1 RETURN                                                            

 4902 CALL 61,R$,T2$                                                             

 4903 LET R$=T2$                                                                 

 4904 RETURN                                                                     

 

 

 

Diese Routine muss, zusammen mit den Lesebefehlen, in den Zeilen 8010 ff. liegen, um bei Aufruf der Datei geladen werden zu können. T2$, T9$ und T3 können als Arbeitsvariable benutzt werden.


14.13.         Unterprogramme 4000 und 4100.

 

   Die Unterprogramme 4000 und 4100 können zusammen mit den Lesebefehlen plaziert werden. Dieses Routinen werden dann bei Definition eines Rapports mit der Datei als Hauptdatei geladen.

 

    Das Unterprogramm 4000 wird unmittelbar nach allen Berechnungen und Lesen der verknüpften Dateien gestartet. Diese Unterprogramme wurden vor Freigabe der Multidatei‑Version des Rapport‑Generators benötigt, um verschiedene   Dateien lesen zu können, und damit diese den DRN‑Felddefinitionen 100% entsprechen.

 

    Beinhaltet Ihr Programm solche Routinen, sollten Sie es vermeiden, das Schlüsselfeld R1$ zu benutzen, da man ansonsten nicht sicher sein kann, ob die Datei sortiert ist.

 

14.15.         Anfangs‑Dimensionierungen (deallo/dim).

 

   Die Anfangs‑Dimensionierungen für das Lesen der Hauptdatei können in die  Zeilen 900‑999 gelegt werden. Für verknüpfte Dateien sollten diese    Dimensionierungen als 'deallo/dim', zusammen mit den Leseroutinen, gebildet werden.

 

14.17.         Besondere Unterprogramme.

 

   Ihre eigenen Unterprogramme können Sie ab Zeile 10000 ablegen. Dieser Bereich wird vom Rapport‑Generator nicht verwendet. Die Unterprogramme werden über GOSUB aus den Berechnungen angesprochen.

 

14.19.        Varianten des Lesebefehls.

 

    Die normalen Lesebefehle sollte in die Textdatei XXREAD.FF kopiert werden.

 

    Dateien mit dem Namen XXREAD.FF, wobei x die Varianten‑Nummer ist, können angelegt werden.

 

    Der Anwender kann diese Lesebefehle dann für die Hauptdatei benutzen, indem er FF,x als Kurzname der Hauptdatei angibt.

 

    Ist x ein Buchstabe, wird der definierte Rapport über ein Kennwort geschützt.

 

14.21.

7.11.        Schreibbefehle.

 

    Schriebbefehle, die in den Zeilen 8010 ff. abgelegt sind, werden für die Hauptdatei geladen aus ausgeführt.

 

    Vermeiden Sie es daher, Schreibbefehle dorthin zu legen, es sei denn, dass Sie ausdrücklich dem Anwender erlauben wollen, in die Datei schreiben zu können.

 

    Schreibbefehle sollten immer nur als Varianten der Textdatei abgelegt werden, um somit den Rapport durch ein Kennwort zu schützen. Diese  Vorgehensweise benutzt DATAMASTER für Anwender definierte Dateien.

 

    Wie auch immer, es werden nur Schreibbefehle für bestehende Sätze der Hauptdatei zugelassen. Insert, Delete und Anlage von temporären Dateien werden nicht unterstützt.  


14.23.        Eröffnen spezieller Dateien.

 

    Dateien können auf Kanal 16 und höher in der gleichen Weise wie das Dimensionieren von Variablen eröffnet werden, um z.B. Basiswerte  einzulesen.

 

    Sollen externe Dateiverweise verwendet werden, geschieht dies über  Verwendung von 'Flags' und Eröffnen der Dateien in Zeile 8010 ff.

 

14.25.

7.13.         Random und serielle Dateien.

 

    Die Installation einer Random oder seriellen Datei erfolgt in der gleichen Weise wie die Installation einer Indexdatei, natürlich mit dem Unterschied, dass keine Indices im Dateidefinitions‑Modul definiert werden können.

 

    Der Rapport‑Generator wechselt automatisch auf READ über Satz‑nummern, wenn erkannt wird, dass die entsprechende Datei nicht indiziert ist.

 

    Zum Lesen einer verknüpften Random‑Datei muss der Anwender READR(XX),      Satznr. anstelle von READ(XX) verwenden, da automatisch keine Verbindung zu einer verknüpften Random‑Datei hergestellt werden kann.

 

14.27.        Dateien mit unterschiedlichen Satzstrukturen.

 

    Hat eine Datei zwei (oder mehrere) verschiedene Satzstrukturen, sollten auch zwei (oder mehrere) verschiedene logische Dateien, jeweils mit unterschiedlichen Dateikurznamen und DRN‑Felddefinitionen, definiert werden.

 

    Da der Lesebefehl Sätze unterschiedlicher Struktur returniert, muss eine Auswahl entweder durch den Anwender, oder durch eine Programmroutine im Lesebefehl erfolgen.

 

    Normalerweise kann der Satztyp über den Satzschlüssel, wie im folgenden Beispiel gezeigt, bestimmt werden.

 

       4800 IF R$(5,5)<>"1" LET R4=99

       4899 RETURN

 

 Der Rapport‑Generator vernachlässigt jetzt alle Sätze, die in der obigen Rückgabe des Wertes R4=99 bewirken.


15.           Sprachabhängige Texte.

 

 

Figur 21 DMS.TEXT Pflege sprachabhängiger Texte.

 

 9/DMS.RAPGEN.TY   11 PAGES ,  1836 CHARS/PAGE     PAGE   7 , 1621 CHARS,LINE 50 

                                                                                 

  7,30:                                                                          

  7,31:TAB(25,23) BIS LISTENR.?                                                  

  7,32:TAB(12,23)NEUE NAME ?                                                     

  7,33:TAB(45,23)NEUER ANVENDERKURZNAME ?                                        

  7,34:TAB(15,24)BITTE WARTEN SIE....                                            

  7,35:   KOPIERT !!                                                             

  7,36:TAB(0,24)'LD''BEL'MAXIMUM 9 DATEIEN, KEINE FREIE.                         

  7,37: DEFINIERT ALS DATEI NR.                                                  

  7,38:FORMAT:(CR=                                                                

  7,39:TAB(0,24)'BEL''LD'READSTATEMENTS FUR                                      

  7,40:BEIDE DURCHLAUFE                                                          

  7,41:NUR ERSTER DURCHLAUF                                                       

  7,42:NUR ZWEITER DURCHLAUF                                                     

  7,43:IMMER                                                                     

  7,44:KEINE SUMMEN                                                               

  7,45:NUR SUMMEN                                                                

  7,46:TAB(0,24)'LD''BEL'DATEI                                                   

  7,47: IST NICHT DEFINIERT.                                                     

 PAGENO.,LINENO.?                                                                

 

 

 

 

    Alle Texte in DMS.RAPGEN sind in der Datei DMS.RAPGEN.TX abgelegt. Das Datei‑Suffix 'x' kann über DMS.RAPGEN.SYS eingesetzt werden. Dies bedeutet dass der Rapport‑Generator auf der gleichen Platte in verschiedenen Sprachen installiert werden kann.

 

    DMS.RAPGEN.T ist eine Random‑Datei mit 11 Sätzen (als 'Seiten' bezeichnet) und einer Satzlänge von 680 Worten, die, falls erforderlich, erweitert  werden können. Das Programm DMS.TEXT dient der Pflege dieser Texte.

 

    DMS.RAPGEN liest jeweils eine Seite in den Hauptspeicher ein, um damit fier Zugriffszeiten zu verkürzen. Jede Seite kann bis zu 100 Texte variabler Länge beinhalten. Die einzelnen Texte können Bildschirm‑Steuerzeichen, wie TAB, CS u.s.w., miteinschliessen. Beim Gebrauch von DMS.TEXT müssen folgende Eingaben gemacht werden:

 

   

    PAGENO, LINENO:

                    1,5      Seitennr. 1, Zeilennr. 5.

                    9        Zeilennr. 9 der aktuellen Seite.

                    Cr.      Nächste Zeile ist aktuelle Seite.

                    PRINT    Drucken aller Seiten.

                    LIST     Auflisten der nächsten 20 Zeilen.

                    DUMP     Speichern aller Seiten in die Textdatei.

                    LOAD     Laden aller Seiten von der Textdatei.

    Der Text wird angezeigt und kann geändert werden. Bei Gebrauch der Taste 'Pfeil oben' wird der aktuelle Zeichenwert beibehalten.


17.           Struktur eines generierten Ausgabe‑Programmes.

 

18.1.         Generieren eines Ausgabe‑Programmes.

 

 

Figur 22 Generieren eines Ausgabe‑Programmes.

 

                                          

                                 User input              

                                          

                                                           Standard routines

                                           DMS.RAPGEN.CHECK 

                  ®   DMS.RAPGEN  ¬DMS.RAPGEN.CHEX  

                                          DMS.RAPGEN.ARB   

                                         DMS.RAPGEN.NAVN  

   DMFILES                                          

               ¯           ¯              

             

   DMDATAFILs      DMREPORT       DMT10xx        

             

                                        

   DMREAD.ff                                         Standard routines

               ¯           ¯               DMS.RAPGEN.O1A/O1B

                                          DMS.RAPGEN.S2A/S2B

                  ®   DMS.RAPGEN  ¬DMS.RAPGEN.S3A/S3B

                                           DMS.RAPGEN.S4A/S4B

                                                           DMS.RAPGEN.S5R/S5W

                                                           DMS.RAPGEN.S6A   

                                                           DMS.RAPGEN.S9A/S9B

                                                          

                                      ¯            

                 

         DMS.RAPGEN.99 ®    DM10xx     ® DMS.RAPGEN.999

                 

 

 

 

 

 

Anmerkungen:

 

   1. Das Ausgabeprogramm DM10xx wird, falls nicht bereits vorhanden, generiert und gespeichert.

 

   2. Beliebige Zusätze (Erweiterungen) zu Rapport‑definitionen bewirken, dass dieses Ausgabeprogramm gelöscht wird.

 

   3. Besondere Unterprogramm und Lesebefehle für externe READ(XX)‑Dateien werden in die Textdatei DMT10xx

      während der Generierung geladen.  

 

   4. Das Ausgabeprogramm wird generiert durch Laden der Routinen in folgender Reihenfolge:

             a. Standard‑Routinen

             b. Lesebefehle für Hauptdateien

             c. Textdatei DMT10xx

 

   5. Die Lesebefehle für die Hauptdateien können Änderungen und die Standard‑Routinen Erweiterungen enthalten.

 

   6. Die Rapportdefinitionen können Änderungen sowohl für die Standard‑, als auch für die Leseroutinen enthalten.

 

   7. Alle Dateieröffnungen (OPEN) erfolgen über das Modul DMS.RAPGEN.99.

 

   8. Alle Dateischliessungen (CLOSE) und Rückgaben von Informationen erfolgen im Modul DMS.RAPGEN.999.

 

   9. Löschen eines Ausgabesprogrammes bewirkt eine neue Generierung beim nächsten Start.

 

  10. Dies bedeutet: Zusätze/Erweiterungen zu den Lesebefehlen für Hauptdateien werden aktualisiert.

 

  11. Zusätze/Erweiterungen zu Lesebefehlen für verknüfte Dateien werden nur dann aktualisiert,

      wenn die Funktion 4 (Berechnungen von Definitionen) durchlaufen wird.


18.3.         Unterprogramme im generierten Programm.

 

 

Figur 23 Unterprogramme im generierten Program.

 

                         

                                 START      

                         

                          5100     

                         

                             ZUERST Berech. 

                         

®      8340

                        

                         Find nächst.Record

                        

                         6200      ¬

                         Ja                                     

                               TOTAL ?                            

                                                                

                                                    6200      ¯                      

                      Ja                

                    ENDE ?               Berech.Summen                

                                       

   1300                 8000                     Nein              Ja       5800  

Ja                      

¬  Mehere Pass ?         Lese Record                      Felder=Summen    

                        

   5150                 5200                                                5200  

                        

   ZULETZT Berech.   NORMAL Berechn.                      NORMAL Berech.   

                        

   7900                 5000                 7000                           7000  

       

          ENDE           Selektionen     Print Summen    Print Summen     

       

                                                                                   

                    Nein                 

¬        OK ?               Addier Next/Nullst.          

                                         

                         5300                                                       

                                           

                            NACH Berechn.  

                        

                                  

              Sortierung Nein

                Erster Pass ?  

                                         

                                  Gewichtete Summen          

   5500                                                             7000

                               

   Einsetze Sortkey                               Ausdruck Zeile   

                               

                                                             

                                                                             

 


18.5.         Zeilennummern im generierten Programm.

 

Linenumber    Contents

0001-0145     Initial remarks, names of routines loaded

0197-0499     Initial DIM etc

0800-0899     DEF of user functions

0900-0999     Initial staments from READ of main file

1000-1099     Initiation of print routine

1100-1199     Initiation of read routine

1200-1299     Read next of main file

1400‑1499     Call calculation and selection routines

1500‑1599     Call print and totalling routines

1600‑1899     Reserved for later use

1900‑1999     Call rewrite routine and repeat

2000‑3999     Free for extensions

4000‑4099     Fixed calculations from READ statements

4100‑4199     Fixed calculations from READ statements, AFTER selections

4200‑4299     Load routines DMS.RAPS.xxxxx goes in here

4300‑4799     Reserved

4800‑4899     Pack R$ if main key packed, from READ statements

4900‑4999     Unpack R$ if main key packed, from read statements

5000‑5099     User defined selections

5100‑5149     User defined FIRST  calculations

5150‑5199     User defined LAST   calculations

5200‑5299     User defined NORMAL calculations

5300‑5349     User defined AFTER  calculations

5350‑5499     Generated routines for READ (XX) external files etc

5500‑5599     Generated routine for build/insert sortkey

5600‑5699     Init (DIM) total fields

5700‑5799     Collect totals from file

5800‑5899     Move totals to fields, if calculated totals

5900‑5949     Add next total level

5950‑5999     Zero total level

6000‑6099     Reserved

6100‑6199     Reserved

6200‑6299     Determine total level

6300‑6399     Collect totals and group totals

6400‑6499     Reserved

6500‑6599     Reserved

6600‑6699     Reserved

6700‑6799     Generated DIM for variables external files (B/C/D...I)

6800‑6899     Print total and add next level

6900‑6999     Reserved

7100‑7899     Generated print statements

7900‑7999     End of program and error routine

8000‑8099     READ statements, all channels

8100‑8199     WRITE statements, normally not present

8200‑8299     INDEX key routines, not used

8300‑8399     Read (search) routine, checking for total break/quicksel 8400‑8599     Reserved (Index update write routine)

8600‑8699     Reserved (Log routines)

8700‑8799     Handling of lamp‑keys during read (LKY 1 and 2)

8800‑8999     Mentioning of variables due to LINK

9000‑9899     Reserved, not used

9999          RETURN, may be used for DEBUG

10000-        Free for use, not used due to old operating systems.


18.7.         Im generierten Programm benutze Kanäle.

 

    0              TF.LOGFILE

    1              TF.PARAM

    2                                   Hauptdatei      

    3... 10                             verknüfte Dateien

    11             z/zzDATAFILs         DRN‑Datei

    12             q/qqSORTWORK         Sortwork‑Datei

    13             $LPT                 Drucker

 

18.9.         Im generierten Programm benutzen Variablen.

 

18.10.1.       System Konstanten.

 

Variable         Contents

   S9$(100)      Spaces

 

   T8$(220)

   T8$           Format string

   T8$(100)      'END' keyword

   T8$(107)      'PRINT' keyword

   T8$(120)      x/DMSE backchain to program

      (123,124)  "ST" indicates STAR system

   T8$(128,154)  System files prefix from common area

   T8$(155,157)  System number

   T8$(159,192)  System name

                 Special NYRUP: x/DSxxSYSTEM, filename file

                 Special Norway: Klient name

   T8$(193,198)  Expiration date

   T8$(200,219)  File shortnames, 2 bytes/channel

 

2%,X(11)         System variables

   X             Pass: 0=printing pass, 1=first sorting/weighted pass

   X(1)          Program no. 1000 + report number

   X(2)          Reserved, not used

   X(3)          DRN number of main file DRN

   X(4)          Report number

   X(5)          PSBD program selector parameter, not used

   X(6)          System date

   X(7)          #DD Todays date

   X(8)          #PD as of date

   X(9)          No of saved reports

   X(10)         Staring screen number

   X(11)         Record count if LKY 1 pressed

 

1%,X0(20)        System variables

   X0            Reserved

   X0(1)         Report number from report file

   X0(2)         DRN number from report file

   X0(3)         Dimension of line index P0(x,1)

   X0(4)         Dimension of field index P(x,2)

   X0(5)         Dimension of report text buffer Q$(x)

   X0(6)         Lines on form, from printer open parameters

   X0(7)         Reserved, not used

   X0(8)         Reserved, not used

   X0(9)         Reserved, not used

   X0(10)        Flag run mode: 1=phantom port, 0=screen

   X0(11)        Printer channel: 13 if printer selected

   X0(12)        Flag sorting: ‑x='SORT' start, +x=Sorting

                 x=keylength of SORTWORK file in bytes

   X0(13)        Page number


   X0(14)        Flag system: 0=DMS, 1=DMS selector

                              2=SYSTAR/ST.PARAM, 3=Normal TAMOS

   X0(15)        Lowest total level to be printed, 0=all, 9=no print

   X0(16)        Flag printer active: 0=no printer

   X0(17)        xxyy: xx=no of channels, yy=no of indexes active

   X0(18)        Report created with report generator version number

   X0(19)        Reserved, not used

   X0(20)        Reserved, not used

 

   1%,X2(1)      Lines on form

      X2         Lines on form or 25 if running with screen output

      X2(1)      Lines on form

 

   1%,X4         Program number, 1000 + report number

 

   X9$(150)      Text constants and names

   X9$           x/DMS.RAPGEN.999 Chain to after run

   X9$(21)       001177051        Printer open parameters

   X9$(30)       $LPT             Printer name

   X9$(50)       x/DM10xx         Name of generated program for link

                 x/DM000s         if report not saved, s=screen no

   X9$(70)       'SORT' text

   X9$(80)       'PRESS CR.' text

   X9$(100)      'Printer not ready' text

 

18.10.3.       Start Parameter.

 

Variable         Contents

   X0$(250)      Start parameters

   X0$           #DD todays date, edited ##,##,##

   X0$(11)       #PD as of  date, edited ##,##,##

   X0$(25*x)     #DAx data entered by start

 

4%,Q(9)          #Dx data entered by start

 

18.10.5.       DRN und Datei‑Variable.

 

Variable         Contents

1%,Z             Number of fields, including the 20 free fields

1%,Z0            Total length of S$ string for main file

1%,Z1            Dimension of 1%,S1(Z1)

1%,Z2            Dimension of 2%,S2(Z2)

1%,Z3            Dimension of 3%,S3(Z3)

1%,Z4            Dimension of 4%,S4(Z4)

1%,T(Z,5)        DRN

S$,S1,S2,S3,S4   MAIN file and free field variables

B$,B1,B2,B3,B4   File on channel #2

C$,C1,C2,C3,C4   File on channel #3

D$,D1,D2,D3,D4   File on channel #4

E$,E1,E2,E3,E4   File on channel #5

F$,F1,F2,F3,F4   File on channel #6

G$,G1,G2,G3,G4   File on channel #7

H$,H1,H2,H3,H4   File on channel #8

I$,I1,I2,I3,I4   File on channel #9

 

4%,W(x,y)        Total array


18.10.7.       Rapport Variable.

 

Variable         Contents

1%,P(x,1)        Line index

1%,P0(x,2)       Field index

   P0            Image number

   Q$(x)         Report buffer

1%,P1(10)        Start line number

1%,P2            Print line number

1%,P3(10)        Print mode

1%,P4(10)        End line number

1%,P5            Work

1%,P6(1)         Group total level number

1%,P7(10)        Zero suppress mode

1%,P8            Total level number

1%,P9(10)        Work

   P5$(100)      Linefeed characters

1%,X1            Actual printed line number

 

18.10.9.       READ/WRITE Variable.

 

   x=no of channels used, y=x + no of indexes used

 

Variable         Contents

1%,R(16)         Flag for file type

   R(R1)         0 = normal indexed file

                 1 = continous file, record not present if byte 0‑4=zero

                 2 = continous file with endmark (special)

 

1%,R1(10,2)

   R1            Current channel number for READ

   R1(0,1)       MAIN file channel number

   R1(0,2)       MAIN file index number

                 Rest not used pt.

2%,R2(10,1)

   R2            Current record number

   R2(R1,1)      First data record for channel #R1

                 Rest not used pt.

 

1%,R4(y,5)

   R4            Current error status after search

                 Rest not used pt.

 

1%,R5(y,5)

   R5            Current index number for search

   R5(R1,5)      Index of channel #R1 to start/stop keys R1$ and R2$

                 Rest not used pt.

 

1%,R7            Current index number for search

 

1%,R8            Read mode:

                 0 = Find and read record

                 1 = Find next and read record

                 2 = Find record

2%,R9(22)


   R$(32)        Current key for search

 

   R1$(34*x)     Start key

   R1$(34*(R1‑1)+1) Start key channel #R1

 

   R2$(34*x)     End key (default: ";" for STAR, "ü" else)

   R2$(34*(R1‑1)+1) End key channel #R1

 

   R3$(32)       Restart key if weighted totals

   R8$(32)       Not used, kept only to be compatible with old readstat.

 

18.10.11.       Arbeits Variable.

 

Variable         Most frequent use

1%,T1(2)         Fieldno

1%,T2            Work

4%,T3(10)        Field contents

1%,T4            Work

   T$(4)         Extract DRN info

   T2$(512)      Field contents

   T9$(256)      Work

1%,V             Work selections, 0=OK


19.          Record descriptions for system files

 

20.1.        Structure of COMMON‑AREA (DMS.RAPGEN.PCB) and 0/CHSYSTEM.

 

Byteno  Default  Contents

  1,34           Program name / work status after save

 35,128          Program start parameters, start/end key and data

129              Format string

228     END      Keyword for END

235     PRINT    Keyword for PRINT

242     ‑‑‑‑‑    Keyword for TOTAL, free for use

249     0/DMSE   Backchain to program

257,260 0/DM     Prefix for x/xxDATAFILx (DRN)

261,264 ‑‑‑‑     Prefix for x/xxMASKER and x/xxCMASKER mask files

265,268 ‑‑‑‑     Prefix for x/xxLOGTEXT program definitions

269,272 ‑‑‑‑     Prefix for x/xxREPORT system report file

273,276 0/DM     Prefix for x/xxVIKA and x/xxVIKAIX checkfields

277,280 0/DM     Prefix for x/DMS.RAPGEN and x/DMS.XDRN

281,284 0/DM     Prefix for x/xxREPORT,x/xxT10xx and x/xx10xx reports

285,288 0/DX     Prefix for x/xx.FFKA# DATAMASTER files

289,292 0/DM     Prefix for x/xxFILES and x/xxREAD.FF file definitions

293,296 0/DM     Prefix for x/xxSORTWORK sort workfile

297,300 ‑‑‑‑     Prefix for system programs

301,301          Compagni suffix for files (#)

302,303 xx       System number

304,305 xx       Starting port number

306,315 0123456789 DLU table, do not touch

316,316          Subsystem suffix for x/xxDATAFILs

317,317 ‑‑‑‑     Flag modefile execution

318,318 1        Default phantom port number

319,320 51       Default lines on form

321,326 999999   Expiration date

327,329 001      TAMOS selector parameter 1

330,332 001      TAMOS selector parameter 2

333,333 1        No.of printers

335,336 99       No.of saved reports

337,340 514R     Operating system and flag for RAP/DAP screens

341,341 2        Rapgen system: 0=DMS, 1=STAR, 2=TAMOS

342,342 1        Rapgen optimize flag: 0=NO, 1=YES, 2=and save ,d

343,343 0        Rapgen TAMOS selector interface flag: 0=no, 1=yes

344,344 4        Datamaster file allotment flag

345,345 A        Rapgen multifile code

346,346 0        Rapgen TAMOS sort flag

347,350 ‑‑‑‑     Free for use

351,370 Name     System name

371,371 ‑‑‑‑     Spoolfile flag

372,372          Rapgen language code, suffix for DMS.RAPGEN.Tx

373,375 001      TAMOS selector parameter 2

376,376          Rapgen start flag, if <>" " ==> backchain to selector

377,378 01       Rapgen number of screen‑workfiles

379,380 24       Active file size

381,382 ‑‑‑‑     Alternative system program pretfix

383,388 310379   System date

389,394 310379   #DD todays date

395,400 310379   #PD as of date

401,404 ‑‑‑‑     PSBD program status word

405,406 ‑‑‑‑     Mask number

407,408 xx       DRN number

409,410 xx       Report number

411,419 ‑‑‑‑     Printer open parameters, not used

420,440 ‑‑‑‑     Printer name, not used

441,470 ‑‑‑‑     Program name


471,471 ‑‑‑‑     No.of phantom ports

472,475 10xx     Program number

476,485 ‑‑‑‑     Time started

486,489 ‑‑‑‑     Transformed program number

490,491 ‑‑‑‑     Printer number, not used

492,492 0        Rapgen printer flag: 0=no printer, 2=printer

493,493 0        Rapgen lowest total level to be printed

494,494 ‑‑‑‑     Log code

495,496 ‑‑‑‑     Maximum selector code

497,498 ‑‑‑‑     Spoolstart mask number

499,501 ‑‑‑‑     PSW status

502,502 ‑‑‑‑     Program status in jobqueue

503,504 ‑‑‑‑     Program priority in jobqueue

505,506 ‑‑‑‑     Jobnumber in jobqueue

507,511 ‑‑‑‑     Free for use

512,512 X        "X" marks active system

 

‑‑‑‑     Indicates that the parameter is not used by rapgen/datamaster.


20.3.        Structure of the DRN field definitions z/zzDATAFILs

 

   Continous file, 3000 words/record. Record 0 not used.

 

T1 = Fieldno. , R1 = channel no.

 

byteno. variable contents

0       1%,Z1    Dimension of 1 word fields 1%,S1(Z1)

2       1%,Z2    Dimension of 2 word fields 2%,S2(Z2)

4       1%,Z3    Dimension of 3 word fields 3%,S2(Z3)

6       1%,Z0    Dimension of string fields S$(Z0)

8       1%,Z     Number of variables

12      1%,Z4    Dimension of 4 word fields 4%,S2(Z4)

 

14      1%,T(Z,5) field definitions

 +12*T1    T(T1)   index S‑var. Sx(T(T1)) or S$(T(T1),T(T1)+T(T1,2)‑1)

  +2       T(T1,1) old: input position

                    new: channel no * 100 + origin field no.

  +4       T(T1,2) Field length

  +6       T(T1,3) TCSD

                   T    = Field type (0,1,2,3,4)

                    C   = Check code for input validation

                          0 = none

                          1 = fixed length

                          2 = fixed length prompted with *

                          3 = promt with *

                          4 = date

                        5‑8 = user defined

                          9 = vikaix checkfield

                     S  = Sign / edit code

                          0 = no

                          1 = yes

                          2 = edit by 1000 or date edit

                      D = No of decimal places

                     SD = Alphanumeric fields only:

                          Pseudolength, eg.length of field in record

                   T    = INT (T(T1,3)*.001)

                    C   = INT ( 10 * FRA (T(T1,3)*.001) )

                     S  = INT ( 10 * FRA (T(T1,3)*.01) )

                      D = 10 * FRA (T(T1,3)*.001)

  +8       T(T1,4)  Field position on screen

  +10      T(T1,5)  Index format string T8$(T(T1,5),T(T1,5)+T(T1,2)‑1)

 

1214

 

1260        R0$(140) Read request, 1 bit for each field, all channels

                     Get   read request: CALL 20,0,R0$,100*R1+T1,N

                     Set   read request: CALL 20,1,R0$,100*R1+T1

                     Clear read request: CALL 20,2,R0$,100*R1+T1

 

1400‑1432   N$(32)   DRN name

 

1433‑1454   F9$(10,30) File shortnames for file on channel #R1

1455‑1464   F9$(90,99) Variable names for file on channel #R1

1466‑1535   I0$(70)    Index request for all files

                       1 bit/index, 50 bits/file


1700     1%,T0(4,115)  Additional field information

1700+2*T1   T0(0,T1)   DRN no * 100 + fieldno of origin

1932+2*T1   T0(1,T1)   Byteno + 1 if file defined

                       0 = field is not included in file

                       sorting by: CALL 65,0,nokeys,keylen,text,worktext

2164+2*T1   T0(2,T1)   Channelno

2396+2*T1   T0(3,T1)   Flag for write

2628+2*T1   T0(4,T1)   KPBS Special handling flag

                       K    = Datamaster keyfield flag

                              1:K keyfield, unique

                              2:D duplicates alloved

                              3:E

                              4:Z zero supress

                              5:V

                              6:I inverted

                              7:X

                        P   = 1:Flag for packed field

                         B  = 1:Flag for byteno.entered manually

                          S = 1:Stop byte included in last position of text

1932        T0(1,0)    Defined file size

1930+230*T  T0(T,114)  No.of variables of type T if MAT read is used

1930+232*T  T0(T,115)  Flag for MAT read for variable type T

 

2860        W0$(140)   Write request flags as R0$

 

3000        T$(Z*26)   Field names, 26 chars/field, includding delimiter

3000+26*T1  T$(T1*26+1) Field name for field T1

 

5750        F0$(242)   Filenames and openflag for channel #0‑#10

5750+22*R1             OLRxl/FILENAME for channel #R1

                       O              = Open flag, O for open

                        L             = Lock flag, L or R for open "L";

                         R            = R/W/D file access flag

                          x           = Not used

                           l/         = DLU, logical unit no

5772                   Filename and open flag channel #1

5776                   Filename channel #1

 

5996        2%         Date last change from SPC(2)


20.5.        Structure of y/yyREPORT

 

   Continous file, 256 words/record, Spanned

 

    MUST be created and initialised with DMS.RAPGEN.SYS or DMS.XSYS

 

Record 0:

Byteno. Variable Contents

0       1%,F0(0) File record length in bytes (512)

2          F0(1) No of reports (items) in file

4          F0(2) No.of used reports

6          F0(3) No.of used records

8          F0(4) Not used

12         F0(6) Not used

14         F0(7) Not used

16         F0(8) Not used

18         F0(9) Not used

20         F0(10) Not used

 

Headerrecord continued from record 0, possible spanned over multiple records:

 

22      1%,F(F0(1)) Pointer to start record number of report

22+2*R0    F(R0)    Start record number of report R0

 

24+2*F0(1) F$(N)    Free record list, N=number of records + 1 (CHF X)

           F$(R,R)  R=record number: "X"=record used, " "=record free

 

Report structure in records starting by F(R0)

Byteno. Variable Contents

0       1%,R0    Report no.

2       1%,R2    DRN no.

4       1%,Q6    Dimension of 1%,P0(Q6,1), line index

6       1%,Q7    Dimension of 1%,P(Q7,2), field index

8       1%,Q8    Dimension of Q$(Q8), report buffer

20      Q6$(15)  Printer filename        ($LPT)

36      Q1$(15)  File shortname and filename (read‑statements)

52      Q2$(4)   Reserved, system prefix

57      Q3$(25)  User defined free field format field 1‑10

                 packed: 5 chars/field unpacked

                 xxxyy: T(T1,5)=xxx, index to format string if xxx<100

                        T(T1,0)=xxx‑100+Z0, index to S$     if xxx>100

                        T(T1,2)=yy, Field length

83      Q4$(25)  User defined free field format field 11‑20, as Q3$

110     Q0$(15)  Flags for load of standard routines:

                 "AB" ==> load DMS.RAPGEN.S1A and S2B

                 Q0$(15,15)="‑" ==>Do not optimize even if system marked

                                    (used for accounting reports)

125     Q7$(25)  Report name for selector

152     Q8$(15)  User name (password)

178     1%,Q5(1) PSBD selector status, no.of start data #D used

                 P    = 5: password protect

                  S   = 2 + number of start data

                   B  = 1: not used

                    D = 2: no of dates input by start (not used)

180        Q5(2) No.of versions of a letter

182        Q5(3) Subsystem no.of main file DRN

184        Q5(4) No.of subtotal levels


186        Q5(5) DMS.RAPGEN version no.

                 0 =

                 1 = Free field textes contained in DMREPORT

                 2 = Free field format input in DMREPORT

                 3 =

                 4 = Multifile prerelease

                 5 = Multifile release

                 6 = 01/01‑1987 English & german prerelease

                 7 = 01/06‑1987 Tamos menu and call 1 input

188        Q5(6) xxyy, xx=No.of channels, yy=no of indexes used

190        Q5(7) Not used

192        Q5(8) Not used

194        Q5(9) DB flag

196        Q5(10) Size of report (sectors)

200     1%,P0(Q6,1)  Line index

           P0(x,0) = Start character for line x in buffer Q$

           P0(x,1) = Start field in field index P for line x

 +(Q6+1)*4  1%,P(Q7,2)  Field index

               P(x,0) = Start position of field x in buffer Q$

               P(x,1) = Fieldno.

                        ‑1 = #DD date          X(7)

                        ‑2 = #PD as of date    X(8)

                        ‑3 = #PP pageno        X0(13)

                        ‑4 = #FI filename      T8$(189,192)

                        ‑5 = #SN systemname    T8$(159,188)

                        ‑6 = #SY systemnumber  T8$(155,157)

                        ‑7 = #TI systemtime    T2$(15,22) CALL 99,T2$

                        ‑8 = #NO programnumber X(1)

                        ‑9 = #SC screenno      X(10)

                        1xyy = fieldno yy on channel no.x

                        yy   = fieldno yy from main file

               P(x,2) = Not used

  +(Q7+1)*6    Q$(Q8)   Text buffer

212+Q6*4+Q7*6+Q8  F9$(10,30) File Shortnames if multifile

233‑257+                  24 bytes free for use

258+Q6*4+Q7*6+Q8  T$(402) Field names of 20 user defined free fields

                          (20 + del, if 212:48+(T1‑1)*21) )

Report size = ( 200 + (Q6+1)*4 + (Q7+1)*6 + Q8 + 50 + 450 ) / 512 records.


20.7.        Structure of the file definition file f/ffFILES

 

Indexed file, 96 words recordlength, 4 indexed: 3,3,3,12 words.

 

3 recordtypes: 1 = File definition

               2 = Index definition

               3 = Set connection between files

 

Recordtype 1: File definition:

 

Key1: xx0000                      shortname+ 0000

Key2: xxyyzz                      shortname+ subsystem + DRN

Key3: yyzzxx                      subsystem+ DRN + shortname

Key4: fffffffffffffffffffxxyyzz   filename + shortname + DRN + subsystem

Key1a:sstttxxll/nnnnnnnnnnnnnn    system   + tamos + shortname + name

 

        xx = Shortname

        yy = Subsystem no

        zz = DRN no

        fffffffffffffffffff = dlu/filename

 

Key 1a is created by DMS.RAPGEN.LU if special filename only:

        ss = System no.in CHSYSTEM

        ttt= TAMOS 1.selector parameter (eg.001)

        xx = file shortname

        ll/= logical unit no.

        nnnnnnnnnnnnnn = filename, physical discname

 

no Byteno  Variable    contents

1  0       S$(1,17)    Filename

2  17      S$(18,42)   Text

3  42      S$(43,44)   Shortname

4  44      S$(45,50)   Password

5  50      S2(1)       Record length

6  54      S2(2)       No.of records

7  58      S2(3)       DRN no

8  62      S2(4)       Utility code

9  66      S2(5)       Contigous end mark code

11 74      S2(7)       STAR DRN no.

12 78      S2(8)       Keyfieldnumber if key not in record

13 82      S2(9)       Size/1000 records

14 86      S2(10)      Actual size

15 90      S2(11)      Not used

16 94      S2(12)      Not used

17 98      S2(13)      Not used

18 102     S2(14)      Not used

19 106     S2(15)      Not used

20 110     S2(16)      Not used

21 114     S2(17)      Not used

22 118     S2(18)      Not used

23 122     S2(19)      Pointer textfile

24 126     S2(20)      Size text

25 130     S$(51,95)   Keylengths

26 175     S$(96,96)   Used internally by tool programs (CH.L)

27 176     S$(97,97)   Used internally by tool programs (CH.L)

28 177     S$(98,99)   Used internally by tool programs (CH.L)

29 179     S$(100,110) Used internally by tool programs (CH.L),last flds


Recordtype 2: Index definition:

 

Key1: xxnn00                      shortname + indexnumber + 00

 

        xx = Shortname

        nn = Index number

 

no Byteno  Variable    contents

1  0       S$(1,25)    Index definition

2  17      S$(26,42)   Text

3  42      S$(43,44)   Logical index no.

4  44      S4(45,46)   Variant no, normally 00

5  49      S4(50,51)   Shortname for file containing house of index

6  50      S2(1)       Index number

7  54      S2(2)       Keylength

8  58      S2(3)       Option code

 

Recordtype 3: File connection definition.

 

Key1: xxff00                      shortname + connected shortname + 00

 

        xx = Shortname

        ff = Connected file shortname

 

no Byteno  Variable    contents

1  0       S$(1,25)    Index definition

2  25      S$(26,42)   Text

3  42      S$(43,44)   Connected file shortname

4  44      S4(45,46)   Variant no, normally 00

5  49      S4(50,51)   Shortname for file containing house of index

6  50      S2(1)       Index number

7  54      S2(2)       Keylength

8  58      S2(3)       Option code


20.9.        Structure of the language textfile x/DMS.RAPGEN.T.

 

   Continous file, 11 records of 1024 words.

Maintained with DMS.TEXT

 

Byteno  Variable Contents

0    1%,U(103)   Text index

        U(0)     Length of text

        U(x)     Pointer to text start in U$

        U(101)   Length of text

        U(102)   This record number

        U(103)   Pointer to text 0

210     U$(U)    Text lines containing screen position characters

                 Separated by delimiter characters

 

20.11.        Structure of additional field textfile z/zzs.TEXTnn.

 

   The additional field documentation is held in a textfile with the name z/zzs.TEXTnn where z/zz is the same lu and prefix as for the field definition file z/zzDATAFILS, s is the subsystem number and nn the DRN definition number.

 

    Each time is separated by line‑feed characters.

 

    Each text is preceeded by the sequence @xx in a separate line, where xx equals the fieldnumber. Fieldno. 0 is threated as general remarks for the file.

 

    The field textes is not sorted, they must be searched by means of call 23.


21.          Internal structure of the report generator.

 

22.1.        Link segments in the report generator.

 

Figur 24 Link segments in the report generator.

 

                                    

                                     DMS.XSTART   

                                     Start program

                                    

                                    

                                     DMS.RAPGEN   

                                     Main program 

                                                              

     

           

.01                    .05        .07        .08        .09       

Input main             Delete/copyInit letterDoc layout Input start

           

                                                                  

                                    

                         .071       .081       .090      

                                      Def.letter Doc calc   Testprint 

                                     

                         

             .001                    .072       .082       .091      

      Screen mask      Store      Doc file   Generate  

                       

            

.011       .03        .04        .073                    .OPT      

Input linesSort/levelsInit calc  Help                    Optimize  

            

                         

.012       .031       .041                                 .OPS      

Store linesTotal fieldInput calc                           Optimize  

                         

                         

.013       .032       .042                                 BASIC‑NEW 

Create textGroup totalFile conn.                           LOAD‑SAVE 

                         

                                                  

                         .043                                 .092      

                         File read                            Check error

                                                  

                                                                     ¬

                                                   

                         .044                                 .99       

                         Quick/help                           Start/open

                                                  

                                                   

                                                                DM10xx    

                                                                Program    

                                                               

                                                   

             .90                                               .999      

             Store text                                        End segment

                                                   

                                                                       ¬

                                                                

                                                                 DMSE      

                                                                 End program

                                                                

                                                                              

                                                                    

                                                                  


22.3.        Standard routines loaded into the generated program.   

                                                                    

Load of these routines are requested by placing the last letter in the routine name in the report header variable Q0$(x,x) x=routine number.

Name             Contents

DMS.RAPGEN.S1A   Not optimized print routine 7000‑7999, lists

DMS.RAPGEN.S1B   Not optimized print routine 7000‑7999, letter

DMS.RAPGEN.O1A   Optimized print routine 7000‑7999, lists

DMS.RAPGEN.O1B   Optimized print routine 7000‑7999, letters

DMS.RAPGEN.S2A   Main program for lists

DMS.RAPGEN.S2B   Main program for letters

DMS.RAPGEN.S3A   Not calculated totals

DMS.RAPGEN.S3B   Calculated totals

DMS.RAPGEN.S4A   Sorting

DMS.RAPGEN.S4B   Weighted totals

DMS.RAPGEN.S5R   Read (search) routines

DMS.RAPGEN.S5W   Read and write routines (not released)

DMS.RAPGEN.S6A   FN function definitions

DMS.RAPGEN.S9A   Accounting list main program (not released)

DMS.RAPGEN.S9B   Accounting letter main program (not released)

 

22.5.        Channel usage in definition modules.

 

        #4  = x/DMS.RAPGEN.Tx       Textes for DMS.RAPGEN

        #5  = y/yyT10xx             Source textfile for report

        #8  = x/DMS.RAPGEN.W1 (Wn1) Destination textfile for report

                                    to be passed to DMS.RAPGEN.90

        #9  = x/DMS.RAPGEN.W0 (Wn0) Continous workfile

        #10 = y/yyREPORT            Report file

        #11 = z/zzDATAFILs          DRN file, field definition file

        #12 = y/yyreport            Report file, used for lock

        #13 = f/ffFILES             File definition file

   x/   = J0$(277,278) = T8$(121,122)

   y/yy = J0$(281,284) = U0$(1,2)

   z/zz = J0$(257,260)

   s    = J0$(316,316)            Subsystem no.

   f/ff = J0$(289,292)

   n    = Screen no.if first file(s) locked.

          (n=n+1, retry open if file locked, repeat if next locked etc.)

 

22.7.        Temporary used channels.

 

   .0   #0 = 0/TF.LOGFILE           TAMOS logfile

   .0   #1 = 0/TF.PARAM             TAMOS parameter file

   .42  #2 = f/ffread.xx            File read statements

   .43       x/DMS.RAPGEN.HX        Extended help ‑ index

   .43       x/DMS.RAPS.xxxxx       Load routines

   .41  #3 = f/ffread.xx            File read statements

   .43       x/DMS.RAPGEN.HP        Extended help ‑ text

   .044      z/zzDATAFILs           Subsystem DRN file

   .0   #6 = 0/CHSYSTEM             System file (common area)

   .0   #7 = $LPT                   Printer

 

22.9.        Temporary channels in start segment DMS.RAPGEN.99

 

        #7  =     0/KLKA            Special open file ‑ Norway

        #8  =     0/LUKA            Special open file ‑ Norway

        #10 =     f/ffFILES         File index

        #11 =     x/DMS.RAPGEN.Tx   Textes

        #12 =     0/DS10SYSTEM      Special open file (NYRUP systems)

                  0/SYSTAR          Special open file (STAR  systems)

                  0/ST.PARAMxxx     Special open file (STAR  systems)


23.          Printout of the library lists.

 

 

 

Figur 25 DMS.COMET.LIB complete library list.

 

 *   FILENAME     PROT   COST  SIZE  ACCOUNT  AGE  HSLA  TYPE  PRIV  HBA         

 T  DM.TEXT8        0   $0.00     3    0, 0  2592    70    30   3  27061         

 C  DMDATAFIL       0   $0.00   587    0, 0  2687     0    32   3  24025         

 C  DMDATAFIL1      0   $0.00    25    0, 0     0     0    32   3    566         

 C  DMDATAFIL9      0   $0.00   119    0, 0  2112  2112    32   3  31001         

 C  DMFILES         0   $0.00   132    0, 0  2687     0    32   3  25444         

 T  DMREAD.BU      77   $0.00     2    0, 0  2613  2587    30   3  27072         

 T  DMREAD.DB      77   $0.00     3    0, 0  2634  2612    30   3   3026         

 T  DMREAD.DK      77   $0.00     3    0, 0  2492   544    30   3  27130         

 T  DMREAD.F6       0   $0.00     2    0, 0  2681  2681    30   3  23263         

 T  DMREAD.KB      77   $0.00     3    0, 0  2613  2591    30   3  25732         

 T  DMREAD.KO      77   $0.00     4    0, 0  2612  2592    30   3  25730         

 T  DMREAD.L2       0   $0.00     2    0, 0  2681   544    30   3  23250         

 T  DMREAD.L3       0   $0.00     2    0, 0  2681  2641    30   3  23247         

 T  DMREAD.L4       0   $0.00     2    0, 0  2681  2681    30   3  23251         

 T  DMREAD.L5       0   $0.00     2    0, 0  2681  2681    30   3  23261         

 T  DMREAD.L6       0   $0.00     2    0, 0  2681  2681    30   3  26525         

 T  DMREAD.LA      77   $0.00     3    0, 0  2686    70    30   3  26501         

 T  DMREAD.LO       0   $0.00     2    0, 0  2680  2112    30   3  26531         

 C  DMS.CHSYSTEM    0   $0.00    65    0, 0  2593     0    32   3  27662         

 B  DMS.COMET      77   $0.00    11    0, 0  2680    70     2   3  26670         

 T  DMS.COMET.LIB  77   $0.00     6    0, 0     0     0    30   3   6622         

 B  DMS.G           0   $0.00     3    0, 0 10769     0     2   3  31340         

 B  DMS.HANDSHAKE   0   $0.00     3    0,62  2777  2777     2   2   2413         

 B  DMS.JOBQUEUE    0   $0.00    23    0,62  2855  2777     2   2    526         

 C  DMS.JOBQUEUE.T  0   $0.00     4    0,62  2777  2777    32   2   3633         

 B  DMS.RAPGEN      0   $0.00    20    0,62  2777    70     2   2   2440         

 B  DMS.RAPGEN.00   0   $0.00     3    0,62  2777    70     2   2   2422         

 B  DMS.RAPGEN.001  0   $0.00     7    0,62  2777  1196     2   2   2470         

 B  DMS.RAPGEN.01   0   $0.00    19    0,62  2777  1196     2   2   2503         

 B  DMS.RAPGEN.011  0   $0.00    22    0, 0  2586  1196     2   3  30411         

 B  DMS.RAPGEN.012  0   $0.00    11    0,62  2777  1196     2   2   2565         

 B  DMS.RAPGEN.013  0   $0.00    11    0,62  2777  1196     2   2   2604         

 B  DMS.RAPGEN.03   0   $0.00    21    0,62  2777  1196     2   2   2623         

 B  DMS.RAPGEN.031  0   $0.00    18    0,62  2777  1196     2   2   2660         

 B  DMS.RAPGEN.032  0   $0.00    18    0,62  2777  1196     2   2   2706         

 B  DMS.RAPGEN.04   0   $0.00     6    0, 0  2661  1195     2   3  27150         

 B  DMS.RAPGEN.041  0   $0.00    20    0, 0  2777  1195     2   3   2746         

 B  DMS.RAPGEN.042  0   $0.00    19    0, 0  2593  1195     2   3  30007         

 B  DMS.RAPGEN.043  0   $0.00    20    0, 0  2586  1195     2   3  30251         

 B  DMS.RAPGEN.044  0   $0.00    16    0,62  2777  1195     2   2   3060         

 B  DMS.RAPGEN.05   0   $0.00     9    0,62  2777  1195     2   2   3104         

 B  DMS.RAPGEN.07   0   $0.00    11    0,62  2777  1195     2   2   3121         

 B  DMS.RAPGEN.071  0   $0.00    20    0,62  2777  1195     2   2   3140         

 B  DMS.RAPGEN.072  0   $0.00    13    0,62  2777  1195     2   2   3170         

 B  DMS.RAPGEN.073  0   $0.00     7    0,62  2777  1195     2   2   3211         

 B  DMS.RAPGEN.08   0   $0.00    10    0,62  2777  1195     2   2   3224         

 B  DMS.RAPGEN.081  0   $0.00    11    0,62  2777  1195     2   2   3242         

 B  DMS.RAPGEN.082  0   $0.00     9    0,62  2777  1195     2   2   3261         

 B  DMS.RAPGEN.09   0   $0.00    17    0,62    70    70     2   2  31265         

 B  DMS.RAPGEN.090  0   $0.00    11    0,62  2777  1195     2   2   3323         

 B  DMS.RAPGEN.091  0   $0.00    11    0,62    70    70     2   2   2251         

 B  DMS.RAPGEN.092  0   $0.00     7    0,62  2777    70     2   2   3361         

 B  DMS.RAPGEN.11   0   $0.00    21    0, 0 10772     0     2   3    627         

 B  DMS.RAPGEN.21   0   $0.00    14    0, 0 10772     0     2   3   2550         

 B  DMS.RAPGEN.211  0   $0.00    26    0, 0 10772     0     2   3   3303         

 B  DMS.RAPGEN.31   0   $0.00     9    0, 0 10772     0     2   3   3401         

 B  DMS.RAPGEN.90   0   $0.00     5    0,62  2777  1195     2   2   3370         

 B  DMS.RAPGEN.99   0   $0.00    18    0,62     0     0     2   2    540         

 B  DMS.RAPGEN.999  0   $0.00     9    0,62  2777  1195     2   2   3427         

 T  DMS.RAPGEN.DIS  0   $0.00     5    0, 0     0     0    30   3   3402         

 B  DMS.RAPGEN.FIL  0   $0.00    12    0,62  2777  1195     2   2   3444         

 B  DMS.RAPGEN.H    0   $0.00    11    0, 0  2586  1195     2   3   3040         

 C  DMS.RAPGEN.HP  77   $0.00    51    0, 0  2588  2594    32   3  30306         

 C  DMS.RAPGEN.HX   0   $0.00    14    0, 0  2588  2594    32   3   3002         

 B  DMS.RAPGEN.KEY  0   $0.00     4    0, 0  7335     0     2   3   3425         

 T  DMS.RAPGEN.LIB  0   $0.00    10    0,62  2777  1195    30   2   2301         

 T  DMS.RAPGEN.O1A  0   $0.00     5    0,62  2777    70    30   2   2331         

 T  DMS.RAPGEN.O1B  0   $0.00     5    0,62  2777  1195    30   2   2342         

 B  DMS.RAPGEN.OPS  0   $0.00    16    0,62  2777  1195     2   2   3464         

 B  DMS.RAPGEN.OPT  0   $0.00     9    0,62  2777  1195     2   2   3510         

 T  DMS.RAPGEN.S1A  0   $0.00    12    0,62    71    71    30   2  27341         

 T  DMS.RAPGEN.S1B  0   $0.00    14    0,62    70    70    30   2   2273         

 T  DMS.RAPGEN.S2A  0   $0.00     4    0,62  2777    70    30   2   2344         

 T  DMS.RAPGEN.S2B  0   $0.00     4    0,62  2777  1195    30   2   2360         

 T  DMS.RAPGEN.S3A  0   $0.00     2    0,62  2777    70    30   2   2402         

 T  DMS.RAPGEN.S3B  0   $0.00     3    0,62  2777  1195    30   2   2406         

 T  DMS.RAPGEN.S4A  0   $0.00     3    0,62  2777  1195    30   2   2400         

 T  DMS.RAPGEN.S4B  0   $0.00     2    0,62  2777  1195    30   2   2407         

 


 

Figur 26 DMS.COMET.LIB continued.

 

 

 T  DMS.RAPGEN.S5R  0   $0.00     5    0,62  2777    70    30   2   2343         

 T  DMS.RAPGEN.S5W  0   $0.00    11    0, 0     0     0    30   3  26511         

 T  DMS.RAPGEN.S6A  0   $0.00     4    0,62  2777  1195    30   2   2361         

 T  DMS.RAPGEN.S9A  0   $0.00    17    0, 0     0     0    30   3  27346         

 T  DMS.RAPGEN.S9B  0   $0.00     4    0, 0     0     0    30   3  27373         

 B  DMS.RAPGEN.SYS  0   $0.00    17    0,62    71    70     2   2   3525         

 C  DMS.RAPGEN.T    0   $0.00    29    0,62  2777     0    32   2   2204         

 B  DMS.RAPGEN.TAQ  0   $0.00     4    0,62  2777  1195     2   2   2427         

 C  DMS.RAPGEN.TE   0   $0.00    29    0, 0     0     0    32   3  30110         

 C  DMS.RAPGEN.TY   0   $0.00    45    0, 0  2593   544    32   3  27565         

 B  DMS.RAPGENX.07  0   $0.00    12    0, 0 10772     0     2   3  27400         

 T  DMS.RAPS.ARB    0   $0.00     4    0, 0     0     0    30   3  30165         

 T  DMS.RAPS.CHECK  0   $0.00     3    0,62  2777  1195    30   2   2401         

 T  DMS.RAPS.CHEX  77   $0.00     3    0, 0     0     0    30   3  30166         

 T  DMS.RAPS.KEY    0   $0.00     4    0, 0     0     0    30   3  30200         

 B  DMS.SEL         0   $0.00    17    0, 0 10772     0     2   3  30201         

 B  DMS.ST.E        0   $0.00     3    0, 0 10772     0     2   3  31330         

 B  DMS.STARDRN     0   $0.00    13    0,62  2777  2777     2   2   3552         

 B  DMS.TAMOSDRN    0   $0.00     3    0,62  2777  2777     2   2   3573         

 B  DMS.TEXT        0   $0.00    13    0,62  2777  2777     2   2   3602         

 B  DMS.X           0   $0.00     4    0, 0 10769     0     2   3  31332         

 B  DMS.XDRN        0   $0.00    20    0,41  2777  2777     2   2    770         

 B  DMS.XDRN.05     0   $0.00    10    0,41  2777  2777     2   2    740         

 B  DMS.XDRN.07     0   $0.00    12    0,41  2777  2777     2   2   1024         

 B  DMS.XDRN.071    0   $0.00    20    0,41  2777  2777     2   2   1044         

 B  DMS.XDRN.072    0   $0.00    13    0,41  2777  2777     2   2   1100         

 B  DMS.XDRN.BACKU  0   $0.00     4    0,41  2777  2777     2   2    752         

 B  DMS.XDRN.CK     0   $0.00    19    0,44  2777  2777     2   2   1121         

 B  DMS.XDRN.CONV   0   $0.00     8    0,41  2777  2777     2   2   1150         

 T  DMS.XDRN.COPY   0   $0.00    22    0,41  2777  2777    30   2    663         

 B  DMS.XDRN.DUM    0   $0.00     3    0,41  2777  2777     2   2    762         

 B  DMS.XDRN.FIL    0   $0.00    15    0,41  2777  2777     2   2   1164         

 B  DMS.XDRN.FIL1   0   $0.00    32    0,48  2777  2777     2   2   1207         

 B  DMS.XDRN.PRINT  0   $0.00    2f4    0,41  2777  2777     2   2   1263         

 B  DMS.XDRN.SUPER  0   $0.00    13    0,41  2777  2777     2   2   1323         

 C  DMS.XDRN.T      0   $0.00    81    0, 0  2112   544    32   3  30624         

 C  DMS.XDRN.TY     0   $0.00    81    0, 0  2277  2112    32   3  30447         

 C  DMS.XDRN.VIKA   0   $0.00    16    0,41  2777  2112    32   2    633         

 B  DMS.XDRN0       0   $0.00    28    0,41  2777  2112     2   2   1344         

 B  DMS.XDRN00      0   $0.00     9    0,41  2777  2777     2   2   1410         

 B  DMS.XDRN000     0   $0.00     3    0,41  2777  2777     2   2   1425         

 B  DMS.XDRN1       0   $0.00    22    0,41  2777  2777     2   2   1430         

 B  DMS.XDRN11      0   $0.00    20    0,41  2777  2777     2   2   1466         

 B  DMS.XDRN2       0   $0.00    21    0,41  2777  2777     2   2   1522         

 B  DMS.XDRN21      0   $0.00    18    0,41  2777  2777     2   2   1553         

 B  DMS.XDRN3       0   $0.00    15    0,41  2777  2777     2   2   1605         

 B  DMS.XDRN31      0   $0.00    19    0,41  2777  2777     2   2   1630         

 B  DMS.XDRN4       0   $0.00    11    0,41  2777  2777     2   2   1663         

 B  DMS.XDRN5       0   $0.00    21    0,41  2777  2777     2   2   1702         

 B  DMS.XDRN6       0   $0.00    15    0,41  2777  2777     2   2   1733         

 B  DMS.XDRN61      0   $0.00    30    0,41  2777  2777     2   2   1762         

 B  DMS.XDRN7       0   $0.00    17    0,41  2777  2777     2   2   2030         

 B  DMS.XDRN8       0   $0.00    21    0,41  2777  2777     2   2   2061         

 T  DMS.XLIB        0   $0.00     7    0,41  2777  2777    30   2    707         

 B  DMS.XSTART      0   $0.00     4    0,62     0     0     2   2    530         

 B  DMS.XSYS        0   $0.00    19    0,41  2777  2112     2   2   2122         

 B  DMS.XSYS1       0   $0.00    15    0,41  2777  2777     2   2   4000         

 B  DMS.YSTART      0   $0.00     4    0,41  4993  4993     2   2   2170         

 B  DMSE            0   $0.00     4    0,41  2777  2777     2   2   2151         

 


 

 

Figur 27 DMS.RAPGEN.LIB report generator only.

 

    FIL  NAVN    USER  BLOKKE  PART./  APPL. VERS  SPC   DATO        HBA         

 *                             #REC.   AREA FMVVTM INF                           

 T  DMS.COMET.L     1       4       0    0   0 0 0   0  06.02.87    4711         

 B  DMS.COMET       1      23       0    0   0 0 0   0  06.02.87    2500         

 T  DMS.COMET.LIB  58      21      20    0   0 0 0   0  29.07.86    3520         

 B  DMS.HANDSHAKE   1       3       0    0   0 0 0   0  06.02.87    2053         

 B  DMS.RAP         1       5       0    0   0 0 0   0  06.02.87    2004         

 B  DMS.RAPGEN      5      20       0    0   0 0 0   0  09.02.87    1060         

 B  DMS.RAPGEN.00   1       3       0    0   0 0 0   0  06.02.87    1672         

 B  DMS.RAPGEN.001  5       7       0    0   0 0 0   0  06.02.87    1010         

 B  DMS.RAPGEN.01   5      19       0    0   0 0 0   0  09.02.87     713         

 B  DMS.RAPGEN.011  5      23       0    0   0 0 0   0  09.02.87    2011         

 B  DMS.RAPGEN.012  5      11       0    0   0 0 0   0  06.02.87   20353         

 B  DMS.RAPGEN.013  5      11       0    0   0 0 0   0  06.02.87   17224         

 B  DMS.RAPGEN.03   5      21       0    0   0 0 0   0  09.02.87    1552         

 B  DMS.RAPGEN.031  5      19       0    0   0 0 0   0  09.02.87    2263         

 B  DMS.RAPGEN.032  5      19       0    0   0 0 0   0  09.02.87     206         

 B  DMS.RAPGEN.04   5       6       0    0   0 0 0   0  06.02.87    2333         

 B  DMS.RAPGEN.041  5      20       0    0   0 0 0   0  06.02.87    2321         

 B  DMS.RAPGEN.042  5      19       0    0   0 0 0   0  09.02.87    2512         

 B  DMS.RAPGEN.043  5      20       0    0   0 0 0   0  09.02.87    1630         

 B  DMS.RAPGEN.044  5      15       0    0   0 0 0   0  06.02.87    1663         

 B  DMS.RAPGEN.05   5       9       0    0   0 0 0   0  06.02.87    2501         

 B  DMS.RAPGEN.07   5      11       0    0   0 0 0   0  06.02.87   30453         

 B  DMS.RAPGEN.071  5      20       0    0   0 0 0   0  09.02.87    2727         

 B  DMS.RAPGEN.072  5      13       0    0   0 0 0   0  09.02.87   30072         

 B  DMS.RAPGEN.073  5       8       0    0   0 0 0   0  09.02.87   20332         

 B  DMS.RAPGEN.08   5      10       0    0   0 0 0   0  06.02.87   30124         

 B  DMS.RAPGEN.081  5      11       0    0   0 0 0   0  06.02.87   31327         

 B  DMS.RAPGEN.082  5       9       0    0   0 0 0   0  06.02.87    2742         

 B  DMS.RAPGEN.09   5      17       0    0   0 0 0   0  06.02.87    2772         

 B  DMS.RAPGEN.090  1      11       0    0   0 0 0   0  06.02.87   16364         

 B  DMS.RAPGEN.091  1      11       0    0   0 0 0   0  06.02.87    3111         

 B  DMS.RAPGEN.092  1       8       0    0   0 0 0   0  06.02.87    3045         

 B  DMS.RAPGEN.90   1       5       0    0   0 0 0   0  06.02.87    3061         

 B  DMS.RAPGEN.99   1      19       0    0   0 0 0   0  06.02.87    2524         

 B  DMS.RAPGEN.999  5       9       0    0   0 0 0   0  09.02.87   16403         

 B  DMS.RAPGEN.FIL  1      12       0    0   0 0 0   0  06.02.87    6310         

 T  DMS.RAPGEN.LIB 62      10       9    0   0 0 0   0  29.07.86    2167         

 T  DMS.RAPGEN.O1A  1       5       4    0   0 0 0   0  06.02.87    7445         

 T  DMS.RAPGEN.O1B  1       5       4    0   0 0 0   0  06.02.87     444         

 B  DMS.RAPGEN.OPS  1      16       0    0   0 0 0   0  06.02.87   30627         

 B  DMS.RAPGEN.OPT  1       9       0    0   0 0 0   0  06.02.87     471         

 T  DMS.RAPGEN.S1A  1      12      11    0   0 0 0   0  06.02.87     762         

 T  DMS.RAPGEN.S1B  1      14      13    0   0 0 0   0  06.02.87     751         

 T  DMS.RAPGEN.S2A  1       4       3    0   0 0 0   0  06.02.87    3323         

 T  DMS.RAPGEN.S2B  1       4       3    0   0 0 0   0  06.02.87    3324         

 T  DMS.RAPGEN.S3A  1       2       1    0   0 0 0   0  06.02.87    2561         

 T  DMS.RAPGEN.S3B  1       3       2    0   0 0 0   0  06.02.87    1560         

 T  DMS.RAPGEN.S4A  1       3       2    0   0 0 0   0  06.02.87    3421         

 T  DMS.RAPGEN.S4B  1       2       1    0   0 0 0   0  06.02.87    3427         

 T  DMS.RAPGEN.S5R  1       5       4    0   0 0 0   0  06.02.87    3430         

 T  DMS.RAPGEN.S5W  1      11      10    0   0 0 0   0  06.02.87    3450         

 T  DMS.RAPGEN.S6A  1       4       3    0   0 0 0   0  06.02.87    3467         

 T  DMS.RAPGEN.S9A  1      17      16    0   0 0 0   0  06.02.87    3501         

 T  DMS.RAPGEN.S9B  1       4       3    0   0 0 0   0  06.02.87    7444         

 B  DMS.RAPGEN.SYS  1      17       0    0   0 0 0   0  06.02.87    2607         

 C  DMS.RAPGEN.T   62      45      11    0   0 0 0   0  31.07.86    7733         

 B  DMS.RAPGEN.TAQ  1       4       0    0   0 0 0   0  06.02.87    6333         

 C  DMS.RAPGEN.TE  62      45      11    0   0 0 0   0  31.07.86   30760         

 C  DMS.RAPGEN.TY  62      45      11    0   0 0 0   0  30.07.86    7622         

 T  DMS.RAPS.ARB    1       4       3    0   0 0 0   0  06.02.87    1547         

 T  DMS.RAPS.CHECK  1       3       2    0   0 0 0   0  06.02.87    1405         

 T  DMS.RAPS.CHEX   1       3       2    0   0 0 0   0  06.02.87    1412         

 T  DMS.RAPS.NAVN   1       5       4    0   0 0 0   0  06.02.87    3372         

 B  DMS.STARDRN     1      14       0    0   0 0 0   0  06.02.87    2223         

 B  DMS.TAMOSDRN    1       3       0    0   0 0 0   0  06.02.87     203         

 B  DMS.TEXT        1      13       0    0   0 0 0   0  06.02.87     345         

 B  DMS.XSTART      3       8       0    0   0 0 0   0  09.02.87   15423         

 B  DMS.XSYS        1      19       0    0   0 0 0   0  06.02.87    3272         

 B  DMS.XSYS1       1      15       0    0   0 0 0   0  06.02.87    1743         

 B  DMSE            1       4       0    0   0 0 0   0  06.02.87    1623         

 F  TF.PROGRAP1     5       5      20    0   0 0 0   0  09.02.87   12603         

 F  TF.SYSTEMRAP    5       5       4    0   0 0 0   0  09.02.87   15405         

 B  ST.E           62       3       0    0   0 0 0   0  29.07.86    3673         

 

 

 

 


 

 

Figur 28 DMS.XLIB Datamaster file definition programs.

 

    FIL  NAVN    USER  BLOKKE  PART./  APPL. VERS  SPC   DATO        HBA         

 *                             #REC.   AREA FMVVTM INF                           

 B  DMS.XDRN        5      20       0    0   0 0 0   0  09.02.87    7500         

 B  DMS.XDRN.05     1      10       0    0   0 0 0   0  06.02.87    1707         

 B  DMS.XDRN.07     1      12       0    0   0 0 0   0  06.02.87   20303         

 B  DMS.XDRN.071    1      20       0    0   0 0 0   0  06.02.87    1725         

 B  DMS.XDRN.072    1      13       0    0   0 0 0   0  06.02.87     567         

 B  DMS.XDRN.BACKU  1       4       0    0   0 0 0   0  06.02.87     610         

 B  DMS.XDRN.CK     1      18       0    0   0 0 0   0  06.02.87     620         

 B  DMS.XDRN.CONV   1       8       0    0   0 0 0   0  06.02.87    7713         

 T  DMS.XDRN.COPY   1      22      21    0   0 0 0   0  06.02.87    3507         

 B  DMS.XDRN.DUM    1       3       0    0   0 0 0   0  06.02.87     645         

 B  DMS.XDRN.FIL    1      15       0    0   0 0 0   0  06.02.87   12541         

 B  DMS.XDRN.FIL1   1      32       0    0   0 0 0   0  06.02.87     650         

 B  DMS.XDRN.PRINT  1      24       0    0   0 0 0   0  06.02.87    3550         

 B  DMS.XDRN.SUPER  1      14       0    0   0 0 0   0  06.02.87    1032         

 C  DMS.XDRN.T     44      81      20    0   0 0 0   0  31.07.86   11744         

 C  DMS.XDRN.TE    44      81      20    0   0 0 0   0  31.07.86   12121         

 C  DMS.XDRN.TY    44      81      20    0   0 0 0   0  29.07.86    1167         

 C  DMS.XDRN.VIKA  44      16     120    0   0 0 0   0  29.07.86    1344         

 B  DMS.XDRN0       1      29       0    0   0 0 0   0  06.02.87   31051         

 B  DMS.XDRN00      1       9       0    0   0 0 0   0  06.02.87   20663         

 B  DMS.XDRN000     1       4       0    0   0 0 0   0  06.02.87    1146         

 B  DMS.XDRN1       1      22       0    0   0 0 0   0  06.02.87   31271         

 B  DMS.XDRN11      1      20       0    0   0 0 0   0  06.02.87     711         

 B  DMS.XDRN2       5      21       0    0   0 0 0   0  09.02.87    2444         

 B  DMS.XDRN21      1      18       0    0   0 0 0   0  06.02.87    1072         

 B  DMS.XDRN3       1      16       0    0   0 0 0   0  06.02.87    1470         

 B  DMS.XDRN31      1      20       0    0   0 0 0   0  06.02.87    1124         

 B  DMS.XDRN4       1      12       0    0   0 0 0   0  06.02.87   30726         

 B  DMS.XDRN5       1      22       0    0   0 0 0   0  06.02.87     661         

 B  DMS.XDRN6       1      15       0    0   0 0 0   0  06.02.87    1522         

 B  DMS.XDRN61      1      30       0    0   0 0 0   0  06.02.87   16423         

 B  DMS.XDRN7       1      17       0    0   0 0 0   0  06.02.87    1572         

 B  DMS.XDRN8       1      22       0    0   0 0 0   0  06.02.87   31233         

 T  DMS.XLIB       44       7       6    0   0 0 0   0  29.07.86    1026         

 B  DMS.XSTART      3       8       0    0   0 0 0   0  09.02.87   15423         

 B  DMS.XSYS        1      19       0    0   0 0 0   0  06.02.87    3272         

 B  DMS.XSYS1       1      15       0    0   0 0 0   0  06.02.87    1743         

 

 

 

 

 


                                                                            Figuren

 

Figur 1  DMS.RAPGEN.SYS System Auswahl.........................................................................................................................................   6

Figur 2  DMS.RAPGEN.SYS........................................................................................................................................................................   6

Figur 3  TAMOS Programmwahl, Installation........................................................................................................................................   11

Figur 4  TAMOS Programmwahl‑Definitionen.......................................................................................................................................   11

Figur 5  Start Interface Program DMS.R..................................................................................................................................................   12

Figur 6  Funktionen des Dateidefinitions‑Moduls................................................................................................................................   17

Figur 7  Felddefinitionen............................................................................................................................................................................   18

Figur 8  Definition einer Datei (DEF Kommando)..................................................................................................................................   20

Figur 9  Definition des MAT READ Befehls..........................................................................................................................................   21

Figur 10 HELP‑Funktion im Felddefinitions‑Modul..............................................................................................................................   22

Figur 11 Eingabe zusätzlicher Hilfstexte..................................................................................................................................................   22

Figur 12 Generierung eines READ‑Befehles...........................................................................................................................................   23

Figur 13 Dateipflege‑Funktion..................................................................................................................................................................   24

Figur 14 Pflege der Dateidefinitionen......................................................................................................................................................   24

Figur 15 Aktualisieren eines Dateinamens über DMS.RAPGEN.LU...................................................................................................   29

Figur 16 Schnittstelle zwischen DMS.COMET und Parameterdateien...............................................................................................   31

Figur 17 Der einfache Lesebefehl.............................................................................................................................................................   32

Figur 18 Lesebefehl mit 'Entpacken' von Feldern...................................................................................................................................   32

Figur 19 'Packen/Entpacken' in einem Lesebefehl..................................................................................................................................   33

Figur 20 Aufteilen gepackter Datenfelder...............................................................................................................................................   33

Figur 21 DMS.TEXT Pflege sprachabhängiger Texte...........................................................................................................................   36

Figur 22 Generieren eines Ausgabe‑Programmes..................................................................................................................................   37

Figur 23 Unterprogramme im generierten Program................................................................................................................................   38

Figur 24 ........................................................................................................................................................................................................   53

Figur 25 DMS.COMET.LIB complete library list....................................................................................................................................   55

Figur 26 DMS.COMET.LIB continued....................................................................................................................................................   56

Figur 27 DMS.RAPGEN.LIB report generator only...............................................................................................................................   57

Figur 28 DMS.XLIB Datamaster file definition programs.....................................................................................................................   58

 


                                                                            Stichwort

 


#DD........................................................................ 40, 41, 44, 49

#NO.......................................................................................... 49

#PD........................................................................ 40, 41, 44, 49

#PP........................................................................................... 49

#SC........................................................................................... 49

#SN.......................................................................................... 49

#SY........................................................................................... 49

#TI............................................................................................ 49

ABS.......................................................................................... 12

Account.................................................................................. 55

BUILDXF...................................................................... 7, 10, 16

CHSYSTEM................................................. 6, 7, 10, 12, 14, 18,

                                                                                 44, 50, 54, 55

CLEANUP............................................................................... 10

Continous....................................................... 42, 46, 48, 52, 54

Cost.......................................................................................... 55

DATAMASTER............................................ 4, 8, 9, 15, 17‑23,

                                                                           25‑28, 31, 34, 44,

                                                                                       45, 47, 58

DIM.............................................................................. 12, 34, 39

DMDATAFIL............................................................... 6, 31, 55

DMFILES................................................................ 6, 31, 37, 55

DMREAD.................................................................... 23, 37, 55

DMREPORT................................................................. 6, 37, 49

DMS.RAPGEN.S6A............................................. 37, 54, 56, 57

DMS.RAPGEN.SYS........................................... 5‑7, 11‑13, 16,

                                                                     24, 30, 36, 48, 56, 57

DMS.RAPS........................................................... 39, 54, 56, 57

DMSORTWORK..................................................................... 6

DRN......................................................... 6, 7, 15, 17, 18, 20‑26,

                                                                           33‑35, 40, 41, 43,

                                                                      44, 46‑48, 50, 52, 54

ESCape.................................................................................... 10

fil............................................................................. 22, 29, 55‑58

FND.......................................................................................... 27

Format..................................................... 7, 8, 15, 17, 18, 20‑23,

                                                                     36, 40, 44, 46, 48, 49

GOSUB.............................................................................. 12, 34

HBA............................................................................. 55, 57, 58

INT........................................................................................... 46

Layout............................................................................... 16, 53

LD............................................................................................. 36

LEN.......................................................................................... 24

LOAD.............................................................. 36, 39, 48, 53, 54

LPT......................................................................... 40, 41, 48, 54

LU....................................................... 4‑8, 11, 12, 14‑16, 20, 25,

                                                                           29, 30, 31, 50, 52

MODE.................................................................... 10, 22, 40, 42

NIROS........................................................................................ 4

NOT..................................................... 16, 21, 24, 26, 31, 39‑50,

                                                                                             52, 54

NYRUP........................................................................ 30, 40, 54

over.......................................................................................... 48

Partition..................................................................................... 4

Pass.................................................................................... 38, 40

Password............................................................... 11, 24, 48, 50

QUICK..................................................................................... 53

REM......................................................................................... 12

S9$............................................................................................ 40

SAVE     9, 44, 53

Search.................................................. 22, 26, 29, 39, 42, 43, 54

SORT................................................................. 6, 40, 41, 44, 53

STAR........................................................ 5, 8, 9, 24, 26, 30, 40,

                                                                                 43, 44, 50, 54

Status..................................................................... 42, 44, 45, 48

STOP................................................................ 12, 19, 33, 42, 47

Subtotal................................................................................... 48

SYSMOD............................................................................... 4, 8

T2$......................................................................... 32, 33, 43, 49

T3....................................................................................... 33, 43

T9$............................................................................... 32, 33, 43

TAMOS.......................................................... 6, 8, 9, 11‑14, 17,

                                                                           29‑31, 41, 44, 49,

                                                                                             50, 54

Testprint.................................................................................. 53

Utility....................................................................................... 50