RAPGEN

 

Anvenderhandbuch

 

 

Teil 2.


 


                                                                            Inhaltsverzeichnis

 

11.        Druckersteuerung............................................................................................................................................................................   6

11.1.     Generell..............................................................................................................................................................................................   6

11.2.     Grundlegende Regeln für die Druckersteuerung........................................................................................................................   6

11.3.     TAMOS Druckerzuteilung.............................................................................................................................................................   7

11.3.1.   Name des logischen Druckers: z.B. $LPT....................................................................................................................................   7

11.3.2.   Name des physischen Druckers:z.B. $RPL2...............................................................................................................................   7

11.3.3.   Parameter Start/Stop Pos. Zeilen und Zeilen/Zeichen Dichte..................................................................................................   7

11.4.     Definition eines Druckers...............................................................................................................................................................   7

11.4.1.   Ändern einer Druckerdefinition....................................................................................................................................................   8

11.5.     Wahl des Druckers bei einer Liste................................................................................................................................................   8

11.6.     Anwendung vor Steuerzeichen in einer Liste.............................................................................................................................   8

11.7.     Berechnete Steuerzeichen (@X@Y@Z)......................................................................................................................................   9

11.7.1.   Einsetzen berechneter Steuerzeichen..........................................................................................................................................   9

11.7.2.   Steuerzeichen @0 (Dummy)........................................................................................................................................................   10

11.7.3.   Berechnung von Steuerzeichen..................................................................................................................................................   10

11.8.     Definition der Druckertabellen.....................................................................................................................................................   10

11.8.1.   Erste seite der Druckertabelle.....................................................................................................................................................   11

11.8.2.   Spool Parameter............................................................................................................................................................................   11

11.8.2.1. Logischer Name des Druckers...................................................................................................................................................   11

11.8.2.2. Start Druck aus Spooldatei sofort (J/N)...................................................................................................................................   12

11.8.2.3. Dialog von/nach Ausdruck........................................................................................................................................................   12

11.8.2.4. Anzahl kopien..............................................................................................................................................................................   12

11.8.2.5. Paperidentifikation.......................................................................................................................................................................   12

11.8.2.6. Name der List (J/N)......................................................................................................................................................................   12

11.8.3.   Steuerzeichen................................................................................................................................................................................   12

11.8.3.1. @ RESET.......................................................................................................................................................................................   13

11.8.3.2. @A-@W Steuerzeichen.............................................................................................................................................................   13

11.8.3.3. @X-@Z berechnete Steuerzeichen...........................................................................................................................................   13

11.8.3.4. @0 Dummy-Steuerzeichen.........................................................................................................................................................   13

11.8.3.5. @1-@9 Steuerzeichen.................................................................................................................................................................   13

11.8.3.6. Zeichen für Zeilenschaltung......................................................................................................................................................   13

11.8.3.7. Steuerzeichen für Seitenvorschub............................................................................................................................................   13

11.8.4.   Ausdruck der Druckertabelle......................................................................................................................................................   14

11.9.     Fehler beim Drucken......................................................................................................................................................................   14

11.9.1.   Basic Fehler 26 - Drucker nicht bereit........................................................................................................................................   15

11.9.2.   Basic Fehler 73 - Falsche OPEN Parameter...............................................................................................................................   15

11.10.    Installation der Druckersteuerung.............................................................................................................................................   15

 

12.        PC-Einbindung...............................................................................................................................................................................   16

12.1.      Generell...........................................................................................................................................................................................   16

12.1.1.    Struktur..........................................................................................................................................................................................   16

12.1.2.    LOTUS, CHART, MULTIPLAN und VISICALC....................................................................................................................   16

12.1.3.    Überführung auf den PC.............................................................................................................................................................   16

12.1.4.    Voraussetzungen.........................................................................................................................................................................   16

12.2.      Beispiel einer Dateiübertragung.................................................................................................................................................   17

12.2.1.    Start/Stop der BCU......................................................................................................................................................................   17

12.2.2.    Aufbereitung einer PC-Liste......................................................................................................................................................   17

12.2.3.    Start des PC-Liste........................................................................................................................................................................   18

12.2.3.1.  Mehrere Listen (Dateien in einer Warteschlange).................................................................................................................   18

12.2.4.    Überführung auf den PC.............................................................................................................................................................   18

12.2.4.1.  Listen des aktuellen Bildschirms..............................................................................................................................................   19

12.2.4.2.  Löschen der Nixdorf 8870 Textdateien ? ................................................................................................................................   19

12.2.4.3.  Start sofort oder zu einem angegebenen Zeitpunkt..............................................................................................................   19

12.2.5.    Start der Übertragung vom PC aus...........................................................................................................................................   19

12.3.      Übertragene Listen (Dateien)......................................................................................................................................................   19

12.3.1.    Übersicht über die übertragenen Listen (Dateien).................................................................................................................   20

12.4.      Standard PC-Drucker....................................................................................................................................................................   20

12.5.      Neuübertragung (Retransmission) nach einem Fehler............................................................................................................   20

12.5.1.    Löschen der Textdatei ohne vorhergehende Übertragung...................................................................................................   20

12.6.      Manuelles Löschen der 8870 Textdateien.................................................................................................................................   21

12.7.      Systemtechnische Informationen...............................................................................................................................................   21

12.7.1.    Druckdatei (Text).........................................................................................................................................................................   21

12.7.2.    Übertragungs-Steuerdatei..........................................................................................................................................................   21

12.7.3.    Format-Kontroll-Datei.................................................................................................................................................................   22

12.7.4.    BCU Auftragswarteschlange.....................................................................................................................................................   22

12.7.5.    Status während der Übertragung..............................................................................................................................................   22

12.8.      Installation der PC-Einbindung..................................................................................................................................................   22

12.8.1.    Installationsprogramm DMSPC.SYS.........................................................................................................................................   23

12.8.2.    Installation eines einzelen PCs..................................................................................................................................................   23

12.9.      Löschen der PC-Logdatei............................................................................................................................................................   23

12.10.     PC-Druckersteuerung..................................................................................................................................................................   24

12.10.1.   Überschrift und Summen...........................................................................................................................................................   24

12.10.2.   Anzahl Zeilen..............................................................................................................................................................................   24

12.10.3.   Beginn die Seitennummer..........................................................................................................................................................   24

12.10.4.   PC Integrationscode...................................................................................................................................................................   25

12.10.5.   Textdatei - extended flag (B/!/?)...............................................................................................................................................   25

12.10.6.   PC Textdatei Suffix......................................................................................................................................................................   25

 

13.          Print image control.......................................................................................................................................................................   26

13.1.        Structure of the print generation..............................................................................................................................................   26

13.1.1.      Improved functions by this structure.....................................................................................................................................   26

13.2.        New print image control.............................................................................................................................................................   26

13.2.1.      New functions by this structure..............................................................................................................................................   26

13.3.        Print line control..........................................................................................................................................................................   27

13.3.1.      The LINE command...................................................................................................................................................................   27

13.3.1.1.    Print zero fields..........................................................................................................................................................................   27

13.3.1.2.    New page lines before end of page........................................................................................................................................   27

13.3.1.3.    Heading print lines...................................................................................................................................................................   27

13.3.1.4.    Normal print lines......................................................................................................................................................................   27

13.3.1.5.    Total print lines.........................................................................................................................................................................   27

13.3.1.6.    Detail (READH) print lines......................................................................................................................................................   28

13.3.2.      Letters..........................................................................................................................................................................................   28

13.3.3.      Inquiery programs.....................................................................................................................................................................   28

13.4.        Controlling the print by calculations.......................................................................................................................................   28

13.4.1.      Setting lines to be printed........................................................................................................................................................   28

13.4.1.1.    Line specifications....................................................................................................................................................................   28

13.4.1.1.1.  +xx skip a number of lines.......................................................................................................................................................   28

13.4.1.1.2.  :xx skip to line...........................................................................................................................................................................   29

13.4.1.2.    PRINT (L= line specification...................................................................................................................................................   29

13.4.1.2.1.  Conditional line printing.........................................................................................................................................................   29

13.4.1.3.    PRINT (T=total line specification...........................................................................................................................................   29

13.4.1.4.    PRINT (D=detail (READH) line specification.......................................................................................................................   29

13.4.1.5.    PRINT (H= heading line specifications.................................................................................................................................   29

13.4.1.6.    PRINT (N= newpage specification.........................................................................................................................................   30

13.4.2.      Footer lines.................................................................................................................................................................................   30

13.5.        PRINT gaining complete control..............................................................................................................................................   30

13.5.1.      PRINT (x‑y) print lines..............................................................................................................................................................   30

13.5.2.      Combinations of print options.................................................................................................................................................   31

13.5.3.      START/NEXT/REPEAT used for statements.......................................................................................................................   31

13.6.        PRINT in LAST calculations.....................................................................................................................................................   31

13.7.        Contracting print lines with ¬.................................................................................................................................................   32

13.7.1.      Contracting print lines with ¬¬ ...........................................................................................................................................   32

13.7.2.      ¬> function to end the ¬ function ......................................................................................................................................   32

13.8.        R3 ‑ print long screen lines........................................................................................................................................................   32

13.9.        PRT command on letters............................................................................................................................................................   32

13.10.       New commands in function 7 - amendment of letter or report............................................................................................   32

13.11.       PRINTER  Controlling up to 9 prints from one report..........................................................................................................   32

13.11.1.     Definition of (opening) extra printers....................................................................................................................................   33

13.11.2.     Divide print on two printers....................................................................................................................................................   33

13.11.3.     Letter with journal.....................................................................................................................................................................   34

13.11.4.     Print on two printers at the same time...................................................................................................................................   34

 

14.          Subfunctions................................................................................................................................................................................   35

14.1.        CCODE Getting DATAMASTER fieldcheck text..................................................................................................................   35

14.2.        CHAIN Start the next report......................................................................................................................................................   35

14.3.        CHECK calculation of OCR checkdigit....................................................................................................................................   36

14.4.        CHEX Calculation of checkdigit modulus 11..........................................................................................................................   36

14.5.        COPIES Number of print copies, print priority and paper code...........................................................................................   36

14.6.        EDIT editing of customer numbers or other numbers...........................................................................................................   37

14.7.        EXPORT writing to external files..............................................................................................................................................   37

14.7.1.      The parameters for EXPORT....................................................................................................................................................   38

14.7.1.1.    Fields..........................................................................................................................................................................................   38

14.7.1.2.    Filename.....................................................................................................................................................................................   38

14.7.1.3.    Record length and file type.....................................................................................................................................................   38

14.7.1.4.    Output specifications...............................................................................................................................................................   39

14.7.1.5.    Printer output............................................................................................................................................................................   39

14.7.1.6.    CSV parameters.........................................................................................................................................................................   40

14.7.2.      EXPORT in calculations...........................................................................................................................................................   40

14.8.        EXPOX Export with file definition included............................................................................................................................   40

14.9.        FILENAME Physical filename..................................................................................................................................................   41

14.10.       FIND search for text in fields...................................................................................................................................................   41

14.11.       IMPORT reading of external files............................................................................................................................................   41

14.11.1.     The parameters for IMPORT...................................................................................................................................................   42

14.11.1.1.   Fields.........................................................................................................................................................................................   42

14.11.1.2.   Filename....................................................................................................................................................................................   42

14.11.1.3.   Record length and file type....................................................................................................................................................   42

14.11.1.4.   Input specifications.................................................................................................................................................................   43

14.11.2.     Different entries of the IMPORT routine..............................................................................................................................   43

14.11.2.1.   IMPOCONT ("11‑20").............................................................................................................................................................   43

14.11.2.2.   IMPOTHIS ("1‑20").................................................................................................................................................................   43

14.11.2.3.   IMPONEXT ("11‑20").............................................................................................................................................................   43

14.12.       INDEX lock reports index/start/stop keys.............................................................................................................................   44

14.13.       KEYS start/stop specifications................................................................................................................................................   44

14.13.1.     The KEYS command in the main menu..................................................................................................................................   44

14.13.2.     Entering the start/stop values................................................................................................................................................   44

14.13.3.     Functions in the editor.............................................................................................................................................................   45

14.13.4.     Activating the KEYS function in a report.............................................................................................................................   46

14.13.5.     Start of a KEYS report..............................................................................................................................................................   46

14.13.6.     Functions and parameters.......................................................................................................................................................   47

14.13.6.1.   One or separated reports........................................................................................................................................................   47

14.13.6.2.   Fixed definition file..................................................................................................................................................................   47

14.13.6.3.   KEYS calculationcode 47/xxxx................................................................................................................................................   47

14.13.7.     Special definition files..............................................................................................................................................................   47

14.13.8.     Sorting start/stop values.........................................................................................................................................................   47

14.14.       The LET command.....................................................................................................................................................................   48

14.15.       The LET command with ON.....................................................................................................................................................   49

14.15.1.     Columns.....................................................................................................................................................................................   49

14.15.2.     Transactioncode-simulation...................................................................................................................................................   49

14.15.3.     Monthly balance.......................................................................................................................................................................   49

14.15.4.     Calculations in ON-part...........................................................................................................................................................   49

14.15.5.     Multiple fields...........................................................................................................................................................................   50

14.15.6.     Balance year to date.................................................................................................................................................................   50

14.15.7.     X and logical operators............................................................................................................................................................   50

14.15.8.     'Odd' values after ON...............................................................................................................................................................   50

14.15.9.     Textfields after ON....................................................................................................................................................................   50

14.16.       LOWER lower case letters........................................................................................................................................................   51

14.17.       LTOT fixing the lowest total level...........................................................................................................................................   51

14.18.       MERGE Mixing multiple files...................................................................................................................................................   51

14.19.       MESS Message and possible abort of run............................................................................................................................   52

14.20.       MTOT Highest total level to be printed.................................................................................................................................   52

14.21.       NAME isolating christian/last name.......................................................................................................................................   52

14.22.       NODATA deactivate all #Dx fields.........................................................................................................................................   52

14.23.       NOIX Supress index-update (saves space)...........................................................................................................................   53

14.24.       NOPAS Deactivating of password.........................................................................................................................................   53

14.25.       NOPRT Supress all print (saves space and paper)...............................................................................................................   53

14.26.       NUMBER conversion of 'dirty' numbers................................................................................................................................   53

14.27.       NUMS convert alphanumeric to numeric...............................................................................................................................   53

14.28.       OPEN opening of files for reading..........................................................................................................................................   54

14.29.       PACK packing of fields............................................................................................................................................................   54

14.30.       PCIN and PCOUT exporting directly to PC harddisc/­floppy..............................................................................................   54

14.31.       PHONE conversion to new danish phonenumbers..............................................................................................................   54

14.32.       PLCOUT exporting directly to a PLC line...............................................................................................................................   54

14.33.       POUT Output of text / control codes directly on printer.....................................................................................................   54

14.34.       PRIO set priority........................................................................................................................................................................   54

14.35.       PXOUT Export directly to PC-harddisk using ERNA...........................................................................................................   55

14.36.       PZOUT Print directly to PC-harddisk using ERNA..............................................................................................................   55

14.37.       RATE get COMET TOP currency rate...................................................................................................................................   55

14.38.       RUND definition of FNR round...............................................................................................................................................   55

14.39.       SIZE Optimize space requirement in large reports................................................................................................................   55

14.40.       SMAA Convert names from upper to upper/lower case letters.........................................................................................   55

14.41.       SOGE Generating searchkey from addressfield.....................................................................................................................   56

14.42.       SORTWORK multiple sort-files...............................................................................................................................................   56

14.43.       SPOFF removal of spaces in field............................................................................................................................................   56

14.44.       STAR functions for financial reports.....................................................................................................................................   56

14.44.1.     STARD Get bookkeeping and period dates.........................................................................................................................   56

14.44.2.     STARF Calculate perid/year to date realized and budget..................................................................................................   56

14.44.3.     STARN Index calculations......................................................................................................................................................   56

14.44.4.     STARP Define bookkeeping period.......................................................................................................................................   56

14.44.5.     STARS Regroup current period to period 1.........................................................................................................................   56

14.45.       TAPEOUT exporting directly to tape.....................................................................................................................................   57

14.46.       TEST testprint function............................................................................................................................................................   57

14.47.       UNPACK unpacking of packed fields....................................................................................................................................   57

14.48.       UPDATE activate file updating...............................................................................................................................................   57

14.49.       UPPER Upper case letters........................................................................................................................................................   57

14.50.       VALCH values of a textfield.....................................................................................................................................................   58

14.51.       VALID values of a nuemric field.............................................................................................................................................   58

14.52.       VALIX values of a numeric code............................................................................................................................................   59

14.53.       WEEK convert date/week or week/date.................................................................................................................................   59

14.54.       WORKD data difference in number of workdays.................................................................................................................   59

14.55.       ZERO zero all workfields...........................................................................................................................................................   59

 

15.          File update with DMS.RAPGEN................................................................................................................................................   60

15.1.        Defining an updating report......................................................................................................................................................   60

15.2.        UPDATE activate the updating................................................................................................................................................   61

15.3.        NOPAS deactivation of password...........................................................................................................................................   61

15.4.        REWRITE (XX) update of a record..........................................................................................................................................   61

15.5.        WRITE (XX) update/insert record...........................................................................................................................................   62

15.6.        INSERT (XX) creation of a new record...................................................................................................................................   62

15.7.        DELETE (XX) deletion of a record...........................................................................................................................................   62

15.8.        Updating of the file index..........................................................................................................................................................   62

15.9.        Changed structure in the main file handling...........................................................................................................................   63

15.10.       Error handling by updating......................................................................................................................................................   63

15.11.       Where to place the update statements...................................................................................................................................   63

15.12.       LTOT freeze lowest total level.................................................................................................................................................   63

15.13.       Updating the main file main index...........................................................................................................................................   64

15.14.       Security against updating application files...........................................................................................................................   64

15.15.       Blocking for all updating..........................................................................................................................................................   64

15.16.       OPEN(XX,"3/XXFILE") special file open..............................................................................................................................   65

15.17.       Creating new files with RAPGEN............................................................................................................................................   66

15.17.1.     Number of records, disk and company id.............................................................................................................................   66

15.17.2.     Mix of files.................................................................................................................................................................................   66

15.17.3.     Index keys..................................................................................................................................................................................   67

15.17.4.     Multiple fields in the key.........................................................................................................................................................   67

15.17.5.     Multiple keys.............................................................................................................................................................................   67

15.17.6.     Special keys...............................................................................................................................................................................   67

15.17.7.     Deleting files..............................................................................................................................................................................   67

15.17.8.     Redefinition of files..................................................................................................................................................................   67

15.17.9.     Filenames and other tecnical information.............................................................................................................................   67

 

16.          The edit functions 11-14.............................................................................................................................................................   68

16.1.        The structure of the new functions.........................................................................................................................................   68

16.2.        The text‑editor.............................................................................................................................................................................   69

16.3.        Function 11 ‑ Documentation...................................................................................................................................................   71

16.4.        Function 12 ‑ editing of selections...........................................................................................................................................   72

16.4.1.      Selections on alpha‑textfields..................................................................................................................................................   72

16.5.        Function 13 ‑ editing of sorting and totalling.........................................................................................................................   73

16.6.        Function 14 ‑ editing of calculations.......................................................................................................................................   74

16.6.1.      Remarks in the calculations......................................................................................................................................................   74

16.6.2.      GOTO/GOSUB and RETURN in the calculations.................................................................................................................   75

16.7.        Technic by editing......................................................................................................................................................................   75

 

17.          Other systems, individual adjustments and op­timization......................................................................................................   76

17.1.        REPS Multiple report systems..................................................................................................................................................   76

17.1.1.      S Start RAPGEN again..............................................................................................................................................................   76

17.2.        TAM Insert in TAMOS selector..............................................................................................................................................   76

17.3.        HEAD Individual standard headers.........................................................................................................................................   77

17.4.        DRN file definitions....................................................................................................................................................................   77

17.5.        Function 9 - Starting multiple report in one step...................................................................................................................   77

17.6.        SPEED aggressive optimization................................................................................................................................................   78

17.7.        RAPGEN mini (runtime) version...............................................................................................................................................   80

17.8.        Function 10 - Copying between systems / machines............................................................................................................   82

17.9.        Automatic READ of other files at definition of a report.......................................................................................................   82

17.10.       Advancing the date functions for year 2000.........................................................................................................................   82

 

Figuren.........................................................................................................................................................................................................   83

 

Stichwort......................................................................................................................................................................................................   84

 


11.        Druckersteuerung.

 

12.1.     Generell.

 

   Aufgrund der bisherigen relativ einfachen Nixdorf-Drucker konnte die notwendige Druckersteuerung über die TAMOS-Druckerzuteilung und die Spoolerfunktionen erfolgen. Nach Einführung u.a. der TD06 und TD07 Drucker, d.h. Schönschrift (LQP), Einzelballeinzug u.ä., sind die Möglichkeiten der Druckersteuerung wesentlich gestiegen. Hierdurch sind eine Reihe von Problemen aufgetreten, da Programme, die für die alten Drucker geschrieben waren, die neuen Drucker nicht benutzen können bzw. nicht mit anderen Druckern arbeiten können. Der Grund hierfür liegt in den unterschiedlichen Steuerzeichen bei den verschiedenen Druckern.

 

   Um diese Problem lösen zu können, hat DMS die Druckersteuerungen verschiedener Textbearbeitungssysteme und PC`s untersucht. Als Ergebnis kann DMS jetzt eine avancierte Druckersteuerung anbieten, die auf der Erfahrung unterschiedlichster Systeme beruht, und gleichzeitig die Funktionen des Nixdorf-Spool-Systems voll ausnützt.

 

   Es wird darauf hingewisen, daß das Betriebssystem NIROS 5.1 oder später installiert sein muß, um die verschiedenen Drucker korrekt ansteuern zu können. Es können dann hierüber auch die 'alten' Drucker (Tischmodelle) bedient werden.

 

   Ausgehend von dem Grundsatz, daß Anwender des Listgenerators nur dann für eine spezielle Druckersteuerung bezahlen sollen, wenn diese auch wirklich gebraucht wird, wird dieses Modul als selbstständige Einheit in Verbindung mit dem Listgenerator angeboten.

 

   Die DMS-Druckersteuerung kann in Verbindung mit bereits bestehenden Listprogrammen mit Vorteil benutzt werden.

 

12.3.     Grundlegende Regeln für die Druckersteuerung.

 

   Bei der Definition einer Liste wird ein bestimmter Drucker dieser Liste zugeordent. Dieser Drucker wird als logicher Drucker bezeichnet.

 

   Mit Hilfe der TAMOS-Druckerzuteilung wird dieser logische Drucker einem physischen Drucker zugeordnet. Wird das Listprogramm von einem beliebigen Bildschirmarbeitspalatz gestarten, sorgt das Betriebssystem dafür, daß der logische Drucker mit dem jeweils definierten physischen Drucker verknüpft wird. Die Wahl des Druckers ist somit unabhängig vom jeweiligen Bildschirmarbeitsplatz.

 

   Die DMS-Druckersteuerung ist an den physischen Drucker geknüpft, da hier die Aufbereitung unterschiedlicher Steuerzeichen vorgenommen werden muß.

 

   Der DMS-Listgenerator beinhaltet eine Tabelle für jeden Druckertyp. Diese Tabelle enthält alle Steuerzeichen für z.B. Seitenwechsel, Zeilenwechsel, Schrifttyp u.s.w. Kann ein bestimmtes Steuerzeichen für einen gegeben Drucker keine Tabelle vorhanden, wird die Standardtabelle für Druckersteuerung verwendet. Spezielle Druckerfunctionen können dann nicht benutzt werden.

 

   Der Anwender kann in seine Listen mit Hilfe des Zeichen @, gefolgt von einem Buchstaben oder einer Zahl, die gewünschten Steuerzeichen für die Druckausgabe einsetzen.

 

   Für jeden gewünschten Druckereffekt muß ferner Anfang (ON) und Ende (OFF) angegeben werden. ON wird durch einen Großbuchstaben markiert (@L), OFF durch einen Kleinbuchstaben (@l), z.B. ÜBERSCHRIFT @l, in diesem Falle elongiertes Schriftbild.

 

   Weiterhin ist es möglich, mit Hilfe von Berechnungen die Steuerzeichen @x, @y, und @z zu verändern. Hierüber kann z.B. eine Liste aufgebaut werden, in der neu hinzugekommene Kunden unterstrichen, und weggefallene Kunden durchgestrichen werden.

 

   Neben der eigentlichen Druckersteuerung enthält der Listgenerator eine Reihe erweiterter Funktionen betr. der Druckerwahl und der Druckerzuteilung.

 

   Die Tabelle für einen Drucker enthält der Listgenerator eine Reihe erweiterter Funktionen betr. der Druckerwahl und der Druckerzuteilung.

 

   Die Tabelle für einen Drucker enthält neben den eigentlichen Steuerzeichen auch OPEN-Parameter für den jeweiligen Drucker. Hierdurch können die TAMOS Parameter ersetzt werden. Weiterhin werden alle Spool-Funktionen einschl. Testausdruck u.s.w. unterstütz.


   Die Anzahl Zeilen pr. Seite ist jetzt nicht mehr länger fest definiert, sondern hängt von dem jeweiligen Drucker ab. Eine List, die für eine Seitenlänge von 72 Zeilen definiert wurde, kann also jetzt auch auf einem Drucker mit einer Seitenlänge von z.B. 51 Zeilen korrekt ausgedruckt werden.

 

12.5.     TAMOS Druckerzuteilung.

 

   Eine TAMOS Druckerzuteilung kann wie folgt aussehen:

 

Figur 1 TAMOS Druckerzuteilung.

 

 

DEVICE ASSIGNMENT  UTILITIES        SUPERVISOR        #15 87.12.04/11:34

 

          DEVICE NAME                LINES     PRINT     POSITION LINE  CHAR.

NO LOGICAL    REAL                  PER PAGE     FROM        TO   DENS. DENS.

-- -------        ----            -------- -------- ---------- ------ ------

0 $LPT            $RPL11   =SPOOL     51         0        131

1 $RPL11          $RPL11   =SPOOL     72         0        131      6  10,0

2 $RPL4           $RPL11   =SPOOL     72         0        131      6  10,0

3 $RPL0           $RPL11   =SPOOL     72         0        131      6  10,0

4 $A              A

5 $RPL2           $RPL11   =SPOOL     72         0        131      6  10,0

6 $CH             $RPL0    =SPOOL     72         0        131      6  10,0

7 $BAD            $LPT     =SPOOL     51         0        131

8 $LABEL          $LPT     =SPOOL      9         0        131

9

10

11

12

 

PORT NO.         :  15         FUNCTION   :   CHA

 

LINES PER PAGE   :             ENTRY NO.  :

 

MESSAGE:          

 

 

 

Jedem logischen Drucker wird hier ein physischer Drucker zugeteilt. Dabei ist folgenden zu bemerken:

 

12.6.1.   Name des logischen Druckers: z.B. $LPT.

 

   Der name beginnt mit $ und bezeichnet den Drucker, für den die Liste definiert wird. Dieser Drucker braucht nicht zu existieren. Man kann hier z.B. Namen verwenden wie $SCHMAL, $BREIT u.s.w.

 

12.6.3.   Name des physischen Druckers:z.B. $RPL2.

 

   Hierüber wird der Drucker gekennzeichnet, auf dem die Liste tatsachlich ausgedruckt werden soll. Für diesen Drucker kann eine Steuerzeichentabelle im Listgenerator aufgebaut werden. Man kann auch z.B. $RPL,1 oder $RPL,2 angeben, wobei in jedem Falle der physische Drucker $RPL ist. Jedoch können hierdurch werschiedene Tabellen angesteuert werden, z.B. für Blattzufuhr 1 und Blattzufuhr 2. Es kann auch eine Textdatei als physischer Drucker benannt werden.

 

12.6.5.   Parameter Start/Stop Pos. Zeilen und Zeilen/Zeichen Dichte.

 

   Diese Parameter sollten hier nicht verwendet werden, sondern in den entsprechenden Steuerzeichentabellen definiert werden.

 

   Für weitere Informationen verweisen wir auf des TAMOS-Handbuch.

 

12.7.     Definition eines Druckers.

 

   Abhängig davon, wie das System ursprünglich installiert wurde, wird man bei der Definition einer neuen Liste um die Angabe eines Druckers (0-5) gebeten. In diesem Falle wurde bei Installation eine Reihe von Druckern bereits definiert.

 

   Als eine erweiterte Funktion kann man jetzt auch anstelle der Nummer den  Namen des jeweiligen Druckers angeben, z.B. $RPL2.

 

   Erfolgt hier keine Angabe, wird der Standarddrucker $LPT verwendet.

 


12.8.1.   Ändern einer Druckerdefinition.

 

   Mit Hilfe der Funktion 7 -Ändern Liste/Brief- kann über das Kommando DRUCKER (in ZEILE/POS) der Drucker für diese Liste geändert werden.

 

Figur 2 DRUCKER-Kommando in Funktion 7.

 

 

1...;....10...;....20...;....30...;....40...;....50...;....60...;....70..

DATUM:##,##,## @L  * LIEFERANTEN-LISTE * @l PR.##,##,##     SEITE:####   1

                                                                         2

LIEFERANTNR  @0NAME                      @0VALUTAKODE              SALDO 3

                                                                         4

xxx          @Xxxxxxxxxxxxxxxxxxxxxxxxx  @x           ## ---,---,--#.##  5

                                                                         6

 

 

 

 

 

 

ZEILE,POS:DRUCKER

DRUCKER NR. ? $RPL2

ANFANGSPOSITION (CR=001)  ? ENDEPOSITION (CR=177)  ? 131

ANZAHL ZEILEN PRO.SEITE (CR=051)  ? 072

 

 

 

Es kann jetzt die Nummer des neuen Druckers, bzw. dessen Name, eingeben werden.

 

12.9.     Wahl des Druckers bei einer Liste.

 

   Als neue Funktion kann jetzt bei Start einer Liste der Drucker angegeben werden, auf dem die entsprechenden Liste ausgedruckt werden soll. Dies geschieht bei der Frage TESTPRINT (J/N). Dabei gibt es folgende Möglichkeiten:    

 

Figur 3 Wahl eines Druckers.

 

 

DMS.RAPGEN     4 LIEFERANTEN-LISTE     9....AUSGABE LISTE/BRIEF

   

    TAGES DATUM     ?  120590

 

    PERIODE DATUM  ?  120590

                                            INDEX:     

    ANFANG VON      ?                       1:LIEFERANTENR

 

    ENDE ZU  ?

NR. LOGICAL         PARAM      PHYSICAL    CHARS/INCH   LINES/INCH

 0:$LPT             000131072  $RPL0            10           6

 1:$A               000131072  A                             6

 2:$RPLO            000131072  $RPL0            10           6

 3:$RPL4            000131072  $RPL0            10           6

 4:$RPL2            000131072  $RPL2                        

 5:$RPL11           000131072  $RPL11           10           6

 6:$CH              000131072  $RPL0            10           6

 7:$BAD             000131051  $LPT    

 8:$LABEL           000131009  $LPT

NIEDRIGST SUM - NIVEAU - ANGEBEN! (0-1, 0=GANZE LISTE) ? =

ANFANG:(J=HINTERGRUND, S=BILDSCHIRM, P=BILDSCHIRMDRUCKEN, N=ANNULIERUNG) ? P

PROBEAUSDRUCK / DRUCKER (J/N/P/$XXXX) ? 3     $RPL4

 

NACHRICHT:

 

 

 

Die Frage TESTPRINT (J/N) wird solange wiederholt, bis man mit Nein (N) antwortet. Anschlieend wird der eigentliche Ausdruck gestartet.

 

12.11.     Anwendung vor Steuerzeichen in einer Liste.

 

   Mit Hilfe der Funktion 7 -Änderung Liste/Brief- können in den Textabschnitten Steuerzeichen eingesetzt werden. Z.B. @L Überschrift @l (elongiertes Schriftbild)

 

   Dieser Steuerzeichen können auch bei der Definition eines Briefes mit Hilfe der Funktion 6 eingegeben werden. Dies ist jedoch nicht möglich bei der Neudefinition einer Liste (Funktion 1).


 

Figur 4 Eingabe der Steuerzeichen mit Funktion 7.

 

1...;....10...;....20...;....30...;....40...;....50...;....60...;....70..

DATUM:##,##,## @L  * LIEFERANTEN-LISTE * @l PR.##,##,##     SEITE:####   1

                                                                         2

LIEFERANTNR  @0NAME                      @0VALUTAKODE              SALDO 3

                                                                         4

xxx          @Xxxxxxxxxxxxxxxxxxxxxxxxx  @x           ## ---,---,--#.##  5

                                                                         6

                                                                         7

                                                                         8

                                                                         9

                                                                        10

                                                                        11

                                                                        12

                                                                        13

                                                                        14           

ZEILE,POS:5                                                             15

1...;....10...;....20...;....30...;....40...;....50...;....60...;....70..

 

#1      @x#2                      @x        #5   #6

 

 

   Ein Steuerzeichen belegt keinen Platz in einen Ausdruck. Wir weisen jedoch derauf hin daß auf dem Bildschirm die nachfolgenden Zeichen um die entsprechende Anzahl Postionen nach rechts verschoben sind. Bei verwendung von Steuerzeichen ist es delhalb  sehr sinnvoll, Zuerst einen Testausdruck anzufertigen, um die richtige Platzierung der einzelnen Text überprüfen zu  können.

 

   Einige der Steuerzeichen, wie z.B. Anzahl Zeichen pr. Zoll, können sinnvollerweise nur für eine gesamt Zeile verwendet werden. Im anderen Falle erfolgen wahrscheinlich verkehrte Druckpositionerungen.

 

   Die Angabe ' Anzahl Zeilen pr. Zoll'  darf innerhalb einer Liste nicht geändert werden.

 

   Wir verweisen im übrigen auf die Spezifikationen des jeweiligen Druckers, die normalerweise in den NIROS-Handbüchern mitaufgenommen sind (speziell NIROS 5.1.4 Ergänzungen).

 

12.13.     Berechnete Steuerzeichen (@X@Y@Z).

 

   Die Steuerzeichen @X,@Y und @X, wie auch @x,@y und @z, haben normalerweise keinerlei Bedeutung, können jedoch mit Hilfe von Berechnungen für jede einzelne Zeile gesetzt werden. Hierdurch können einzelne Zeilen unterstrichen, durchstrichen, kursiv o.ä. gedruckt werden.

                                                   

12.14.1.   Einsetzen berechneter Steuerzeichen.

 

   Berechnete Steuerzeichen werden auf die gleiche Art und weise wie die anderen Steuerzeichen eingesetzt d.h. mit Hilfe der Funktion 7 bzw. Neudefinition mit Funktion 1.

 

   Im letzteren Falle gibt man anstelle der FELDNR  nur @X ein. Hierdurch wird das Seuerzeichen in der entsprechenden Position in einer Zeile eingesetzt.

 

Figur 5 Eingabe von Steuerzeichen mit Funktion 1.

 

 

DMS.RAPGEN     5 LIEFERANTEN-LISTE          1....NEU LISTE DEFINIEREN

 1 LIEFERANTENR            19 @FREI

 2 NAME                    20 @FREI

 3 STRASSE                 21 @FREI

 4 ORT                     22 @FREI

 5 VALUTAKODE              23 @FREI

 6 SALDO                   24 @FREI

 7 @FREI                   25 @FREI

 8 @FREI                   26 @FREI

 9 @FREI

10 @FREI

11 @FREI

12 @FREI

13 @FREI

14 @FREI

15 @FREI

16 @FREI

17 @FREI

18 @FREI

1...,....10...,....20...,....30...,­...40...,....50...,....60...,....70

+xx,-xx,Pxx=POSITION,Hxx=ÜBERSCHRIFT,NXX=KEIN ÜBER,D=LÖSCHEN,T=TEXT

LIEFERANTENNR.    @0NAME

AAA               @XAAAAAAAAAAAAAAAAAAAAAAAA

ZEILE NR.        1 FELDNR. ?     @x

NACHRICHT:

 


12.14.3.   Steuerzeichen @0 (Dummy).

 

   Da ein Steuerzeichen wie z.B. @X keine Position innerhalb einer Zeile belegt, gibt man das Dummy Steuerzeichen @0 in der Überschriftszeile an, wenn ein Steuerzeichen mit Hilfe der Funktion 1 definiert wird. Dies hat zur Folge, daß die Überschrift im Verhältnis zu den andern Zeilen verschoben wird.

 

12.14.5.   Berechnung von Steuerzeichen.

 

   Mit Hilfe der Funktion 4 können Steuerzeichen berechnet werden, da man ähnlich der Feldangabe in einer normalen Berechnung Steuerzeichen, wie z.B. @X, berechnen kann.

 

   Diese Berechnung sollte normalerweise mit dem Nullstellen des Steuerzeichens beginnen, also @X="" bzw. @x="". Anschließend kann das Steuerzeichen in Abhängigkeit von Bedingungen werden. Z.B. IF ( Bedingung) LET @x=@l. Es wird hier also abhängig von einer Bedingung das Steuerzeichen @l eingefügt.

 

   Normalerweise setzt man immer zwei Steuerzeichen, nämlich Anfang und Ende (@X und @x).

 

   Es können auch mehrere Steuerzeichen miteinander kombiniert werden, z.B. @X=@I,@U. Hierdurch bewirkt man sowohl 'Unterstreichen' wie auch 'kursiv'.

 

   Die Länge eines berechneten Steuerzeichens darf 16 Zeichen nicht überschreiten.

 

Figur 6 Berechnen von Steuerzeichen.

 

     

DMS.RAPGEN     5 LIEFERANTEN-LISTE          4....KALKUKATIONEN DEFINIEREN

 1 LIEFERANTENR            19 @FREI

 2 NAME                    20 @FREI

 3 STRASSE                 21 @FREI

 4 ORT                     22 @FREI

 5 VALUTAKODE              23 @FREI

 6 SALDO                   24 @FREI

 7 @FREI                   25 @FREI

 8 @FREI                   26 @FREI

 9 @FREI

10 @FREI

11 @FREI

12 @FREI

13 @FREI

14 @FREI

15 @FREI

16 @FREI

17 @FREI

18 @FREI

@X=""

@x=""

IF SALDO >1000 LET @X=@B

IF SALDO >1000 LET @x=@b

KALKULATION ? IF #6 >1000 LET @x=@b

NACHRICHT:

 

 

 

12.15.     Definition der Druckertabellen.

 

  Die Druckertabellen werden mit Hilfe des Programmes DMS.RAPGEN.PRT definiert. Dieses Programm kann in die TAMOS-Programmwahl eingebettet oder direkt aus dem 'scope' aufgerufen werden.

 

Figur 7 Start des DMS.RAPGEN.PRT

 

 

DMS.RAPGEN.PRT   PFLEGE DER DRUCKERDEFINITIONEN

 

 

 

 

 

 

 

 

 

 

DRUCKERDEFINITION (PHYSISCHER NAME) :RPL2.KLEIN

KODETABELLE IN HEXA, DEZIMAL ODER OKTAL (H/D/O)

NACHRICHT:

 


   Das Programm beginnt mit der Frage: PHYSIKALISHER DRUCKER NAME

 

   Man gibt hier z.B. $RPL2 order $RPL2,7 an, abhängig dovon, mit welchem physikalischen Drucker man arbeiten möchte. Die Druckertabelle muß im System vorhanden sein.

 

   Anschließend wied die Frage gestellt: EINGABE OKTAL, DEZIMAL oder HEXADEZIMAL (0/D/H)

 

   Hierdurch kan das geeignete Zahlsystem gewählt werden. Da Nixdorf in seinen Handbüchern Werte als Oktalzahlen angibt, ist auch hier als 'default' die oktale Darstellung gewählt (bei <CR>).

 

12.16.1.   Erste seite der Druckertabelle.

 

   Die erste Seite der Druckertabelle beinhaltet die OPEN-Parameter für den jeweiligen Drucker (siehe auch Nixdorf BASIC Manual unter OPEN).

 

Figur 8 Erste Seite der Druckertabelle.

 

DMS.RAPGEN.PRT   PFLEGE DER DRUCKERDEFINITIONEN  $RPL2.KLEIN OCTAL

 

DRUCKER ID:                                      $RPL2.KLEIN

LOGISCHER NAME DES DRUCKERS:                     $RPL2

ERSTE POSITION (000):                            000

LETZTE POSITION (131):                           131

ANZAHL ZEILEN PER SEITE (072):                   051

ANZAHL ZEILEN PER ZOLL (6/8)  :                  

ANZAHL ZEICHEN PER ZOLL (10/12/15/16.5):         

PRIORITÄT (H/N/L/P):                             N

START UNMITTELBAR MIT DRUCKEN (J/N):             N

SPEICHERN DER DATEN BIS DRUCKENDE (J/N)          N

STOP NACH DRUCK DER ERSTEN SEITE (J/N):          N

STOP VOR DRUCK DER ERSTEN SEITE (J/N):           N

ANZAHL KOPIEN (00‑99):                           00

PAPIERTYP (00‑63):                               00

NAME DER LISTE (J/N):                            Y

 

 

NACHRICHT:

 

 

 

Das erste Feld, DRUCKER ID, beinhaltet den physikalische Namen des Druckers, unter der die Tabelle gespeichert ist. Ändert man diesen namen, erhält man eine Kopie der bestehenden Tabelle für einen anderen Drucker.

 

   Es können die normalen TAMOS Funktionstasten verwendet werden, d.h. Pfeil oben, @ END und SPR. Darüberhinaus können natürlich auch die Cursor-Taten benutzt werden.

 

   Eine Druckertabelle besteht aus drei aufeinander folgenden Seiten. Drückt man END in der dritten Seite (oder Pfeil oben auf der ersten Seite) wird die Tabelle gespeichert. Anshließend kan die Tabelle ausgedruckt werden, indem man auf die Frage AUSGABE AUF DRUCKER (J/N):  MIT J (ja) antwortet.

 

12.16.3.   Spool Parameter.

 

   Auf der ersten Seite werden verschiedene Parameter für das NIROS-Spoolsystem angegeben. Wir empfehlen, diese Parameter zu verwenden, und nicht die TAMOS Druckerzuteilung zu benutzen, da hier nicht alle Parameter gesetzt werden können.

 

   Die Spool-Funktion unter NIROS muß natürlich aktiviert sein, damit die verschiedenen Parameter wirksam werden können.

 

   Eine generelle Beschreibung der einzelnen Parameter sind dem TAMOS Manual unter SPOOL zu entnehmen. Folgendes sollte man jedoch bemerken:

 

12.16.4.1. Logischer Name des Druckers.

 

   Normalerweise sollte der Name mit dem logischen Namen in TAMOS übereinstimmen, da dieses der Drucker ist, der vom List-Programm eröffnet wird.

 

 

 

 

12.16.4.3. Start Druck aus Spooldatei sofort (J/N).

 

   Bei Eingabe ein N (Nein) beginnt der Druck erst, wenn die gesamte Datei in die Spooldatei übertragen wurde. Dies kann sinnvoll sein, wenn sehr umfangsreiche und sortierte Listen gedruckt werden sollen, da dann der Drucker für andere Anwender während des Sortierens zur Verfügung steht.

 

12.16.4.5. Dialog von/nach Ausdruck.

 

   Es besteht die Möglichkeit, einen Testausdruck der ersten Seite vorzunehmen. Die Spooldatei kann solange bewahrt werden, bis der gesamte Ausdruck akzeptiert wurde.

 

12.16.4.7. Anzahl kopien.

 

   Es können bis zu 99 Kopien angegeben werden.

 

12.16.4.9. Paperidentifikation.

 

   Das Spoolsystem beginnt den Ausdruck erst, wenn vom Bediener angezeigt wurde, dass der Papier mit der richtigen Identifikation im Drucker eingespannt ist.

 

12.16.4.11. Name der List (J/N).

 

   Bei J (ja) wird der Name der Liste bei Anfrage in der Spool-Warteschlange angezeigt.

 

12.16.5.   Steuerzeichen.

  

   Auf Seite 2 und 3 der Druckertabelle können die Steuerzeichen eingegeben werden (oktal, dezimal oder hexadezimal).

 

 

Figur 9 Zweite Seite der Druckertabelle (oktal).

 

DMS.RAPGEN.PRT   PFLEGE DER DRUCKERDEFINITIONEN  $RPL2. KLEIN OCTAL

 

@X FUNKTION        EIN                            AUS

@ RESET:           376,230,200                    376,230,200

A:                                               

B BOLD:            376,236,261,201                376,236,261,200

C:                                               

D DURCHSTRICHEN:   376,230,203,201                376,230,203,200

E 10 ZEICHEN/ZOLL: 376,236,222,200               

F 12 ZEICHEN/ZOLL: 376,236,222,201               

G 15 ZEICHEN/ZOLL: 376,236,222,202               

H DOPPELTE HÖHE:   376,230,207,201                376,230,207,200

I:                                               

J:                                                

K:                                               

L ERWEITERT:       376,236,224,201                376,236,224,200

M:                                               

N NORM. ZCHNSATZ:  376,236,263                   

O:                                                

P DRAFT PRINT:     376,236,265                   

Q NLQ:             376,236,264                   

R:                                               

S SUBSCRIPT:       376,230,204,201                376,230,204,200

 

 

NACHRICHT:

 

 

 

Jedes Steuerzerzeichen hat einen ON-Wert (Anfang) und einen OFF-Wert (Ende), z.B. @L und @l für elongierte Schrift Anfang/Ende.

 

   Es ist nicht immer notwendig, den OFF-Wert (Ende) einzusetzen. In solchen Fällen wird dieses Steuerzeihen ausgelassen.


 

Figur 10 Dritte Seite der Druckertabelle (hexadez.).

 
        

DMS.RAPGEN.PRT   PFLEGE DER DRUCKERDEFINITIONEN $RPL2.KLEIN HEX

 

@X FUNKTION        EIN                            AUS

T SUPERSCRIPT:     FF,98,85,81                    FF,98,85,80

U UNTERSTREICHEN:  FF,98,82,81                    FF,98,82,80

V UNIDIRECTIONAL:  FF,9F,C2,81                    FF,9F,C2,80

W DOPPELTE BREITE: FF,98,89,81                    FF,98,89,80

X BERECHNET:                                     

Y BERECHNET:                                     

Z BERECHNET:                                     

0 DUMMY:                                         

1 EINZELBL.ZUF. 1: FF,9F,96,81                   

2 EINZELBL.ZUF. 2: FF,9F,96,82                   

3 ZUFÜHRUNG ÖFFNEN:8B                            

4 PAPIER EIN:      8C                            

5 PAPIER AUS:      8D                            

6:                                               

7:                                                

8:                                               

9:                                               

  ZEILENSCHALTUNG: 8D                            

  FORMULARVORSCH.: 8C                            

 

NACHRICHT:

 

 

 

Jedes Eingabefeld hat eine Länge von Position, d.h. man kan in oktaler Schreibweise bis zu 7 Zeichen eingeben. Ist dies nicht ausreichend, muß man die hexadezimale Notation verwenden, da man dann bis zu 10 Zeichen eingeben  kann.

 

   Der Text für den einzelnen Kode ist nur informativ, da die Bedeutung alleine von dem definierten Steuerzeichen abhängt. Einen Kode, der mit Leerstellen gekennzeichnet ist, kann auch für andere Funktionen verwendet werden, z.B. @A.

 

12.16.6.1. @ RESET.

 

   Unmittelbar nach dem Eröffnen eines Druckers wird der ON-Wert ausgegeben. Der OFF-Wert wird direkt vor dem Anschluß eingesetzt. Typisch können hier Steuerzeichen für die Wahl der Paperzuführung angegeben werden.

 

12.16.6.3. @A-@W Steuerzeichen.

 

   @A kennzeichnet einen ON-Wert, @a einen OFF-Wert.

 

12.16.6.5. @X-@Z berechnete Steuerzeichen.

 

   Sollten undefiniert verbleiben, da die eigentliche Bedeutung über eine Berechnung eingesetzt wird.

 

12.16.6.7. @0 Dummy-Steuerzeichen.

 

   Sollte ebenfalls immer undefiniert verbleiben. Wird bei Überschriften für die korrekte Positionierungen von Tabulationen verwendet.

 

12.16.6.9. @1-@9 Steuerzeichen.

 

   Werwendung wie @A-@z. Es können jedoch keine OFF-Wert definiert werden.

 

12.16.6.11. Zeichen für Zeilenschaltung.

 

   Es kann und muß hier nur Zeichen angegeben werden, normalerweise 215 (oktal).

 

12.16.6.13. Steuerzeichen für Seitenvorschub.

 

   Bei normalen Druckers ist der Wert 214 (oktal).

 

   Bei Druckern mit Einzelblatt-Zuführung kann hier der Kode für Papierauswurf, Schacht, Papiereinzug etc. angegeben werden.

 

 

 

 

12.16.7.   Ausdruck der Druckertabelle.

 

Figur 11 Ausdruck der Druckertabelle.

 

01:DRUCKER ID:                                      $RPL2.KLEIN

02:LOGISCHER NAME DES DRUCKERS:                     $RPL2

03:ERSTE POSITION (000):                            000

04:LETZTE POSITION (131):                           131

05:ANZAHL ZEILEN PER SEITE (072):                   051

06:ANZAHL ZEILEN PER ZOLL (6/8) :                  

07:ANZAHL ZEICHEN PER ZOLL (6/8):         

08:PRIORITÄT (H/N/L/P):                             N

09:START UNMITTELBAR MIT DRUCKEN (J/N):             N

10:SPEICHERN DER DATEN BIS DRUCKENDE (J/N):         N

11:STOP NACH DRUCK DER ERSTEN SEITE (J/N):          N

12:STOP VOR DRUCK DER ERSTEN SEITE (J/N):           N

13:ANZAHL KOPIEN (00‑99):                           00

14:PAPIERTYP (00‑63):                               00

15:NAME DER LISTE (J/N):                            Y

21:DRUCK KOPF- UND SUMMENZEILEN (J/N):

22:ANZAHL DRUCKZEILEN:

26:BEGINN MIT SEITE NR:

31:PC INTEGRATION CODE (Y/wks/mp/mc/dif):

32:TEXTDATEI ERWEITERN (B/!/+):

   @X FUNKTION        EIN                            AUS

40:@ RESET:           376,230,200                    376,230,200

41:A:                                               

42:B BOLD:            376,236,261,201                376,236,261,200

43:C:                                               

44:D DURCHSTRICHEN:   376,230,203,201                376,230,203,200

45:E 10 ZEICHEN/ZOLL: 376,236,222,200               

46:F 12 ZEICHEN/ZOLL: 376,236,222,201                

47:G 15 ZEICHEN/ZOLL: 376,236,222,202               

48:H DOPPELTE HÖHE:   376,230,207,201                376,230,207,200

49:I:                                               

50:J:                                               

51:K:                                                

52:L ERWEITERT:       376,236,224,201                376,236,224,200

53:M:                                               

54:N NORM. ZCHNSATZ:  376,236,263                   

55:O:                                               

56:P DRAFT PRINT:     376,236,265                   

57:Q NLQ:             376,236,264                   

58:R:                                               

59:S SUBSCRIPT:       376,230,204,201                376,230,204,200

60:T SUPERSCRIPT:     376,230,205,201                376,230,205,200

61:U UNTERSTREICHEN:  376,230,202,201                376,230,202,200

62:V UNIDIRECTIONAL:  376,236,262,201                376,236,262,200

63:W DOPPELTE BREITE: 376,230,211,201                376,230,211,200

64:X BERECHNET:                                     

65:Y BERECHNET:                                     

66:Z BERECHNET:                                     

67:0 DUMMY:                                          

68:1 EINZELBL.ZUF. 1: 376,236,226,201               

69:2 EINZELBL.ZUF. 2: 376,236,226,202               

70:3 ZUFÜHRUNG ÖFFNEN:212                           

71:4 PAPIER EIN:      213                           

72:5 PAPIER AUS:      214                            

73:6:                                               

74:7:                                               

75:8:                                               

76:9:                                               

77: ZEILENSCHALTUNG: 215                           

78: FORMULARVORSCH.: 214                           

 

 

 

12.17.     Fehler beim Drucken.

 

   Man sollte sehr gewissenhaft bei der Definition der einzelnen Steuerzeichen sein, da falsche Steuerzeichen erheblichen Probleme beim Drucken mit sich führen können.

 

   U.a. besteht die Gefahr, daß bei Auftreren eines fehlerhaften Steuerzeichens der Drucker ausgeschaltet werden muß. Ferner kann es vorkommen, dass der Drucker zwar korrekt eröffnet wird, der nachfolgende Druck jedoch fehlerhaft ist.

 

   Bei Auftreten von Fehlern sollte man folgende Schritte vornehmen:

 

        1. Versuchen Sie mit dem F-Kommando. Dies sollte normalerweise möglich sein.

        2. Abschalten/Anschalten des Druckers und anschließend F-Kommando.

        3. Kontrollieren, ob Papier und Farbband korrekt montiert sind.

        4. Abschalten/Anschalten des Bildschirms, anschließend F-Kommando.

        5. Entfernen Sie alle Auftäge in der Spool-Warteschlange (falls diese aktiviert ist). Prüfen Sie, ob das Spoll-System             korrekt funktioniert.

        6. Haben die oben genannten Schritte keine Wirkung, muss das System angeschaltet und neu gestartet werden (IPL).

 

12.18.1.   Basic Fehler 26 - Drucker nicht bereit.

 

   Bei Verwendung eines falschen Steuerzeichens kann dieser Fehler beim nachfolgende Drucken aufreten.

 

12.18.3.   Basic Fehler 73 - Falsche OPEN Parameter.

 

   Tritt auf, wenn man verkehrte Parameter angegeben hat, z.B. 6/8 Zeilen pr. Zoll bei einem Drucker, der dies Möglichkeit nicht bietet. Bei solchen Druckern muß das entsprechende Feld leer sein.

 

   Typisch ist dieser Fehler bei Überschreiten der maximalen Zeilenlänge (normaleweise 131 Positionen).

 

12.19.    Installation der Druckersteuerung.

 

   Voraussetzung für die Installation der Drukersteuerung ist das Betriebssystem NIROS 5.1 oder später, da die älteren Versionen keine Treibersoftware für die entsprechenden Drucker beinhalten.

 

   Es werden etwa 50 Sektoren auf dem Plattenspeicher benötigt.

 

   Die eigentliche Installation wird mit Hilfe von COPYALL entsprechend der DMS.P.LIB vorgenommen. DMS.P.LIB beinhaltet DMS.RAPGEN PRT ( für die Definition der Druckertabellen) sowie eine Reihe von bereits definierten Tabellen DMS.P.xxx, z.B. DMS.P.LPT.

 

Figur 12 Libr liste DMS.P.LIB

 

 LOGICAL UNIT :9         27.01.80  12:37:30                                      

                                                                                 

    FILE NAME    USER  BLOCKS  PART./  APPL. VERS  SPC   DATE        HBA         

 *                             #REC.   AREA FMVVTM INF                           

 T  DMS.P.LIB       1       2       1    0   0 0 0   0  27.01.80    2267         

 C  DMS.P.LPT       1       3       1    0   0 0 0   0  27.01.80    2404         

 C  DMS.P.RPL2      1       3       1    0   0 0 0   0  23.01.80    2713         

 B  DMS.RAPGEN.PRT  1      20       0    0   0 0 0   0  27.01.80   24770         

                                                                                  

 ‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑         

 TOTAL :                   28                                                    

                                                                                 

 1136 FREE BLOCKS ON LU NO.      9                                               

 

 

 

Diese Tabellen können anschließend mit Hilfe von COPY in die respektiven Namen der Druckertreiber zu kopieren, z.B. DMS.R.RPL2 (das $-Zeichen im Treibernamen wird ausgelassen).

 

   Die einzelnen Tabellen können, falls notwendig, mit Hilfe von DMS.RAPGEN.PRT geändert werden.

 

   Desweiteren wird die Version 1/6-87 oder später des Listgenerators vorausgesetzt.

 

   DMS.RAPGEN.PRT kann unter die TAMOS Programmwahl mit Hilfe der Funktion DMS.R. (Funktion 97) eingebettet werden.


13.

12.        PC-Einbindung.

14.1.      Generell.

 

   Entsprechend dem Wunsch vieler Anwender können wir jetzt ein Modul für den Listgenerator anbieten, welches das Überführen von Daten bzw. Dateien auf einen PC erheblich vereinfacht und erleichtert.

 

   Der Anwender wählt einen 'speziellen' Drucker für Ausgabe der Liste(n), die auf einen PC Überführt werden sollen. Dieser 'spezielle' Drucker kann entweder fest definiert werden, oder beim Start der Liste angegeben werden. Eventuell kann der Drucker auch einem bestimmten Hintergrundsport zugeteilt werden.

 

   Es können mehrere Listen (Dateien) gleichzeitig überführt werden. Benutzt man hier eine Job-Warteschlange -entweder DMS.JOBQUEUE oder TAMOS-Spool-Queue, werden mehrere Listen in einem Arbeitsgang auf einen PC übertragen.

 

   Alle Funktionen des Listgenerators können in diesem Zuasmmenhang verwendet werden, d.h. alle Funktionen für die Definition von Selektionen, Berechnungen, Sortieren, Summenbildung u.s.w. Bis zu 9 verschiedenen Dateien können für das Erstellen einer PC-Liste herangezogen werden.

 

14.2.1.    Struktur.

 

   Bei der Wahl eines 'PC-Druckers' wird die Druckausgabe als Textdatei auf der Platte abgelagt. Diese Textdatei wird nummeriert sodaß bei jedem Erstellen einer neuen Liste eine eigene Textdatei erstellet wird.

 

   Gleichzeitig wird für den Bildschirm, vom dem die Liste veranlaßt wurde, eine Überführungs-Steuerdatei gebildet. Diese Datei ist eine PC-BAT datei, die für die korrekte Überführung auf den PC sorgt.

 

   Bei Überfürhrung mehrerer Dateien gleichzeitig beinhaltet diese Steuerdatei ebenfalls mehrere Übertragungs-Kommandos.

 

14.2.3.    LOTUS, CHART, MULTIPLAN und VISICALC.

 

   Bei der Angabe des 'PC-Druckers' gibt man mit an, ob die zu überführende Datei später von z.B. LOTUS weiterverabeitet werden soll.

 

   In einem solchen Falle setzt DMS.RAPGEN ein Kommando in die Datei für die Übertragungssteuerung, welch dafür sorgt, daß die Daten in ein LOTUS-gerechtes Format umgewandelt werden.

 

   Es ist natürlich möglich, mehrere solcher 'PC-Drucker' zu definieren, nämlich wenn die Listen (Dateien) von verschiedenen Programmen auf dem  PC weiterverarbitet werden sollen, wie z.B. MULTIPLAN oder CHART.

 

14.2.5.    Überführung auf den PC.

 

   Wenn die Datei(en) auf einen PC überführt werden sollen, ruft man auf dem jewiligen PC den entsprechenden Job (DMSPC.BAT) auf. Dieses Programm wird im DMS.RAPGEN mitgeliefert. Auschließend startet man auf dem 8870-System das Übertragungsprogramm, welches die eigentliche Steuerung das Übertragung übernimmt.

 

   Als erstes wird die Steuerdatie .BAT übertragen. Soblad dieser Vorgang abgeschlossen ist, übernimmt die . BAT-Datei die Steuerung der Übertragung.

 

   Auf der PC-Seite werden dann die für die Übertragung notwendigen Kommandos (RDAC/RDMAIN) aufgerufen und die evt. Umwandlung in fremde Formate veranlaßt werden sollen.

 

14.2.7.    Voraussetzungen.

 

   DMS.RAPGEN PC-Einbindung setzt das Betriebssystem NIROS 5.1 oder später voraus.

 

   Weiterhin wird natürlich vorausgesetzt, daß das Nixdorf PC-Link Programm (Start/Stop der BCU Übertragungs- Warteschlange) installiert ist. Im anderen Falle ist eine Verbindung mit dem PC nicht möglich. Weiterhin muß die physikalische Verbindung aufgebaut, und die notwendigen Emulationsprogramme installiert sein.

 

   Der auf der Platte benötigte Platz ist abhängig von der Größe der jeweilig zu übertragenden Listen (Dateien), da diese als Textdateien abgelegt werden.

   DMS.RAPGEN muß in der Version 31/03-1988 (oder später) installiert sein. Ältere Versionen können ohne weiteres durch die geforderte Version erstattet werden.

 

14.3.      Beispiel einer Dateiübertragung.

 

   Im Folgenden wird ein Beispiel einer Überführung von einer Liste (Datei) auf einen PC durchgegangen und im einzelnen erläutert.

 

14.4.1.    Start/Stop der BCU.

 

   Bevor man mit der eigentlichen Überführung beginnen kann, muß die BCU (Übertragungs-Warteschlange) gestartet werden. Dies kann z.B. im Zusammenhang mit dem Täglichen Systemstart erfolgen.

 

   Geben Sie das Kennwort PCLINK (evt. PCL) und andchließend die Programmnummer 010101 an. Beantworten Sie jetzt die zwei Fragen mit <2> resp. <Y>.

 

Figur 13 Start des BCU-Programmes.

 

  400/START BCU     BCU‑AKTIVITETER      COMET PC‑LINK                  87.12.04 

                                                                                  

                                                                                 

                                                                                 

                                                                                  

                                                                                 

        NORMAL=1/PHANTOM=2/STD.RECV=3                         2                  

                                                                                  

        SHOULD BCU STAY ACTIVE AFTER END OF JOB LIST ? Y/N .  Y                  

                                                                                 

                                                                                  

                                                                                 

                                                                                 

                                                                                  

                                                                                 

                                                                                 

                                                                                 

                                                                                 

  MESSAGE:                                                                       

                                                                                  

 

 

Das BCU-Programm wird durch Eingabe der Programmnummer 010104 (im gleichen Menü wie oben) gestoppt.

 

14.4.3.    Aufbereitung einer PC-Liste.

 

   Man definiert wie gewöhnlich seine Liste, z.B. eine Warenübersicht.

 

Figur 14 Ausdruck der liste Warenübersicht.

 

 

DATUM:12.05.90      * ARTIKELLISTE *              PR.12.05.90   SEITE:   1

 

NR   BEZEICHNUNG            VERKAUF   EINKAUF    DATUM LIEF ALT GR BESTAND

 

0101 SCHOKOLADESTANGEN         2,00      1,50  1.01.87 271  270  0     100

0102 GROSSE FRASEMASCHINE  20000,00  10000,00  1.01.85 100    0  9       0

0110 AUTOBUSSE            100000,00  60000,00 15.12.86 123  100  2       1

1001 GELD.GROSSE ZETTEL     1000,00    500,00 31.12.86 205  102  0     100 

1005 STANZMASCHINE          2000,00   1500,00  1.06.86 100    0  1      10

2001 KREDITKARTE              20,00     10,00  1.01.87 205  102  9      10

2002 ID‑KARTE                 25,00     10,00 30.07.86 205  102  9     200

  

     7 TOTAL              123047,00  72021,50                          421

 

 

 

 

Eine bereits bestehende Liste kann natürlich ebenfalls verwenden werden.


14.4.5.    Start des PC-Liste.

 

   Die Liste wird wie gewohnt gestartet.;

 

Figur 15 Start einer Liste.

 

 

DMS.RAPGEN      1 ARTIKEL-LISTE                   9.....AUSGABE LISTE/BRIEF

 

 

    TAGES DATUM ?             120590

 

    PERIODE DATUM ?           120590

 

    START VON  ?                                    INDEX:

                                                    1:ARTIKELNUMMER.

    ENDE  ZU   ?                                    2:MATCHCODE/RECNO

 

 

 

 

 

 

 

 

 

NIEDRIGSTE SUM ‑ NIVEAU ANGEBEN ! (0‑ 1 , 0=GANZE LISTE) ? 0

ANFANG:( J=HINTERGRUND, S=BILDSCHIRM, P=BILDSCHIRMDRUCKEN, N=ANNULIERUNG) ? P

PROBEAUSDRUCK / DRUCKER (J/N/P/$XXXX) ? N $LOTUS                    

 

NACHRICHT:

 

 

 

Beachten Sie bitte, daß hier jetzt ein PC-Drucker als Ausgabeeinheit gewählt werden muß.

 

   Die erfolgt, indem man bei der Frage TESTPRINT (Y/N) mit der Eingabe $PC (oder evt. nur PC, da das Zeichen $ oft nicht auf einem PC eingegeben werden kann) antwortet. Die entsprechende Liste kann natürlich auch von vorneherein für einen PC-Drucker definiert sein. Dies erfolgt mit Hilfe der Funktion 7 -Änderung Liste/Brief- in ZEILE,POS. Hier gibt man das Kommando DRUCKER ein, und antwortet auf die Frage DRUCKER NR: (0=$LPT,1=.......) mit $PC.

 

14.4.6.1.  Mehrere Listen (Dateien in einer Warteschlange).

 

   Man kan jede gewünschte Anzahl von Listen auf diese Art und weise starten. Man kann aber auch durch Eingabe von <Q> auf die Frage START (Y/N/P/S/) diese Listen (Dateien) in eine Warteschlange einreihen.

 

   Die gewünschten Listen (Dateien) müssen natürlich vor einer Übertragung auf den PC generiert und auf der Platte abgelegt worden sein.

 

14.4.7.    Überführung auf den PC.

 

   Im Hauptmenü des Listegenerators gibt man <PC> ein:

 

Figur 16 Wahl der PC-Überführungsmoduls im Hauptmenü.

 
              

RAPPORT GENERATOR GERMAN VERSION   RAPPORT GENERATOR #3 90.05.03/20:14                   

 

                        DMS.RAPGEN  

 

                1 ...   NEU LISTE DEFINIEREN

                2 ...   SELEKTIONEN DEFINIEREN

                3 ...   SORTIREUNG UND SUMMIERUNG

                4 ...   KALKULATIONEN DEFINIEREN  

                5 ...   LÖSCHEN EINER LISTENR.

                6 ...   NEUEN BRIFE DEFINIEREN

                7 ...   ÄNDERN EINER LISTE/EINES BRIEF

                8 ...   AUSDRUCKEN DER LISTEDEFINITIONEN

                9 ...   AUSGABE LISTR/BRIEF

                10...   KOPIEREN

                11...   DOKUMENTATION

                12...   EDIT SELEKTIONEN

                13...   EDIT SORTIERUNG UND SUMMIERUNGEN

                14...   EDIT KALKULATIONEN

  

 

                CODE EINGEBEN: PC.........

 

 NACHRICHT:     * DEMO COPY - NOT RAID FOR *            471199

 

 

 

 

Anschließend erscheint folgendes Schirmbild:

 

 

Figur 17 Start der Übertragung auf den PC.

 

  REPORT GENERATOR    GERMAN VERSION   REPORT GENERATOR  #3 90.05.03/20:14       

                                                                                 

  ÜBERTAGE AUF PC VON BILDSCHIRM 15 ALLE LISTEN DES BILDSCHIRMS 15                       

                                                                                 

  NR.PC‑NAME   BLÖCKE LISTE                    TAGESDATUM,    PER,   START/STOP       

  01:DMS0009.NIX 0003 11 LIEFERANTEN LISTE       30.07.88, 30.07.88, , Å ,            

  02:DMS0010.LOT 0003 11 LIEFERANTEN LISTE       30.07.88, 30.07.88, , Å ,            

  03:DMS0011.LOT 0003  1 ARTIKEL LIST            31.07.88, 31.07.88, , Å ,             

  04:DMS0012.NIX 0002  1 ARTIKEL LIST            31.07.88, 31.07.88, 1000, 1999,      

  05:DMS0013.MUL 0003  2 ARTIKEL LIST            31.07.88, 31.07.88, , Å ,            

  06:DMS0014.LOT 0002  3 LIEFERANTEN             31.07.88, 31.07.88, , Å ,            

                                                                                      

                                                                                 

                                                                                    

                                                                                 

  LÖSCHEN DER NIXDORF 8870 TEXTDATEIEN (Y/N) ? Y                                    

  13:05   START JETZT ORDER ZU SPÄTEREN ZEITPUNKT  (Y/N) ? Y                       

 

  NACHRICHT:                                                                       

 

 

14.4.8.1.  Listen des aktuellen Bildschirms.

 

   Die ersten Zeile zeigt an, daß der aktueller PC am Eingang (Port) 15 des Nixdrof 8870 Systems angeschlossen ist. Quittiert man durch einfaches Drücken der Taste <CR>, werden alle Listen dieses Bildschirms übertragen. Nur wenn die Listen auf einem anderen Bildschirm gestartet wurden, muß die entsprechende Bildschirmnummer hier eingegeben werden.

 

14.4.8.3.  Löschen der Nixdorf 8870 Textdateien ? .

 

   Nach fehlerfreier Übertragung werden die Textdateien auf der 8870-Platteneinheit gelöscht, wenn hier mit Y (yes) geantwortet wird.

 

   Wird N (no) angegeben, werden die Dateien bewahrt und sollten zu einem späteren Zeitpunkt gelöscht werden, um nicht unnötig Platz auf der Plätteneinheit zu verschwenden.

 

   Anmerkung: Bei Y wartet das System mit dem Löschen, bis die Übertragung beendet ist. Bei N wird der Job nach Übertragung der Kontrolldatei beendet. Das 8870 System kann während der Übertragung vom PC benutzt werden.

 

14.4.8.5.  Start sofort oder zu einem angegebenen Zeitpunkt.

 

   Die Uhrzeit für den Start der Übertragung kan hier angegeben werden, z.B. wenn die Übertragung erst nach normaler Arbeitszeit gestartet werden soll.

 

14.4.9.    Start der Übertragung vom PC aus.

 

   Hierzu kehrt man auf den PC zurück und gibt folgendes Kommando ein:

 

          DMSPC

 

   Anschließend muß auf die Beendigung der Übertragung gewartet werden.

 

14.5.      Übertragene Listen (Dateien).

 

   Während der Übertragung werden die Dateien angezeigt, die jeweils gerade Überführt werden. Als erste wird die Steuerdatei lu/DMSPCxx.BAT übertragen, wobei xx die 8870-Bildschirmnummer des PC's angibt.

 

   Anschließend werden ein oder mehrere Dateien mit dem Namen DMSxxxx.NIX übertragen, wobie xxxx die fortlaufende Nummer (1-9999) ist, die bei der Anlage der PC-Liste (Datei) vergeben wird. Diese Dateien sind reine Textdateien (normalerweise ohne Überschriften, Seitennummern oder Summen).

 

   Hat man einen 'PC-Drucker' mit der Abgabe LOTUS o.ä gewählt, wird nach erfolgericher Übertragung eine entsprechende Datei DMSxxxx.ttt gebildet. Dies erfolgt mit dem Modul EXPORT. Dabei steht ttt für entweder LOT, MUL, CHA oder VIS (entsprechend der Wahl des 'Druckers').

 

 

14.6.1.    Übersicht über die übertragenen Listen (Dateien).

 

   DMSxxxx.BAT beinhaltet neben allen notwendigen Übertragungskommandos auch Informationen darüber, welche Dateien die Liste beinhaltet und mit welchen Parametern zu welchem Zeitpunkt und auf welchem System die entsprechende Liste generiert werden.

 

Figur 18 Inhalt der Übertragungsdatei DMSPCXxx.BAT

 

   DEL DMS0009.NIX                                                                  

   RDAC get DMS0009.NIX 8870 04/DMSPCX150009 %%                                     

   DEL DMS0010.NIX                                                                   

   RDAC get DMS0010.NIX 8870 04/DMSPCX150010 %%                                     

   DEL DMS0011.NIX                                                                  

   RDAC get DMS0011.NIX 8870 04/DMSPCX150011 %%                                      

   DEL DMS0012.NIX                                                                  

   RDAC get DMS0012.NIX 8870 04/DMSPCX150012 %%                                     

   DEL DMS0013.NIX                                                                   

   RDAC get DMS0013.NIX 8870 04/DMSPCX150013 %%                                     

   DEL DMS0014.NIX                                                                  

   RDAC get DMS0014.NIX 8870 04/DMSPCX150014 %%                                     

   RDMAIN S 1                                                                       

   EXPORT DMS0010.NIX ‑o DMS0010.LOT ‑f wks ‑c 1:3,16:39,54:55,57:70                 

   EXPORT DMS0011.NIX ‑o DMS0011.LOT ‑f wks ‑c 1:6,18:50,52:67,62:63,66:76          

   EXPORT DMS0013.NIX ‑o DMS0013.MUL ‑f mp  ‑c 1:6,16:48,50:65,67:77                

   EXPORT DMS0014.NIX ‑o DMS0014.LOT ‑f wks ‑c 1:3,14:37,39:48                       

   ECHO 01:DMS0009.NIX 0003 11 LIEFERANTEN LISTE     30.07.88, 30.07.88, , Å ,      

   ECHO 02:DMS0010.LOT 0003 11 LIEFERANTEN LISTE     30.07.88, 30.07.88, , Å ,      

   ECHO 03:DMS0011.LOT 0003  1 ARTIKEL LISTE         31.07.88, 31.07.88, , Å ,       

   ECHO 04:DMS0012.NIX 0002  1 ARTIKEL LISTE         31.07.88, 31.07.88, 1000,1999, 

   ECHO 05:DMS0013.MUL 0003  2 ARTIKEL LISTE         31.07.88, 31.07.88, , Å ,      

   ECHO 06:DMS0014.LOT 0002  3 LIEFERANTEN           31.07.88, 31.07.88, , Å ,      

 

 

 

14.7.      Standard PC-Drucker.

 

   Um die Anwendung zu erleichtern, werden die folgenden Druckerdefinitionen Standardmäßig im DMS.RAPGEN mitgeliefert.

 

           $PC       nur Textübertragung, kein Export, Überschriften oder Summen

           $PCN      wie $PC , keine überschriften oder Summen

           $LOTUS    wie $PCN, LOTUS    -Export Datei (.LOT) wird gebildet

           $MULTI    wie $PCN, MULTIPLAN-Export Datei (.MUL) wird gebildet

           $CHART    wie $PCN, CHART    -Export Datie (.CHA)wird gebildet

           $VISI     wie $PCN, VISICALC -Export-Datei (.VIS) wird gebildet

14.9.      Neuübertragung (Retransmission) nach einem Fehler.

 

   Wurde die Übertragung nicht fehlerfrei beendet, kann die Übertragung vom PC wiederholt werden.

 

   Wurde nach der letzten Übertragung keine weitere Liste bearbeitet stellt das System folgende Frage:

   

            NOTHING NEW TO TRANSMIT, RETRANSMIT PREVIOUS (Y/N) ?

 

   Antwortet man hier mit Y, wird die Übertragung der letzten Datei wiederholt.

 

14.10.1.    Löschen der Textdatei ohne vorhergehende Übertragung.

 

   Antwortet man mit N auf die obige Frage, wird unter allen Umständen gefragt, ob die Datei gelöscht werden soll. Hiermit erhält man die Möglichkeit, die Datei ohne vorhergehende Übertragung zu löschen.


14.11.      Manuelles Löschen der 8870 Textdateien.

 

   Soll eine Textdatei nicht unmittelbar nach einer Übertragung gelöscht werden, bietet der Listgenerator Funktionen an, zu einem späteren Zeitpukt die Dateien gesondert zu löschen.

  

   Diese Funktion wird über das Kommando

 

   PCC

  

in der Programmwahl aufgerufen.

 

Figur 19 Löschfunktion (PCC).

 

 

   REPORTGENERATOR   GERMAN  VERSION   REPORTGENERATOR    #15 87.12.04/13:09     

                                                                                 

   CLEANUP FÜR BILDSCHIRM (CR= 15, 99=ALLE BILDSCHIRME) ?                        

                                                                                 

      FILE NAME    USER  BLOCKS  PART./  APPL. VERS  SPC   DATE        HBA       

   *                             #REC.   AREA FMVVTM INF                         

   T  DMSPCX15.BAT   48       4       3    0   0 0 0   0  31.07.88   63666       

   T  DMSPCX150009   48       3       2    0   0 0 0   0  30.07.88   20210       

   T  DMSPCX150010   48       3       2    0   0 0 0   0  30.07.88   20215       

   T  DMSPCX150011   48       3       2    0   0 0 0   0  31.07.88   20220       

   T  DMSPCX150012   48       2       1    0   0 0 0   0  31.07.88   63655       

   T  DMSPCX150013   48       3       2    0   0 0 0   0  31.07.88   63657       

   T  DMSPCX150014   48       2       1    0   0 0 0   0  31.07.88   63664       

                                                                                 

                                                                                 

                                                                                 

                                                                                 

                                                                                 

   START CLEANUP (Y/N) ?                                                         

                                                                                 

   NACHRICHT:                                                                    

 

 

 

Die Löschfunktion kan für nur einen Bildschirm oder für alle Textdateien des Systems aktiviert werden.

 

   Man erhält eine Übersicht über alle Textdateien auf dem Bildschirm. Ein Löschen erfolgt nur, wenn auf die gestellte Frage mit Y (yes) geantwortet wird.

 

14.13.      Systemtechnische Informationen.

 

   Bei Start einer Liste auf einem PC-Drucker liest DMS.RAPGEN die Nummer der Druckdatei (Textdatei) aus der Datei 00/DMS.PCQUEUE (4% im Satz 0, Byte 0).

 

14.14.1.    Druckdatei (Text).

 

   Die Nummer dient zur Identifikation der Druckdatei lu/DMSPCXssxxx, wobei

 

           lu  = Disknr. (von DMS,PCQUEUE, 4% in Satz 0, Byte 0)

           ss  = Nummer des Bildschirmes, der die Liste gestartet hat

           xxxx= Lfd. Nummer

 

Die PC-Textdateien sind damit von dem Listgenerator-System unabhängug, d.h. u.a., daß von mehreren Systemen gleichzeitig eine Übertragung von Textdateien vorgenommen werden kann.

 

   Der Aufbau des Dateinamens Bewirkt unter anderem, daß man mit Hilfe von:

 

           LIBR @­ lu/DMSPCX06 oder

           LIBR @­ lu/DMSPCX

 

eine Übersicht über alle PC-Dateien für einen bestimmten Bildschirm bzw. für das gesamte System erhalten kann.

 

14.14.3.    Übertragungs-Steuerdatei.

 

   Die Datei lu/DMSPCXss.BAT wird bei Start einer Liste angelegt bzw. erweitert, falls diese bereits vorhanden ist.

 

 

14.14.5.    Format-Kontroll-Datei.

 

   Bei Start der Übertragung durch Eingabe START Y innerhalbe der PC-Funktion wird die zwischenzeitliche Kontrolldatei DMSPCXxx geändert in die endgültige Datei lu/DMSPCXxx.BAT und anschließend gelöscht.

 

   Alle RDAC Kommandos stehen am Beginn, gefolgt vom RDMAIN S 1 Kommando. Anschließend folgen alle EXPORT Kommandos Abgeschlossem wird mit dem Kommaodo ECHO.

 

   Ist die zwichenzeitliche Kommandodatei bei Start der Funktion nicht Vorhanden, wird gefragt, ob die Übertragung durch eine .BAT Datei erfolgen soll.

 

14.14.7.    BCU Auftragswarteschlange.

 

   Die Übertragung wird gestartet, indem ein Sende/Empfang-Auftrag in dem BCU Warteschlange abgelegt wird. Anschließend wird auf die Beendigung der Übertragung gewartet.

 

   Der Bediener muß jetzt das Komando DMSPC auführen (auf dem PC). Die Kontroll Datei DMSPCXxx.BAT wird übertragen läuft auf dem PC ab, nachdem der BCU-Auftrag abgeschlossen ist.

 

   DMS.RAPGEN stellt jetzt einen zweiten Sende/Empfang-Auftrag für die BCU aus. Dies wird von der .BAT-Datei benutzt, um die Textdateien für das Ausdrucken zu empfangen.

 

   Wurde mit N auf die Frage DELETE TEXTFILES geantwortet, kehrt man jetzt in die Programmwahl zurück.

 

   Sollen die Dateien gelöscht werden, wartet das System mit dem Löschen, bis der Status ' Auftrag fehlerfrei beendet' an die BCU übergeben wurde.

 

14.14.9.    Status während der Übertragung.

 

   Während der Übertragung erfolgt keine Bildschirmaufgabe des Listgenerators (PC-Programm), da dies die Übertragung unterbrechen würde.

 

   Drückt man die Tast <ESC> erhält man den Übertragungsstatus auf der Statuszeile angezeigt.

 

14.15.      Installation der PC-Einbindung.

 

   Die einzelnen DMS-RAPGEN Mondul werden auf die gleiche Platteneinheit, auf der DMS-RAPGEN installiert ist, entsprechend der folgenden Dateiliste (Libr.list) kopiert:

 

Figur 20 PC Libr list.

 

 

LOGICAL UNIT :0        31.07.88  12:54:55                                         

                                                                                  

   FILE NAME    USER  BLOCKS  PART./  APPL. VERS   SPC    DATE        HBA  HASH   

*                             #REC.   AREA FMVVTM  INF                     TOTAL  

D  DMSPC          48      24       0    0   0 0 0    1   29.07.88  162576   9640  

D  DMSPC.CLEAN    48      16       0    0   0 0 0    1   29.07.88  162675  15619  

D  DMSPC.CLEAN1   48      17       0    0   0 0 0    1   29.07.88  163050  27783  

D  DMSPC.LIB      48       4       3    0   0 0 0    0   29.07.88  101524         

D  DMSPC.MESS     10      22      21    0   0 0 0    0   28.07.88  162627   5821* 

D  DMSPC.MESSE     6      18      17    0   0 0 0    0   29.07.88  163126  34526* 

D  DMSPC.MESSY     6      18      17    0   0 0 0    0   29.07.88  162744  34526* 

D  DMSPC.SYS      48      19       0    0   0 0 0    1   29.07.88  163150   3034  

D  DMSPC.TEXT      6       4       1    0   0 0 0    0   29.07.88  105567  25077* 

D  DMSPC.TEXTE    48       4       1    0   0 0 0    0   29.07.88   37624  11288* 

D  DMSPC.TEXTY    63       4       1    0   0 0 0    0   31.07.88  154117  11288* 

                                                                                  

‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑------------

TOTAL :                  150                                               47532  

                                                                                   

3573 FREE BLOCKS ON LU NO.     0                                                  

                                                                                     

 

 


14.16.1.    Installationsprogramm DMSPC.SYS.

 

   Das Installationsprogramm kann entweder durch Aufruf über die Kommandozeile oder durch Aufruf über die Programmwahl aktiviert werden. Anschließend erscheint folgendes Schirmbild:

 

Figur 21 DMSPC.SYS Installation.

 

  REPORTGENERATOR   GERMAN VERSION  REPORTGENERATOR       #15 87.12.04/13:11     

                                                                                 

  DISK (LU) FÜR PC.TEXTDATEIEN:                04                                

                                                                                 

  LFD.NR. FÜR   PC‑TEXTDATEIEN:                0014                             

                                                                                 

                                                                                 

                                                                                  

                                                                                 

                                                                                 

                                                                                 

                                                                                 

  OK (Y/N) ?                                   Y                                  

                                                                                  

  NACHRICHT:                                                                     

 

 

 

In diesem Programm kann die Platteneinheit (Disk nr.) für die PC.Textdateien und die aktuelle Textdatei-Nr. angegeben werden. Die Angaben können zu einem späteren Zeitpunkt geändert werden.

 

   Das Programm legt die Datei 00/DMS.PCQUEUE an, falls diese nicht bereits vorhanden ist. Ebenfalls werden die notwendingen Code-Tabellen des PC Druckers, wie z.B. DMS.P.LOTUS, sowie die Datei DMSPCXxx.BAT angelegt.

 

14.16.3.    Installation eines einzelen PCs.

 

   Für den Start einer Übertragung ist auf jedem PC eine .BAT-Datei notwendig. Diese Datei ist für jeden PC unterschiedlich, da u.a. die Port-Nr. des 8870-Systems hierein angegeben ist.

 

   Das Installationsprogramm DMSPC.SYS baut für jeden PC eine solche Datei auf:

 

          lu/DMSPCxx.BAT   wobei lu = Platteneinheit (angegeben in DMSPC.SYS)

                                 xx = Nr.des Bildschirms

       

Man überträgt die entsprechende Datei auf den PC durch angabe des folgenden Kommandos:

 

           RDAC get DMSPC.BAT 8870 lu/DMSPCxx.BAT %%

           RDMAIN S 1

 

Anschließend muß das Sende/Empfang Kommando auf der 8870 ausgeführt werden. Dies kann durch Wahl der entsprechenden PC-Funktion in DMS.RAPGEN mit der Antwort Y auf die Frage der Bildschirmnummer, oder über die PCLINK Programmwahl erfolgen.

 

Figur 22 Datei DMSPC06.BAT

 

   ECHO OFF                                                                      

   DCU                                                                           

   DEL DMSPCX06.BAT                                                              

   RDAC get DMSPCX06.BAT 8870 04/DMSPCX06.BAT %%                                 

   RDMAIN S 1                                                                    

   DMSPCX06.BAT                                                                  

 

 

14.17.      Löschen der PC-Logdatei.

 

   Der PC führt ein Logbuch über alle Übertragungen.

 

   Nach etwa 80 Übertragungen sollte diese Datei gelöscht werden. Dies erfolgt mit Hilfe des Kommandos

 

           RDMAIN C 1

 

gefolgt bei einem Sende/Empfang Kommando der 8870.

 

   Nachdem das Programm eine gewisse Zeit gelaufen hat, kann dies über Control-Break abgebrochen werden. Die Logdatei ist anschließend gelöscht.

 

14.19.     PC-Druckersteuerung.

 

   Ein PC-Drucker arbeitet wie jeder andere Drucker im Listgenerator. Dieser Drucker wird in der vorliegenden Version des Listgenerators über die Druckersteuerungstabelle, die mit Hilfe von DMS.RAPGEN.PRT mit angelegt wurde, gesteuert. Wir verweisen hier auf das entsprechende Handbuch.

 

   Wurde DMS.RAPGEN mit PC-Einbindung installiert, erscheint unter DMS.RAPGEN.PRT eine gesonderte zweite Seite auf dem Bildschirm.

 

Figur 23 DMS.RAPGEN.PRT Druckersteuerung.

 

   DMS.RAPGEN.PRT    PLEGE DER DRUCKERDFINITIONEN    CHART   OCTAL                

                                                                                 

   DRUCK KOPF- UND SUMMERZEILEN (Y/N):               N                           

   ANZAHL DRUCKZEILEN:                               7999                        

                                                                                  

                                                                                 

   BEGINN MIT SEITE NR:                                                          

                                                                                  

                                                                                 

   PC INTEGRATION CODE (Y/wks/mp/mc/dif):            mc ‑r 1 2                  

   TEXTDATEI ERWEITERN (B/!/+):                      !                          

                                                                                 

                                                                                 

                                                                                  

                                                                                 

                                                                                 

                                                                                  

                                                                                 

   NACHRICHT:                                                                    

 

 

 

Diese Siete enthält folgende Informationen:

 

14.20.1.

12.10.1.   Überschrift und Summen.

 

   Bei normalen Druckern (Standard) sollte dieses Feld frei gelassen werden. N bedeutet, daß Überschriften und Summen ausgelassen werden (wird im Zusammenhang mit LOTUS u.s.w. benutzt)

 

14.20.3.

12.10.2.   Anzahl Zeilen.

 

   Bie Angabe von 7999 erfolgt kein Seitenvorschub.

 

14.20.5.

page \* arabic2412.10.3.   Beginn die Seitennummer.

 

   Angebe der Seitennummer, mit der die Liste beginnen soll.


14.20.7.

12.10.4.   PC Integrationscode.

 

   Dieses Feld steuert das Kommando EXPORT.

 

   Ist das Feld leer bzw. gleich Y wird ein EXPORT nicht vorgenommen.

 

   Beinhaltet das Feld anderen als oben genannt, wird das EXPORT Kommando wie folgt ausgeführt:

 

           EXPORT input - 0 output - f xxxxxx - c columes

 

   xxxxxx ist der Text, der im Integrationscode angegeben ist, und beinhaltet die Formatspezifikationen für das EXPORT Kommando ung mögliche zusätzliche Kommandos.

 

   Zur Zeit kann das EXPORT Kommando folgende Systeme verarbeiten:

 

           LOTUS

           CHART

           MULTIPLAN

           VISICALC

 

Ist der Kommandosatz erweitert, muß ein neuer PC Drucker mit dem neuen Kommando angelegt werden.

 

   Der Integrationscode steuert auch den Ausdruck der Textdateien. Ein Leerfeld bewirkt die Verwendung eines Standard-Druckernamens oder Textdatei. Alles andere aktiviert die Nummerierung der Textdateien entsprechend Angaben in diesem Handbuch.

 

14.20.9.

date \@ "MMMM d, yyyy"januar 10, 200812.10.5.   Textdatei - extended flag (B/!/?).

 

   Dieses Feld soll für einen Standard-Drucker leer sein. Bei einem PC Drucker muß hier ein ! angegeben werden.

 

   !  bewirkt, daß eine neue Textdatei aufgebaut wird. Die alte Datei wird überschrieben.

 

   B  baut eine neue Textdatei auf und löscht die Liste, fallls bereits eine Textdatei mit dem gleichen Namen vorhanden ist.

 

   +  baut eine neue Textdatei auf, falls diese nicht vorhanden ist. Im anderen Falle wird die bereits bestehende Datei erweitert.

 

14.20.11.

12.10.6.   PC Textdatei Suffix.

 

   Die PC Datei erhält den Namen DMSxxxx.ttt, wobei ttt übernommen wird vom Nomen des logischen Druckers, der im zweiten Feld, Seite 1 in der Drucker-Kontrollcode-Tabelle angegeben ist.      


15.

13.          Print image control.

 

   In this release (9.24) the generation of the print statements and the report print routines has been completely changed to allow new facilities to be implemented.

 

   This technical change will not influent on any existing reports, these are fully compatible.

 

The user will notice that the print on screen has changed:

 

   Reports with lines longer then 80 characters will no longer scroll the screen, 79 characters of each line only are displayed. This can be controlled by the lamp key 3, if you light R3 the complete line is displayed as in previous releases.

 

   Letters which are run on screen as inquiery programs will no longer display the leading text in background by start and the fields only in foreground for each record. Both leading text and fields will be displayed in foreground for each record as the user is able to control the layout during the run. 

 

16.1.        Structure of the print generation.

 

   The print statements generated by previous releases have contained direct printing of the fields and heading textes to the printer generated as basic PRINT USING statements.

 

   TAB positions were used whenever this could reduce the length of generated code which increased speed on former operating systems.

 

   From this release the print is builded as a text line. This line will then be printed with a simple print statements. All tabulation positions has been removed to increase speed on the present operating systems and to enable manipulation with the print string before print.

 

16.2.1.      Improved functions by this structure.

 

   A number of facilities has been improved by the change of print generation:

 

   ‑ Print speed increased due to remove of TABs.

   ‑ Shift of fonts was not controlled correctly by NIROS when the TAB positions were used.

   ‑ New ¬ functions to remove spaces on print lines.

   ‑ Quotes are allowed as heading textes.

   ‑ Letters may now contain more than 99 fields.

   ‑ Screen display of long lines may be reduced to 8 characters avoiding scroll.

   ‑ A longer TOTAL text do not move the rest of the line to the right.

   ‑ Delimiter characters in string fields can not any longer disturb the print layout.

 

 16.3.        New print image control.

 

   The print generation of heading, lines and totals were fixed in former releases it is the heading would always be the same lines for a report as a heading print subroutine were generated.

 

   In this release a subroutine is generated for each special print line seperately. A print routine printing a subset of these controls e.g. the heading consists of line 1‑4.    

 

16.4.1.      New functions by this structure.

 

     ‑ The user is by the LINE command in function 7 able to change which lines are to be printed.

     ‑ By the calculation statements PRINT (1‑4) the user is able to print any line at any point.

     ‑ By PRINT (L=7) the user is able to have different line layouts on a report.

     ‑ The user is able to take over the complete control of the printing by the calculation section PRINT

       (as FIRST/NORMAL/AFTER).

     ‑ This enables printing of statements, invoices etc. without use of READH.


16.5.        Print line control.

 

   When a new report is defined DMS.RAPGEN determines which lines should  be used for heading, normal print lines and totals.

 

   On a standard report defined with one field line the heading is fixed to line 1‑4 and the print line (and total line) will be line 5.

 

   In previous releases of DMS.RAPGEN you have not been able to amend this line setting in other way than defining a new report.

 

16.6.1.      The LINE command.

 

   In function 7 (amendment of a letter or report) it is now possible to use the new LINE command to change these informations.

 

   When you in LINE,POS issues the LINE command, the screen will scroll up one line and you get a menu on the lower part of the screen:

 

Figur 24 The LINE command.

 

 

 PRINT ZERO FIELDS (Y/N) ?             Y                                       

 NEW PAGE LINES BEFORE END OF PAGE:    3                                       

 HEADING       PRINT LINES:            1‑5                                     

 NORMAL        PRINT LINES:            7‑7                                     

 TOTAL         PRINT LINES:            7‑7                                     

 DETAIL(READH) PRINT LINES:            6‑6                                     

                                                                                

 

 

 

 

16.6.2.1.    Print zero fields.

 

   You are able to change the zero supress option which you defined when creating the report.

 

   Note that it is now also possible to define zero supression on letters even if this question is not asked when defining a new report.

 

16.6.2.3.    New page lines before end of page.

 

DMS.RAPGEN will normally leave 3 lines free as footer on any page.

 

   When you define the number of printlines (eg.66) by creating the report, you may enter 66,5 to set the number of footer lines to 5.

   You may change this setting here.

 

16.6.2.5.    Heading print lines.

 

   This is the range of lines printed whenever the report shifts to a new page.

 

   On this and the following promts you may enter a new range by typing    xx‑yy. It is only possible to enter one range of lines at each promt.

 

16.6.2.7.    Normal print lines.

 

   You are now able to extend a report defined as printing only one line to print several lines for each record.

 

16.6.2.9.    Total print lines.

 

   The report generator will normally use the same lines for total printing as for printing normal records on the list.

 

   The left part of the first total line will be replaced by the total text. Any field in this positions will be overwritten.

 

   You may now specify a total line print different from the normal lines, it is the total lines may have a different layout.

 

   Note that zero supression never will be used when printing totals.


16.6.2.11.    Detail (READH) print lines.

 

   This option appears only if you have used the LINE command when defining the report with function 1.

 

   The range of lines given here will be printed whenever the READH (xx) statement in the calculations signals a change of record, thus acting as   a heading for the normal print lines.

 

16.6.3.      Letters.

 

   If the report is defined as a letter, only the options print zero fields and normal print lines will appear.

 

   It is a new facility to be able to supress zeroes on the letter‑type reports. 

 

16.6.5.      Inquiery programs.

 

   If you intend to use the letter as an inquiery program only with no special printer control you may specify: PRINT ZERO FIELDS (Y/N): YS The S option as second character will make the report generator optimize the screen print rather than the printer output (in fact the old optimization for letters on screen will be used).

 

   You will still be able to run such a letter as a print program but none of the new print image control functions can be used for the report. 

 

16.7.        Controlling the print by calculations.

 

   You have the possibility to control the printing from the calculation module (function 4) by the nowly introduced PRINT command.

 

   The PRINT command can have 3 different functions:

 

    1. You may set up which lines should be used when the report prints anything.

    2. You can gain complete control of the printing by a seperate routine.

    3. You may directly print lines.

 

It is possible to make a combination of function 1 and 3.

 

   The print commands given in the calculations will always have priority  over the report print lines (given in function 7 with the LINE command) and overwrite these.

 

16.8.1.      Setting lines to be printed.

 

   If you as a calculation enters: PRINT (L=7‑8) the report lines 7 and 8 will be printed for this record.

 

   The print is not executed directly but after the calculations, selections etc. The statement will only set up which lines should be printed at a later point.

 

   The L= indicates the following lines should be used when the next report Line should be printed.

 

   You may use H=, N=, T= and D= for Heading, Newpage, Totals and Detail (READH) lines.

 

16.8.2.1.    Line specifications.

 

    You may give a simple line as in        PRINT (L=7)

    or a range of lines as                  PRINT (L=7‑9)

    or any combination hereof:              PRINT (L=7,15‑20,9,11‑12)

 

16.8.2.2.1.  +xx skip a number of lines.

 

   You can skip a number of lines by a +xx  PRINT (L=7,+2,8)

 

will print line 7, skip 2 lines and then print line 8.


16.8.2.2.3.  :xx skip to line.

 

   You may also skip to a specific line by    PRINT (H=:10,1‑3)

 

 where :10 makes the report generator skip to line 10 on the paper.

 

   Note: If you define a :xx line and xx is lower than the current line on the paper, a new page will be issued.

 

   The newpage will normally always contain a :1 in order to skip to line 1 on the next page.

 

16.8.2.3.    PRINT (L= line specification.

 

   The L= will change the print lines for the next printing of a record.

 

16.8.2.4.1.  Conditional line printing.

 

   You may use the IF command together with the PRINT commands to determine which lines should be printed dependent on a record type:

 

        IF #15=1  PRINT (L=7)

        IF #15<>1 PRINT (L=8‑9)

 

16.8.2.5.    PRINT (T=total line specification.

 

        PRINT (T=17)

 

 will set the next total printout to use line number 17.

 

   This function will normally be usefull only together with calculated totals on a report.

 

   Note that the total text (GRANDE TOTAL or like) will be printed only on the first total line specifyed in function 7 with the LINE command. If you change the total line printing the control of such a text must be done by yourself.

 

16.8.2.7.    PRINT (D=detail (READH) line specification.

 

   This option is only usefull if you have a READH statement in the       calculations of your report.

 

   The READHeading works like the normal read, but whenever the key is changing a heading is printed.

 

            PRINT (D=+2,7) will set the lines for such a heading.

 

   When defining a new report with function 1 you will normally use the LINE command here to tell the reportgenerator which lines should be printed when you issue the READH command.

 

   If you take over the control by the calculations PRINT (D= and PRINT (L= you do not have to define the report with the LINE command to use READH.

 

16.8.2.9.    PRINT (H= heading line specifications.

 

   PRINT (H=1,3) will define the heading of the report to consist of line 1 and line 3.

 

   The PRINT (H= acts different from the other print options, as it is only meningfull to issue this once.

 

   The heading will be fixed at the very start of the report, just as it  has been a FIRST calculation. If you issues several PRINT (H= on a report, even conditional by IF, the last one encountered will be used for the complete report.

 

   You may use the PRINT (H= to leave extra blank lines at the very top of the page, eg.

 

        PRINT (H=+3,1‑4)

 

    You may switch off all headings completely by:   PRINT (H=)


16.8.2.11.    PRINT (N= newpage specification.

 

   With this option you specify the action the reportgenerator should take upon the end of page condition.

 

   The line specification with this option must follow a special syntax:

 

    PRINT (N=3,:1,1‑4)

 

 The number immidiatly following N= is the number of lines before end of page. If the form height is 66 the PRINT (N=3 will give a new page at any attempt to print over line 63.

 

   The PRINT (N= must contain a :1 or :xx specification to actually skip to the next page.

 

   If you do not follow this syntax unpredictable results such as no page  control at all or repediatly page shifts may occur.

 

16.8.3.      Footer lines.

 

   You may specify any number of footer lines in connection with the PRINT (N= , eg:

 

    PRINT (N=6,:62,10‑11,:1,1‑4)

 

 6 lines before end of page (line 60) wou will skip to line 62 and print the lines defined as 10 and 11, after this the heading lines 1‑4 are printed on      the next page.

 

   Note that no page control is in effect when the reportgenerator executes the newpage condition, you may print to the next page causing a double form feed to be issued. 

 

16.9.        PRINT gaining complete control.

 

   If you in a calculation statement issue the PRINT command alone, the calculations you enter hereafter will replace the normal print routine of the report.

 

   If you do not issue any other print statements hereafter, nothing exept the very first header will be printed on the report.

 

   The PRINT command works just like the FIRST, NORMAL, AFTER and LAST command, it is the calculations are performed in a special point of the report.

 

   You may in the following control printout of statements or like report by START/NEXT/REPEAT loops, see below.

 

   If you have issued the PRINT command any PRINT (L= commands will be of no effect as you in this routine takes over the complete control of the printing.

 

   The print routine is of cause located in the report after any other defined calculations and selections and will not be invoked during the  sorting phase of a report.

 

16.10.1.      PRINT (x‑y) print lines.

 

   The calculation statement:               PRINT (7)

 

 will print the line 7 on the paper at the point when it is issued opposite the former PRINT (H= etc. which just specifyes which lines should be printed at a later point.

 

   The calculation statement                PRINT (L=7‑8)

 

 will have exactly the same function as     PRINT

                                            PRINT (7‑8)

 

 as the first will tell the print routine to print line 7 and 8, the second will take the complete control and print the same lines.


16.10.3.      Combinations of print options.

 

   You may specify several print options in one print command, eg:

 

    PRINT (7‑9,N=3,:1‑3)

 

 which prints line 7 to 8 and if a new page condition occurs 3 lines from end of page line 1‑3 is printed as heading on the next page.

 

   A combination as:     PRINT (L=7‑8,N=3,:1,1‑3)

 

 is also allowed as a shorter form of writing the two statements

 

    PRINT (L=7‑8)

    PRINT (N=3,:1,1‑3)

 

16.10.5.      START/NEXT/REPEAT used for statements.

 

   If you define a report (or a letter) on the debtor main file DK you can list the transactions from DB in the print section of the report.

 

All normal calculations, selections and sorting are done on the main file.

 

   The calculations could be:

 

    PRINT                          take over print control

    PRINT (:1,1‑20)                print letterhead

    START (DB)                     initialize transaction read

    NEXT (DB)                      read next transaction

    PRINT (21)                     print transaction line

    REPEAT (DB)                    loop over trancactions

    PRINT (:50,30‑40)              print footer

 

 The calculations could be extend to a little more complex version: 

 

    PRINT

    #PP=0                          Start pageno.1 new statement

    PRINT (:1,1‑20)

    #53=0                          Zero total free field

    START (DB)

    NEXT  (DB)

    #51=0                          Zero debit/credit couloms

    #52=0

    IF DB#8<0 LET #51=DB#8         Debit/credit

    #53=#53+DB#8                   Totalize

    PRINT (21,N=20,:60,61‑62,:1,1‑20,22) set continue heading

    REPEAT (DB)

    PRINT (:50,30‑40)

 

16.11.        PRINT in LAST calculations.

 

   You may issue PRINT commands in the LAST section of a report to print a traiting page for the report.

 

   This may contain totals collected by calculations for a letter or may simply be a blank page to make is easyer to seperate the output.   


16.13.        Contracting print lines with ¬.

 

   If you in a letter text prints a field containing a name this will be of fixed length, eg. 32 characters.

 

   If the name is OLE 29 characters will be blank before the next text starts.

 

   Placing a ¬ after the field in the report definition causes the rest of the line to be moved to the left close to the printed field.    

 

     #3                HAS PAID               prints as

     OLE               HAS PAID

 

     #3              ¬ HAS PAID               prints as

     OLE HAS PAID.

 

16.14.1.      Contracting print lines with ¬¬ .

 

   You may also wish to move numeric fields close to a text, even if the numeric field has a large format (eg. 9,2).

 

     HAS PAID #24               KR.         prints as

     HAS PAID            100.00 KR.

 

     HAS PAID ¬¬#24             KR.         prints as

     HAS PAID 100.00 KR.

 

16.14.3.      ¬> function to end the ¬ function .

 

   In function 7 fields are contracted using the function ¬ (See Chapter 13.7). This function can be ended using the ¬> function. An example could be the line

 

     #3       ¬HAS PAID              ¬>DATE: #PD       prints as

     OLE HAS PAID                      DATE: 31.03.92

 

16.15.        R3 ‑ print long screen lines.

 

   If you run a report on screen, 79 characters only will be displayed of each line.

 

   If you light lamp key R3 the complete lines will be displayed.

 

16.17.        PRT command on letters.

 

   When you are running a letter‑type of report on screen it is possible to get a print of the complete letter by entering the keyword PRINT.

 

   In this release also the standard command PRT is accepted, as well as pressing the PRT key (as defined in TF.PARAM).

 

16.19.       New commands in function 7 - amendment of letter or report.

 

   When you are positioned the LINE,POSITION field in function 7 the following commands are available:

 

     NAME    Amendment of report name (Copy of report is no longer nessasarry).

     USER    Amendment of the username attached to the current report.

     INS/DEL Can be used as the functions (IL/DL) to insert/delete lines. Input concerning number of lines will take place.

     FORMAT  Can also be used to change the names and formats of free fields.

     PUT     Saves the report definition in a text file. With

     GET     a text file can be loaded (partial) into another report.

     R1      If lamp 1 is turned on text can continually be entered. Return to the LINE,POSITION field has to done by                  entering END.

 

16.21.

13.11.       PRINTER  Controlling up to 9 prints from one report.

 

   With this function you can print several layouts at the same time on different printers from one report.

 

   This can be used if large sets of data has to be accessed to produce multiple prints, where all prints are based on the same data set. This saves a good amount of time accessing the data.

 

   A typical example is reminder letters where a log containing the written remainder letters are requested. Of course this could be resolved by building a seperate remainder-file and print from this.

 

   Another example is a simple form of sorting where letters are required divided in smaller portions, each one giving a print.

 

   RAPGEN can use up to 9 printers at the same time, meaning that it can produce 9 different prints in the same report. It is only possible to use the special printer control codes with the @-control character.

 

16.22.1.     Definition of (opening) extra printers.

 

   An extra printer has to be defined (opened) one time with is done by inserting a FIRST command:

 

     FIRST

     PRINTER (2,"$LPT")

 

   The printers are numbered as 1 for the main printer and up to no. 9. The same printer $LPT can be opened several times if the spool system is used because then the extra prints just waits in line. With:

 

     PRINTER (2,"A")

 

the print is directed to a text file. RAPGEN will insert DMS- in front of the name given to avoid any conflict with files named A. This means that the text file will be named DMS-A. The text file is default placed on the same disk as RAPGEN is installed. But if 7/A is given as text file will be saved on disk 7 - 07/DMS-A.

 

   If for example printer 2 is used but failed to be opened, RAPGEN will simply save the output in the file DMS-2.

 

   In connection with opening an extra printer it is possible to assign parametersto it:

 

     PRINTER (2,"$RPL0","000131072")

 

   giving start position 0, last print position 131 and 72 lines per page.

 

   If the report is printed on screen the only result will be the one on printer 1. The other prints will still be outputted to the attached printer.

 

16.22.3.     Divide print on two printers.

 

   With PRINTER(2) you can redirect all print to printer number 2. With the follwing calculation lines the print is devided in two.

 

 

Figur 25 Opdeling af liste på to printere.

 

        FIRST

        PRINTER (2,"A")             /* OPEN PRINTER 2

        NORMAL

        PRINTER (1)                 /* NORMAL PRINT ON PRINTER 1

        IF #7>=2 PRINTER (2)        /* PRINTER 2 IF ARTICLE GROUP >=2

 

 

   Using PRINTER(2,"1-4","5","5") the print is redirected to printer 2, setting the header-lines (H=1-4), the print-lines (L=5) and finally the total-lines (T=5).


16.22.5.     Letter with journal.

 

   To get automatic totals on the journal you have to define a journal with a letter. First you define an ordinary report with function 1 giving the journal. Then the letter is inserted using function 7. For example using line 10 and forward on the layout. Finally the report needs a few calculations to control the print:

 

Figur 26 Letters with journal.

 

1...;....10...;....20...;....30...;....40...;....50...;....60...;....70...;....8

DATE ##,##,## -JOURNAL WITH LETTER-  PR.##,##,## PAGE ####                     1

----------------------------------------------------------                     2

CREDITOR NAME                      CURRENCY         AMOUNT                     3

==========================================================                     4

xxx      xxxxxxxxxxxxxxxxxxxxxxxx        ## ---,---,--#.##                     5

                                                                               6

                                                                               7

                                                                               8

                                                                               9

                                       Copenhagen ##,##,##                    10

   Dear Sir.xxxxxxxxxxxxxxxxxxxxxxxx                                          11

                                                                              12

   You need to pay kr. ---,---,--#.##.                                        13

                                      From.                                   14

                                  Chris Hanson.                               15

   ....,....!....,....!....,....!....,....!....,....!....,....!....,....!....,..

 1 PRINT

 2 PRINTER (2)

 3 PRINT (:1,10-20)

 4 PRINTER (1)

 5 PRINT (5)

 

 

16.22.7.     Print on two printers at the same time.

 

     PRINT (L=>1,5,>2,15)

 

sets the normal printline (L=) to line 5 on printer 1 and line 15 on printer 2. This results in print on one line on both printers at the same time.

 

   >printernumber.1-9 can be used with any print command syntax, PRINT(H=, L= N=, T= and direct print. It makes it possible to set different headers and totals for two printers.

 

   In the example below a report is defined with two different header and print lines. The calculations then sets the

header and print lines for both printers.

 

 

Figur 27 Printing two concurrent lists.

 

DATE ##,##,## -MULTIPLE PRINTERS-  PR.##,##,## SIDE ####

------------------------------------------------

NO   NAME                SALE PRISE PUR. PRICE

NO   NAME                PUR. PRICE     DATE CREDITOR

================================================

xxxx xxxxxxxxxxxxxxxxxxxx ######.## ######.##

xxxx xxxxxxxxxxxxxxxxxxxx ######.## ##,##,## xxx

 

FIRST

PRINTER (2,"A")                /* OPEN SECOND PRINTER

PRINT (H=>1,1-3,5,>2,1-2,4-5)  /* DIFFERENT HEADERS ON PRINTERS

PRINT (T=>1,6,>2,7)            /* DIFFERENT TOTALS ON PRINTERS

NORMAL

PRINT (L=>1,6)                 /* ALWAYS PRINT ON PRINTER 1

IF #3>100 PRINT (L=>1,6,>2,7)  /* IF PRISE >100 ALSO ON PRINTER 2

 

DATE 27.09.92 ‑  1    PR.27.09.92 PAGE   1  DATE 27.09.92 ‑   2     PR.27.09.92 PAGE 1

‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑  ‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑

NO   NAME           SALE PRICE PUR. PRICE NO   NAME           PUR. PRICE   DATE CREDITOR

===========================================  ===========================================

0101 CHOCOLATES           2,00      1,50  0102 LARGE MACHINE  10000,00  1.01.85 100

0102 LARGE MACHINE    20000,00  10000,00  0110 AUTOBUS        60000,00 15.12.86 123

0110 AUTOBUS         100000,00  60000,00  1001 MONEY            500,00 31.12.86 205

1001 MONEY             1000,00    500,00  1005 SMALL MASHINE   1500,00  1.06.86 100

1005 SMALL MACHINE     2000,00   1500,00                       

2001 CREDITCARD          20,00     10,00                      72021,50

2002 ID‑CARD             25,00     10,00

     7 TOTAL         123047,00  72021,50

 

 

 

Note that the total on the second print contains ALL articles, but actually printed on one of the two printers. If you require seperate totals use calculations and print free fields instead.


17.          Subfunctions.

 

   Subfunctions in DMS.RAPGEN replaces the former used LOAD functions in the calculations which could be rather complex to use. However the LOAD function may still be used in the reports.

 

   A subfunction is used in the calculations as a function with a number of parameters:

 

        #47 = CHEX (#48,#49)

 

   (CHEX is calculation of checkdigit modulus 11) instead of the former T3=...,T2$...,LOAD CHEX, #47=T2$.

 

   DMS.RAPGEN will translate the single line with the subfunction call to the more complex form in several lines and threat the function as a BASIC subroutine. The name subfunction comes from subroutine internal but function from the user point of view.

 

   By this it is possible to extend the functions available in DMS.RAPGEN nearly unlimited and with very complex functions which in earlyer releases would require many lines to invoke. Also you may write your own subfunctions specialized for your system without doing changes in DMS.RAPGEN itself.

 

   Subfunction may also be used in the selections of a report and more subfunctions may be used in the same calculation statement as:

 

        IF WORKD(#DD,#15>120 LET #63=NUMBER(#17)

 

   A subfunction can control nearly everything in a report eg. start/stop key values, writing on floppyfiles, password protect the report or do complex calculations specific for this installation.

 

   To avoid conflict with present as well as coming BASIC function a subfunction name is at least 4 characters and letters only, not digits.

 

   The installation manual descripes in detail how a subfunction is written. DMS.RAPGEN will of course be extended with new subfunctions as different requirements/idears comes from the users. Installation of new subfunctions is just a copy of the small subfunction textfiles to the system.

 

18.1.        CCODE Getting DATAMASTER fieldcheck text.

 

     #50 = CCODE (#71,"LE07")

 

   The function updated the textfields #50 with DATAMASTER's checkcode text defined for file LE field 7. The value in #71 is used to get the correct value from the DATAMASTER.

 

18.3.        CHAIN Start the next report.

 

     With the CHAIN subfunction you may create a chain of reports. The calculations:

 

            LAST

            CHAIN (13)

 

 will cause report number 13 to be started after this report has been finished.

 

   The start parameters of the next report(s) will be the same as for the first report (dates, start/stop key etc.) unless you specify the values in the CHAIN.

 

        CHAIN (13,010190,310390) starts the report with the given todays and as of date.

 

        CHAIN (13,,,4711,4712,3) chains with the same dates but with start/stop key 4711/4712 and first data field 3.

 

You may also use

 

        CHAIN (13,,,SORT)        to use the same sort sequence on the next report as created in this report (see sorting).


18.5.        CHECK calculation of OCR checkdigit.

 

   This routine calculates a checkdigit modulus 10 wheighted 212121.. and replaces the former used LOAD CHECK routine.

 

   If you have got a textfield #47 16 characters long and you have placed the customer number and/or invoice number in the first 15 characters, the 16'th. digit can be calculated as:

 

           #47=CHECK(#47)   

 

18.7.        CHEX Calculation of checkdigit modulus 11.

 

   This subfunction corresponds to the CHECK function, but the checkdigit is calculated modulus 11 and you may specify the weights for each digit.

 

The calculation

 

        #47=CHEX(#47,"01020304")

 

will as CHECK add the checkdigit as the last character in field 47.

 

   The 2.parameter "01020304" gives the weightes for each digit. 2 digits in the parameter corresponds to one digit in the field.

 

   See also the description of the LOAD CHEX routine.

 

18.9.        COPIES Number of print copies, print priority and paper code.

 

   With COPIES (1) you will get an extra copy of the print. The maximal number is 99.

 

   When RAPGEN detects COPIES the printer will be closed and then reopened due to the fact the spool system controls the number of copies. This doesn't effect the performance of the print. In order not to open and close the printer more than once, giving several jobs in the spool queue it is adviced to insert the command with the FIRST command:

 

     FIRST

     COPIES (3)

 

giving the total of 4 sets of the print.

 

   It is however possible to let a field control the number of copies:

 

     AFTER

     COPIES (#17)

 

giving the number of copies equal to the value in #17. Be aware that the operating system can be limited on the number of print-jobs waiting in the spool queue, before forcing print-out.

 

   In connection with COPIES you can also specify print-priority for the print.

 

     COPIES (0,"S")    suspends the print until started in TAMOS-spool queue.

     COPIES (0,"H")    gives high priority, is printed before the others.

     COPIES (0,"N")    is normal priority.

     COPIES (0,"L")    low priority, printed after the others.

     COPIES (0,"P")    direct print, is not controlled by the spool system.

 

   A paper code can also be parsed to the TAMOS-spool system. For example COPIES (1,,7) notifies TAMOS-spool system that paper no.7 is to be used (Refer to TAMOS manual).


18.11.        EDIT editing of customer numbers or other numbers.

 

   This subfunction can be used to edit long numbers without using complex calculation lines.

 

   The EDIT function may be compared with the BASIC PRINT USING function but with some special facilities.

 

The simple form of EDIT is:

 

        #47=EDIT(#48)

 

   by which the numeric field 48 is transferred to a textfield field 47. If field 48 contains the value 15 field 48 becomes "15".

 

   As 2.parameter for EDIT you may specify a mask as for PRINT USING which is illustrated by some examples:

 

        #47=EDIT(#48,"         ")

 

   if field 48=         #47 will be:

 

            EDIT (12345,"&&&‑&&&")    012‑345

            EDIT (123,"###‑&&&")        0‑123

            EDIT (12300,"###‑###")     12‑3

            EDIT (123,"EG:#AND##")    EG:1 AND 23

            EDIT (123,"&&&/&&")       001/23

 

By & you gets a digit or 0 in this position.

 

By # you gets a digit or blank if zero.

 

Any sign and decimals in the field will be ignored.

 

The digits are placed from right to left in the mask when a # or & is sconned. All other characters is kept unchanged.

 

18.13.        EXPORT writing to external files.

 

   With this subfunction you can build an external file from a report and use this for transmission to other systems.

 

   The files can be created as either textfiles, formatted files or contigous files for transmission to PC or output to tapes/floppydisc.

 

The files are created in external readable form.  

 

   The EXPORT subfunction is an example of an extremly powerfull routine and you will notice it takes a little while to load the function when you referr it first time in the calculations as more than 150 statements are loaded.

 

The simple form of EXPORT is:   EXPORT ("1‑10")

 

   which will create a textfile named 0/DMS‑OUT‑ containing the fields 1‑10 in a good PC format, it is the field is seperated by comma and alphanumeric fields are quoted.

 

   If the article file from the manual is exported in this form you will get a file as:

 

Figur 28 PC output with EXPORT.

 

 

   "0101","BOLT",1,1.5,10187,"271",,100,270                             

   "0102","TRUCK‑HOPPER",20000,10000,10185,"100",9                      

   "0110","TRUCK‑WORK",10000,60000,151286,"123",2,1,100                 

   "1001","TRUCK‑WHEEL",1000,500,311286,"205",,100,102                  

   "1005","TRUCK‑GEARBOX",2000,1500,10686,"100",1,10,,                  

   "2001","BOLT‑SPEC./AL",20,10,10187,"205",9,10,102                    

   "2002","BOLT‑SPEC./BR",25,10,300786,"205",9,200,102                  

                                                                        

 

 

This layout is readable from most PC textedit and spreadsheet programs and has the advantage that the file is as small as possible giving a minimum of transmission line. The article file from the manual is 42 sectors and the above shown textfile is just 1 sector it is less than 512 characters.

 

18.14.1.      The parameters for EXPORT.

 

   The EXPORT subfunction has up to 5 parameters which you may state if you want special function or omit if nessesary, eg:

        EXPORT ("1‑10","FILE",80,11111,1)     where the parameters are the following:

 

18.14.2.1.    Fields.

 

   Fields eg. "1‑10".

 

   Here you state the fields you want to transmit in the order you want these eg. "1‑2,9‑10,8,3‑7".

   All the fields from the main file and the free fields can be used. With fieldno. 0 you get the main filekey.

   Fields from secondary files must be moved to the free fields before these can be exported.

   Fieldno. 0 can be used for the KEY field.

 

18.14.2.3.    Filename.

 

   Filename eg. "FILE".

   This is the name of the output file.

   If the parameter is omitted the filename will be 0/DMS‑OUT‑ the disc lu being the same lu as DMS.RAPGEN itself.

 

            "FILE"   creates 0/DMS‑OUT‑FILE

            "7/FILE" creates 7/DMS‑OUT‑FILE

            "$LPT"   may be used for direct printer output

            "‑"      directs the output to the screen

   If the file is present the old file will be deleted.

 

   Due to security reasons only files prefixed DMS‑OUT‑ can be created by EXPORT.

 

18.14.2.5.    Record length and file type.

 

   If you omit this parameter or state it as 0 you will get a textfile with variable record length for use for transmission to PC or like.

 

   80 will create a socalled formatted file with fixed record length of 80 characters but with a variable number of records. This filetype can be output to tape/floppydisc on most systems.

 

   ‑80 creates a contigous file with fixed record length of 80 characters and fixed number of records matching the number of records output from the report.

 

   1 or ‑1 will create a formatted/contigous file with a record length equal to the total field length.

 

   This last function is a little more time consuming as DMS.RAPGEN first has to create a textfile (0/DMS‑OUTxx where xx is the screen number) and when the number of output records is known this file is copied to the contigous output file. Dependent on the operating system it may be nessesary to use this filetype for output to tape/floppydisc.


18.14.2.7.    Output specifications.

 

   Here you may state 5 digits controlling how the fields should be produced in the output:

 

   0 gives the above shown layout with the fields separated by comma and textfields quoted.

 

   The single digits controls, numbered 12345:

 

    1. 1 defines fixed field length.

       The fields are output with their defined length without comma separation or quotes.

 

    2. 1 gives leading zeroes on numeric fields.

       0 means leading blanks.

 

    3. 1 causes decimal point and eventually comma edit characters to be supressed from the output.

 

    4. 0 gives normal Nixdorf sign it is just in front of the first digit.

       1 is leading sign in fixed position.

       2 is traiting sign in fixed position.

 

    5. Signtype:

       0 negative: ‑ positive: space

       1 negative: ‑ positive: +

       2 negative: 1 positive: 0

       3 IBM overpunched minus in last digit

       4 negative: 1 positive: 3

 

 Of course you may also create alphanumeric fields in the calculations containing the numeric values if you need special representation.

 

18.14.2.9.    Printer output.

 

   It is possible to get an additional output on the printer as an exact copy of the export output file (on $LPT always).

 

1 as 5.parameter for EXPORT activates this:

 

2 as 5.parameter prints the record layout also.

 

   You will get the print even if the report is run on screen with screen output. You can always start a report using EXPORT with lamp key 1 lightened and you will get a print of the record layout and data just as you had used parameter 2. If you use $LPT for the normal report print this printer must be SPOOLED if you also wants the export print.

 

   The print of the article file may look like:

 

Figur 29 Export to tape/floppydisc.

 
 

 

   A RECLEN  80 OPTIONS 11111                                             

   FIELD FROM  TO  LEN NAME                   1.RECORD    FORMAT          

   A   1    1   4    4 ARTICLE NO             (0101)                      

   B   2    5  24   20 DESCRIPTION            (BOLT            )          

   C   3   25  32    9 SELLING PRICE          (00000200)  ######.##       

   D   4   33  40    9 COST PRICE             (00000150)  ######.##       

   E   5   41  46    8 DATE OF LAST PURCHASE  (010187)    ##,##,##        

   F   6   47  49    3 SUPPLIER NO.           (271)                       

   G   7   50  51    2 ARTICLE GROUP NO       (00)        ##              

   H   8   52  58    7 STOCK BALANCE          (+000100)   ‑‑‑‑‑‑#         

   I   9   59  61    3 ALTERNATIVE SUPPLIER NO(270)       ###             

   J  10   62  70   10 FREE                   (+00000000) ‑‑‑‑‑‑#.##      

                                                                          

   ...B,....!.....,....!..C..,....D.....,.E..!..F..G.H..!...I.,J...!.....,

   0101BOLT                  00000002000000015001018727100+000100270+0000 

   0102TRUCK‑HOPPER          00020000000100000001018510009+000000000+0000 

   0110TRUCK‑WORK            00100000000600000015128612302+000001100+0000 

   1001TRUCK‑WHEEL           00001000000005000031128620500+000100102+0000 

   1005TRUCK‑GEARBOX         00002000000015000001068610001+000010000+0000 

   2001BOLT‑SPEC./AL         00000020000000100001018720509+000010102+0000 

   2002BOLT‑SPEC./BR         00000025000000100030078620509+000200102+0000 

                                                                          

 


18.14.2.11.    CSV parameters.

 

   As parameter 6 a number of characters can be given. These are used when generating comma seperated files (CSV files). The characters has the following meaning.

 

     "--,.'''" Default if nothing else given

      -        Trailing empty fields are removed

       -       Zero fields are generated as ,,

        ,      Fields are seperated by ,

         .     As decimal comma . is used

          ''   Text fields is sorounded by (")

            '  Invalid " in text is replaced with (')

 

     "++;, ,"  Example of special parameters

      +        All fields are transfered

       +       Zero fields are generated as ,0,

        ;      Fields are seperated by ;

         ,     As decimal comma , is used

               Blank ==> Text fields is not sorounded by (")

           ,   Invalid ; in text is replaced with (,)

 

   Note that " has to entered as two single pings ('') in the character sequence.

 

18.14.3.      EXPORT in calculations.

 

   If you just place EXPORT in the calculations you should notice that this statement is carryed out always before selections and during sorting.

 

   By use of the AFTER command you can move the EXPORT down after the selections have been fullfilled. By use of WHEN command you can avoid creating lines during sorting.

 

   Startlines can be output by use of the FIRST command, endlines by placing EXPORT in the LAST calculations.

   You may create more output lines by repeated use of EXPORT:

 

    EXPORT ("1‑10","FILE",80)

    EXPORT ("11‑20")

 

 which gives 2 output lines for each main file record.

 

   Note when you use several EXPORT lines in one report you only have to state all parameters on the first line. These will be used for all EXPORTs in the program.

   EXPORT may of course be used in combination with the KEYS subfunction to select which records should be exported, referr to this section for details. CHECK and CHEX may be used to create checkdigits.

 

18.15.        EXPOX Export with file definition included.

 

   EXPOX is identical to the EXPORT function. The difference is that this function inserts a header in the export file containing indexes and the selected fields for the file. The result could look like this:

 

Figur 30 EXPOX with index and fielddefinitions.

 

"VA","DEMO‑ARTICLE FILE","03/DA.VAKA",7,62,4,8

"VA0100","ARTICLE NUMBER,"1,S"

"VA0200","CREDITOR,"6,1,S"

"VAGR00","==>ARTICLE GROUP,"7"

"VALE00","==>CREDITOR,"6,S"

1,2,3,4,5,6,7,8

"ARTICLE NO","NAME","S.PRICE","P.PRICE","DATE LAST P.","CREDITOR","GROUPNO","BALANCE"

"4B4","20","6,2","6,2",",6,","3","2,","‑6,"

"‑‑‑‑‑‑‑‑‑‑‑‑"

"0101","CHOCOLATES",2,1.5,10187,"271",,100

"0102","LARGE MACHINE",20000,10000,10185,"100",9

"0110","AUTOBUS",100000,60000,151286,"123",2,1

"1001","MONEY",1000,500,311286,"205",,100

"1005","SMALL MACHINE",2000,1500,10686,"100",1,10

"2001","CREDITCARD",20,10,10187,"205",9,10

"2002","ID‑CARD",25,10,300786,"205",9,200

 


The first line contains fileshort name, text, filename, number of records and length of each index.

Then follows one line per index with the index definitions.

The three text lines contains fieldnumbers, then fieldnames and last field formats.

The header is ended with a row of -. Trailing the header is the file contents.

 

18.17.        FILENAME Physical filename.

 

     #50=FILENAME (LE) sets #50 to the physical filename of file LE.

 

The result could be 00/LEKA001. The file has to be used in the report.

 

18.19.       FIND search for text in fields.

 

   With this subfunction you can search for the occurence of a given text in a number of textfields which can be very usefull as selections on a report.

   If you create a report on the customer file you may place a calculation like:

 

        #47=FIND("STEEL",#3,#4,#5,#6)

 

and a selection that field 47 should be minimum 1.

   This causes all customers where the name or adress contains the text STEEL in any position to be printed.

 

   By use of the START‑DATA facility you can easely extend this report to input the search criteria by start:

 

        #47=FIND(#DA1,#3,#4,#5,#6)

 

The FIND command can have as many fields as parameters as nessesary.

 

   FIND will search for the text in all these fields and returns:

      0 if text not found

    >=1 the text was found in this position

 

18.21.

14.11.       IMPORT reading of external files.

 

   By use of the IMPORT subfunction you can read external files and update/create files from these data (only files for which you have WRITE access, eg. DATAMASTER files).

 

   The external files may be textfiles, formatted files or contigous files originating from a PC, tape or floppydisc.

See also the EXPORT command.

 

   The IMPORT subfunction is very like the EXPORT and accepts the same file types. The fields may be separated by comma or have a fixed length.

 

   With IMPORT you may read files produced by EXPORT. This may be used for copying data between completely separated systems.

 

   When you place the calculation line:   IMPORT ("1‑10")

the main file of the report will be replaced by the external file 0/DMSIN‑.

 

   If the report is started records will be read from this file and not from the main file. The file is assumed to be in PC layout with the fields separated by comma.

 

   You may define selections, calculations and even sorting on such a report just as usual.

 

   But of course it becomes really usefull if you have write access for one or more files in the report:

 

            IMPORT ("1‑10")

            INSERT (VA)

 

 will build a new file from an external file.


18.22.1.     The parameters for IMPORT.

 

   The IMPORT subfunction takes 4 parameters which you may specify or omit if not nessesary:

 

        IMPORT ("1‑10","0/FIL",80,111)

 

   where the parameters are the following:

 

18.22.2.1.   Fields.

 

   You state the fields in the order they occur in the input file, eg.      "1‑2,9‑10,8,3‑7".

   All the fields from the main file and the 20 free fields can be used here.

   Of course these fields may be moved to fields in other files if nessesary.

 

   Sometimes you need to add the imported values to fields in the file. This may of course be done as calculation lines but can also be specifyed directly in the IMPORT statement:

 

        IMPORT ("1‑2,+3‑4,5‑6,&7,=8,9")

 

   will read the fields 1‑9 in the following way:

 

        The fields 1 and 2 is just read.

    +   The imported values are added to field 3,4 and 5.

       The value is subtracted from field 6.

    &   A dummy value is read, field 7 is unchanged.

    =   The fields 8 and 9 is just read normal.

 

 By use of the symbols +, ‑, & and = you may change the input method many times. The seledted method is valid until next specification.

 

   When reading a file with fixed record length you may skip to a certain position in the input record:

        IMPORT ("1‑2,:40,3")

   will read field 3 from position 40.

 

18.22.2.3.   Filename.

 

As the second parameter you may state a completely filename:

 

        IMPORT ("1‑10","0/FILE")

 

   If the filename is omitted the file 00/DMS‑IN‑ will be used. This file is placed on the same disc lu as DMS.RAPGEN itself.

 

   If you state a lu as "0/FILE" this file is opened. Opposite EXPORT this is allowed as IMPORT is just reading from the file.

 

   If you omit the lu as "FILE" the file is prefixed with 0/DMS‑IN‑ it is 0/DMS‑IN‑FILE is used.

 

18.22.2.5.   Record length and file type.

 

   If you omit this parameter or state 0 the file will be read as a textfile with a variable record length of maximum 512 characters.

 

   80 will read a contigous or formatted file with a fixed record length of 80 characters.

IMPORT can process any recordlength.

 

   ‑1024 reads a textfile with variable record length of a maximum of 1024 characters. It is only nessesary to state the record length of a textfile if this exeeds 512 characters.


18.22.2.7.   Input specifications.

 

   Here you may state 2 digits which determines how the input fields are read.

 

   The same positions as for EXPORT are used, so 5 digits must be given but just the two of these are used:

 

    0   will read a file with commaseparated fields.

 

    The digits controls, numbered as 12345:

 

    1.  1 reads the fields with fixed field length, it is according to the defined field format and not separated by comma.

    2.  Not used.

    3.  1 reads numeric fields without decimal point in the input record it is the value is divided by 10;

        (decimalplaces) after reading.

    4.  Not used.

    5.  Not used.

 

   IMPORT takes decimalcomma (,) or decimalpoint (.), it is it does not mather which is stated in the input file. However in commaseparated files it must be decimalpoint in the fields.

 

   Sign must be stated as ‑ and may be either leading or traling. + or space is accepted for positive values.

   Fields may be given with leading blanks or zeroes.

 

   If you should import more special field layouts this may of course be done by importing to free textfields and then pick the values from these by the calculations.

 

18.22.3.     Different entries of the IMPORT routine.

 

In order to activate the IMPORT subfunction it must be called as eg:

 

        IMPORT ("1‑10","0/FILE",80,11111)

 

in the calculations before the other entrypoints are used.

 

   This will select which file should be read and which fields and as such replace the normal read of the main file in the report.

 

   After this you can use the following functions:

 

18.22.4.1.   IMPOCONT ("11‑20").

 

   The reading continues in the position of the current record which was next to be used in the former IMPORT statement.

 

18.22.4.3.   IMPOTHIS ("1‑20").

 

   Reads the current record once more from position 1.

 

18.22.4.5.   IMPONEXT ("11‑20").

 

   The next record from the input file is read and moved to field 11‑20. By this input files with multiple lines/record or variable record layout may be handled.

 

   Also you may control different number of lines for each record in the calculations.


18.23.       INDEX lock reports index/start/stop keys.

 

   Some reports should always use a certain index of the main file. By use of this subfunction you will not have to state 2: whenever the report is started. If you place the calculation line:

 

        INDEX (2)      the report will be fixed to index 2.

 

   Also you may fix the range for the start/stop keys:

 

        INDEX (2,"1234","5678) works as

        START FROM:2:1234

        STOP AT   :  5678

 

 nomather what is entered when the report is started. 

 

18.25.

14.13.       KEYS start/stop specifications.

 

   With the subfunction you can define several ranges or single key values for report run instead of having to start the report multiple times.

 

18.26.1.     The KEYS command in the main menu.

 

   In the DMS.RAPGEN main menu you may now enter the command KEYS (or just K) and you will get the following screen:

 

Figur 31 The KEYS command.

 

 DMS.RAPGEN                                16....START/STOP KEYS          

  START/STOP IS ACTIVATED BY KEYS(0) AS CALCULATION, (NAME) IN START FROM 

  START/STOP VALUES ARE ENTERED AS EG:110101‑110299,170101,471100‑471199  

                                                                          

                                                                           

                                                                          

                                                                         

                                                                           

 START/STOP NAME:                                                         

 MESSAGE:                                                                 

                                                                          

 

As name of the definition you can state 1‑6 characters. In this module a textfile named:

        0/DMS‑KEY‑xxxxxx    will be builded.

 

If the file is already present it will be read.

 

These files are always created on the same disc lu as DMS.RAPGEN itself.

 

18.26.3.     Entering the start/stop values.

 

   After this you will go to a simple texteditor where you can enter up to 99 lines of 76 characters each:

 

Figur 32 Entering the start/stop values.

 

  DMS.RAPGEN                                16....START/STOP KEYS         

   ....,....!....,....!....,....!....,....!....,....!....,....!....,....! 

   START/STOP VALUES ARE ENTERED AS EG:110101‑110299,170101,471100‑471199 

   START/STOP VALUES:                                       0/DMS‑KEY‑A   

   1 110101                                                               

   2 110101‑110199                                                         

   3 110101,110199                                                        

   4 110101‑110199,174711                                                 

   5 110101,2:ABC‑DEF                                                     

   6 47/110101                                                            

   7 110101‑110199                                                        

   8 120101‑120199                                                        

   9 110101‑110199,120101‑120199                                          

  10                                                                      

  11                                                                      

  12                                                                       

  13                                                                      

  14                                                                      

  15                                                                      

  16                                                                       

  17                                                                      

  18                                                                      

  19                                                                       

  MESSAGE:DEL/INS CAN BE USED TO DELETE/INSERT LINES.                     

 


Here you can enter the start/stop ranges for one or more reports (see below).

 

    1.  110101                this record (start=stop=110101)

    2.  110101‑110199         a range from ‑ to

    3.  110101,110199         two single numbers

    4.  110101‑110199,174711  any combination of this

    5.  110101,2:ABC‑DEF      shift to index 2 with 2:

    6.  47/110101             47 may be used in calculation

The definition is ended by END and you may continue with the next definition. If you press END once more you return to the main menu.

 

18.26.5.     Functions in the editor.

 

   You can use the arrows on the keyboard to go forward/backwards on a line and to insert/delete characters.

   With cr. you go to the next line.

 

    @    in first position will also go to next line

    ­    goes one line up

    12   if you just enter one or two digits you will jump to this line

    INS  insert a number of lines

    DEL  delete a number of lines

    END  end and write the definition

    SPR  abort without writing the changes

 If you want two different ranges printed on a report this may be done either by giving two lines:

 

                    110101‑110199

                    120101‑120199

or by just one line:

                    110101‑110199,120101‑120199

 

Below you will notice that dependent of how you activate the KEYS subfunction in the report these definitions will either;

 

    a.  be handled completely equal or

    b.  act as two separate starts of the report with separate totals, pagenumbers etc.


18.26.7.     Activating the KEYS function in a report.

 

   To activate this function you must state a calculation line as: KEYS (0)

 

   It does not mather is this is done first/last or in between the other calculation lines.

 

Figur 33 Activating the subfunction.

 

 

  DMS.RAPGEN        3 ARTICLE LIST           4....DEFINE CALCULATIONS   

    1 ARTICLE NO                19 @FREE                                

    2 DESCRIPTION               20 @FREE                                

    3 SELLING PRICE             21 @FREE                                

    4 COST PRICE                22 @FREE                                

    5 DATE OF LAST PURCHASE     23 @FREE                                

    6 SUPPLIER NO.              24 @FREE                                 

    7 ARTICLE GROUP NO          25 @FREE                                

    8 STOCK BALANCE             26 @FREE                                

    9 ALTERNATIVE SUPPLIER      27 @FREE                                

   10 FREE                      28 @FREE                                

   11 @FREE                     29 @FREE                                

   12 @FREE                     30 @FREE                                

   13 @FREE                                                              

   14 @FREE                                                             

   15 @FREE                                                             

   16 @FREE                                                             

   17 @FREE                                                             

   18 @FREE                                                             

                                                                        

  CALCULATIONS ARE TYPED AS EF: #60=#21+#22 , PERCEMT AS EG. #61=#62%#63

  #DD=DATE,#PD=AS OF DATE,#D1=DATA,#DA1=ALPHA.DATA,WHEN=WHEN TO CALCULAT

  CALCULATION:KEY(0)                                                    

  MESSAGE:  KEYS                                                         

 

 

 

 

 

18.26.9.     Start of a KEYS report.

 

   You may start such a report just as any other report but a new facility has been introduced using the KEYS subfunction. In

START FROM

you may now enter eg. (A) if you have made a definition named A. All ranges/single values in this will now be printed on the report.

 

Figur 34 Start of a KEYS report.

 

   DMS.RAPGEN    3 ARTICLE LIST       9....START AND GENERATE REPORT     

                                                                         

       TODAYS DATE ?  120590                                             

                                                                         

       AS OF DATE  ?  120590                                             

                                            INDEX:                       

       START FROM  ?  (A)                   1:ARTICLE NO.                

                                            2:SUPPLIER NO.               

       STOP AT     ?                                                      

                                                                         

                                                                         

                                                                          

                                                                         

                                                                         

                                                                         

                                                                          

   MINIMUM TOTAL LEVEL TO BE PRINTED (0‑ 1 , 0=WHOLE LIST) ? 0           

   START:( Y=PHANTOM , S=SCREEN , P=PRINTER , N=NO ) ? Y                 

                                                                          

   MESSAGE:                                                              

 

 

 

 

By giving the definition name in brackets we are able to connect the start/stop from this to the report.

 

   If you just have got a few values you do not even have to create a definition for this. You can state it directly in START FROM as:

        (111101‑111199, 120101, 147100

 

   and the values will now be taken from this input as if you had created a definition. The ranges may be continued on the next line STOP AT if you exeed the 30 characters limit of the field.

 

   Note this function is activated by just giving a start‑bracket without any end‑bracket. However if you enter the endbracket also this function is activated anyway if the range specification is more than 8 characters it is not a definition name.


18.26.11.     Functions and parameters.

 

   The KEYS subfunction has two parameters:

 

18.26.12.1.   One or separated reports. 

 

 

        KEYS(0)      defines print of just one report for all the given ranges with a total at the very end.

 

        KEYS(1)      handles each line in the definition as a separate report it is totals are printed before next definition line

                         is used and this will start on a new page with page number one.

 

For sorted reports and for letters only KEYS(0) is relevant.

 

18.26.12.3.   Fixed definition file.

 

        KEYS(0,"A")  The second parameter may be used to state the name of the definition file.

                           If you then just press cr. in START/STOP this definition will be used.

                           However you may still enter (B) or a normal range in START/STOP.

 

18.26.12.5.   KEYS calculationcode 47/xxxx.

 

   For example you can enter 47/111101-111199,150101 in a KEYS definition file.

 

   47/ doesn't refer to a START/STOP interval but is the value returned when calling the KEYS command. You can hereby code the following:

 

     #20=KEYS()

 

receiving the value 47 in #20.

 

   By using the KEYS definition special reports can be produced, where the report is sorted by #20 or in other ways calculated on the value of the field. The value can shift many times during the KEYS definition file.

 

18.26.13.     Special definition files.

 

   With the KEYS function in DMS.RAPGEN you are able to edit definition files of a maximum of 99 lines of each 76 characters.

 

   If you need more or longer lines you may create the definition file by any texteditor as eg. PAID as it is just plain textfiles.

 

   You can avoid the prefix 0/DMS‑KEY‑ if you state the lu when using the definition. (A) or KEYS(0,"A") uses 0/DMS‑KEY‑A but (0/A) or KEYS(0,"0/A") uses the textfile 0/A.

 

   Due to security reasons the texteditor in DMS.RAPGEN can only handle files prefixed o/DMS‑KEY‑.

 

18.26.15.     Sorting start/stop values.

 

   If you enter a number instead of a name when making the KEYS definition, for example 4711 instead of CH15, the numbers in the definition file will be sorted when the KEYS definition is ended. The report will then be printed in client-order without sorting the report.


18.27.       The LET command.

 

   With the BASIC LET statement you are able to set one field equal to another, eg. #17=XX#7.

 

   When working with file updating you may wish to move a large block of fields from one file to another. If you have got 87 fields in the file you would have to write 87 calculation lines.

 

   As a programmer is born lazy the report generator now has got the LET command:

 

        LET (#1‑10=XX#1‑10)   is a short form of writing 10 lines:

 

        LET #1=XX#1

        LET #2=XX#2

            .

            .

            .

        LET #10=XX#10

 

 DMS.RAPGEN recognizes the LET command from the nomal BASIC LET statement as in the command LET is followed by a bracket ( which is never allowed in BASIC.

 

   If you mix fieldtypes, eg. by setting alphanumeric fields equal to numeric fields, the field format of the numeric field will be used to form the textstring. LET (#5=XX#5) would then act as fx. the BASIC statement  LET #5= XX#5 USING "####".

 

   A receiving textfield will always be padded with blanks so you do not have to concern about this.

 

The LET command may be used in different ways which is shown by the following examples:

 

    1)  LET (#20‑30=0)

        The fields 20 through 30 is set to zero.

        If any of the fields are alphanumeric these will be filled with spaces.

 

    2)  LET (#20‑30=1)

        The fields 20‑30 is set to one (or any other figure).

        Note that alphanumeric fields will become the value "‑ / ‑ " and will NOT be padded with spaces in this case.

 

    3)  LET (#1‑10=XX#2‑11)

        The fields 2‑11 from the file XX is moved to the fields 1‑10.

 

    4)  LET (XX#1‑10=#2‑11)

        The fields 2‑11 is moved to file XX field 1‑10.

 

    5)  LET (XX#1‑10=#2,5,7)

        The fields 2,5 and 7 are moved to file XX field 1, 2 and 3. The fields XX#4‑10 will be zeroed.

 

    6)  LET (XX#1‑3,5,YY#10=ZZ#6‑9,NN#10)

        You may mix different files on both sides.

 

    7)  LET (#1‑10+=1)

        By use of += you can add one to all the given fields.

        ‑,*,/,­ may be used instead of +.

 

    8)  LET (#20‑30+=XX#40‑50)

        You may also add a number of fields to other fields.

 

    9)  LET (#10‑19=#20‑21,+#22‑23,‑#24‑25,26)

        Here the fields 20‑21 are moved to field 10‑11, field 22‑23 are added to field 12‑13,

        field 24, 25 and 26 subtracted from field 14, 15 and 16, and the fields 17, 18 and 19 are zeroed.

 

   10)  LET (#10‑11,+12,13‑14‑16=#20‑26)

        The operators may be written on the lefthand side of the expression.


18.29.       The LET command with ON.

 

   LET (#1-10=0) reduces the normal 10 lines of code to zero field 1 to 10 to one single line.

 

   By using LET (...) ON ... it is also possible to reduce conditional statements.

 

18.30.1.     Columns.

 

   In reports where the layout is divided in columns the calculations normally contain several conditional statements if the fields 41-50 are printed as a column.

 

     LET (#41-50=0)

     IF #5=1 LET #41=#20

     IF #5=2 LET #42=#20

                   :

                   :

     IF #5=10 LET #50=#20

   These lines can be reduced to the following using the ON command:

 

     LET (#41-50=0)

     LET (#41-50=#20) ON #5

 

   By adding ON #5 RAPGEN will generate the required IF statements.

 

18.30.3.     Transactioncode-simulation.

 

   LET (#41-50+=#20) ON #5 generated the following lines:

 

     IF #5=1 LET #41=#41+#20

     IF #5=2 LET #42=#42+#20

                   :

                   :

 

   This can typically be used in START/NEXT/OM loops on a transaction file to sum the balances depending on a transactioncode. If the number of transactions are to be summed instead:

 

     LET (#41-50+=1) ON #5 which generated the lines:

 

     IF #5=1 LET #41=#41+1

     IF #5=2 LET #42=#42+1

                   :

                   :

 

18.30.5.     Monthly balance.

 

   LET (#40=#21-30) ON #5 generates the lines:

     IF #5=1 LET #40=#21

     IF #5=2 LET #40=#22

                   :

                   :

   This example could be related to get balance from the general ledger file based on the month.

 

18.30.7.     Calculations in ON-part.

 

   Instead of just using #5 in the ON part any calculation can take place. The calculation may not contain call of subfunctions.

 

     LET (#41-50=#20) ON #5-1 generates the lines:

     IF #5=0 LET #41=#20

     IF #5=1 LET #42=#20

                   :


18.30.9.     Multiple fields.

 

   In the previous example multiple fields has only figured on one side of the equalsign.

 

     LET (#41-50=0) ON #5   or

     LET (#40=#31-30) ON #5

 

   If multiple fields are given on both sides:

 

     LET (#40,45=#21-30) ON #5 the IF value changes for each fieldgroup

 

     IF #5=1 LET #40=#21

     IF #5=1 LET #45=#22

     IF #5=2 LET #40=#23

     IF #5=2 LET #45=#24

                   :

   As when using the normal LET command without ON it is possible to refer to different files.

 

18.30.11.     Balance year to date.

 

   Suppose you want to sum a row of fields up to a certain month:

 

     #40=0     /* remember to zero the field

     LET (#40+=#21-30) ON #5<=X generated the lines:

 

     IF #5<=1 LET #40=#40+#21

     IF #5<=2 LET #40=#40+#22

     IF #5<=3 LET #40=#40+#23

                   :

 

18.30.13.     X and logical operators.

 

   As the previous example illustrates X can be used after the ON command. X is replaced with (1-...) which the current line is set to. This makes it possible to enter a number of LET statements with < <= > >= = <>.

 

18.30.15.     'Odd' values after ON.

 

   When using ON the values won't always fit the sequence 1,2,3.... In this case the following syntax can be used:

 

     LET (#41-50=#20) ON #5=7,17,5 generating the lines:

 

     IF #5=7  LET #41=#20

     IF #5=17 LET #42=#20

     IF #5=5  LET #43=#20

     IF #5=7  LET #44=#20

                   :

 

   When all values given after the ON command are used the sequence is reset. This equals entering the total sequence as 7,17,5,7,17,5,7,17,5,7.

 

18.30.17.     Textfields after ON.

 

     LET (#41-50=#20) ON #5   generates the lines

     IF #5="1" LET #41=#20

     IF #5="2" LET #42=#20

 

   if #5 is a textfield.

   It is also possible to enter 'odd' values when using textfields, giving:

     LET (#41-#43=#20) ON #5=CM,OS,CH     generates the lines

     IF #5="CM" LET #41=#20

     IF #5="OS" LET #42=#20

     IF #5="CH" LET #43=#20


18.31.       LOWER lower case letters.

 

     #50=LOWER(#2) converts textfield 2 to lower case.

 

18.33.       LTOT fixing the lowest total level.

 

   On some reports you will never want the complete report printed but just the totals.

If you place the calculation line:   LTOT(1)

 

the lowest total level for the report will be fixed to 1 no mather what is entered by start of the report. The question is not removed from the start screen.

 

   Especially will LTOT(9)  supress all printout from the report and may be used with updating reports.

 

   You may also use the LTOT subfunction to determine what was entered as lowest total level by start as to control special calculations depending on this:        #47=LTOT(‑1)    

 

18.35.       MERGE Mixing multiple files.

 

   With this function up to 9 files can be mixed. An example can be a client file from two different companies that when mixed gives a total client list.

 

   Reports using this function always has to be sorted (according to client number) because MERGE controls files using the sort mecanism. If a report is defined with the first client file KA the following calculation lines will mix it with the second client file KB:

 

     FIRST

     MERGE (KB)

 

   In this example the files KA and KB has to have identical definitions (READ-statements).

  

   Another parameter can be parsed to MERGE giving the physical filename. For example it can be used to compare with another company's client file.

 

     FIRST

     MERGE (ka,"03/CLIENT.007")

 

   With the BASIC variable K0 you can determine from which file the current record has been read. If K0 equals 1 the current record has been read from a main file, if 2 from the first merged file, if 3 the second merged file etc.

 

   If the files merged has different definitions the fields are to be regrouped on the basis of the value in K0:

 

     FIRST

     MERGE (KB)

     NORMAL

     IF K0=2 LET (#1-10,17=KB#1-10,43)


18.37.       MESS Message and possible abort of run.

 

   With the MESS subfunction you can send a message to the screen which started the report:

 

            MESS ("some message")

 

will send some message to the user who started the report.

 

   MESS is usually just placed as FIRST or LAST calculation or as IF...MESS as you will get a message for each record else.

 

   You can also abort the report run by stating a second parameter:

 

            #47=#47+1

            IF #47>100 MESS("FINISHED.",1)

 

will abort the run after the first 100 records.

 

   The message will always be recorded in the systems logbook.

 

18.39.       MTOT Highest total level to be printed.

 

   MTOT (1) sets the highest total level to be printed to 1.

 

   MTOT can be used to supress meaningless totals.

 

18.41.       NAME isolating christian/last name.

 

   By use of the NAME subfunction you are able to pick out the christian and/or the last name from a name field for especially sorting of the report.

 

   This subfunction corresponds to the LOAD NAME function, referr to this section also.

 

#47=NAME(#3) will is possible build the string lastname, christianname in field 47 from the name in field 3.

 

You may get further informations by stating more parameters:

 

                    #47=NAME(#3,#48,#49,#50)

   returns also:    #48  christianname lastname

                    #49  christianname

                    #50  lastname

 

18.43.       NODATA deactivate all #Dx fields.

 

   If you in a report have used any of the #D1‑#D7 start data input fields in the calculations there has been no way to get rid of this input even if the calculation lines were removed.

 

   If you place the line:

 

         NODATA()   

 

all such fields will be deactivated.


18.45.       NOIX Supress index-update (saves space).

 

   This function is suitable for large reports performing updating files where the fields used doesn't relate to any index in the file. NOIX can not be used on reports that doesn't update.

 

   NOIX() as a calculation supresses RAPGENs entire index-update function saving a lot of space.

 

   NOIX can be entered in connection with the SPEED function.

 

18.47.       NOPAS Deactivating of password.

 

   If you define a report with file update this report will become password protected (see the chapter file update with DMS.RAPGEN).

 

   If you place the line:   NOPAS()   this password will be removed. 

 

18.49.       NOPRT Supress all print (saves space and paper).

 

   This function suitable for all updating reports where print isn't needed. The result of the execution will be listed in the TAMOS logbook.

 

   NOPRT() as a calculation supresses the print function from the report.

 

   NOPRT can be entered in connection with the SPEED function.

 

18.51.       NUMBER conversion of 'dirty' numbers.

 

   It may occur that numbers are entered in textfields with separator characters which make it difficult to use as figurs. It may be a date as 15/11‑89 or a phonenumber 01)248340.

 

NUMBER is used to convert such an alphanumeric field to a numeric:

 

        #47=NUMBER(#8)

 

converts field 8 to a numeric field 47 as all separators will be removed.

 

   01248340, 01)248340, 01‑248340 and 01 24 83 40 all becomes 1238340 as the date 15/11‑89 becomes 151189.

 

   The EDIT subfunction may be used to create a new edit standard for the field eg:

 

        #8=EDIT(#47,"&&)&&&&&&")

 

   may be used to create a new phonenumber standard as 01)248340. 

 

18.53.       NUMS convert alphanumeric to numeric.

 

   If numeric figures are stored in textfields in a file you have to move these to numeric fields before you are able to calculate with these.

   If you should add the values of the textfields 15 and 16 you would have to write this in 3 lines: 

 

            #47=#15

            #48=#16

            #49=#47+#48

 

 as the direct #49=#15+#16 would cause basic error.

 

   With the NUMS subfunction you can convert textfields on the line:

 

                                      #49=NUMS(#15)+NUMS(#16)

 

will not require lines/freefields to add the two textfields.


18.55.       OPEN opening of files for reading.

 

   This subfunction is descriped in chapter 15 ‑ file update with DMS.RAPGEN.

 

   OPEN("XX","3/FILE") opens the file 3/FILE instead of the report file xx.

 

18.57.       PACK packing of fields.

 

   This function is used only in special cases were keys/fields must be packed manually.

 

   PACK will make this packing easyer:

 

    R$=PACK(R$)                         packs the key R$

    R$=PACK("&&&&",#47)                 converts the numeric field to text according to the format specification and

                                        packes this.

    R$=PACK(#3),#4,PACK(#5),PACK("01)   pack may be used multiple times on one line.

 

Refer also to UNPACK.

 

18.59.       PCIN and PCOUT exporting directly to PC harddisc/floppy.

 

   To use these EXPORT/IMPORT subfunctions you must have the ERNA PC‑card which enables you to adress the PC directly without use of the BCU.

 

   Futher informations of this are avaiable on request.

 

18.61.       PHONE conversion to new danish phonenumbers.

 

As of 1/1‑1990 all danish area codes was changed.

 

   #50=PHONE(#1) converts the old number to a new number according to an external table. See the danish manual for details.

 

18.63.       PLCOUT exporting directly to a PLC line.

 

   This is a variant of EXPORT and enables you to transmit directly to a PLC communication line from a report. The subfunction must be modifyed for each installation by a programmer for host computer name etc.

 

18.65.       POUT Output of text / control codes directly on printer.

 

   POUT("text") is used to print text directly on printer without entering the text in function 7. This functionality is very usefull to ouput control codes:

 

     POUT("@Q;")  sets NLQ on. The ; indicated that no line-feed is to be send.

 

   The function works even if the printer has to control-codes defined, because POUT then uses the standard control codes from DMS.RAP.LPT.

 

18.67.       PRIO set priority.

 

Purpose: System tuning.

 

   Some heavy sorted reports you may wish to run with low priority in order to now slow down other users. If yoy place a FIRST calculation:

 

    FIRST

    PRIO(1)

    NORMAL

 

 the priority during the run will be the lowest (1). The priority is reset when the report is ended.

 

   DMS.RAPGEN may be installed without this subfunction if you are afraid of unauthorized use.


18.69.       PXOUT Export directly to PC-harddisk using ERNA.

 

   With ERNA-8870 emulation and the function call PXOUT("1-10","C:/DIR/NAME") you can export directly to a CSV file on the PC-harddisk. The function is identical to the EXPORT function but the filename refers to a DOS-file.

 

   PXOUT performs the same task as PCOUT thus using the new transfer method which TEXTTRAN uses.

The NIXDORF system doesn't need special configuration to use this function.

 

18.71.       PZOUT Print directly to PC-harddisk using ERNA.

 

   With ERNA-8870 emulation and the function PZOUT("C:/DIR/NAME") you can redirect the entire print to the PC-harddisk without having to transfer anything else.

 

   The report is the be executed from a PC with ERNA installed. The printer to be selected is P (screen printer) because the transfer is controlled from the PC-screen as TEXTTRAN. Transfer from two windows at the same time is not possible.

 

18.73.       RATE get COMET TOP currency rate.

 

   #20=RATE(#3)

 

   will on a COMET TOP system pick the rate for currency no. #3 from the ccy file GF‑04000xxx. The first call for this subfunction will bild an internal table of the rates so the file will not have to be accessed everytime a rate is needed.

 

   #20=RATE (#3,#21,#22,#23) will deliver in field 21,22,23 the ccy NAME, no.of decimals and the unit also.

 

18.75.       RUND definition of FNR round.

 

   When calculating decimal numbers you normally use the function FNR. The FNR function rounds by default the result to two decimals. With RUND you are able to change the round factor:

    

     RUND (5)

     #50=FNR(12.65*25/100)   /* 3.1625 ==> normally 3.16 but in this case 3.20

 

where the result in #50 will be rounded to the nearest x.x5. If RUND(25) was entered the result would have been 3.25, if RUND(100) then 3.00.

 

   All FNR calls uses the the last round factor given. This allows you to change the round factor during execution:

 

     IF #7=1 RUND (5)

                   :

                   :

 

   If the value parsed to RUND is negative, RUND(-5) the value is rounded to the nearest lower value.

 

18.77.       SIZE Optimize space requirement in large reports.

 

   With the SIZE() function RAPGEN adds another step to the generation. The step performes the task identical to the operative systems UNCOMMENT. Almost all comments are removed from the program source. The task slows the generation time with approx. 1/2 minut. In return you are able to define very large reports.

 

18.79.       SMAA Convert names from upper to upper/lower case letters.

 

   #50=SMAA (#2)  converting textfield 2 to upper/lower case letters.

 

   If field 2 contains the name CHRIS HANSON the field 50 will result in the text Chris Hanson.


18.81.       SOGE Generating searchkey from addressfield.

 

   This function is used to generate a searchkey using a field containing an address. The searchkey field can as an example be used to sort the report later on.

 

     #50=SOGE (#3,15)  will generate such a searchkey. #3 is the addressfield and 15 is the position in the field where the housenumber is positioned.

 

   If field 3 contains the text Grenå Gade 2, 1.tv the field 50 will result in the text GRENÅGADE_____0002. The address 17 Rue de Jambon will result in RUEDEJAMBON___0017.

 

18.83.       SORTWORK multiple sort-files.

 

   RAPGEN normally works with only one sort-file unless several RAPGEN systems has been installed with seperate sort-files attached.

 

   At installation you have to plan how many sort-files you may need. When planning you have to consider the fact that each sort-file demands a large amount of diskspace.

 

   RAPGEN version 01/10-92 or later will try to open the sort-file DMSORTWORK. If the sort-file is occupied RAPGEN will automatically try to open a new sort-file DMSORTWORK01. If this sort-file is occupied it will try with DMSORTWORK02 etc. until no more sort-files exists.

 

   If you want to sort multiple reports at the same time and the diskspace required is available it is possible to lock a report to a certain sort-file using the command:

 

     SORTWORK (47)

 

   The report will then use the sort-file DMSORTWORK47. The sort-file has to be created before it can be used by the report. It can be done by calling the program BUILDXF, name: DMSORTWORK47, number of records: ?????, recordlength: 15, keylength: 15.

 

   Using the syntax:

 

     SORTWORK (-47)

 

RAPGEN will build the sort-file automatically. The number of records is determined by the number of records used by the mainfile of the report.

 

18.85.       SPOFF removal of spaces in field.

 

   SPOFF will remove all leading blanks from a textfield.  

A field may contain "  A  " for one record and "A    " for another. With the selection:

 

        FIELDNO:SPOFF(#15)   MINIMUM:"A"     MAXIMUM:"A"

 

   you can ignore all leading blanks.

 

18.87.       STAR functions for financial reports.

 

   These subfunctions are specially developed to simplify the definition of financial reports on STAR systems.

 

   The functions automatically gets bookkeeping dates etc. from VIKA and budgets from BUKA. Summation within the current period is also performed by the functions. This makes the definition of such reports a lot easier. The functions are described in the installation manual for subfunctions and therefore not described further here except for the list below.

 

18.88.1.     STARD Get bookkeeping and period dates.

18.88.3.     STARF Calculate perid/year to date realized and budget.

18.88.5.     STARN Index calculations.

18.88.7.     STARP Define bookkeeping period.

18.88.9.     STARS Regroup current period to period 1.


18.89.       TAPEOUT exporting directly to tape.

 

   The TAPEOUT subfunction has exactly the same parameters as the EXPORT  subfunction, just will the output be written directly to a tape (call 70) and not to a discfile. The tape will be unlabelled and the parameter

 

   FILENAME will have no function in this call.

 

18.91.       TEST testprint function.

 

   If you place TEST("1‑10") in the calculations you will get a print on the screen of field 1‑10, nomatter how the report is defined.

 

   This may be used to find out which data actually passes in the calculations.

 

   You may use TEST("1‑10","$LPT") to get the output to a printer, as you may place the staement before/after the calculations.

 

   The TEST subfunction is a variant of the EXPORT subfunction.

 

Figur 35 Output from TEST("1‑10").

 

  ARTI  DESCRIPTION      SELLING P  COST PRIC  DATE OF   SUP  ART        

  0101  BOLT                  2.00       1.50   1.01.87  271   0         

  0102  TRUCK‑HOPPER      20000.00   10000.00   1.01.85  100   9         

  0110  TRUCK‑WORK       100000.00   60000.00  15.12.86  123   2         

  1001  TRUCK‑WHEEL        1000.00     500.00  31.12.86  205   0         

  1005  TRUCK‑GEARBOX      2000.00    1500.00   1.06.86  100   1         

  2001  BOLT‑SPEC./AL        20.00      10.00   1.01.87  205   9         

  2002  BOLT‑SPEC./BR        25.00      10.00  30.07.86  205   9         

                                                                          

 

 

 

 

18.93.       UNPACK unpacking of packed fields.

 

   Usually all unpacking of the fields are done as defined by installation in the readstatements for the files.

 

   In special cases it may be nessesary to unpack fields in the calculations:

 

        #47=UNPACK(#15)

 

unpacks the alphanumeric field 15 into the numeric field 47.

 

   As the NUMS subfunction UNPACK may be used directly in a calculation:

 

        #47=UNPACK(#15)+UNPACK(#16)

 

or on part of a keyfield:   #47=UNPACK(R$(7,10))

 

18.95.       UPDATE activate file updating.

 

   Refer to chapter 15 ‑ file update with DMS.RAPGEN for details.

 

   When you use the commands REWRITE, WRITE, INSERT or DELETE a calculation statement

 

        UPDATE (1)

 

   must be placed first in the calculation block to activate the file update.

 

18.97.       UPPER Upper case letters.

 

     #50=UPPER (#2)  converts textfield 2 to upper case letters.


18.99.       VALCH values of a textfield.

 

   The VALCH subfunction makes it easy to select that on alphanumeric field should have one of a set of values:

 

        #47=VALCH(#7,"AA,BB,CC")

 

will return 0 if field 7 contains either AA,BB or CC and 1 if not.

 

   You should separate the different values by comma and you may state as many as needed.

 

   Is a selection is placed that field 47 should be equal to 0 only records with field 7 containing one of the given values are printed.

 

        #47=VALCH(#7,"‑AA,BB,CC")

 

   returns the inverse it is 0 if field 7 is not one of the given values else 1.

 

You can use a selection like:

 

        VALCH(#7,#DA1)    MINIMUM:0      MAXIMUM:0

 

and you can enter the allowed values by start of the report.

 

   Leading and traiting blanks in the field will be ignored in the subfunction VALCH.

 

18.101.       VALID values of a nuemric field.

 

   With the VALID subfunction is it easy to select that a numeric field should be one of several different values:

 

        #47=VALID(#15,"1,3,5,10‑15")

 

   returns 0 if the numeric field 15 is one of the values 1,3,5,10,11,12,13,14,15 else 1.

 

If you place a selection like:

 

        VALID(#15,#DA1)    MINIMUM:0     MAXIMUM:0

 

you can enter which codes should be printed by start of the report.

 

        VALID(#15,"‑1,3,5,10‑15")

 

   returns the inverse value it is 0 if field 15 is not one of the given values.

 

VALID may also be used with long numeric constants as datafields:

 

        VALID(#15,"890331,890415‑890420")

 

   See also the VALIX subfunction.


18.103.       VALIX values of a numeric code.

 

   The VALIX subfunction is a restricted but quicker form of the VALID function.

 

   First time you use VALIX an internal table of the different code values is builded. This makes VALIX faster than the VALID routine but gives the following restrictions:

 

    ‑ The code must range from 0‑maximum

    ‑ One byte of core is used for each value

    ‑ The allowed values cannot be changed during the run

 

    VALIX(#15,"1,3,5,10‑15") works just like

    VALID(#15,"1,3,5,10‑15") just faster.

 

   If one of the values exeeds 99 you have to specify the table size for VALIX as a third parameter:

 

        VALIX(#15,"10‑15,471‑480,903",1000)

 

allocates a table of 1000 elements (maximum value).

 

   This means that selection on large numbers as datafields is not possible with the VALIX function due to limited core.

 

18.105.       WEEK convert date/week or week/date.

 

   With the WEEK subfunction you can convert a date into a weeknumber and opposite a weeknumber into a date.

 

   Opposite the FNV function which always takes the first day of the year as week 1, the WEEK subfunction ajusts the first/last week correctly.

 

            #47=WEEK(010189)      gives 8852 in field 47

            #47=WEEK(890101)      nomather how date is given

            #47=WEEK(8852)         gives start date of week 8852.

 

Conversion of week to date requires NIROS 7.0.2 or better.

 

18.107.       WORKD data difference in number of workdays.

 

This subfunction corresponds to the former LOAD ARB, refer to this.

 

            #47=WORKD(310389,050589)

  

calculates the number of working days between the two dates.

 

   This subfunction contains a buildin calendar which may be modifyed for specific countries/companies.

 

Consult your programmer for ajustment of this.

 

   1/2 working days are supported in this function.

 

18.109.       ZERO zero all workfields.

 

   This subfunction allows you to zero one or several workfields by one single statement:

 

     ZERO("51-60")      Zero the fields from 51 to 60.

     ZERO("51,55")      Zero the field 51 and 55.

 

   The function can only be used on workfields.

 

   See also the LET (#51-60=0) command in chapter 15.


19.          File update with DMS.RAPGEN.

 

   File update with DMS.RAPGEN has always been restricted to DATAMASTER files only or files where a programmer has issued a special write permission by installation with and this is still the case. It may be dangerous to update files as you may destroy data by misplaced write statements.

 

   Apart from this updating with the report generator has been restricted to simple rewrite of the fields of the main file only. The main file could be read, and calculations on the fields in this file executed whereafter the record was rewritten with the new values.

 

   With this release the possibilities of file update is extremely extended:

 

        ‑ Update of until 9 files in one report

        ‑ Update of until 15 index of each file

        ‑ Insert/delete of records

 

 This means you will be able to build new files from existing data using the report generator.

 

   These functions are achieved by adding 4 simple but powerfull commands in the report generators calculation module:

 

        REWRITE (XX)      for update of one record

        WRITE   (XX)      for update or insert of a new record

        DELETE  (XX)      for deletion of an existing record

 

 together with two subfunctions to control this:

 

        UPDATE  (1)       to activate/deactivate all update

        NOPAS   ()        to control the standard password protection

 

 and last but not least for your convenience:

 

        LET(#1‑10=XX#1‑10) assignment of a block of fields

 

20.1.        Defining an updating report.

 

   In previous releases an update report had to be defines on a special main file eg. XX,W. You had to decide from the very start that this report should update the main file. For compability this method can still be used.

 

   The new update functions are activated by use of one of the commands REWRITE, WRITE, INSERT or DELETE in a calculation statement. By this the writestatements for the file(s) (DMREAD.XXW) will be loaded into the report program.

 

   If no write statements for the file is present the command will be rejected it is the file is protected.

 

   Anyway the report will still be 'innocent' as none of the update functions actually will be executed. The report can be started and you can test the functions just as normal without updating.

 

You have to place the statement:    UPDATE (1)

 

   as the first statement is the calculations of the report. By doing this the report will now execute the update commands and write to the specifyed files.


20.3.        UPDATE activate the updating.

 

   All update from a report will be deactivated until the subfunction UPDATE is called in the calculations with a value unequal to zero.

 

Typically you would place a first calculation line as

 

        UPDATE (1)

 

after you have tested the report and it is ready for production run.

 

        UPDATE may be called with 4 different parameters:

          0    Update not active

          1    Update active

          2    Update active as 1, in case of errors the run will be aborted 

          3    Update active as 1,  any errors will be ignored completely

 

 As UPDATE is a subfunction you may give an calculation expression as parameter instead of just 0, 1, 2 or 3. This may be used by placing:

 

        UPDATE (#D1)

 

which will activate one of the start‑data fields of the report.

 

   When the report now is started you may enter 0 or 1 as you wish this run of the report to update the files or not.

 

   The UPDATE statement should be placed as the first statement in the calculations as updating is not activated until this statement is executed. Anyhow it is possible to change the update modem during the run, eg. you may use UPDATE (2) during critical sequences or UPDATE (0) during the sort phase.

 

20.5.        NOPAS deactivation of password.

 

   An updating report will imidiatly be password protected when you issue one of the commands REWRITE/WRITE/INSERT or DELETE.

 

   As you have other possibilities to protect the report using eg. username or insert the program in TAMOS selector you is able to deactivate this standard password.

 

By placing the calculation statement:

 

        NOPAS ()

 

the standard password is removed and you may protect the report in other way or just start without any password.

 

   You may place the NOPAS statement anywhere in the calculations, first or last as you want.

 

20.7.        REWRITE (XX) update of a record.

 

        REWRITE (XX) will rewrite the new contents of a record to the file.

 

   To execute this function a record should be read from the file beforehand.

 

   In case XX is the main file of the report a record will always be read and present and REWRITE (XX) will work just as you had defined the report on the main file XX,W as in previous releases. But if the index fields of the file are changed the index keys will be updated!

 

   If XX is not the main file you must have issued a READ (XX) in the calculations before you are able to use REWRITE (XX).

 

   If you are missing this READ or if the read has not actually found any record the REWRITE (XX) statement will just be ignored by the report generator.


20.9.        WRITE (XX) update/insert record.

 

       WRITE (XX) works just as REWRITE (XX) if you have read a record from the file XX it is if XX is the main file or a previous READ (XX) statement has been executed succesfully.

 

   If this is not the case, eg. the READ (XX) did not find any record with the given key value, the WRITE (XX) will work as INSERT (XX) and create a new record in the file.

 

   Of course you have to place all relevant new values in the fields to be writen and especially the index key fields should be set.

 

   You should note that the READ (XX) will zero all fields in the XX record if no record with the given key value are found and XX is not the main file of the report.

 

20.11.        INSERT (XX) creation of a new record.

 

        INSERT (XX) will create a new record in the file XX and write this.

 

   You should take care that all index key fields has been set up probably before the INSERT is executed.

 

20.13.        DELETE (XX) deletion of a record.

 

        DELETE (XX) will remove a record from the file XX and of course you should be carefull using this function.

 

   ESPECIALLY you should note that if XX is the main file of the report and you just place a DELETE (XX) in the calculations ALL records in the given from/to range for the report will be deleted!

 

   The NORMAL calculations is executed BEFORE any selections is done. If you just want selected records to be deleted you should place the DELETE in the

 

        AFTER

 

calculations or make the delete conditional by:   IF........DELETE (XX)

 

20.15.        Updating of the file index.

 

   A file may have up to 15 index and these will be updated by the report generator if defined.

 

DATAMASTER will always define index for the files so these are updated.

 

   By writing a record the report generator checks if the fields which are components of an index has been modifyed. In this case the index key will be modifyed.

 

   Now it may occur that an index cannot be updated normally due to duplicate key. If this happens for the 7'th index after updating index 1‑6, all update will be rolled back and the file left unchanged whereafter an error message is given.

 

   It is possible for a programmer to define file update for not only DATAMASTER files with or without index updating. Eventuelly only write on 'non‑critical' fields may be defined.

 

   By use of the WRITE and REWRITE commands you will be warned if index update is not defined. In the case WRITE and REWRITE will act as the same command, only the fields in the record are updated.

 

   If you try to use the INSERT or DELETE commands on such a file you will get an error message. Is you furthermore try to start such a report the run will be abandoned immediatly with the same error message.


20.17.        Changed structure in the main file handling.

 

   By definition of a report on the file XX you could in previous releases use the fields XX#1, xx#1, Xx#1, xX#1 and #1. It is 5 different records from the same file could be used eg. for 5 labels on a row.

 

   This function is kept unchanged but the READ (XX) is changed from handling a separate record to be working on the main record itself.

 

   This is nessesary to implement writing of the main file by use of the WRITE (XX) command.

 

   Reports using READ (XX) of the main file will still be working but by the first amendment of the calculations on such a report with this new version you will have to change all XX fields to eg. xx.

 

20.19.       Error handling by updating.

 

   You should of course always test your updating report without activating the writing by the UPDATE command.

 

   Errors during file updates may be serious and will always be written to the system logbook.

 

   Also the error message will be printed on the printer on the line above the report in error. By this the reader of the report print will be notifyed of the error. Naturally such error messages may disturb a nice list but this is better than not noticing the error.

 

   In case of attempt to use the INSERT/DELETE commands on a file where index is not defined the report will be aborted after this error message.

 

   By 'normal' error messages such as record key already present in the index an error message is given with filename, index, error number and if possible the index key value in error. By use of the UPDATE (1) you have specifyed that the run should continue or by UPDATE (2) that the run should be abandoned after the message.

 

20.21.

15.11.       Where to place the update statements.

 

   You should be extremly carefull by placing any WRITE/DELETE in the NORMAL calculations as this block of statements is carried out BEFORE selections for all records and also during the SORT phase of a report run.

 

   Normally you should use AFTER calculations when using update on a selected report.

 

   By sorting of a report or by use of calculated totals you will have to use the WHEN command, normally to control the update.

 

   In case of calculated totals on a report you may build a new file containing totals from this report run.

 

20.23.       LTOT freeze lowest total level.

 

   When running reports with updating of files you will not always want the complete report printed but just the updating to be done.

 

   If you starts the report with LOWEST TOTAL LEVEL as 9 the printer will be deactivated it is no output at all.

 

   If you want to have a confirmation page for the run you may set LOWEST TOTAL LEVEL to 1 causing only one line with the grande total to be printed. In this way also eventually error messages will occur on the list.

 

By placing the line:    LTOT (1)

 

   in the calculations the lowest total level for the report will be locked to 1 no mather what is given by start of the report. The question of lowest total level will still occur but you can just press cr.


20.25.

15.13.       Updating the main file main index.

 

By use of the write function you may change any index in a file.

 

   If you change the index in the main file on which the report is running it may occur that this record will show on the list again later placed correctly according to the new key.

 

   E.g. if you changes the phonenumbers:

 

    01248340 to 31248340 and

    01240415 to 33240415

 

the report will contain 4 printlines:

 

    01240415

    01248340

    31248340

    31240415

 

if the phonenumber is the main index for the report.

 

   The already changed records is found later on in the read sequence and will be handled twice.

 

20.27.       Security against updating application files.

 

   When installing DMS.RAPGEN the programmer will usually just place READ access for all files, it is a textfile DMREAD.XX containing read statements is generated for each file.

 

   DMS.RAPGEN can not in any way write to such files as the definition of the write is mission.

 

   DATAMASTER furthermore makes a textfile DMREAD.XXW containing read, write and index update definitions.

 

   DMS.RAPGEN can be used for updating any file where such a write‑definition is present but only such files. It is usually you can just write to your own defined DATAMASTER files.

 

   The programmer may of course create such a textfile DMREAD.XXW for any file and may in this way install writing for the normal application files. But a programmer which is able to do this will also be able to delete the complete file so no security risk is introduced by this.

 

   We do support any tools to generate writestatements for any other files than the DATAMASTER files. READ statements can be generated automatically but WRITE‑statements must be handwritten and as such confirmed by a programmer.

 

   Only fields placed in the write statements can be modifyed from the report generator. Critical fields as balance can be blocked against update in this way.

 

   If index‑definition is placed (300/8200) in the file DMREAD.XXW also index update and insert/delete is activated for the file which is not possible without these. If index definitions are not present also write of any fields, which is part of the index should be avoided to keep the file consistent.

 

20.29.       Blocking for all updating.

 

   If DMS.RAPGEN is installed without the module DMS.RAPGEN.S7W on the disc all commands for updating will become inactive and will result in basic error if a report containing such is started.

 

   However if the report program is generated already this will be able to run even if DMS.RAPGEN.S7W is missing. A programmer may in this way use S7W as a key to activate/deactivate creation of such reports.


20.31.       OPEN(XX,"3/XXFILE") special file open.

 

   This subfunction is more intended for the programmers use than the normal user.

 

   The file 3/XXFILE will be opened instead of the file XX on the report. The file is opened for READ‑ONLY, protected against writing.

 

   DMS.RAPGEN assumes the file definition for this file is according to the definition of XX.

 

   This function may be used for copy of files or reconstruction/extension of index in the following way:

 

    1)  The report is defined on the file XX.

    2)  The calculations are defined as:

 

        OPEN ("XX","3/OLD‑XX")

        LET (xx#1‑99=#1‑99)

        INSERT (xx)

 

 By this the main file is switched to 3/OLD‑XX, the fields from this is moved to the real xx file activated as a second file on the report (lower case letters) and a new record is inserted in this file.

 

   The new file may have more fields than the old as different calculations may be done during the copy.

 

   The function may also be used to merge different files into one file.


20.33.       Creating new files with RAPGEN.

 

   This function enables the user to define new files from a report and insert data as well. For this purpose the LET command is used WITOUT any fields given on the left side of the equal sign:

 

     LET (AA=#1,7,10-20)

 

which creates a new file with the short-name AA. The file will contain 13 field, e.g. 1,17,10-20.

 

   The names and types of the fields will be as the fields of the mainfile for the report. If using workfields it is then possible to enter the names and formats of the fields yourself. The first field on the right side of the equal sign becomes the file index unless else defined.

 

   The filedefinition is generated at once RAPGEN detect the LET command in function 4 (calculations), which you will see by activating the HLP function right after the LET command is entered. The new file AA will appear on the list of files available for RAPGEN.

 

   When the report is startes the file will be builded on the disk with space for 100 records if nothing else defined. The write-commands (WRITE/REWRITE/INSERT/DELETE) can then be used to add data to the new file.

 

   By defining other reports with AA as mainfile you are able to manipulate the data in any way thus such created files are updateable.

 

   If you have the product DATAMASTER the files created by this function can be used by the DATAMASTER. In this product you can change/add the file definition.

 

   The file will also be accessable in the product IQ where inquery and search programs can be defined.

 

   The files from RAPGEN is builded as normal indexed files and can therefore be used by other special applications. With RAPGENs special file-definition module a complete documentation of the files structure can be printed.

 

   There is full secturity on writing in files not builded by this function or DATAMASTER. Furthermore the physical filename will be named with -DMS- as suffix to prevent conflict with other files.

 

   It is of course possible to control the physical disk location for the file, how many indexes and records to use. This is described in the next section.

 

   A maximum of 99 files with up to 99 fields can be created in a RAPGEN system.

 

Figur 36 Calculations for creating a new file.

 

UPDATE (1)                       /* Aktivate update

NOPAS  ()                        /* Deaktivate password

LET    (AA=#1,7,10-20)

INSERT (AA)

 

 

 

   The figure illustrates calculations used to define the new AA file with 13 fields. The first field, field 1, becomes the file index. The file is build with space for 100 records when the report is started and the data from the main file is inserted in the new file.

 

20.34.1.     Number of records, disk and company id.

 

     LET (AA=#1,7,10-20),2000   builds the file with space for 2000 records the first time the report is started.

     LET (AA=#1,7,10-20),-2000  builds the file EVERY time the report is started, truncating the file each time.

     LET (07/AA=#1,7,10-20)     builds the file on LU. no. 07.

     LET (07/AAabc=#1,7,10-20)  inserts the company id from the TAMOS selector in the file name.

 

20.34.3.     Mix of files.

 

     READ (LE)

     READ (GR)

     LET (AA=LE#1-10,17,GR#3,1,#15)

 

will build the file AA with the fields 1-10,17 from file LE, field 3 and 1 from file GR and field 17 from the main file of the report. LE#1 will become the file index.

 

20.34.5.     Index keys.

 

     LET (AA=#1K,7D,10-20)   defines field 1 as unique key, and field 7 as duplicate key.

     LET (AA=#1-2K,7,10-20)  defines a unique key of field 1 and 2.

     LET (AA=#1,7,10-20;2)   defines that field 2 from AA is to be index (equals field 7 from the original file).

 

   Note that the indexdefinition is seperated from the fields by a semicolon. By entering the index field as a workfield you can control the keyvalue in the calculations.

 

20.34.7.     Multiple fields in the key.

 

     LET (AA=#1,7,10-20;1,2) defines that the key is field 1 and 2 merged together. The maximum of characters in a key is 30.

 

20.34.9.     Multiple keys.

 

     LET (AA=#1,7,10-20;1,2;2,1) defines two indexes. The first is field 1 trailed by field 2. The second is field 2 trailed by field 1. You can defined a maximum of 15 keys per file. RAPGEN will always update all keys correct.

 

20.34.11.     Special keys.

 

     LET (AA=#1,7,10-20;1,2,P)  will pack field 1 and 2 in the key (saves space).

     LET (AA=#1,7,10-20;1,2P)   only packs the second field in the key.

     LET (AA=#1,7,10-20;1;2,NP) allows multiple keyvalues in the second index because the recordnumber is added in the                                  second keyvalue.

     LET (AA=#1,7,10-20;7D)     turns the date in field 7 from DDMMÅÅ to ÅÅMMDD to produce correct sorting.

 

   It is not possible to define an index with a part of a field. For this purpose you have to use a workfield.

 

20.34.13.     Deleting files.

 

     LET (AA=) without any fields given deletes the file and its definition again.

 

20.34.15.     Redefinition of files.

 

   The second time RAPGEN detects LET (AA=#1,7,10-20) in function 4 a question is asked, whether the file is to be redefined (Y/N). If you answer Y the file is deleted and a new is build. Just by changing the fields in the second LET command you can hereby create a completely new file.

 

   Using another report you can copy the file AA into a new file BB and then delete AA. The redefiniton module in DATAMASTER can also be used.

 

20.34.17.     Filenames and other tecnical information.

 

   With LET (AA=#1-10) a file is build with the name 3/DM-DMS-AA, where 3/DM is prefix for 3/DMFILES filedefinition. -DMS- is always inserted to avoid conflict with other files.

 

   LET(07/AAabc=#1-10) the file 07/DM-DMS-AA001 is build, where 001 is the company id from the TAMOS selector.

 

   The field definitions are stored in the file DMDATAFIL8 (subsystem 8). This file is automatically build once with space for 20 records.

 

   The maximum number of files possible can if required be expanded using the call:

 

     #COPY (80:3000)DMDATAFIL8=OLD.DMDATAFIL8


21.          The edit functions 11-14.

 

   As these has been introduced more and more functions in DMS.RAPGEN enabling the user to make nearly any sort of report program with many files involved, the need for user documentation and letter overview by amending the definitions, has increased.

 

   This is achieved by introduction of a new dialog with the user in the new functions 11‑14.

 

   These function may be used together with or instead of the other functions which is kept unchanged.

 

Figur 37 The new functions in the menu.

 

 

  REPORT GENERATOR  ENGLISH VERSION  REPORT GENERATOR # 3 90.05.03/ 0:02 

                                                                         

                 DMS.RAPGEN                                              

                                                                          

                 1 ... DEFINE NEW REPORT                                 

                 2 ... DEFINE SELECTIONS                                 

                 3 ... DEFINE SORTING AND TOTALLING                       

                 4 ... DEFINE CALCULATIONS                               

                 5 ... DELETE REPORT                                     

                 6 ... DEFINE NEW LETTER                                 

                 7 ... AMENDMENTS TO A REPORT/LETTER                     

                 8 ... PRINT OF DEFINITIONS                              

                 9 ... START AND GENERATE REPORT                         

                10 ... COPY REPORT                                       

                11 ... DOCUMENTATION                                     

                12 ... EDIT SELECTIONS                                   

                13 ... EDIT SORTING AND TOTALLING                         

                14 ... EDIT CALCULATIONS                                 

                                                                         

                ENTER CODE:........                                      

                                                                          

   MESSAGE  :  * DEMO COPY ‑ NOT PAID FOR *                  471199      

 

 

 

 

 

 

 

22.1.        The structure of the new functions.

 

   These functions are based on a textmaintenance system enabling the user to move around in the text in a very easy way and amend in any place.

 

   You get a better overview of eg. larger calculation routines when 21 lines are showed in full‑screen mode. Opposite you do not get as much help from the report generator translating the calculation lines into plain text as this would reduce the overview and slow down the text‑editor.

 

   When one of the new functions is ended DMS.RAPGEN will call up the appropriate good old function to complete the definition. After you have amended any calculation with function 14 you will see function 4 is called and the lines rolls fast through this.

 

   This is nessesary to get the calculations translated into a BASIC program. Also the use of new free fields must be handled, this will cause DMS.RAPGEN to stop and ask you to define the field with name and field format.

 


22.3.        The text‑editor.

 

   This module is a simple form of textmaintenance where you easely can move around in the text and insert/delete characters or lines.

 

Figur 38 Editing of documentation with function 11.

 

 

   DMS.RAPGEN   3 ARTICLE LIST            11....DOCUMENTATION            

                       XXXXXXXXXXXXXXXXXXXXXXXXX                         

    1 FROM INVOICE DATE                         (DDMMYY, EG. 311289)     

    2 TO   INVOICE DATE                         (DDMMYY, EG. 150590)     

    3                                                                    

    4 JUST PRESS CR. AS START/STOP KEYS                                  

    5                                                                    

    6 THE LIST WILL BE SORTED BY INVOICE NO.                             

    7                                                                     

    8                                                                    

    9                                                                    

   10 THIS REPORT IS CREATED AS A DEMO‑EXAMPLE DURING ONE OF MR.ALLAN    

   11 STENDERS GOOD RAPGEN COURSES.                                      

   12                                                                    

   13                                                                    

   14                                                                     

   15                                                                    

   16                                                                    

   17                                                                    

   18                                                                    

   19                                                                    

   20                                                                    

   21                                                                     

                                                                         

   MESSAGE: LINE 1‑9 OF THE DOCUMENTATION WILL BE DISPLAYED BY STARTING  

                                                                          

 

 

 

 

 

On a line you may use the arrows to insert/delete characters or to position on the line. If you just press cr. the line is kept unchanged.

 

   With ; you can go one line up, @ will keep the line unchanged and go to next line just like the normal cr. The @ key (function key no. 1) may be used to TABulate on a line in steps of 20 characters.

 

   By simple entering a lineno., eg. 147, at the start of a line, eventually overwriting the present text, you will position to line no. 147. That is if you really want the figure 7 to be placed on a line you will have to type 7 followed by a space to avoid to jump to line 7.

 

   0 will position to the last used line.

 

   The DEL command may be used to delete a number of lines from and including the current line where the command was given. You will be questioned how many lines to delete from this. If you just press cr. nothing is deleted.

 

   The INS command may be used in the same way to insert a number of lines.

 

   The GET command will copy a number of lines from another report. You must give the report number and from/to line  no. on this. If from/to line is just given as cr. all lines will be copied. The copied lines will overwrite any existing lines, use the INS command before the GET command if you want to merge two definitions.

 

   The PRT command gives a printout of the definition text on $LPT.

 

   END finishes the texteditor and if the text has been changed it will now be written and eg. the calculation module invoked. If the text is unchanged you will branch directly to the report generator menu and the report is kept unchanged, it is the program will not have to be generated again even if you have entered the calculation function 14.

 

   The functions 11‑14 may be used just as inquiery programs without any updating.

 

   SPR will cancel all amendments and keep the report unchanged.


   The HLP command may be used as anywhere else in DMS.RAPGEN to get a file overview or a field overview from any file. When you return from the HLP by pressing cr. the last used HLP screen will be kept on the upper part of the screen and you will now use a 'mini‑editor' with just 4 lines at the lower part. Of course you can use any functions from the full‑screen editor.

 

 

 

Figur 39 HLP by calculation editing in function 14.

 

 

   DMS.RAPGEN      3 ARTICLE LIST             14....EDIT CALCULATIONS    

     1 ARTICLE NO                  19 @FREE                              

     2 DESCRIPTION                 20 @FREE                              

     3 SELLING PRICE               21 @FREE                              

     4 COST PRICE                  22 @FREE                              

     5 DATE OF LAST PURCHASE       23 @FREE                              

     6 SUPPLIER NO.                24 @FREE                              

     7 ARTICLE GROUP NO.           25 @FREE                               

     8 STOCK BALANCE               26 @FREE                              

     9 ALTERNATIVE SUPPLIER        27 @FREE                              

    10 FREE                        28 @FREE                              

    11 DB                          29 @FREE                              

    12 DG                          30 @FREE                              

    13 PRICE DKK                                                         

    14 @FREE                                                             

    15 @FREE                                                             

    16 @FREE                                                             

    17 @FREE                                                              

    18 @FREE                                                             

    1 #11=#3‑#4                                                          

    2 #12=#11%#3  /*CALCULATE SOMETHING                                   

    3 READ (LE)                                                          

    4 READ (KU)                                                          

                                                                         

   MESSAGE: : ENTER 'MOD' TO RETURN TO FULL SCREEN MODE.                 

                                                                         

 

 

 

By use of the HLP command you may have any field overview on the screen during the editing.

 

The MOD command may be used to shift back to the full‑screen editor.

 

   MOD may also be used when you are in the full‑screen mode. The upper part of the screen will remain and you will switch to the mini‑editor it is you are able to have the old text on screen while amending on the lower part.

 


22.5.        Function 11 ‑ Documentation.

 

By use of function 11 you are able to enter documentation for a report.

 

   This documentation is printed when you print the report definition with function 8.

 

   The first 9 lines of the documentation will be displayed on the screen by start of the report.

 

   Here you may write instructions for the operator how to start the report or how to handle the output.

 

Figur 40 Start of report with documentation and data input fields.

 

 

   DMS.RAPGEN      3 ARTICLE LIST       9....START AND GENERATE REPORT   

                                                                         

       TODAYS DATE ?     130590                                          

                                                                         

       AS OF DATE  ?     130590                                          

                                              INDEX:                     

       START FROM  ?                          1:ARTICLE NO.              

                                              2:SUPPLIER NO.              

       STOP AT     ?                                                     

                                                                         

   FROM INVOICE DATE  310389                (DDMMYY, EG. 311289)         

   TO   INVOICE DATE  010690                (DDMMYY, EG. 150190)         

                                                                         

   JUST PRESS CR. AS START/STOP KEYS.                                    

                                                                          

   THE LIST WILL BE SORTED BY INVOICE NO.                                

                                                                         

   MINIMUM TOTAL LEVEL TO BE PRINTED (0‑ 1 , 0=WHOLE LIST) ? 0           

   START:( Y=PHANTOM , S=SCREEN , P=PRINTER , N=NO ) ? Y                 

   TESTPRINT / PRINTER SELECTION (Y/N/P/$XXXX) ? N                       

                                                                         

   MESSAGE:                                                               

                                                                         

 

 

 

 

 

If you use the start‑data fields (#D1‑#D7) in a report you will notice the 9 documentation lines are overwriting the text for these on the screen by starting the report. This can be used to name the fields or give extended input instructions instead of the former used naming of a free field as eg. #D1INPUTFIELD.

 

   When editing the documentation on the middle of the first screen line, a row of x's is shown. These given you the input position of the start‑data fields #D1‑#D7, enabling you to write the text according to these positions.

 

   The documentation is stored as plain text in a separate textfile named eg.  0/DMT1047.DOC. Of course the documentation is copied when you copy a report and deleted when you delete a report.

 

   Sometimes you may wish to design your own screenimage complete for the report start. If the first line of the documentation text contains the command:ALL  the first 20 lines of the documentation will be displayed by start. Possible you should try it a couble of times to get your screen positions perfect.

 

   If you in the documentation place the lines:

 

                   INP

                   310393

 

                   4711?

                   INP

 

this will define standard start values it is:

 

   - INP activates the standard input values

   - Todays date will be fixed to 310393

   - As of date is entered automatically just as if cr. was pressed

   - As START FROM default 4711 is used, user may change this

   - INP deactivates standard, STOP AT and total level etc. is manual input

 

The first occurence of INP must be present in line 1-9 to activate this function.


22.7.        Function 12 ‑ editing of selections.

 

   When this function is selected the report selections is transferred to the editor and you can amend these:

 

Figur 41 Editing of selections by use of function 12.

 

 

   DMS.RAPGEN       3 ARTICLE LIST         12....EDIT SELECTIONS         

      FIELDNO.                  MINIMUM              MAXIMUM          !  

    1 #7                        !1                   !5               !  

    2 QUICK                     !                    !                !  

    3 FND(#5)                   !FND(#D1)            !FND(#D2)        !  

    4                           !                    !                !  

    5                           !                    !                !  

    6                           !                    !                !  

    7                           !                    !                !  

    8                           !                    !                !  

    9                           !                    !                !  

   10                           !                    !                !  

   11                           !                    !                !  

   12                           !                    !                !  

   13                           !                    !                !  

   14                           !                    !                !  

   15                           !                    !                !  

   16                           !                    !                !  

   17                           !                    !                !  

   18                           !                    !                !  

   19                           !                    !                !  

   20                           !                    !                !  

   21                           !                    !                !  

                                                                          

   MESSAGE:   :   ENTER 'HLP' FOR FIELD OVERVIEW.                        

                                                                         .                                                                             

                                                                          

 

 

 

 

 

Each line is devided into 3 parts: fieldno., min., max. When you type cr. you move to the next field on the line.

 

   Apart from these coloums the editor is used as anywhere else. The commands INS/DEL/HLP/MOD may be used. The GET command is not implemented as reentering selections normally is quite as fast as copy from another report due to the few lines.

 

   When you END the editing the selections are defined on the report. If a username is connected to the report you must enter it at this line.

 

22.8.1.      Selections on alpha‑textfields.

 

   When you define selections on alphanumeric fields in previous releases of DMS.RAPGEN you had to quote any textconstant eg. "A" or a basic error would occur by starting the report.

 

   DMS.RAPGEN now inserts these quotes. You may select entering "A" or just A. Also <>"A" or <>A will work.

 

   If you select on an alphanumeric field with a numeric value, eg. minimum 10, DMS.RAPGEN will now take numeric value of the textfield and compare with the value 10. If you state "10" the first two characters of the field must be minimum "10".

 

   Selecting on a value 47.11 may now also be written with comma 47,11 in order to eliminate another typical error situation.

 


22.9.        Function 13 ‑ editing of sorting and totalling.

 

   In this function you get a complete schema containing the sort/total definition and you can move around in this:

 

Figur 42 Editing of sorting and totalling.

 

                                                                           

   DMS.RAPGEN         9 ARTICLE LIST    13....EDIT SORTING AND TOTALLING  

                                                                          

    1 SORTING (Y/N):Y                                                     

    2 WEIGHTED TOTALS (Y/N):N                                             

    3 SUBTOTAL LEVELS (AND SORT KEY)                                      

    4 FIELDNO.       NAME           TOTAL   NAME               FORMFEED   

    5 #7             ARTICLE GROUP !Y      !GROUPTOTAL        !N       !  

    6 #2             DESCRIPTION   !N      !                  !        !  

    7                              !       !                  !        !  

    8                              !       !                  !        !  

    9                              !       !                  !        !  

   10                              !       !                  !        !  

   11 CALCULATE TOTALS BEFORE PRINT (Y/N):N                               

   12 FIELDS TO BE TOTALLED                                               

   13 3,4                                                                 

   14                                                                     

   15                                                                      

   16 GROUP TOTALS BEFORE PRINT (Y/N):N                                   

   17 FIELDNO.       NAME           NO.OF VALUES     GROUPNAME            

   18 U6             SUPPLIER NO.  !100             !TOTAL SUPPLIER    !  

   19                              !                !                  !  

   20                              !                !                  !  

   21                              !                !                  !  

                                                                           

   MESSAGE:  :  ENTER 'HLP' FOR FIELD OVERVIEW.                           

 

 

 

 

 

Some lines contains leading textes as SORTING (Y/N): you are positioned just after the : and can enter your choice.

 

Some lines are just headings and are skipped.

 

Some lines is divided into coloums just as when you edit the selections.

 

   The commands INS/DEL and GET cannot be used in this function. If you have too few lines for a definition just END it and you will get extra lines next time you select function 13.

 

   A line is deleted simply by spacing all fields out.

 


22.11.        Function 14 ‑ editing of calculations.

 

   This is possible the most user‑asked function:

 

Figur 43 Editing of calculations with function 14.

 

 

  DMS.RAPGEN      24 ARTICLE LIST          14....EDIT OF CALCULATIONS     

     ....,....!....,....!....,....!....,....!....,....!....,....!....,... 

   1 WHEN 20    SECOND PASS ONLY      ALWAYS                              

   2 READ (OH)                                                            

   3                                                                      

   4 LET (#23‑25=0)                                                       

   5 START (OL)                                                            

   6 NEXT (OL)                                                            

   7 #23=#23+1                                                            

   8 IF #23>10 GOTO A                                                      

   9 REPEAT (OL)                                                          

  10                                                                      

  11 A:#21=OH#5                                                           

  12 READ (DK) #21,P                                                      

  13 FIRST                                                                

  14 IF #D2=0 LET #D2=311289      /* CR. AS END DATE ==> ALL              

  15                                                                       

  16                                                                      

  17                                                                      

  18                                                                       

  19                                                                      

  20                                                                      

  21                                                                      

                                                                           

 

 

 

 

 

You can move around in the calculations completely as you want and use all the editor functions INS/DEL/GET/HLP/MOD. When the editing is terminated with END the definition is completed by automatic invoking function 4.

 

   The calculations is entered just as usually apart from the WHEN command. In function 4 you will get 3 questions when using WHEN, in function 14 you must state two digits just after the WHEN, eg. WHEN 12 answers the first question with 1, the second with 2.

 

   If you use new freefields in the calculation, DMS.RAPGEN will ask you to  give field name and format when the line is passed in function 4 after the editing.

 

   When editing calculations you have got a maximum of 99 lines. If DMS.RAPGEN is installed with 32 KB partition, even 199 lines.

 

22.12.1.      Remarks in the calculations.

 

   You have always had the possibility to place REM comments in the calculations and with the new edit function you get even more overview by doing this.

 

   Now you are also able to make comments to the right of a calculation line by writing eg. #13=#15 /* remark.

 

   This function has until now been reserved for internal use in DMS.RAPGEN but can now also be used by the definition.

 

   However /* remarks is NOT allowed on READ (XX) lines (yet).


22.12.3.      GOTO/GOSUB and RETURN in the calculations.

 

   It has always been possible to use these BASIC functions in DMS.RAPGEN, but the value has been limited as you do not know which linenumbers are generated.

 

The only function which could be used in practice has been:     IF #15<>0 RETURN

by which you can skip all the rest of the calculations if a certain condition is not fullfilled.

 

   Sometimes there is the need to jump in the calculations, eg. end a START/NEXT/REPEAT reading of a file after the first 10 records has been  read. This can now be done by eg.:

 

        #47=0

        START (XX)

        NEXT (XX)

        #47=#47+1

        IF #47>10 GOTO A /* OUT AFTER 10 TIMES

        REPEAT (XX)

        A: #48=....etc.

 

 It is LABELS is introduced in the calculations.

 

   A label is a single letter A‑Z and is defined by writing the letter followed by a : as the first two characters on a line. You can jump to such a label with the GOTO A statement, especially with IF.... GOTO A.

 

   Also you may now write subroutines in the calculations which may reduce the number of calculation lines if the same routine should be used more times, eg. both in the FIRST and the NORMAL calculations:

 

        IF #15=1   GOSUB  N

        IF #16=2   GOSUB  N

        RETURN                     /*  END THE NORMAL CALL

        N:#47=FNR(#47*100/#45)

        FIRST

        GOSUB N                    /*  FIRST USES SAME ROUTINE

 

22.13.        Technic by editing.

 

   When you use eg. function 14 to edit the calculations, DMS.RAPGEN will read the report definitions and create a plain textfile with the extracted calculation lines named DMWORK.XX, where XX being the screen number.

 

   This textfile contains the source calculation lines only not any generated code. The textfile is handed over to editor which could be any texteditor as PAID or other.

 

   When the editing is ENDed the editor checks if any changes in the text has been done. In this case DMS.RAPGEN is invoked with a function no. 10 + the selected function, it is in case of calculations 24.

 

   The hidden functions 22, 23 and 24 are definition of selections, sorting and calculations from the textfile DMWORK.XX without intervenience from the user. These functions are not intended to be called up from the menu but is not blocked for this.

 

   You may use these functions to cheat the report generator. If you select eg. function 13 on report 5 and then press END, your textfile DMWORK.XX will now contain the definition of sorting/totalling for report number 5.

 

   If you now invoke function 23 on report no. 7, this will be defined with sorting from the textfile DMWORK.XX and you have got a copy of the definitions from report 5.

 

   Another use can be to transmit complex calculations written by a programmer by modem to a customer system. The small textfile DMWORK.XX can be transmitted and placed in any report by use of function 24.

 

   If you select function 23 when DMWORK.XX contains calculation definitions you will probably get a funny result. You should not do this.


23.          Other systems, individual adjustments and optimization.

 

   This chapter describes other systems and how to implement RAPGEN.

 

   At this moment RAPGEN can be used on the following systems:

 

     8870         - all operating systems from NIROS 5.0 or later.

     TARGON       - all models of XBASIC. This RAPGEN release supports the latest TOS.

     UNIBASIC     - RAPGEN can now use the new 5% variables.

     XNET         - This version runs in XNET basic on PC platforms.

     INFORMIX     - RAPGEN is also written in C-language with support of C-ISAM / INFORMIX and SQL.

 

24.1.        REPS Multiple report systems.

 

   This command allows the user to create new report systems. RAPGEN creates all files needed to support 66 reports in each system.

 

   In RAPGENs main menu the command REPS can be entered. When entered this screen will appear:

 

 

Figur 44 The REPS command.

 

3/XXREPORTS          ENGLISH VERSION      DMS.RAPGEN          # 0 92.09.27/13:12

   ....,....!....,....!....,....!....,....!....,....!....,....!....,....!....,..

 1                        DMS RAPGEN

 2

 3 1.... DMS.RAPGEN,RAP=3/XX

 4

 5

 6

 7

 8

 9

10

11

12

13

14

15

16

17

18

19                        ENTER CODE:

20

 

 

 

 

   This function uses the same editor as function 14. This allows the user to jump to any line just by entering the linenumber, insert and delete lines with the INS/DEL commands.

 

   By entering the text 2..SECOND RAPGEN,RAP=2/NN in line 4 you will create a new report system with the prefix NN on disk 2. You may create a total of 60 different systems.

   Remember to insert lines to move the text ENTER CODE: as you enter new systems above line 18. The text DMS RAPGEN and ENTER CODE: may be changed.

 

   When RAPGEN is selected a front menu will appear where you can select the desired report system. The same menu appears if inserted in TAMOS selector and FINANS reports.

 

24.2.1.      S Start RAPGEN again.

 

   If S is entered in RAPGEN main menu without returning to TAMOS selector first.

 

24.3.        TAM Insert in TAMOS selector.

 

   Using this function in RAPGENs main menu you can insert a report in the TAMOS selector. The function can only be used in connection with normal TAMOS selectors, not with TARGONs T-menu system.


24.5.        HEAD Individual standard headers.

 

   With this command you can adjust the standard headers RAPGEN generates when a new report is defined with function 1.

  

   In RAPGENs main menu you have to enter the command HEAD giving you the following screen:

 

 

Figur 45 HEAD Individual standardheadings.

 

03/DMS-RAP-HEAD      ENGLISH VERSION      DMS.RAPGEN          # 0 92.09.27/13:50

   ....,....!....,....!....,....!....,....!....,....!....,....!....,....!....,..

 1 REM -------------------------------------------------------------------------

 2 Date #DD     #> - #HD - #> Pr.#PD      Page #PP

 3 #>>-

 4 #

 5 #>>=

 6 REM -------------------------------------------------------------------------

 7 REM

 8 REM REM           A line starting with REM is a commentline

 9 REM #>>-X-        -X- is repeated until max column

10 REM #>PAGE #PP    Right justify text

11 REM #> XXX #>     #> is replaced by the as many blanks as possible

12 REM #             Inserts field headers at the current position

13 REM XXXX>>        >> Last on line ==> continue definition on next line

14 REM

15 REM The following fields can be used:       (no other fields)

16 REM 1. #DD = Todays date

17 REM 2. #PD = Pr.date

18 REM 3. #PP = Pageno

19 REM 4. #KA = File short id

20 REM 5. #SN = Systemname from RAP.SYS, if blank ==> TAMOS company

21 REM 6. #SY = Systemno   from RAP.SYS

22 REM 7. #TI = Time

23 REM 8. #NO = Reportno (+1000)

24 REM 9. #SC = Screenno

25 REM    #HD = Header

 

 

 

  

   In this example line 2-6 contains the header definition. In these lines you can add fields enter constant text.

 

   If you later on want to remove this definition you have to delete all lines with the DEL command.

 

24.7.        DRN file definitions.

 

   This command allows you to maintain the file definitions in the report system instead of returning to TAMOS selector.

 

24.9.        Function 9 - Starting multiple report in one step.

 

   It is possible to enter a sequence of reports to be started as in function 8. For example you can enter:

 

     1-10,17,25,5     Starting these report numbers.

     -1-10            Only generates the reports if not generated before.

     -1-99!           Generates and optimizes the reports of not optimized before.


24.11.        SPEED aggressive optimization.

 

   This function will optimize all report to execute 10-75% faster. Typically the rate will be 50 %.

 

   SPEED is an extra step when generating a report. It will analyse the generated program and optimize it to fast and use as little memory as possible. SPEED is therefore not used when the report is defined and coded but to increase the final

program.

 

   The SPEED command is activated by inserting the calculation line SPEED(). in function 4 or 14. Next time the report is started is will be optimized. The report will execute as before, only faster.

 

   You can optimize all report in the system over night due to the facility in function 9 (Refer to Function 9 - Starting multiple reports in one step). When you have to enter the report number in function 9 it is possible to simulate a kind of

job-queue. For example you can enter the report numbers 1-4,17,17,15. These reports will now be started with the same start-parameters. If you enter the sequence -1-99! all reports will be generated and optimized (!=Optimize reports, -=Generate but do not start).

 

   When SPEED is activated the screen will appear as illustrated when generating:

 

Figur 46 Optimizing during generation.

 

 

                    - Generating program - W A I T...

                    - Optimizing program - W A I T...Line   Byte Buffer   No.

                      - Analyzing program.....        778  22627   5447

                      - Sortering linenumbers.        778          5461

                      - Removing comments.....        627          4410   154

                      - Analyzing variables...             22629          128

                      - READ optimize.........        628          4397    14

                      - DIM  optimize.........        626          4383    18

                      - Renumbering lines.....        493                7485

                    - Loading program - W A I T...

 

 

 

 

   SPEED will also accept some parameters to determine how to optimize the report. SPEED(NOPRT,-XREAD) will turn all print off (NOPRT), but no optimization of the read-function on file 2-9.

 

   All functions in the optimization can be controlled as a parameter. This is only useful if you need to determine how much a simple function can be optimized. The following list gives you the possible parameters for SPEED, the default state and the description of the optimization step.


 

Function

 

UNCOMMENT

 

READ

 

 

 

 

XREAD

 

 

VARUSE

 

MIN

 

 

DIM

 

 

GLOBAL

 

 

SAVED

 

 

GOSUB

 

PROGUSE

 

NOHARD

 

RELATIVE

 

 

FN

 

PRT

 

 

 

TOTAL

 

CONTROL

 

SIZE

 

 

NOTEXT

 

 

NOPRT

 

 

NOIX

 

 

ALL

Active

 

ON  

 

ON

 

 

 

 

ON

 

 

ON

 

ON

 

 

ON

 

 

ON

 

 

ON

 

 

ON

 

ON

 

ON

 

ON

 

 

ON

 

ON

 

 

 

ON

 

ON

 

OFF

 

 

OFF

 

 

OFF

 

 

OFF

 

 

ON

Description

 

All comments will be removed from the program to reduce space and time.

  

Only fields used by report will be read from the files. If the report updates files the WRITE        funcion will be restructured as well. If INSERT is used READ and WRITE will not be restructured, because INSERT requires all fields.

 

 

Read of an external file with READ(XX) only reads the record if the keyvalue changes. If the file is updated, locking will be deactivated for this function.

 

All variables not used by the program will be removed.

 

All field tables will be minimized as much as possible.

 

 

All DIM statements will be grouped in the beginning of the program. The DIM area will then be initialized using CLEAR instead of DEALLO-DIM.

 

All varibles is set to global if possible. Variables that is DEALLOced or DIMensioned several times will not become global.

 

The program is saved optimized with ,D, even if not defined in DMS.RAP.SYS at installation time.

 

 

Empty gosub functions are removed. GOTO refering to another goto-statement is directly changed.

 

All functions or statements not used are removed.

 

The PRT function is removed from all prints.

 

The main file has to be indexed. If indexed the none-indexed function is removed. Use SPEED(-RELATIVE) if main file not indexed.

 

Function definitions are removed if not used.

 

Text fields are assumed to have the right length at print time. RAPGEN deactivates the insertion of spaces after text-fields. Use SPEED(-PRT) if one or more print lines are incorrect.

 

 

All total functions are removed if no totals on report.

 

Advanced printer control function is removed if no @-control sequences are found.

 

Only on 8870. The program is normally saved without size. Use for example SPEED(16) to save with size 16 kb.

 

The report layout can contain text such as headers or letter text. If SPEED(NOTEXT) is used only field can be printed.

 

If SPEED(NOPRT) the print function s totally removed from the program. This is normally used when reports doesn't produce any print at all.

 

If SPEED(NOIX) is used on reports that updates files no index will be updated. Only fields that doesn't refer to an index may be updated.

 

The above described stardard settings are used. If SPEED(-ALL) is used only UNCOMMENT will be performed.

 


24.13.        RAPGEN mini (runtime) version.

 

   RAPGEN can be installed in a mini runtime version where the user is allowed only to start reports already generated. It means that definition, amendment and generating reports aren't possible.

 

   Only 8 programs are needed to install such a mini version. The file definitions aren't needed as well, unless functions like EXPORT are used. Only active functions will be shown in the RAPGEN menu.

 

Figur 47 RAPGEN mini-version.

 

 

                    DMS.RAPGEN

 

 

 

 

                    5 ... DELETE REPORT

 

 

                                                 

                    9 ... START AND GENERATE REPORT

                   10 ... COPY REPORT

                                       

                                                 

                                                        

                 

 

 

                   ENTER CODE:........

 

 

    

   By adding a few more modules print of documentation and display of the report definition function 11-14 will be active.

 

 

Figur 48 Largest mini-version.

 

 

                    DMS.RAPGEN

 

 

 

 

                    5 ... DELETE REPORT

 

 

                    8 ... PRINT OF DEFINITIONS

                    9 ... START AND GENERATE REPORT

                   10 ... COPY REPORT

                   11 ... EDIT DOCUMENTATION

                   12 ... EDIT SELECTIONS

                   13 ... EDIT SORTING AND TOTALLING

                   14 ... EDIT CALCULATIONS

 

 

                   ENTER CODE:........

 

 

 

   The mini version is activated when the file definitions (DMDATAFIL) or the generation module (DMS.RAP.091) is missing. When using the mini-version the following functions will work differently:

 

     Function 5   - delete report - the generated program will not be deleted unless Y is answered.

 

     Function 10  - Copy report   - Also copies the generated program.


 

Modul

DMS.R

DMSE

DMS.RAP

DMS.RAP.09

DMS.RAP.99

DMS.RAP.999

DMS.RAP.Tx

DMS.RAP.TAQ

DMS.RAP.05

DMS.RAP.K

DMS.RAP.K1

DMS.RAP.KTx

DMS.RAP.001

DMS.RAP.04

DMS.RAP.08

DMS.RAP.081

DMS.RAP.082

DMS.RAP.TAM

DMS.RAP.TAMTx

DMS.RAP.INS

DMS.RAP.SYS

DMS.RAP.FIL

DMS.RAP.LU

0/CHSYSTEM

x/XXFILES

x/xxREPORT

x/xx10nn

x/xxT10nn

x/xxSORTWORK

x/xxDATAFIL

 

*************

  A

 17

  2

 28

 25

 31

  4

 44

  4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  2

 73

256

704

 

200

 

 

1390

  B

 17

  2

 28

 25

 31

  4

 44

  4

 22

 

 

 

 

 

 

 

 

 

 

  3

 16

 10

  7

  2

 73

256

704

176

200

 

 

1617

  C

 17

  2

 28

 25

 31

  4

 44

  4

 22

 15

 23

  4

 

 

 

 

 

 

 

  3

 16

 10

  7

  2

 73

256

704

176

200

 

 

1666

  D

 17

  2

 28

 25

 31

  4

 44

  4

 22

 15

 23

  4

  8

 18

 

 

 

 

 

  3

 16

 10

  7

  2

 73

256

704

176

200

 

 

1692

  E

 17

  2

 28

 25

 31

  4

 44

  4

 22

 15

 23

  4

  8

 18

 16

 15

 12

 

 

  3

 16

 10

  7

  2

 73

256

704

176

200

 

 

1735

  F

 17

  2

 28

 25

 31

  4

 44

  4

 22

 15

 23

  4

  8

 18

 16

 15

 12

 23

  8

  3

 16

 10

  7

  2

 73

256

704

176

200

 

 

1766

  G

 17

  2

 28

 25

 31

  4

 44

  4

 22

 15

 23

  4

  8

 18

 16

 15

 12

 23

  8

  3

 16

 10

  7

  2

 73

256

704

176

200

600

 

2369

 

Description

Start program

End   program

Main menu 

Start input parameters

Start segment for a report

End   segment for a report

Textes

Interface to Tamos jobqueue

Delete / copy report

Edit textfile

Edit textfile

Edit program textes

Startmodul other funktions

Startmodul calculations

Documentation

Documentation

Documentation

Insert in Tamos selektor

Insert in Tamos - textes

Installation - controlcodes

Installation - systems

Installation - systems

Installation - set file lu

   1 System

 100 File & index definitions

  44 Repors

  44 Reportprograms     of 16 sectors

  44 Rapportdefinitions of  4 sectors

1000 Sortrecords

  50 Fielddefinitions

 

Total

 

 

     A. Smallest version of RAPGEN. Only function 9 active without installation module.

     B. Copy of reports (from other machines) and deletion of reports.

     C. KEYS function to define start/stop values can also be used.

     D. Function 11-14 can be used to documentation and to view report definition and calculations.

     E. Documenation of definition excluding field descriptions.

     F. Insert in TAMOS selector active.

     G. Special functions as EXPORT can be used in reports.

 

   Due to file open function DMFILES has to be in the system. All field definitions can be excluded.

 

   The total installation of RAPGEN contains 200 programs (2500 blocks) including a lot of small text files with READ-statements for each file installed. The total version will appr. use 5000 blocks.


24.15.        Function 10 - Copying between systems / machines.

 

   To copy between multiple systems created with REPS or machines it is now possible to enter a system number instead of just a report number in function 10. It is also possible to enter a file prefix for an external file.

 

   From reportno.:  7     Copies as normal from report 7

                    NN,7  Copies from the file 0/DMSREP.NN07

 

   To   reportno.:  9     Copies as normal to report 9

                    309   Copies to REPS system 3 report no. 9

                    NN,9  Copies to external file 0/DMSREP.NN09. This file can later on be transfered to another machine.

                    XX,9  Same as NN,9 but minimizes the text file bu removing generated calculations/code.

 

   Copy from another machine can be done by copying the entire reportfile and the generated programs, or just by:

 

     1. Copying the report with function 10. For example report 5 to XX,5

     2. Transfering the textfile 0/DMSREP.XX05 and the generated program DM1005

     3. Copying the report with function 10 from report XX,5 to report 5.

 

   Now you can start the report. Note that prefix XX is recommended to minimize the textfile to be transferred. (When a report has been copied using XX,5 function 4 has to be activated to generate calculations).

 

   This version of RAPGEN the file DMSREP.XX05 is generated as a textfile. In previous versions this file was contigous. This makes it possible to transfer the file with all kinds of modems and emulation software. Also the documentation is included in this text file.

 

 

24.17.        Automatic READ of other files at definition of a report.

 

   When defining a report with function 1 and refering to fields from external files, RAPGEN automatically generates the READ statements needed. When function 1 is ended function 4 is called generating calculations at once.

 

   If automatic connections exists the report can be started at once. Otherwise you have to use function 4/114 to enter the correct keysequence after the generated READ-statements.

 

   The files is of cource read in the correct ordre according to the file definitions.

 

   If the function LINE is used in function 1 a READH(XX) is added for the first external file to shift to another header each time the keyvalue changes.

 

24.19.       Advancing the date functions for year 2000.

 

   RAPGENs date functions has previously worked with 6 digit dates (DDMMYY).

 

   The new functions are able to turn the date correctly, regardless of the form DDMMYY,YYMMDD or YYYYMMDD.

 

   Some new functions are included to turn the date correct disregrading the input form:

 

     FND(date)    = Turn date,  YYMMDD==>DDMMYY,DDMMYY==>YYMMDD,YYYYMMDD==>DDMMYY

 

     FNY(date)    = YYYYMMDD    date is always returned in 8 digit format

 

     FNO(date)    = DDMMYY      date is always returned in 6 digit format

 

     FNA(date)    = day number. Now it accepts DDMMYY,YYMMDD and YYYYMMDD as parameter.

 

     FNB(date)    = DDMMYY      as always

 

     FNC(date)    = YYYYMMDD    as FNB but in 8 digit form

 


                                                                            Figuren

 

Figur 1 TAMOS Druckerzuteilung.............................................................................................................................................................   7

Figur 2 DRUCKER-Kommando in Funktion 7..........................................................................................................................................   8

Figur 3 Wahl eines Druckers.......................................................................................................................................................................   8

Figur 4 Eingabe der Steuerzeichen mit Funktion 7...................................................................................................................................   9

Figur 5 Eingabe von Steuerzeichen mit Funktion 1.................................................................................................................................   9

Figur 6 Berechnen von Steuerzeichen.....................................................................................................................................................   10

Figur 7 Start des DMS.RAPGEN.PRT......................................................................................................................................................   10

Figur 8 Erste Seite der Druckertabelle......................................................................................................................................................   11

Figur 9 Zweite Seite der Druckertabelle (oktal)......................................................................................................................................   12

Figur 10 Dritte Seite der Druckertabelle (hexadez.)................................................................................................................................   13

Figur 11 Ausdruck der Druckertabelle.....................................................................................................................................................   14

Figur 12 Libr liste DMS.P.LIB...................................................................................................................................................................   15

Figur 13 Start des BCU-Programmes........................................................................................................................................................   17

Figur 14 Ausdruck der liste Warenübersicht.........................................................................................................................................   17

Figur 15 Start einer Liste............................................................................................................................................................................   18

Figur 16 Wahl der PC-Überführungsmoduls im Hauptmenü...............................................................................................................   18

Figur 17 Start der Übertragung auf den PC.............................................................................................................................................   19

Figur 18 Inhalt der Übertragungsdatei DMSPCXxx.BAT.....................................................................................................................   20

Figur 19 Löschfunktion (PCC)..................................................................................................................................................................   21

Figur 20 PC Libr list....................................................................................................................................................................................   22

Figur 21 DMSPC.SYS Installation............................................................................................................................................................   23

Figur 22 Datei DMSPC06.BAT.................................................................................................................................................................   23

Figur 23 DMS.RAPGEN.PRT Druckersteuerung...................................................................................................................................   24

Figur 24 The LINE command.....................................................................................................................................................................   27

Figur 25 Opdeling af liste på to printere..................................................................................................................................................   33

Figur 26 Letters with journal.....................................................................................................................................................................   34

Figur 27 Printing two concurrent lists.....................................................................................................................................................   34

Figur 28 PC output with EXPORT............................................................................................................................................................   37

Figur 29 Export to tape/floppydisc...........................................................................................................................................................   39

Figur 30 EXPOX with index and fielddefinitions....................................................................................................................................   40

Figur 31 The KEYS command...................................................................................................................................................................   44

Figur 32 Entering the start/stop values...................................................................................................................................................   44

Figur 33 Activating the subfunction.......................................................................................................................................................   46

Figur 34 Start of a KEYS report.................................................................................................................................................................   46

Figur 35 Output from TEST("1‑10").........................................................................................................................................................   57

Figur 36 Calculations for creating a new file...........................................................................................................................................   66

Figur 37 The new functions in the menu.................................................................................................................................................   68

Figur 38 Editing of documentation with function 11.............................................................................................................................   69

Figur 39 HLP by calculation editing in function 14...............................................................................................................................   70

Figur 40 Start of report with documentation and data input fields.....................................................................................................   71

Figur 41 Editing of selections by use of function 12.............................................................................................................................   72

Figur 42 Editing of sorting and totalling.................................................................................................................................................   73

Figur 43 Editing of calculations with function 14..................................................................................................................................   74

Figur 44 The REPS command....................................................................................................................................................................   76

Figur 45 HEAD Individual standardheadings........................................................................................................................................   77

Figur 46 Optimizing during generation....................................................................................................................................................   78

Figur 47 RAPGEN mini-version................................................................................................................................................................   80

Figur 48 Largest mini-version...................................................................................................................................................................   80

 


                                                                            Stichwort

 


$LPT................................................... 7, 8, 18, 33, 38, 39, 57, 69

+xx........................................................................................ 9, 28

‑xx............................................................................................... 9

#DD.............................................................................. 35, 46, 77

#KA......................................................................................... 77

#NO.......................................................................................... 77

#PD.............................................................................. 32, 46, 77

#PP..................................................................................... 31, 77

#SC........................................................................................... 77

#SN.......................................................................................... 77

#SY........................................................................................... 77

#TI............................................................................................ 77

Betriebssystem............................................................. 6, 15, 16

Breite.................................................................................. 13, 14

Brief...................................................................................... 8, 18

BUILDXF................................................................................ 56

Checks............................................................................... 62, 75

CHSYSTEM............................................................................ 81

CLEANUP............................................................................... 21

Core.......................................................................................... 59

Cost........................................................................ 39, 46, 57, 70

DATAMASTER................................ 35, 41, 60, 62, 64, 66, 67

DIM.................................................................................... 78, 79

DL............................................................................................. 32

DMDATAFIL......................................................................... 80

DMFILES.......................................................................... 67, 81

DMREAD.......................................................................... 60, 64

DMSORTWORK................................................................... 56

DRN......................................................................................... 77

Drucker.................................... 6‑8, 11, 12, 14‑16, 18‑21, 24, 25

export............................ 19, 20, 22, 25, 37‑43, 54, 55, 57, 80, 81

fil......................................................................................... 42, 81

FNA......................................................................................... 82

FNB.......................................................................................... 82

FND.................................................................................... 72, 82

FNR.................................................................................... 55, 75

FNV.......................................................................................... 59

Format.......................... 16, 22, 32, 37, 39, 43, 48, 54, 68, 74, 82

GOSUB.............................................................................. 75, 79

HBA............................................................................. 15, 21, 22

IL.............................................................................................. 32

Interval.................................................................................... 47

IPL............................................................................................ 14

Kennwort................................................................................ 17

Labels................................................................................ 63, 75

Layout..................................... 26, 27, 34, 37, 39, 41, 43, 49, 79

LEN.......................................................................................... 39

LOAD..................................................................... 35‑37, 52, 59

LU....................................... 15, 19, 21‑23, 38, 42, 44, 47, 66, 81

MODE................................................................................ 68, 70

Modulus............................................................................ 35, 36

NIROS................................................ 6, 9, 11, 15, 16, 26, 59, 76

NOT........................ 18, 26‑30, 35, 36, 40‑44, 46, 48, 49, 51, 53,

                                                    55‑64, 66, 67, 68, 69, 72, 74‑80

Ocr............................................................................................ 36

over................................................................... 26, 28‑31, 75, 78

Packing.................................................................................... 54

Partition................................................................................... 74

Pass.......................................................................................... 74

Password               35, 53, 60, 61, 66

POS............................................................................. 7‑9, 18, 27

Protection................................................................................ 60

QUICK..................................................................................... 72

REM................................................................................... 74, 77

REPEAT................................................................ 30, 31, 74, 75

SAVE................................................................................. 33, 79

SCOPE..................................................................................... 10

Search................................................................................ 41, 66

SORT................................................... 35, 51, 56, 61, 63, 68, 73

STAR....................................................................................... 56

Status....................................................................................... 22

STOP.................. 7, 11, 14, 16, 17, 19, 35, 44‑47, 68, 69, 71, 81

Subtotal................................................................................... 73

T2$........................................................................................... 35

T3............................................................................................. 35

TAMOS.................... 6, 7, 10, 11, 15, 16, 36, 53, 61, 66, 67, 76,

                                                                                             77, 81

Testprint.................................................................. 8, 18, 57, 71