Home
COBOL85 V2.2 Benutzerhandbuch
Contents
1. PROCEDURE DIVISION MAIN DISPLAY PLEASE GIVE TRIANGLE SIDES EACH ONE DIGIT UPON T PERFORM 4 TIMES CALL EINGABE USING I J K IF I J NOT GREATE OR J K NOT GREATER I OR I NOT GREATER J THE DISPLAY NOT A TRIANGLE UPON T ELSE OVE ZERO TO MATCH Fr THE ADD 1 TO MATCH END IF FJ K THE ADD 1 TO MATCH END IF F 1 THE ADD 1 TO MATCH END IF EVALUATE TRUE HE ATCH ZERO DISPLAY SCALENE TRIANGLE UPON T HE ATCH 1 DISPLAY ISOSCELES TRIANGLE UPON T HEN OTHER DISPLAY EQUILATERAL TRIANGLE UPON T END EVALUATE END IF END PERFOR STOP RU 82 U3987 J 2125 8 COBOLBS5 Strukturierer Strukturlisten Erzeugung 5 2 Strukturliste vom Quellprogramm Pretty Print Funktion Die Strukturliste vom Quellprogramm kann in zwei Stufen erzeugt werden e Strukturliste ohne Querverweisangaben e Strukturliste mit Querverweisangaben Beiden Listen gemeinsam sind folgende Strukturierungsm glichkeiten die Quelltext Aufbereitung analog zur Beautify Funktion siehe 5 1 Die COPY Anweisungen im Quellprogramm werden wahlweise aufgel st und der Text der COPY Elemente ausgegeben Einrahmung der Anweisungsbl cke mit waagrechten und senkrechten Linien Seitennumerierung Zeilennumerierung analog zur Zeilennumerierung der Compiler Quellprogrammliste Fettdruck der vom Strukturierer in der Aufbereitung erg nzten Schl ssel
2. 15 05 PRUEFZIFFER OCCURS 16 PIC 9 D 17 16 77 KONTO ART PIC XX a ee A 17 88 SPEZIAL CODE VALUE SC C 17046548 18 88 GEHALTSKONTO VALUE GK C 19 C 61 19 77 KONTO ZUSTAND PIC XX ELD 19 42 k 28 19 2 2 16 59 20 88 _KONTO GEFUNDEN VALUE SPACES 21 88 KONTO FEHLT VALUE NV 61 22 88 KONTO GESPERRT VALUE KS C 10 C 52 23 77 SCHECK ZUSTAND PIC XX 6 23 43 D 8 COBOL85 V02 1B00 PRETTY PRINTING DATE 1994 03 03 TIME 11 36 59 PAGE 2 LINE ID SOURCE SCHECK COB REFERENCES 23 raph 19 D 21 23 Fe p S 24 88 KONTO NR FALSCH VALUE KF 25 88 SCHECKS ZU ENDE VALUE EF 36 39 26 88 KONTO NR 0OK VALUE KO 58 K 9 27 77 BETRAG ZUSTAND PIC XX Kae y 27 44 47 27 I 49 5 27 53 28 88 BETRAG NICHT NUM VALUE BN 29 88 BETRAG OK VALUE BO 56 K 9 30 88 BETRAG GESPERRT VALUE BS CSI 8n G50 31 77 1 PIC 9 D 12 D 13 31 D 10 D 14 COBOL85 V02 1B00 PRETTY PRINTING DATE 1994 03 03 TIME 11 36 59 PAGE 3 LINE ID SOURCE SCHECK COB REFERENCES 32 PROCEDURE DIVISION 33 STEUERUNG SECTION 34 STEUERUNG 1001 35 OPEN INPUT SCHECKS KONTOS Di A 2 BS 22 36 PERFORM UNTIL SCHECKS ZU ENDE D 25 36 37 PERFORM SCHECK LESEN Di xE 1 38 m IF 39 SCHECKS ZU ENDE D 25 39 THE 40 EXIT PERFORM 41 END I F 42 OVE SPACES TO KONTO ZUSTAND D 19 43 SCHECK ZUSTAND D 23 44 BETRAG ZUSTAND D 27 45 EVALUATE TRUE 46 WHEN BETRAG NOT NUMERIC Di
3. Operanden k nnen ber das Zeilenende hinaus in der Folgezeile fortgesetzt werden Das Zeilenende hat keine syntaktische Bedeutung und ersetzt insbesondere nicht das die Operanden trennende Komma Ein Operand besteht aus einem Schl sselwort gefolgt vom Gleichheitszeichen und einem oder mehreren Parametern K nnen in einem Operanden mehrere Parameter angegeben werden so m ssen diese in Klammern gesetzt werden Werden bei der Abarbeitung einer COMOPT Anweisung Fehler entdeckt so bleiben die bereits ausgewerteten Optionen dieser Zeile in Kraft Entsprechend der Fehlermeldung wird dann der Rest einer Operandenzeile oder der Rest des Operanden ignoriert Fehler meldungen f r Operanden werden nur nach SYSOUT ausgegeben Die COMOPT Anwei sungen gelten nur f r den bersetzungslauf f r den sie angegeben wurden Wird dieselbe COMOPT Anweisung mehrmals angegeben so gilt der zuletzt angegebene Wert Werden einander widersprechende COMOPT Anweisungen angegeben gilt die zuletzt angegebene Anweisung Format der END Anweisung dateiname END liboname elementname Mit END dateiname bzw libname kann SYSDTA auf eine Datei oder ein Bibliothekselement umgewiesen werden Mit END ohne weitere Angabe kann dem Compiler angezeigt werden da die Eingabe von COMOPT Anweisungen abgeschlossen ist und die bersetzung des Quellprogramms beginnen kann 60 U3987 J 2125 8 COMOPT Steuerung Quelldaten Eingabe 4 1 Qu
4. 174 U3987 J 2125 8 Dateiverarbeitung Sequentielle Dateien 9 2 3 Zul ssige Satzformate und Zugriffsarten Satzformate Sequentielle Dateien k nnen S tze fester L nge RECFORMSF variabler L nge REC FORM V und undefinierter L nge RECFORM U enthalten Eine Blockung ist dabei nur f r S tze fester oder variabler L nge m glich Im COBOL Quellprogramm wird das Format der zu verarbeitenden S tze in der RECORD oder der RECORDING MODE Klausel festgelegt siehe 1 Welche Angaben dabei dem jeweiligen Satzformat zugeordnet sind ist in der folgenden Tabelle zusammengestellt Angabe in der RECORD Klausel RECORDING MODE Satzformat Klausel feste L nge RECORD CONTAINS CHARACTERS Format 1 variable RECORD IS VARYING IN SIZE Format 2 L nge oder RECORD CONTAINS TO Format 3 undefinierte Vereinbarung mit der RECORD Klausel RECORDING MODE IS U L nge nicht m glich Tabelle 9 4 Festlegen von Satzformaten in der RECORD oder RECORDING MODE Klausel Wird keine der beiden Klauseln angegeben nimmt der Compiler S tze variabler L nge an Zugriffsarten Auf S tze einer sequentiellen Datei kann nur sequentiell zugegriffen werden d h das Pro gramm kann sie lediglich in der Reihenfolge verarbeiten in der sie bei der Erstellung in die Datei geschrieben worden sind Im COBOL Quellprogramm wird die Zugriffsart durch die ACCESS MODE Klausel festge legt f r sequentielle Dat
5. READ oder START Anweisung mit WITH NO LOCK Zusatz auf dieselbe Datei Entsperrung erfolgt auch bei Auftreten der AT END oder INVALID KEY Bedin gung READ oder START Anweisung ohne WITH NO LOCK Zusatz auf einen Datensatz innerhalb eines anderen Datenblocks derselben Datei Entsperrung erfolgt auch bei Auftreten der AT END oder INVALID KEY Bedingung READ oder START Anweisung ohne WITH NO LOCK Zusatz auf eine andere ISAM Datei deren SET FILE LINK Kommando SHARED UPDATE YES enth lt und die mit OPEN I O er ffnet ist Entsperrung erfolgt auch bei Auftreten der AT END oder INVALID KEY Bedingung CLOSE Anweisung f r dieselbe Datei Eine Anweisung f r eine ISAM Datei kann also die Aufhebung einer Datensatzsperre auf einer anderen ISAM Datei bewirken Hinweise 1 Soll in einem Programm eine ISAM Datei SHARED UPDATE YES und OPEN O be arbeitet werden sollte f r diese Datei eine USE AFTER STANDARD ERROR Prozedur vorgesehen werden In dieser Prozedur k nnen die simultanverarbeitungsspezifischen FILE STATUS Werte 93 Datensatz von einem simultanen Benutzer gerade gesperrt und 94 REWRITE oder DELETE Anweisung ohne vorherige READ Anweisung ab gefragt und angemessen verarbeitet werden Es sollte immer ber cksichtigt werden da aufgrund des Block Sperrmechanismus von ISAM beim Sperren eines Datensatzes auch zugleich alle Datens tze desselben Blocks f r alle simultanen Benutzer gesperrt werden F r einen
6. U3987 J 2125 8 247 COBOL Sprachmittel Sortieren und Mischen Die Vereinbarung von Eingabe und Ausgabeprozeduren Eine Eingabeprozedur INPUT PROCEDURE kann f r jede SORT Anweisung verein bart werden Sie erlaubt es die zu sortierenden Datens tze zu erzeugen oder zu bear beiten bevor sie ber eine RELEASE Anweisung an die Sortierdatei bergeben wer den Eine Ausgabeprozedur OUTPUT PROCEDURE kann f r jede SORT oder MERGE Anweisung vereinbart werden Sie erlaubt es die sortierten bzw gemischten Daten s tze weiter zu bearbeiten nachdem sie ihr ber eine RETURN Anweisung zur Verf gung gestellt wurden Hinweis Durch bersetzung mit der SDF Option RUNTIME OPTIONS PAR SORTING ORDER BY DIN bzw mit COMOPT SORT EBCDIC DIN YES kann f r alle SORT Anweisungen eines Programms das Sortierformat ED des Dienst programmes SORT gew hlt werden siehe Handbuch 6 Dies erm glicht eine Text sortierung nach DIN Norm f r EBCDIC Dabei werden Kleinbuchstaben den entsprechenden Gro buchstaben gleichgesetzt die Zeichen an mit AE Oo J O mit OE U mit UE sowie B mit SS identifiziert sowie die Ziffern vor den Buchstaben einsortiert 248 U3987 J Z125 8 Sortieren und Mischen Dateien f r das Sortierprogramm 10 2 Dateien f r das Sortierprogramm F r einen Sortiervorgang werden folgende Dateien ben tigt Sortierdatei In dieser Datei Arbeitsbereich
7. Verhalten Programm abgebrochen Ma nahme Programm ndern 338 U3987 J 2125 8 Meldungen des COBOLB85 Systems C0B9181 THE DATABASE HANDLER HAS NOT YET PROCESSED THE LAST DML STATEMENT C0B9181 DER DATABASE HANDLER HAT DAS LETZTE DML STATEMENT NOCH NICHT ABGEARBEITET Typ Anwenderfehler Der DBH ist durch STXIT unterbrochen und bekommt eine neue DML Anweisung ehe die unterbrechende Anweisung abgearbeitet werden konnte Verhalten Programm abgebrochen Ma nahme Programm korrigieren C0B9184 SORT INSIDE SORT CONTROL C0B9184 SORT INNERHALB DER SORT STEUERUNG Typ Anwenderfehler Verhalten Programm abgebrochen Ma nahme Programm ndern C0B9192 END OF PROCEDURE DIVISION OR ROOT SEGMENT OF MAINPROGRAM ENCOUNTERED WITHOUT STOP RUN HAVING BEEN EXECUTED C0B9192 DAS ENDE DER PROCEDURE DIVISION BZW DES ROOT SEGMENTS IM HAUPTPROGRAMM WURDE ERREICHT OHNE DASS STOP RUN AUSGEFUEHRT WURDE Typ Hinweis Verhalten Programm abgebrochen Ma nahme An das logische Ende des Hauptprogramms eine STOP RUN Anweisung setzen U3987 J Z125 8 339 Meldungen des COBOLB85 Systems C0B9193 C0B9193 C0B9194 C0B9194 C0B9195 C0B9195 C0B9196 C0B9196 UNRECOVERABLE ERROR DURING DISPLAY UPON TERMINAL NICHT BEHEBBARER FEHLER WAEHREND EINER AUSGABE AUF TERMINAL Typ Systemfehler Verhalten Programm abgebrochen Ma nahme Systemverwalter berater verst ndigen UNRECOV
8. 6 Zuweisen der Bibliothek in der die LLMs stehen mit dem Linknamen COBOBUJCT damit die offenen Externverweise der zuvor erzeugten LLMs befriedigt werden k n nen Aufruf des LLM mit dem Hauptprogramm MAINPROG Die Operanden UNRESOLVED EXTERNAL DELAY und LOAD INFORMATION REFERENCES m ssen immer dann angegeben werden wenn die Ladeeinheit noch offene be dingte Externverweise WXTRNs enth lt siehe 11 Dies ist z B dann der Fall wenn im Unterprogramm weitere Dateien mit anderer Dateiorganisation als im Hauptprogramm verarbeitet werden sollen U3987 J 2125 8 265 RETURN CODE Sonderregister Programmverkn pfungen 12 2 COBOL Sonderregister RETURN CODE Das COBOL Sonderregister RETURN CODE kann zur Verst ndigung zwischen getrennt bersetzten COBOL Programmen einer Ablaufeinheit dienen Das Sonderregister existiert nur einmal im Programmsystem und ist intern als neunstelliges bin res Datenfeld PIC S9 9 COMP 5 SYNC definiert RETURN CODE kann w hrend des Ablaufs beliebig von den einzelnen getrennt ber setzten Programmen abgefragt oder ver ndert werden Bei Beendigung des Programm laufs wird vom Laufzeitsystem berpr ft ob RETURN CODE auf Null steht Ist das nicht der Fall wird die Fehlermeldung COB9119 bei COBOL Returncode gt 0 bzw COB9128 bei Anwender Returncode gt 0 ausgegeben Wurde das Programm innerhalb einer Proze dur aufgerufen verzweigt das Programm zum n chsten STEP ABEND ABORT END
9. Ausgabeziele und Ausgabe Code Der Compiler legt die Ausgabedateien im aktuellen Dateiverzeichnis ab d h in dem Datei verzeichnis aus dem der Compilerlauf gestartet wird Zeichen und Zeichenketten Konstanten im Programm werden immer im EBCDI Code abgelegt 270 U3987 J 2125 8 COBOL85 und POSIX berblick 13 1 2 Binden Ein COBOL Programm wird in der POSIX Shell mit dem Aufrufkommando cobol zu einer ausf hrbaren Datei gebunden Ein Bindelauf wird automatisch gestartet wenn die Option c nicht angegeben wird siehe S 277 und wenn bei einer ggf vorangegangenen bersetzung kein schwerwiegender Fehler auftrat Das fertig gebundene Programm wird als LLM in eine ausf hrbare POSIX Datei geschrie ben Der Name dieser Datei sowie das Dateiverzeichnis werden mit der Binder Option o festgelegt Ohne Angabe dieser Option wird die ausf hrbare POSIX Datei unter dem Stan dardnamen a out im aktuellen Dateiverzeichnis abgelegt Beim Binden in der POSIX Shell k nnen keine Binder Listen erzeugt werden Im Fehlerfall werden entsprechende Fehlermeldungen auf stderr ausgegeben Binden von Benutzermodulen Benutzereigene Module k nnen nur statisch und nicht dynamisch d h zum Ablaufzeit punkt eingebunden werden Programme die unresolved externals auf Benutzermodule enthalten k nnen in der POSIX Shell nicht gestartet werden Eingabequellen f r den Binder k nnen sein vom Compiler erzeugte Objektdateien o
10. Bedeutung aaa Zeilennummer bbb Name der Gruppe Verhalten Programm abgebrochen Ma nahme Programm ndern REPORT DEFINED IN LINE aaa GENERATE ISSUED TO TERMINATED REPOR REPORT DEFINIERT IN aaa FUER EINEN BEREITS ABGESCHLOSSENEN REPOR WURDE EINE GENERATE ANWEISUNG GEGEBEN Typ Anwenderfehler Bedeutung aaa Zeilennummer Verhalten Programm abgebrochen Ma nahme Programm ndern U3987 J 2125 8 335 Meldungen des COBOL85 Systems C0B9173 SORT NO aaa UNSUCCESSFUL C0B9173 SORTLAUF MIT NR aaa NICHT ERFOLGREICH Typ Anwenderfehler oder Systemfehler Bedeutung aaa Nummer des SORT Laufs Verhalten Programm abgebrochen Ma nahme Systemverwalter berater verst ndigen C0B9174 DML EXCEPTION ON STATEMENT PC aaa DB STATUS bbb ccc EXCEPTION C0B9174 DML SONDERZUSTAND BEI ANWEISUNG AUF PC aaa DB STATUS bbb ccc SONDERZUSTAND Typ Anwenderfehler Bedeutung aaa Befehlsz hler bbb DB Statuswert ccc Z hlung der Ausnahmebedingungen Verhalten Programm abgebrochen Ma nahme Programm pr fen ggf ndern 336 U3987 J 2125 8 Meldungen des COBOLB85 Systems C0B9175 DMS SIS EXCEPTION ON STATEMENT PC aaa FILE STATUS bbb DMS SIS ccc ON ddd eee EXCEPTION C0B9175 DMS SIS SONDERZUSTAND BEI ANWEISUNG AUF PC aaa FILE STATUS bbb DMS SIS ccc ON ddd eee SONDERZUSTAND Typ Anwenderfehler Bedeutung aaa Befehlsz hler bbb File Statuswert ccc DVS SI
11. Der Strukturierer verarbeitet alle Sprachmittel des COBOL85 Compilers im BS2000 Die Anweisungen COPY textname REPLACING pseudotext BY pseudotext und REPLACE pseudotext BY pseudotext werden vom Strukturierer syntaktisch akzeptiert die beabsichtigte Textersetzung findet je doch nicht statt 78 U3987 J 2125 8 COBOLBS5 Strukturierer Quelltext Aufbereitung 5 1 Quelltext Aufbereitung Beautify Funktion Es ist empfehlenswert das Quellprogramm vor dem Aufbereiten fehlerfrei zu editieren z B durch bersetzung mit COMPILER ACTION SEMANTIC CHECK Der Strukturierer er kennt zwar Syntaxfehler i A jedoch nur einen Fehler pro Aufruf Nachfolgend sind die einzelnen Aufbereitungsma nahmen zusammengefa t e Die COPY Anweisungen im Quellprogramm werden wahlweise aufgel st der Text der COPY Elemente wird nicht ausgegeben e Dateneintr ge in der Data Division werden wie folgt ausgegeben Die Stufennummern 01 und 77 werden in den Spalten 8 und 9 ausgegeben Alle brigen Stufennummern werden um je vier Spalten gegen ber der n chsth heren Stufennummer einger ckt jedoch h chstens bis zur Spalte 36 Die Datennamen werden um vier Stellen gegen ber der zugeh rigen Stufennum mer einger ckt e Anweisungen in der Procedure Division werden wie folgt ausgegeben Jede Anweisung beginnt in einer neuen Zeile Alle IF und EVALUATE Anweisungen werden mit dem zugeh rigen Scope Termi nator abgeschlo
12. Einige Werte des Ein Ausgabezustands ver ndern sich in POSIX BS2000 POSIX 37 30 93 94 95 90 Im erweiterten Ein Ausgabezustand der sich in der FILE STATUS Klausel mit datei name 2 anfordern l t wird statt des BS2000 DVS Codes der POSIX SIS Code ausgegeben Die Dateiattribute werden beim ersten ffnen der Datei endg ltig festgelegt und k n nen sp ter nicht mehr ge ndert werden Relative Dateien die die BS2000 Zugriffsmethode UPAM verwenden k nnen nicht verarbeitet werden U3987 J 2125 8 289 Verarbeiten von POSIX Dateien COBOL85 und POSIX 13 6 Verarbeiten von POSIX Dateien 13 6 1 Programmablauf in BS2000 Umgebung Ein COBOL Programm das im BS2000 entwickelt und zum Ablauf gebracht wird kann unter bestimmten Voraussetzungen au er katalogisierten BS2000 Dateien auch Dateien aus dem POSIX Dateisystem verarbeiten Voraussetzungen Beim bersetzen mu die Compileroption ENABLE UFS ACCESS YES bzw die SDF Option RUNTIME OPTIONS PAR ENABLE UFS ACCESS YES angegeben werden Beim Binden mu das in der CRTE Bibliothek SYSLNK CRTE POSIX enthaltene POSIX Bindeschalter Modul eingebunden werden und zwar vorrangig vor den Modu len in der Bibliothek SYSLNK CRTE bzw SYSLNK CRTE PARTIAL BIND Beim Binden mit TSOSLNK oder BINDER sollte diese Bibliothek mit einer INCLUDE bzw INCLUDE MODULES Anweisung ohne Angabe des Modulnamens eingebun den werden Beim dynamis
13. SEQUENTIAL RANDOM DYNAMIC START START KEY IS INVALID KEY NOT INVALID KEY END START Anweisung nicht zul ssig START KEY IS INVALID KEY NOT INVALID KEY END START REWRITE READ NEXT INTO AT END NOT AT END END READ REWRITE FROM INVALID KEY NOT INVALID KEY END REWRITE READ INTO KEY IS INVALID KEY NOT INVALID KEY END READ REWRITE FROM INVALID KEY NOT INVALID KEY END REWRITE F r sequentiellen Zugriff READ NEXT INTO AT END NOT AT END END READ F r wahlfreien Zugriff READ INTO KEY IS INVALID KEY NOT INVALID KEY END READ REWRITE FROM INVALID KEY NOT INVALID KEY END REWRITE Anweisung nicht zul ssig WRITE FROM INVALID KEY NOT INVALID KEY END WRITE WRITE FROM INVALID KEY NOT INVALID KEY END WRITE DELETE DELETE END DELETE DELETE INVALID KEY NOT INVALID KEY END DELETE Tabelle 9 13 Erlaubte Ein Ausgabeanweisungen f r OPEN I O In diesem Modus k nnen in einer relativen Datei S tze gelesen hinzugef gt durch das Programm aktualisiert und berschrieben oder gel scht werden DELETE INVALID KEY NOT INVALID KEY END DELETE
14. UDS SQL BS2000 Aufbauen und Umstrukturieren Benutzerhandbuch Zielgruppe Datenbankadministrator Inhalt bersicht ber die von UDS ben tigten Dateien UDS Dienstprogramme die zum Aufbauen der UDS Datenbank n tig sind Dienstprogramme zum Umstrukturieren Einsatz Datenbankadministrator beim Aufbauen einer Datenbank UDS SQL BS2000 Anwendungen programmieren Benutzerhandbuch Zielgruppe Programmierer Inhalt Transaktionskonzept Funktionsweise der Currency Tabelle COBOL DML CALL DML Testen von DML Funktionen ESQL COBOL BS2000 f r UDS SQL Benutzerhandbuch Zielgruppe COBOL Programmierer die mit SQL Anweisungen auf UDS SQL Datenbanken zugreifen wollen Inhalt Alle ESQL COBOL Anweisungen f r den Zugriff auf UDS SQL Datenbanken mit Anwendungsbeispielen Beschreibung aller Arbeitsschritte zur Erstellung eines ablauff higen ESQL COBOL Programms Hantierung des ESQL Precompilers 376 U3987 J 2125 8 Literatur 18 ESQL COBOL BS2000 f r SESAM SQL Benutzerhandbuch Zielgruppe COBOL Programmierer die mit SQL Anweisungen auf SESAM SQL Datenbanken zugreifen wollen Inhalt Alle ESQL COBOL Anweisungen f r den Zugriff auf SESAM SQL Datenban ken mit Anwendungsbeispielen Beschreibung aller Arbeitsschritte zur Erstellung eines ablauff higen ESQL COBOL Programms Hantierung des ESQL Precompilers 19 System Interfaces for Applications SQ
15. ere Vielfache eines PAM Blockes 2048 byte auf gerundet wird Diese Voreinstellung kann bei der Dateizuweisung durch die Angabe des BUFFER LENGTH Operanden im SET FILE LINK Kommando ver ndert werden siehe 9 1 3 wobei darauf zu achten ist da der Puffer mindestens so gro sein mu wie der l ngste Datensatz und bei Verarbeitung im keylosen Format BLKCTRL DATA die Verwaltungsinformatio nen Pamkey im Puffer Platz finden siehe 9 1 4 Au er bei neu angelegten Dateien OPEN OUTPUT hat die im Katalog eingetragene Blockgr e stets Vorrang gegen ber den Blockgr enangaben im Programm bzw im SET FILE LINK Kommando Die BLOCK CONTAINS Klausel ist optional Wird sie nicht angegeben nimmt der Compiler BLOCK CONTAINS 1 RECORD an d h ungeblockte Datens tze 172 U3987 J 2125 8 Dateiverarbeitung Sequentielle Dateien RECORD satzl ngenangabe legt fest ob S tze fester oder variabler L nge verarbeitet werden sollen und bestimmt bei S tzen variabler L nge einen Bereich f r die zul ssigen Satzgr en so wie falls im Format angegeben ein Datenfeld zur Aufnahme der jeweils aktuellen Satz l ngeninformation satzl ngenangabe mu einem der drei Formate der RECORD Klausel entsprechen die COBOLBS5 zur Verf gung stellt Sie darf nicht im Widerspruch zu den Satzl ngen stehen die der Compiler aus den Angaben der zugeh rigen Datensatzerkl rung en errechnet Die RECORD Klausel ist opt
16. 1 Einleitung 1 1 Konzept des Handbuchs Dieses Benutzerhandbuch beschreibt wie COBOL Programme im Betriebssystem BS2000 f r die bersetzung bereitgestellt mit dem COBOL85 Compiler bersetzt zu ablauff higen Programmen gebunden und in den Hauptspeicher geladen sowie in Testl ufen auf logische Fehler untersucht werden k nnen Es gibt au erdem Aufschlu dar ber wie COBOL Programme die M glichkeiten des BS2000 zum Informationsaustausch nutzen katalogisierte Dateien verarbeiten sortieren und mischen Fixpunkte ausgeben und f r einen Wiederanlauf verwenden sowie mit weiteren Programmen verkn pft werden k nnen Ferner beschreibt dieses Benutzerhandbuch in Kapitel 13 den Einsatz des COBOLS5 Compilers und der von ihm erzeugten Programme im POSIX Subsystem des BS2000 0SD V2 0 sowie den Zugriff auf das POSIX Dateisystem Der Leser ben tigt Kenntnisse der Programmiersprache COBOL sowie einfacher Anwen dungen des BS2000 Der Sprachumfang des COBOL85 Compilers ist im Handbuch COBOL85 Sprach beschreibung 1 dargestellt Auf Druckschriften wird im Text durch Kurztitel oder Nummern in eckigen Klammern hinge wiesen Die vollst ndigen Titel sind unter den entsprechenden Nummern im Literaturver zeichnis aufgef hrt U3987 J 2125 8 1 Die Ausbaustufen des COBOL85 Systems Einleitung 1 2 Die Ausbaustufen des COBOL85 Systems Das COBOL85 System V2 2 wird in zwei Ausbaustufen geliefert
17. 2 Der Compiler wird aufgerufen Er greift ber SYSDTA auf das zugewiesene Biblio thekselement zu 3 SYSDTA erh lt wieder die Prim rzuweisung Weitere M glichkeiten der Quelldaten Eingabe sind an die Steuerung des Compiler mit COMOPT Anweisungen gebunden und sind in Kapitel 4 beschrieben Eingabe von Quellprogrammteilen Quellprogrammteile COPY Elemente k nnen getrennt von den Quellprogrammen in de nen sie Verwendung finden in Bibliotheken gespeichert werden Dies empfiehlt sich vor al lem wenn in verschiedenen Quellprogrammen identische Programmteile vorkommen Im Quellprogramm steht stellvertretend f r diese Programmteile eine COPY Anweisung COPY Anweisungen d rfen an beliebiger Stelle im Quellprogramm stehen St t der Compiler beim bersetzen des Quellprogramms auf eine COPY Anweisung f gt er aus einer Bibliothek das Element ein dessen Name in der COPY Anweisung angegeben wird Das COPY Element wird dann so bersetzt als w re es im Quellprogramm selbst ge schrieben worden Das Format der COPY Anweisung ist in Kapitel 11 der COBOL85 Sprachbeschreibung 1 erl utert Eingabe von COPY Elementen aus PLAM Bibliotheken Vor dem Aufruf des Compilers m ssen die Bibliotheken in denen sich die COPY Elemente befinden dem Compiler mit dem SET FILE LINK Kommando zugewiesen und mit dem Linknamen verkn pft werden Falls in der COPY Anweisung ein Bibliotheksname angegeben ist wird der Linkname aus den ersten 8 Zeich
18. 7 8 9 10 11 MODULE GROUP POSITION LENGTH SOURCE REL REL IN GROUP LEV IN BYTES REFERENCED SEQ NO ADDR ADDR DEC NO DEC HEX FORMAT BY STATEMENTS 00017 FD SAM DATEI 00039 00046 00019 000000848 000000 00000001 01 SAM SATZ 0000000255 000000FF 00020 000000 00000001 05 ZEICHEN 0000000001 00000001 CHAR FILE NAME ISAM DATEI FILE SERIAL NO 02 ADDR LHE FCB 000830 MODULE GROUP POSITION LENGTH SOURCE REL REL IN GROUP LEV IN BYTES REFERENCED SEQ NO ADDR ADDR DEC NO DEC HEX FORMAT BY STATEMENTS 00023 FD ISAM DATEI 00039 00054 00025 00000070 000000 00000001 01 ISAM SATZ 0000000263 00000107 00050 00026 00000070 000000 00000001 05 ISAM SCHLUESSEL 0000000008 00000008 ZONED DEC 00011 00041 00027 00000078 000008 00000009 05 SATZ INHALT 0000000255 000000FF 00046 00028 00000078 000008 00000009 10 FILLER 0000000001 00000001 CHAR COBOL85 V02 2A00 KOPIEREN LOCATOR MAP LISTING 14 46 36 1995 09 14 PAGE 0006 DATA DIVISION KOPIEREN WORKING STORAGE SECTION MODULE GROUP POSITION LENGTH SOURCE REL REL IN GROUP LEV IN BYTES REFERENCED SEQ NO ADDR ADDR DEC NO DEC HEX FORMAT BY STATEMENTS 00002 G77 TALLY 0000000004 00000004 COMP 00003 G77 RETURN CODE 0000000004 00000004 COMP 5 00030 00000E78 000000 00000001 01 SAM DATEI ZUSTAND 0000000002 00000002 CHAR 00008 00041 00031 88 DATEI ENDE 00041 00032 EXTERNAL 000000 00000001 01 IDATSTA 0000000002 00000002 CHAR 00012 00033 00000E80 000000 00000001 01 I LAENGE 0000000002 00000002 BINARY 00020 00028 00034 00000E88 000000 00
19. In der Fehlerliste werden alle Sprachelemente mit F gekennzeichnet die zur ANS85 Sprachmenge high geh ren SDF Option ACTIVATE FLAGGING FIPS ABOVEINTERMED SUBSET FLAG ALL SEGMENTATION YES NO In der Fehlerliste werden alle Sprachelemente mit F gekennzeichnet die zur Segmentierung geh ren SDF Option ACTIVATE FLAGGING FIPS ALL SEGMENTATION FLAG INTRINSIC FUNCTIONS YES NO In der Fehlerliste werden alle Sprachelemente mit F gekennzeichnet die zum Modul Intrinsic Functions geh ren SDF Option ACTIVATE FLAGGING FIPS INTRINSIC FUNCTIONS U3987 J 2125 8 67 COMOPT Operanden COMOPT Steuerung Operandenformat Funktion FLAG NONSTANDARD YES NO In der Fehlerliste werden alle nicht standardgem en Spracherweiterungen mit F gekennzeichnet SDF Option ACTIVATE FLAGGING FIPS NONSTANDARD LANGUAGE FLAG OBSOLETE YES NO In der Fehlerliste werden alle veralteten Sprachelemente mit F gekennzeichnet SDF Option ACTIVATE FLAGGING FIPS OBSOLETE FEATURES FLAG REPORT WRITER YES NO In der Fehlerliste werden alle Sprachelemente mit F gekennzeichnet die zum Report Writer geh ren SDF Option ACTIVATE FLAGGING FIPS REPORT WRITER FLAG SEGMENTATION ABOVE1 YES NO In der Fehlerliste werden alle Sprachelemente mit F gekennzeichnet die zur Segmentierung Stufe 2 geh ren SDF Option ACTIVATE FLA
20. Jepara o a Br ann ha nie 269 13 1 berblick van uns ser einen hr nee R E eA 270 13 2 Bereitstellen des Quellprogramms 2 2 2 censnenene nennen nn 274 13 3 Steuerung des Compilers 2 222220 senn nennen nenn 276 13 4 Einf hrungsbeispiele H220en nennen nennen nennen nn 285 13 5 Unterschiede zu COBOL85 im BS2000 2 2 2n ones eneeen nenn nn 286 13 6 Verarbeiten von POSIX Dateien 22n 2 nenne nennen nenn 290 410 U3987 J 2125 8 Inhalt 14 Nutzbare Software f r COBOL Anwender zzzunrennnnnan nun une 299 14 1 Advanced Interactive Debugger AID 22m onnee rennen nennen 299 14 2 Library Maintenance System LMS 2 2 2 aaa 302 14 3 Jobv rlablen sireni 2 Zei a Dr ae BER Sep ne ge 304 14 4 Datenbankschnittstelle ESQL COBOL 2 22222 nsnneeeneeen nee nn 306 14 5 Universeller Transaktionsmonitor UTM 2 no oneee nennen nenn 308 15 Meldungen des COBOL85 Systems anne nunnen une nn 309 16 Anhang 22 2 2 ea near 347 16 1 Aufbau des COBOL85 Systems 2 2 nun ones enennnnn nennen nn 347 16 2 Datenbankbedienung UDS 2222n nennen nennen nen nn 356 16 3 Beschreibung der Listen 22222 2ee nennen nennen 359 Literatur oeann a nan ae a ante anaad et 371 Stichw rter 2u 3 2 un en ara 383 U3987 J Z125 8 411 412 U3987 J Z125 8 COBOL85 V2 2 BS2000 COBOL Compiler Benutzerhandbuch Zielgruppe COBOL Anwender im B
21. LMSO310 LMS VERSION V03 0A31 STARTED PRT OUT OPEN LIBRARY LIB PLAM LIB MODE UPDATECSTATE NEW 2 ADD ELEM FROM FILE SOURCE EINXEINS TO E LIB ELEM ELEM EINXEINS TYPE S 3 END 4 LMS0311 LMS V03 0A30 TERMINATED NORMALLY 1 Das Dienstprogramm LMS wird aufgerufen 2 PLAM LIB wird als neu einzurichtende STATE NEW Ausgabebibliothek USAGE OUT vereinbart Sie wird von LMS standardm ig als PLAM Bibliothek eingerichtet 3 Das Quellprogramm wird aus der katalogisierten Datei SOURCE EINXEINS als Element vom Typ S unter dem Namen EINXEINS in die PLAM Bibliothek aufge nommen 4 Der LMS Lauf wird beendet alle ge ffneten Dateien werden geschlossen 12 U3987 J 2125 8 berblick Quelldaten Eingabe 2 2 Quelldaten Eingabe 2 2 1 Eingaben in den Compiler k nnen folgende Quelldaten sein Quellprogramme einzelne Quellprogramme oder Quellprogramm Folgen Quellprogrammteile COPY Elemente Compiler Steueranweisungen COMOPT Anweisungen oder SDF Optionen Der Compiler kann Quellprogramme aus katalogisierten SAM oder ISAM Dateien aus Elementen von PLAM Bibliotheken und aus POSIX Dateien verarbeiten Die Bereitstellung von Quellprogrammen ist in Abschnitt 2 1 beschrieben Die Steueranweisungen f r die Ein gabe sind in den Kapiteln 3 Steueranweisungen im SDF Format und 4 COMOPT Anwei sungen eingehend beschrieben Die f r beide Steuerungsarten gleiche Zuw
22. VOODODOoNSITIPWOMDMDMWDHHOXODODODODOO NN MINIT PWOODMDMDHODOON ST AUNKE V V ID V VUV UV UV VUV ID ID ID IV Ww meremere AWWUWUNO LINE SIZE 80 00 PRETTY PRINTING DATE SOURCE SCHECK COB IDENTIFICATION DIVISION PROGRAM ID SCHECK ENVIRONMENT DIVISION INPUT OUTPUT SECTION FILE CONTROL SELECT SCHECKS ASSIGN TO PRINTER SELECT KONTOS ASSIGN TO PRINTER DATA DIVISION FILE SECTION COPY SCHECKS FD SCHECKS LABEL RECORD STANDARD 01 S DATEN 05 S NR PIC 9 7 05 S KONTO NR PIC 9 8 FD 01 WOR 01 01 05 FILLER REDEFINES S KONTO NR 10 STELLE OCCURS 8 PIC 9 05 BETRAG PIC 9 7 V9C2 COPY KONTOS ONTOS LABEL RECORD STANDARD DATEN 05 K ART PIC XX 05 K ZUSTAND PIC XX 05 K KONTO NR PIC 9X8 2 05 GEHALT 05 KREDIT PIC 9 7 V9C2 PIC 9 7 V9 2 05 KONTOSTAND PIC 9 7 V9C2 KING STORAGE SECTION CHECK PIC 9 16 FILLER REDEFINES CHECK 1994 03 03 TIME 11 36 59 PAGE 1 REFERENCES 6 72 ee J 5 D 4D 6 Far A 6 D 13 D 17 46 48 50 C 12 CELLO C2 CEDA 6 58 C 63 72 F F FE 4 C 22 C 64 C 7 1465 17 C56 C 59 C 12 C 16 G 122 6 54 C 158 C764 7 3 5 G 6 7 6 D 13 D TI D 18 ol m w U3987 J Z125 8 87 Strukturlisten Erzeugung COBOLB85 Strukturierer
23. ber das ASSIGN systemdatei Kommando Voraussetzung daf r ist da die ASSIGN Klausel den Namen einer Systemdatei enth lt Durch ein ASSIGN systemdatei Kommando f r die angegebene Systemdatei kann vor dem Programmaufruf eine katalogisierte Datei oder eine andere Systemdatei zugewiesen werden Welche Zuordnung dabei f r die jeweilige Systemdatei zul ssig sind ist der Beschreibung des ASSIGN systemdatei Kommandbos in 3 zu entnehmen Beispiel 9 3 Zuweisung einer katalogisierten Datei ber das ASSIGN systemdatei Kommando Eintrag im FILE CONTROL Paragraphen des COBOL Programms LISTPROG SELECT DRUCK DATEI ASSIGN TO PRINTER Zuweisung der Datei LIST DATEI ASSIGN SYSLST LIST DATEI und Programmaufruf START PROGRAM LISTPROG Wird zum Programmablauf explizit keine Datei zugewiesen f hrt das Programm seine Ein Ausgabeoperationen auf der angegebenen Systemdatei aus Eine Dateizuweisung bleibt so lange bestehen bis sie durch das Task Ende gel scht oder durch ein nachfolgendes ASSIGN systemdatei Kommando ge ndert wird Darauf ist vor allem dann zu achten wenn in einer Task einem programminternen Datei namen nacheinander mehrere Dateien zugeordnet werden sollen ber die jeweils aktuell zugewiesenen Dateien informiert das SHOW SYSTEM FILE ASSIGNMENTS Kommando U3987 J 2125 8 161 Grundlagen Dateiverarbeitung 9 1 3 Festlegen von Dateimerkmalen Das SET FILE LINK Kommando F r
24. und Fehlermeldung ABCO9 ABC10 003 004 keine 001 VERSION HIGHEST EXISTING Die h chste in der Bibliothek vorhandene Version wird berschrieben VERSION lt alphanum name 1 24 gt Das Element erh lt die angegebene Versionsbezeichnung Soll die Versionsbe zeichnung inkrementierbar sein mu mindestens das letzte Zeichen eine inkre mentierbare Ziffer sein siehe obiges Beispiel U3987 J Z125 8 43 MODULE OUTPUT Option SDF Steuerung des Compilers ELEMENT lt composed name 1 32 gt F r Bindelademodule LLMs kann der Benutzer einen selbstgew hlten Elementnamen angeben Dieser Operand wird bei der bersetzung einer Quellprogramm Folge ignoriert Statt dessen werden die Elementnamen der LLMs aus dem jeweiligen PROGRAM ID Namen abgeleitet siehe Abschnitt 2 3 1 Tabelle 2 3 VERSION UPPER LIMIT INCREMENT HIGHEST EXISTING lt alphanum name 1 24 gt Versionsangabe siehe oben Versionsangabe f r Objektmodule Bei der bersetzung einer Quellprogramm Folge erh lt jedes Element die gleiche Versionsbezeichnung 44 U3987 J Z125 8 SDF Steuerung des Compilers LISTING Option 3 3 6 LISTING Option Die Parameter dieser Option steuern welche Listen der Compiler erzeugen soll welches Layout die Listen haben und wohin sie ausgegeben werden sollen Format LISTING NONE STD PARAMETERS PARAMETERS OPTIONS NO YES SOURCE NO YES YES CO
25. 306 U3987 J 2125 8 Nutzbare Software f r COBOL Anwender Datenbankschnittstelle ESQL COBOL Technische Hinweise Die SQL Anweisungen eines ESQL COBOL Programms sind in den COBOL Code einge bettet und werden von einem Precompiler durch COBOL CALL Aufrufe ersetzt Die Aus gabe des Precompilers ist eine normale COBOL Quelle die mit dem COBOL85 Compiler zu bersetzen ist Zus tzlich extrahiert der Precompiler die SQL Anweisungen und trans formiert sie in sog SQL Objekte Das bersetzte COBOL Programm wird mit den SQL Objekten den COBOL und DBMS Laufzeitmodulen sowie einem Laufzeitsystem f r die SQL Objekte zu einem ausf hrbaren Programm zusammengebunden Dokumentation SQL ESQL Handb cher 17 22 U3987 J 2125 8 307 Universeller Transaktionsmonitor UTM Nutzbare Software f r COBOL Anwender 14 5 Universeller Transaktionsmonitor UTM UTM erlaubt die einfache Erstellung und den Betrieb von Transaktionsanwendungen Zur Programmerstellung steht eine genormte Programmschnittstelle KDCS DIN 66265 zur Verf gung die von den meisten Programmiersprachen unterst tzt wird Zusammen mit dem Formatierungsystem FHS wird die Ein Ausgabe ber Formate f r alle Siemens Nixdorf Datenstationen unterst tzt UTM garantiert da eine Transaktion mit allen Daten nderungen entweder vollst ndig oder nicht durchgef hrt wird und gew hrleistet die Konsistenz der Anwenderdaten in Kom bination mit UDS SESAM LEASY un
26. Binden mit dem BINDER Binden Laden Starten 6 3 Binden mit dem BINDER Mit dem BINDER k nnen Objektmodule und Bindelademodule LLMs zu einem LLM ge bunden und als Element vom Typ L in einer PLAM Bibliothek abgespeichert werden Der BINDER ist ausf hrlich im Handbuch BINDER 27 beschrieben Beispiel 6 2 Erzeugen eines LLM aus Objektmodulen START PROG BINDER 1 BLS0500 PROGRAM BINDER VERSION V01 1A03 OF 1992 11 12 LOADED BLS0552 COPYRIGHT C SIEMENS NIXDORF INFORMATIONSSYSTEME AG 1990 ALL RIGHTS RESERVED START LLM CREATION INT NAME PROG 2 INCLUDE MODULES LIB OMF ELEM MAI 3 INCLUDE MODULES LIB PLAM BSP ELEM SUB 4 RESOLVE BY AUTOLINK LIB SYSLNK CRTE 5 SAVE LLM LIB PLAM BSP ELEM TESTPROG 6 BND3101 SOME EXTERNAL REFERENCES UNRESOLVED BND3102 SOME WEAK EXTERNS UNRESOLVED BND1501 LLM FORMAT 1 E 7 BND1101 BINDER NORMALLY TERMINATED SEVERITY CLASS UNRESOLVED EXTERNAL START PROG MOD LIB PLAM BSP ELEM TESTPROG RUN MOD ADVANCED 8 BLS0001 DBL VERSION 070 RUNNING BLS0523 ELEMENT TESTPROG VERSION FROM LIBRARY PLAM BSP IN PROCESSING BLS0524 LLM TESTPROG VERSION OF 1993 02 26 14 51 46 LOADED 1 Der BINDER wird aufgerufen 2 Die Anweisung START LLM CREATION erzeugt einen neuen LLM im Arbeitsbe reich mit dem inte
27. COBOL85 BC Basic Configuration Grundausbaustufe COBOLS85 Vollausbaustufe In der BC Version des COBOLB85 werden folgende Steuerungs und Sprachkomponenten nicht unterst tzt Dialogtesthilfe AID Ausgabe einer Liste aller Fehlermeldungen Ausgabe von Objektlisten COBOL DML Sprachelemente f r Datenbankanschlu Sprachmodul Report Writer COBOL85 Strukturierer Compiler und Programmablauf im POSIX Subsystem Dieses Benutzerhandbuch referiert grunds tzlich die Vollausbaustufe die Texte zu den von COBOL85 BC nicht unterst tzten Funktionen enthalten einen entsprechenden Hinweis Der COBOL85 Compiler wird ab der Version 2 1A ohne COBOL85 Laufzeitsystem ausge liefert Das COBOL85 Laufzeitsystem ist Bestandteil des CRTE Common RunTime Environ ment der gemeinsamen Laufzeitumgebung f r COBOL85 C und C Programme Das in CRTE enthaltene COBOL85 Laufzeitsystem unterst tzt den Ablauf aller Program me die von COBOL85 Compilern ab Version1 0A bersetzt wurden U3987 J Z125 8 Einleitung nderungen gegen ber dem vorigen Handbuch 1 3 nderungen gegen ber dem vorigen Handbuch In folgender Tabelle sind die wesentlichen fachlichen Neuerungen und nderungen unter Angabe des Abschnitts aufgef hrt Die ber das ganze Handbuch verteilten inhaltlichen und sprachlichen Korrekturen sind nicht eigens genannt Kapitel Stichwort
28. Comopt 70 Meldungen des COBOL85 Compilers 312 des Laufzeitsystems 312 Meldungen des COBOL85 Systems 309 Ausgabe 21 Struktur 309 Meldungen englische 309 Meldungssprache w hlen 309 Meldungstext 309 MERGE Anweisung 247 MERGE DIAGNOSTICS Comopt 70 MERGEnn Linkname 159 Metasprache des Handbuchs 4 Metazeichen SDF 30 MINIMAL SEVERITY Comopt 71 MINIMAL WEIGHT SDF Operand 46 Mischen von Datens tzen 247 MODIFY SDF OPTIONS SDF Kommando 27 U3987 J 2125 8 395 Stichw rter Modul Begriffserkl rung 5 Modulausgabe 19 bei COMOPT Steuerung 71 bei SDF Steuerung 42 Elementnamenbildung 20 MODULE Comopt 71 MODULE ELEMENT Comopt 71 MODULE FORMAT SDF Operand 41 Modulerzeugung bei COMOPT Steuerung 69 bei SDF Steuerung 40 Modulerzeugung unterdr cken bei COMOPT Steuerung 74 bei SDF Steuerung 41 MODULE VERSION Comopt 71 Modulformat festlegen bei COMOPT Steuerung 71 bei SDF Steuerung 41 Moduln des COBOL85 Compilers 349 des COBOLB85 Laufzeitsystems 351 MONJV Option des Compilers 56 des Strukturierers 100 N NAME INFORMATION SDF Operand 47 NK Datentr ger 166 NK ISAM Datei 167 NK Plattenformat 166 NK SAM Datei 168 NONSTANDARD LANGUAGE SDF Operand 38 O Objektdatei 270 Objektliste Anforderung 69 70 Objektmodul Ausgabe in die EAM Datei 19 Begriffserkl rung 5 Verarbeitung durch den Binder 101 Objektprogramm Begriffserkl rung 5 OBSOLETE FEATURES SDF Operand 38 OM Format 41 396 U3987
29. MINIMAL WEIGHT NOTE WARNING ERROR SEVERE ERROR FATAL ERROR In der Fehlerliste stehen keine Meldungen deren Fehlergewicht kleiner ist als der angegebene Wert Der voreingestellte Wert NOTE bewirkt da alle bei der ber setzung aufgetretenen Fehler Meldungen in der Liste aufgef hrt werden 46 U3987 J 2125 8 SDF Steuerung des Compilers LISTING Option IMPLICIT SCOPE END STD REPORTED Bei Angabe von REPORTED wird in der Fehlerliste die Beendigung einer struktu rierten Anweisung durch einen Punkt mit einer Hinweismeldung versehen NAME INFORMATION NO YESG Bei Angabe von YES erzeugt der Compiler eine Adre liste oder eine Adre und Quer verweisliste Die Liste enth lt die Daten Kapitel und Paragraphennamen SORTING ORDER ALPHABETIC Die symbolischen Namen der Adre liste sind alphabetisch aufsteigend sortiert auf gelistet SORTING ORDER BY DEFINITION Die symbolischen Namen der Adre liste sind in der Reihenfolge aufgelistet wie sie im Quellprogramm definiert wurden CROSS REFERENCE NONE Es wird keine Querverweisliste erzeugt CROSS REFERENCE REFERENCED Es wird eine Querverweisliste erzeugt in der nur die Daten und Prozedurnamen aufgelistet sind die im Programm tats chlich angesprochen werden CROSS REFERENCE ALL Es wird eine Querverweisliste mit allen Daten und Prozedurnamen erzeugt SUPPRESS GENERATION NO AT SEVERE ERROR Mit der Angabe AT SEVERE ERROR kann die Ausga
30. REVERSED und WITH NO REWIND in der OPEN Anweisung Beide Angaben bewirken da beim Er ffnen der Datei nicht auf den Dateianfang posi tioniert wird INPUT REVERSED positioniert bei der Er ffnung auf den letzten Satz der Datei und erm glicht ein Lesen der Datens tze in umgekehrter absteigender Folge WITH NO REWIND kann sowohl bei OPEN INPUT als auch bei OPEN OUTPUT ange geben werden und hat zur Folge da bei der Ausf hrung der OPEN Anweisung nicht neu positioniert wird Die Angaben REEL WITH NO REWIND und FOR REMOVAL in der CLOSE Anwei sung REEL ist nur erlaubt f r Mehrdatentr gerdateien d h Dateien die sich ber mehr als einen Datentr ger hier Magnetbandspule erstrecken Die Angabe l st beim Errei chen des Spulenendes die Ausf hrung von Datentr gerabschlu Operationen aus die im einzelnen vom Er ffnungsmodus der jeweiligen Datei abh ngen siehe dazu 1 CLOSE Anweisung Falls zus tzlich WITH NO REWIND oder FOR REMOVAL ange geben wurde werden bei Erreichen des Spulenendes auch die damit verbundenen Ak tionen siehe unten durchgef hrt WITH NO REWIND bewirkt da nach dem Abschlu der Verarbeitung einer Datei bzw einer Spule nicht auf den Spulenanfang zur ckpositioniert wird FOR REMOVAL gibt an da die aktuelle Spule bei Erreichen des Datei bzw Spulenendes entladen werden soll 186 U3987 J 2125 8 Dateiverarbeitung Sequentielle Dateien Zuweisen von Magnetbanddateien
31. RUNTIME CHECKS Option 53 RUNTIME OPTIONS Option 57 S SAM Datei sequentielle Dateiorganisation 169 Satzformate indizierte Dateien 222 relative Dateien 200 sequentielle Dateien 175 Satzl ngenfeld 156 Schl ssel vereinbaren indizierte Dateien 219 relative Dateien 199 Schl sseldatenfeld 197 Schl sselwort Operanden SDF 26 SDF Expert Modus 26 SDF Men Modus 27 tempor rer Wechsel in den 28 SDF Optionen des Compilers ACTIVATE FLAGGING 38 COMPILER ACTION 40 COMPILER TERMINATION 55 LISTING 45 MONJV 56 RUNTIME CHECKS 53 RUNTIME OPTIONS 57 SOURCE 35 SOURCE PROPERTIES 37 TEST SUPPORT 51 SDF Optionen des Strukturierers COPY STATEMENTS 98 DIAGNOSTICS 99 MONJV 100 SOURCE 90 STRUCTURIZER ACTION 92 SDF Optionen bersicht 34 SDF P Variable 149 178 SDF Steuerung des Compilers 25 SEGMENTATION ABOVE1 SDF Operand 39 Segmentierung 109 Sekund rschl ssel indizierte Dateien 219 SELECT Klausel 159 U3987 J Z125 8 401 Stichw rter indizierte Dateien 218 relative Dateien 196 sequentielle Dateien 171 Semantikpr fung des Quellprogramms 75 SEPARATE TESTPOINTS Comopt 72 Sequentielle Dateien 169 ACCESS MODE Klausel 171 ASSIGN Klausel 171 BLOCK CONTAINS Klausel 172 CLOSE Anweisung 174 COBOL Sprachmittel 170 Datensatzerkl rung 173 Druckdateien erstellen 180 Ein Ausgabeanweisungen 174 Ein Ausgabezust nde 188 Er ffnungsarten 176 FILE STATUS Klausel 172 188 FILE STATUS Werte 190
32. hrung in die C C Programmentwicklung in POSIX Shell Umgebung bersetzen und Binden von C und C Programmen mit den POSIX Kom mandos cc c89 und CC Steuern des globalen C und C Listengenerators mit dem POSIX Kom mando ccxref Bestellen von Handb chern Die aufgef hrten Handb cher finden Sie mit ihren Bestellnummern im Druckschriftenver zeichnis der Siemens Nixdorf Informationssysteme AG Neu erschienene Titel finden Sie in den Druckschriften Neuerscheinungen Beide Ver ffentlichungen erhalten Sie regelm ig wenn Sie in den entsprechenden Ver teiler aufgenommen sind Wenden Sie sich bitte hierf r an Ihre zust ndige Gesch ftsstelle Dort k nnen Sie auch die Handb cher bestellen 382 U3987 J 2125 8 Stichw rter Stichw rter A Ablauff higes Programm 112 Begriffserkl rung 5 Binden mit TSOSLNK 105 Erzeugung 101 Laden 115 permanentes 102 tempor res 102 ABOVEINTERMED SUBSET SDF Operand 39 ABOVEMIN SUBSET SDF Operand 38 ACCEPT Anweisung Lesen aus Systemdateien 134 Lesen von Compiler und Betriebssysteminformationen 150 Lesen von Jobvariablen 146 ACCEPT DISPLAY ASSGN SDF Operand 58 ACCGEPT LOW TO UP Comopt 65 ACCEPT STMT INPUT SDF Operand 57 ACCESS MODE Klausel indizierte Dateien 218 223 relative Dateien 196 sequentielle Dateien 171 ACTIVATE FLAGGING Option 38 ACTIVATE WARNING MECHANISM Comopt 65 ACTIVATE XPG4 RETURNCODE Comopt 65 ADD SHARED PROGRAM Kommando 120 Ad
33. nen Datei und Datentr gerstrukturen sowie der Umstellung von K Dateiformat auf NK Da teiformat findet sich im Handbuch DVS Einf hrung und Kommandoschnittstelle 4 Werden im BLOCK CONTROL INFO oder im BUFFER LENGTH Operanden des SET FILE LINK Kommandos Werte angegeben die im Widerspruch stehen zum Blockformat der Datei oder zum Datentr ger auf dem die Datei gespeichert ist oder zum erforderlichen Blockungsfaktor wird die Dateiverarbeitung erfolglos abgebrochen Das Laufzeitsystem meldet dies mit dem Ein Ausgabe Status File Status 95 Wird f r eine COBOL Datei kein SET FILE LINK Kommando verwendet gilt die vom Systemverwalter zu treffende Voreinstellung im BLKCTRL Operanden der CLASS2 OPTION 166 U3987 J 2125 8 Dateiverarbeitung Grundlagen K ISAM und NK ISAM Dateien ISAM Dateien im K Format die die maximale Satzl nge ausn tzen werden im NK Format l nger als der nutzbare Bereich des Datenblocks Sie k nnen im NK Format behandelt wer den da das DVS Verl ngerungen von Datenbl cken sog berlaufbl cke bildet Die Bildung von berlaufbl cken bringt folgende Probleme mit sich Die berlaufbl cke erh hen den Platzbedarf auf der Platte und damit die Zahl der Ein Ausgaben w hrend der Dateibearbeitung Der ISAM Schl ssel darf in keinem Fall in einem berlaufblock liegen berlaufbl cke k nnen vermieden werden wenn man daf r sorgt da der l ngste Satz der Datei nicht
34. schlie en sich gegensei tig aus INCLUDE gibt einzelne Objektmodule an aus denen der Binder das Programm bzw das Gro modul aufbauen soll RESOLVE weist TSOSLNK PLAM Bibliotheken f r das unten beschiebene Autolink Verfah ren zu EXCLUDE schlie t die angegebene PLAM Bibliothek vom unten beschriebenen Autolink Verfahren aus ENTRY siehe ENTRY bzw START Operand der PROGRAM Anweisung END markiert das Ende der Eingabe von Binderanweisungen 106 U3987 J 2125 8 Binden Laden Starten Statisches Binden mit TSOSLNK Autolink Verfahren des TSOSLNK Findet TSOSLNK in einem Modul externe Adre verweise die nicht durch die Module be friedigt werden k nnen die in INCLUDE Anweisungen angegeben wurden so geht er nach folgendem Autolink Verfahren vor 1 Als erstes pr ft TSOSLNK ob dem Externverweis mit einer RESOLVE Anweisung ex plizit eine Bibliothek zugeordnet wurde in der ein passendes Modul zu suchen ist 2 Kann TSOSLNK im ersten Schritt den Externverweis nicht befriedigen so durchsucht er s mtliche Bibliotheken die in RESOLVE Anweisungen angegeben wurden Dabei k nnen Bibliotheken durch EXCLUDE Anweisungen von der Suche ausgeschlossen werden 3 Istes TSOSLNK auch im zweiten Schritt nicht gelungen den Externverweis zu befrie digen durchsucht er die Bibliothek TASKLIB sofern dies nicht durch die Anweisung NCAL oder eine entsprechende EXCLUDE Anweisung verhind
35. sequentielle Dateien 176 Z Zeilensequentielle Dateien 178 Zugriffsarten indizierte Dateien 223 relative Dateien 201 sequentielle Dateien 175 Zugriffsmethoden des DVS 155 Zus tze zu Datentypen SDF 33 U3987 J Z125 8 407 408 U3987 J 2125 8 Inhalt Einleitung 2 22 32 a TR aa 1 Konzept des Handbuchs orrera a reten eE anne anne 1 Die Ausbaustufen des COBOL85 Systems 2 22 nesenn nennen nennen 2 nderungen gegen ber dem vorigen Handbuch 22222222cecceneeenennn 3 Im Handbuch verwendete Darstellungsmittel a na an anaua 4 Begriffserkl rungen u ned tee as er ar a a EE Kr T ERT rn 5 LBSEBIICK Us le Ne an Ba ne a a a ee ee 7 Bereitstellen des Quellprogramms 2 usun san ee nennen en 10 Quelldaten Eingabe sai 4 2 ea ae are Dre en Bee E 13 Ausgaben des Compilers 222222 sen nee nennen nen 19 Steuerungsm glichkeiten des Compilers 2 222222 esseee seen nee nenn 22 Beendigung des Compilerlaufs 2 2 2ueseneeenen nennen nennen 23 bersetzung von Quellprogramm Folgen 2 2 22 2222ccueeeeeeeeeeeeeeeneenn 24 Steuerung des Compilers ber SDF HuHnuuee en en nn nenn 25 Compileraufruf und Eingabe der Optionen saaana nasaan 26 SDF Syntaxbeschreibung 2 2 22H nn seen nennen een en 30 SDF Optionen zur Steuerung des bersetzungslaufs 22 2222222 34 Steuerung des Compilers mit COMOPT Anweisungen Hrreuenn nn 59 Quelldat
36. werden Datens tze sortiert Ihr Name wird z B vereinbart ber die Klausel SELECT sortierdatei ASSIGN TO SORTWK Au erdem mu diese Datei in der Sortierdateierkl rung SD der DATA DIVISION beschrie ben sein Mit der Anweisung SORT sortierdatei wird auf diese Datei zugegriffen Ohne da der Benutzer ein SET FILE LINK Kommando angibt wird diese Datei unter dem Namen SORTWORK Djjttt TSnnnn jj Jahr ttt laufender Tag des Jahres nnnn Proze fol genummer katalogisiert Der Linkname ist SORTWK Nach normalem Sortierende wird diese Datei gel scht Die Gr e der Sortierdatei beim Einrichten ohne SET FILE LINK Kommando betr gt stan dardm ig 24 x 16 384 PAM Seiten durch Versorgen von SORT Sonderregistern kann dieser Wert beeinflu t werden Demnach ist die Prim rzuweisung 384 PAM Seiten Die Sekund rzuweisung ist 1 4 davon also 96 PAM Seiten Mit dem Kommando MODIFY FILE ATTRIBUTES dateiname SUPPORT PUBLIC DISK SPACE RELATIVECPRIMARY ALLOCATION SECONDARY ALLOCATION kann der Benutzer die Gr e der Sortierdatei selbst bestimmen siehe Handbuch 6 Empfehlenswert ist dies bei gro en Dateien Nach normalem Sortierende wird diese Datei geschlossen aber nicht gel scht SORT Sonderregister siehe 1 Vor dem Sortieren kann der Programmierer folgende SORT Sonderregister versorgen SORT FILE SIZE mit der Anzahl der S tze SORT MODE SIZE mit der durchschnittlichen Satzl nge Diese beiden
37. 11 Dies ist z B dann der Fall wenn im Unterprogramm weitere Dateien mit anderer Dateiorganisation als im Hauptprogramm verarbeitet werden sollen 262 U3987 J 2125 8 Programmverkn pfungen Binden und Laden von Unterprogrammen 3 Verwendung des BINDER LLM Binden Im Unterschied zum TSOSLNK l t der BINDER standardm ig alle Externverweise und Einsprungpunkte sichtbar dies ist f r den anschlie enden Bindelader Lauf unbedingt er forderlich Ferner k nnen bei Verwendung des BINDER die Externverweise offen bleiben deshalb braucht das LZS nicht eingebunden zu werden Dies ist von Vorteil wenn f r den Pro grammablauf ein gemeinsam benutzbares LZS verwendet werden soll a Erzeugen eines einzigen Bindelademoduls START PROGRAM BINDER START LLM CREA GROSSMOD 1 INCLUDE MODULES LIB BENUTZER PROGRAMME ELEM MAINPROG 2 INCLUDE MODULES LIB BENUTZER PROGRAMME ELEM UPROG2 3 RESOLVE BY AUTOLINK LIB BENUTZER PROGRAMME 4 SAVE LLM LIB MODUL LIB 5 END SET FILE LINK BLSLIBOO SYSLNK CRTE 6 START PROGRAM MODULE LIB MODUL LIB ELEM GROSSMOD 7 RUN MODE ADVANCED CALT LIB YES UNRES EXT DELAY LOAD INFO REFERENCE 1 Erzeugen eines Bindelademoduls mit dem Namen GROSSMOD 2 Explizites Einbinden des Hauptprogramm Moduls MAINPROG aus der Bibliothek BENUTZER PROGRAMME 3 Explizites Einbinden des Moduls UPROG2 aus der Bibliothek BENUTZER
38. 14 21 Abrechnungsnummer 22 Privilegierungszeichen der Task Inhalt U f r Benutzer S f r Systemverwalter 23 32 Betriebssystemversion Format Vzz zbzzzz z B V11 2 33 40 Name des n chsten Rechners an den die Datensichtstation ange schlossen ist U3987 J 2125 8 151 Compiler und Betriebssysteminformationen Schnittstelle COBOL Programm BS2000 Zeichenpositionen Informationen f r PROCESS INFO 41 120 Systemverwalter Privilegien die Felder enthalten 8 Leerzeichen wenn das Privileg nicht vorhanden ist 41 48 SECADM 49 56 USERADM 57 64 HSMSADM 65 72 SECOLTP 73 80 TAPEADM 81 88 SATFGMMF 89 96 NETADM 97 104 FTADM 105 112 FTACADM 113 120 TSOS Zeichenpositionen Informationen f r TERMINAL INFO 1 8 Stationsname 9 13 Anzahl der Zeichen pro Zeile 14 18 Anzahl der physikalischen Zeilen die ausgegeben werden k nnen ohne da die Informations berlaufkontrolle anspricht 19 23 Anzahl der Zeichen die ausgegeben werden k nnen ohne da die Informations berlaufkontrolle anspricht 24 27 Ger tetyp Ist ein Ger tetyp dem Laufzeitsystem nicht bekannt enthalten diese Positionen Leerzeichen Zeichenpositionen Informationen f r DATE ISO4 1 14 aktuelles Tagesdatum einschlie lich Jahrhundert JJJJ und Tages zahl NNN des laufenden Jahres Format JJJJ MM DDNNN Tabelle 8 4 Struktur der Compiler un
39. A 8 47 OVE BN TO BETRAG ZUSTAND D 27 48 WHEN BETRAG lt 5 D A 8 49 OVE BS TO BETRAG ZUSTAND D 27 50 HWHEN BETRAG gt 1000000 D A 8 51 OVE BS TO BETRAG ZUSTAND D 27 52 WHEN OTHER 53 OVE BO TO BETRAG ZUSTAND D 27 54 END EVALUATE 55 PERFORM KONTO NR PRUEFE DD 1 88 U3987 J 2125 8 COBOLBS5 Strukturierer Strukturlisten Erzeugung 56 IF BETRAG OK D 29 57 AND 58 ONTO NR OK D 26 59 THE 60 PERFORM KONTO LESE DPF 61 IF KONTO FEHLT D 21 62 THE 63 PERFORM FEHLER MELDUNG D K 64 PERFORM SCHECK ABWEISEN D I 65 ELSE 66 PERFORM SCHECK PRUEFUNG D CS 67 END IF 68 ELSE 69 PERFORM FEHLER MELDUNG D K 70 END IF 71 END PERFORM 72 CLOSE SCHECKS KONTOS D AS 2 B 2 73 STEUERUNG 1002 UN 74 lt STOP R COBOL85 V02 1B00 PRETTY PRINTING DATE 1994 03 03 TIME 11 36 59 PAGE 10 LINE ID SOURCE SCHECK COB REFERENCES TABLE OF ALL INCLUDED COPY ELEMENTS IN THE PROGRAM COPY CALL IN COPY ELEMENT ID ID LINE A 10 SCHECKS B 11 ONTOS C 76 SCHECK PRUEFUNG D 78 ONTO NR PRUEFEN Erz 80 SCHECK LESE Fog 82 ONTO LESE G 84 SCHECK BEARBEITEN H 86 FEHLER BEARBEITEN Il R 1 SCHECK ABWEISEN UN H 2 SCHECK SPERRE H 3 FEHLER MELDUNG U3987 J Z125 8 89 SOURCE Option COBOLB85 Strukturierer 5 3 SDF Optionen zur Steuerung des COBOLB85 Strukturierers 5 3
40. ACCEPT DISPLAY ASSGN SYSIPT AND SYSLST TERMINAL Die Angabe von TERMINAL bewirkt da f r ACCEPT und DISPLAY Anweisungen ohne FROM bzw UPON Angaben statt der Systemdateien SYSIPT bzw SYSLST Voreinstellung die Systemdateien SYSDTA bzw SYSOUT zugewiesen werden ERROR REACTION CONTINUATION TERMINATION Standardm ig CONTINUATION wird der Programmablauf nach der Ausgabe folgen der Meldungen fortgesetzt COB9120 bis COB9127 COB9131 COB9132 COB9134 COB9140 COB9144 COB9145 und COB9197 Bei Angabe von TERMINATION f hren die o g Fehlerf lle zu einer abnormalen Pro grammbeendigung siehe auch 6 6 Programmbeendigung ENABLE UFS ACCESS NO YES Bei Angabe von YES erzeugt der Compiler ein Objekt das als Programm auf das POSIX Dateisystem zugreifen kann im POSIX Subsystem weiterverarbeitet gebunden werden kann Wie auf eine Datei im POSIX Dateisystem zugegriffen wird und welchen Bedingungen die Dateiverarbeitung unterliegt ist in Kapitel 13 beschrieben Dieser Operand ist in COBOL BC nicht verf gbar 58 U3987 J 2125 8 4 Steuerung des Compilers mit COMOPT Anweisungen Der COBOL85 Compiler kann auch wie bisher ber COMOPT Anweisungen gesteuert werden Er wird zu diesem Zweck mit dem Kommando START PROGRAM FROM FILE COBOL85 aufgerufen Die Eingabe des Quellprogramms die Ausgabe der Protokollisten und des Moduls sowie der interne Ablauf des bersetzungsvorgangs lassen sich durch Opti
41. ASSIGN SYSDTA dateiname ASSIGN SYSDTA LIBRARY bibliothek element Kartenleser ASSIGN SYSDTA CARD Diskette ASSIGN SYSDTA DISKETTE SYSIPT katalog Plattendatei SAM oder ISAM ASSIGN SYSIPT dateiname Kartenleser ASSIGN SYSIPT CARD SYSOUT katalog Plattendatei Band oder Platte ASSIGN SYSOUT dateiname nur im Stapelbetrieb SYSLST SYSLSTnn katalog Plattendatei SAM ASSIGN SYSLST dateiname ASSIGN SYSLST SYSLST NUMBER Pseudodatei DUMMY ASSIGN SYSLST DUMMY SYSOPT katalog Plattendatei SAM ASSIGN SYSOPT dateiname oder ASSIGN SYSOPT dateiname OPEN MODE EXTEND Pseudodatei DUMMY ASSIGN SYSOPT DUMMY Tabelle 8 2 Umweisungen von Systemdateien U3987 J 2125 8 137 Systemdateien Schnittstelle COBOL Programm BS2000 Satzformate Die Systemdateien verarbeiten S tze fester L nge Satzformat F oder S tze variabler L nge Satzformat V Die folgende Tabelle gibt einen berblick ber die jeweils zul ssigen Satzformate und Satzl ngen Systemdatei Satzformat Satzl nge SYSDTA V Bei Eingabe ber Datenstation oder Plattendatei maximal 32 Kbyte Bei Eingabe ber Kartenleser maximal 80 byte SYSIPT 80 byte SYSOUT im Stapelbetrieb maximal 132 byte 1 Vorschubzeichen im Dialogbetrieb maximal 32 Kbyte SYSLST V maximal 133 byte SYSLSTnn 1 byte Steuerin
42. ASSUMED COLUMNNUMBER 26 EXIT STATEMENT IS NONCONFORMING NONSTANDARD 14 46 36 1995 09 14 PAGE 0002 Im Listenbeispiel sind die bersetzungsmeldungen eingemischt wie in 3 3 6 LISTING Option be schrieben 362 U3987 J 2125 8 Anhang Quellprogrammliste Als zweiter Teil der Quellprogrammliste wird eine Bibliotheksliste ausgegeben Ihr sind die Quellen zu entnehmen aus denen das in dieser bersetzung bearbeitete COBOL Pro gramm entstand F r jede COPY Anweisung wird eine Zeile angelegt die folgende Infor mationen enth lt 6 Folgenummer der Quellprogrammzeile in der die COPY Anweisung auftritt Linkname aus der COPY Anweisung Dateiname unter dem die Bibliothek im BS2000 Dateikatalog eingetragen ist Bibliothekstyp Elementname Datum und Versionsnummer mit der das Bibliothekselement in der Bibliothek eingetragen ist Datum und Versionsnummer sind nicht immer vorhanden COBOL85 V02 2A0O0 KOPIEREN LIBRARY LISTING 14 46 36 1995 09 14 PAGE 0003 6 7 8 9 10 11 12 SOURCE LIBRARY FILE NAME LIB ELEMENT NAME USER VERSION SEQ NO NAME ORG DATE SOURCE X H2610491 KOPIEREN ISAM 00016 COBLIB X H2610491 COBOL BIBLIOTHEK PLAM SAM DATEI 1995 09 14 00022 COBLIB X F2610491 COBOL BIBLIOTHEK PLAM ISAM DATEI 1995 09 14 U3987 J 2125 8 363 Formatsteueranweisungen TITLE EJECT SKIP Anhang Die Formatsteueranweisungen TITLE EJECT SKIP Der COBOL85 Comp
43. Alternativen ein d h aus den ange benen Gr en mu eine Angabe ausgew hlt werden Die Alternativen stehen untereinander Befindet sich unter den ange gebenen Gr en ein Standardwert dann ist keine Angabe erforder lich wenn der Standardwert gew nscht ist Ein Schr gstrich zwischen nebeneinander stehenden Angaben be deutet ebenfalls da es sich um Alternativen handelt von denen eine ausgew hlt werden mu Falls der angegebene Standardwert gew nscht wird ist keine Angabe erforderlich Eckige Klammern schlie en Wahlangaben ein die weggelassen werden d rfen Runde Klammern m ssen mit angegeben werden Dieses Zeichen deutet an da mindestens ein Leerzeichen syntak tisch notwendig ist sind ohne Ver nderung zu bernehmen F r COBOL Sprachformate gelten die blichen COBOL Konventionen siehe Hand buch COBOL85 Sprachbeschreibung 1 Die SDF Metasyntax ist in Abschnitt 3 2 gesondert beschrieben U3987 J 2125 8 Einleitung Begriffserkl rungen 1 5 Begriffserkl rungen In der Beschreibung des Programmerstellungsprozesses werden h ufig unterschiedliche Begriffe f r dasselbe Objekt verwendet Beispielsweise wird das Resultat eines Compiler laufs als Objektmodul bezeichnet w hrend f r den Binder dasselbe Objekt ein Bindemo dul zu bindender Modul ist Die Verwendung der komponentenspezifischen Begriffe ist sinnvoll kann aber beim Leser des Handbuchs zur t
44. Auftrag C wartet solange bis im Auftrag B der Benutzerschalter den Status ON erh lt Sobald der Benutzerschalter 21 auf ON gesetzt ist ruft Auftrag C das COBOL Programm FOLGE PR auf es kann dann auf die im Auftrag B aktualisierte ISAM DATEI zugreifen Benutzerschalter 21 erh lt den Zustand OFF um das normale Ende von Auftrag C zu markieren 144 U3987 J 2125 8 Schnittstelle COBOL Programm BS2000 Jobvariablen 8 3 Jobvariablen Jobvariablen sind als eigenes Softwareprodukt erh ltlich hnlich wie Auftrags und Benut zerschalter dienen auch sie dem Informationsaustausch zwischen Anwenderprogrammen und dem Betriebssystem oder zwischen verschiedenen Anwenderprogrammen Jobvariablen bieten jedoch gegen ber den Schaltern zus tzliche M glichkeiten Sie k nnen beim Aufruf eines Programms als berwachende Jobvariablen vereinbart werden Als solche werden sie vom Programm automatisch mit Zustands und R ck kehrcodes versorgt die ber Programmzustand und Beendigungsverhalten sowie ber m gliche Ablauffehler informieren Sie k nnen auf Betriebssystem oder Programm Ebene mit Datens tzen bis zu 256 byte bei berwachenden Jobvariablen 128 byte L nge versorgt werden Dadurch las sen sie beim Informationsaustausch eine st rkere Differenzierung zu als Auftrags oder Benutzerschalter die nur zwischen den Zust nden ON und OFF wechseln k nnen Sie k nnen anders als Auftrags oder Benutze
45. BS2000 OSD Anwender als auch an die Systembetreuung Inhalt Sie enthalten die BS2000 0SD Kommandos Grundausbau und ausgew hlte Pro dukte mit der Funktionalit t f r alle Privilegien Die Einleitung gibt Hinweise zur Kommandbeingabe Die Kommandobeschreibung zeigt u a die Privilegien zur Nut zung der Kommandos BS2000 0SD BC V2 0A Einf hrung in das DVS Benutzerhandbuch Zielgruppe Das Handbuch wendet sich an alle BS2000 0SD Anwender Inhalt Dateiverarbeitung im BS2000 Datei und Katalogverwaltung Dateischutz Dateien und Datentr ger Datei und Datenschutz OPEN CLOSE EOV Verarbeitung DVS Zugriffsmethoden SAM ISAM SDF BS2000 OSD Einf hrung in die Dialogschnittstelle SDF Benutzerhandbuch Zielgruppe BS2000 0OSD Anwender Inhalt Das Handbuch beschreibt die Dialog Eingabe von Kommandos und Anweisungen im SDF Format Ein Schnelleinstieg mit leicht nachvollziehbaren Beispielen und weitere umfangreiche Beispiele erleichtern die Anwendung SDF Syntaxdateien werden erkl rt 372 U3987 J 2125 8 Literatur 6 SORT BS2000 SDF Format Zielgruppe BS2000 Anwender Programmierer Inhalt Prinzipien Funktionen und Anweisungen f r das Sortieren und Mischen von Daten s tzen SDF Format Aufruf ber Unterprogrammschnittstelle und Zugriffsme thode SORTZM Ein Beispielkapitel f hrt den Anf nger in die Handhabung ein 7 BS2000 OSD BC V2 0 Systemmeldungen Band 1
46. Benutzer kann h chstens ein Datenblock gesperrt d h vor Aktualisierung durch andere Benutzer gesch tzt sein Dies gilt auch dann wenn er mehrere ISAM Da teien alle SHARED UPDATE YES im Modus OPEN l O er ffnet hat Eine Deadlock Situation gegenseitiges Sperren von Datenbl cken durch verschie dene Benutzer ist ausgeschlossen da f r jeden Benutzer nur ein einziger Block aller ISAM Dateien alle SHARED UPDATE YES gesperrt sein kann Dies gilt jedoch nicht wenn gleichzeitig auf eine PAM Datei mit SHARED UPDATE YES im I O Modus zugegriffen wird U3987 J 2125 8 239 Simultanverarbeitung SHARED UPDATE Dateiverarbeitung 5 Falls zwischen einer READ und einer REWRITE bzw DELETE Anweisung f r einen Datensatz ein Zugriff auf einen anderen Datenblock derselben oder einer anderen ISAM Datei erfolgt der gleichzeitig eine Entsperrung des zuvor gesperrten Daten blocks zur Folge hat mu der Datensatz vor Ausf hrung der REWRITE bzw DELETE Anweisung noch einmal gelesen werden Da der betroffene Datenblock in der Zwi schenzeit f r andere Benutzer entsperrt war k nnte der Inhalt des Datensatzes ver n dert worden sein siehe Beispiel 9 11a Erfolgt der Zugriff auf den anderen Datenblock bzw die andere Datei ohne Sperrme chanismus k nnten die dadurch bereitgestellten Daten w hrend der Verarbeitung be reits wieder durch simultane Benutzer ver ndert worden sein ehe die REWRITE bzw DELETE Anweisung ausgef hrt w
47. Benutzerschaltern ITCSIFAO FCB Initialisierung Steuerroutine ITCSIFC1 RERUN Klausel FCB Generierung ITCSIFH ISAM FCB Generierung f r indizierte Dateien ITCSIFL1 SAM FCB Generierung f r zeilensequentielle Dateien ITCSIFR1 ISAM FCB Generierung f r relative Dateien ITCSIFS1 SAM FCB Generierung f r sequentielle Dateien ITCSINI ILCS COBOL Initialisierung ITCSINIO INITIALIZE Anweisung ITCSINSO INSPECT Anweisung ITCSLHS2 Benutzerkennsatzbehandlung f r sequentielle Dateien ITCSLNL1 LINAGE Klausel bei WRITE f r zeilensequentielle Dateien U3987 J 2125 8 353 Aufbau des COBOL85 Systems Anhang Name Funktion ITCSLNS1 LINAGE Klausel bei WRITE f r satzsequentielle Dateien ITCSMATO Verbindungsmodul zu den mathematischen IML Funktionen ITCSMEV2 Unterbrechungsmeldung f r Event Handling Routine ITCSMPLO Multiplikation von Dezimalzahlen gt 15 Stellen ITCSMSG3 Ausgabe von Fehlermeldungen ITCSMVEO MOVE f r numerisch druckaufbereitete Felder ITCSNEDO Deeditierender MOVE ITCSNSPO CALL CANCEL ENTRY EXIT im geschachtelten Programm ITCSOPIO OPEN Anweisung f r indizierte Dateien ITCSOPLO OPEN Anweisung f r zeilensequentielle Dateien ITCSOPRO OPEN Anweisung f r relative Dateien ITCSOPSO OPEN Anweisung f r sequentielle Dateien ITCSPAMI1 physische Lese Schreibroutine f r relative Dateien PAM ITCSPCAO Vergleiche u
48. COBOL85 Systems C0B9132 C0B9132 C0B9133 C0B9133 C0B9134 C0B9134 NUMBER OF PARAMETERS IN CALL STATEMENT IS NOT EQUAL TO NUMBER OF PARAMETERS EXPECTED BY THE CALLED SUBPROGRAM DIE PARAMETERANZAHL EINER CALL ANWEISUNG IST UNGLEICH DER PARAMETERANZAHL DES GERUFENEN PROGRAMMS Typ Hinweis Verhalten Abh ngig von COMOPT CONTINUE AFTER MESSAGE bzw ERROR REACTION SDF Option RUNTIME OPTIONS wird das Programm fortgesetzt oder abgebrochen Ma nahme ggf auch das aufrufende Programm mit COMOPT CHECK PARAMETER COUNT YES bzw PROC ARGUMENT NR YES SDF Option RUNTIME CHECKS bersetzen andernfalls Programm dahingehend ndern da die bergebenen mit den erwarteten Parametern anzahlm ig bereinstimmen COBOL85 RUNTIME SYSTEM IN CRTE NOT RELEASED FOR BS2000 VERSIONS LOWER THAN V10 0 COBOL85 LAUFZEITSYSTEM IM CRTE IST NUR FUER BS2000 AB VERSION V10 0 FREIGEGEBEN Typ Anwenderfehler Verhalten Programm abgebrochen Ma nahme Systemverwalter berater verst ndigen A SORT SPECIAL REGISTER HOLDS AN INVALID VALUE EIN SORT SONDERREGISTER ENTHAELT EINEN UNGUELTIGEN WERT Typ Hinweis Verhalten Abh ngig von COMOPT CONTINUE AFTER MESSAGE bzw ERROR REACTION SDF Option RUNTIME OPTIONS wird das Programm fortgesetzt oder abgebrochen Ma nahme Programm korrigieren 326 U3987 J 2125 8 Meldungen des COBOLB85 Systems COB9140 REFERENCE MODIFICATION RANGE
49. CREATION INTERNAL NAME UPROG3 INCLUDE MODULES LIB BENUTZER PROGRAMME ELEM UPROG3 r 4 SAVE LIB MODULE LL END SET FILE LINK BLSLIBOO SYSLNK CRTE 5 SET FILE LINK COBOBJCT MODULE LLM 6 START PROGRAM MODULE CLIB MODULE LLM ELEM MAINPROG 7 RUN MODE ADVANCEDCALT LIB YES UNRES EXT DELAY LOAD INFO REFERENCE 1 Erzeugen eines LLM namens MAINPROG der Name des LLM ist frei w hlbar Ein binden des Objektmoduls MAINPROG aus der Bibliothek BENUTZER PROGRAM ME Da im SAVE LLM Kommando der Elementname weggelassen ist gilt als Ele mentname die Angabe aus dem START LLM CREATION Kommando n mlich MAINPROG Erzeugen eines LLM namens UPROG1 Einbinden des Objektmoduls UPROG1 aus der Bibliothek BENUTZER PROGRAMME Mit ENTRY POINT UPROG1 ist dieser LLM als Unterprogramm definiert Erzeugen eines LLM namens UNTER2 Einbinden des Objektmoduls UPROG2 aus der Bibliothek BENUTZER PROGRAMME Mit ENTRY POINT UPROG2 ist dieser LLM als Unterprogramm definiert Erzeugen eines LLM namens UPROGS Einbinden des Objektmoduls UPROG3 aus der Bibliothek BENUTZER PROGRAMME Da im SAVE LLM Kommando kein ENTRY POINT angegeben ist kann UPROGS3 sowohl als Unterprogramm als auch als Hauptprogramm verwendet werden Zuweisen der Laufzeitbibliothek 264 U3987 J 2125 8 Programmverkn pfungen Binden und Laden von Unterprogrammen
50. Compiler ber COMOPT Anweisung MODULE bzw SDF Option MODULE LIBRARY oder mit dem Dienstprogramm LMS siehe 12 in einer PLAM Bibliothek abgelegt werden Diese gemeinsam benutzbaren Module erkl rt der Systemverwalter mit dem ADD SHARED PROGRAM Kommando als shareable und l dt sie f r alle Tasks verf g bar in den Klasse 4 Speicher Alle nicht gemeinsam benutzbaren Teile eines Programms werden pro Task und Anwender in den Klasse 6 Speicher geladen Programmsysteme mit gemeinsam benutzbaren Modulen k nnen nur mit dem Dynami schen Bindelader aufgerufen werden Aufgerufen wird stets der Name des nicht gemein sam benutzbaren Daten Moduls Dieses enth lt Externverweise auf sein gemeinsam be nutzbares Codemodul sowie ggf auf andere nicht gemeinsam benutzbare Module Aufrufbeispiel SET TASKLIB SYSLNK CRTE 1 START PROGRAM MOD bibliothek2 element 62 1 Mit dem SET TASKLIB Kommando wird die Bibliothek zugewiesen die die COBOLBS5 Laufzeitmodule enth lt 2 element ist der Name des Datenmoduls oder Gro moduls das mindestens den nicht gemeinsam benutzbaren Teil des Hauptprogramms enthalten mu bibliothek2 ist die Bibliothek in der die vom Benutzer geschriebenen Module ste hen Das folgende Bild veranschaulicht Programml ufe ohne und mit Shared Code 120 U3987 J 2125 8 Binden Laden Starten Gemeinsam benutzbare COBOL Programme Task A Task B Modul XY Modul
51. Datei eindeutig identifizieren Die Anfangspositionen KEYPOS und L ngen KEYLEN der Schl ssel stimmen dabei f r alle S tze einer Datei berein Mit Hilfe eines im Programm vereinbarten Schl sselfeldes das Lage und L nge des Schl ssels im Datensatz beschreibt kann ber diesen Satzschl ssel direkt wahlfrei auf jeden Satz der Datei zugegriffen werden Zus tzlich zu den M glichkeiten der sequentiellen Dateiorganisation gestattet dies in einer indizierten Datei S tze wahlfrei zu erstellen S tze wahlfrei zu lesen und zu aktualisieren nachtr glich S tze einzuf gen und bereits vorhandene Datens tze logisch zu l schen F r die Bearbeitung indizierter Dateien verwenden COBOL Programme die Zugriffsmetho de ISAM des DVS siehe 4 Sie gestattet es mehreren Anwendern gleichzeitig eine Datei zu aktualisieren siehe 9 5 Indizierte Dateien k nnen ausschlie lich auf Plattenspeichern eingerichtet werden Dateistruktur Eine ausf hrliche Beschreibung des Aufbaus einer ISAM Datei findet sich in 4 die folgen de Darstellung ist lediglich eine kurze Zusammenfassung der wichtigsten Tatsachen Eine ISAM Datei besteht aus zwei Komponenten mit unterschiedlichen Funktionen den Indexbl cken und den Datenbl cken Falls private Datentr ger verwendet werden k nnen Index und Datenbl cke auf verschie denen Datentr gern liegen Die Datenbl cke enthalten die Datens tze des Anwenders Die
52. EINGEBEN DREISTELLIG MIT F EHRENDE ULLEN UPON T DISPLAY PROGRAMM BEENDEN MIT 000 UPON T ACCEPT REL KEY FROM T IF EY NUMERIC HE OVE REL KEY TO SATZNR LSE DISPLAY EINGABE MUSS NUMERISCH SEIN UPON T END IF TEI GESCHLOSSEN TO TRUE RELATIV DATEI U U l gt lt mom m um 1 Die ACCESS MODE Klausel vereinbart wahlfreien Zugriff auf die S tze der Datei RELATIV DATEI Sie k nnen also bei der Erstellung in beliebiger Reihenfolge in die Datei geschrieben werden 2 Die RELATIVE KEY Angabe legt REL KEY als Schl sselfeld f r die relativen Satz nummern fest Es wird in der WORKING STORAGE SECTION als dreistelliges nu merisches Datenfeld vereinbart 3 In der FILE STATUS Klausel wird von der M glichkeit Gebrauch gemacht dem Pro gramm zus tzlich zum FILE STATUS Code auch den Fehlercode des DVS zur Ver f gung zu stellen Die Datenfelder zur Aufnahme dieser Informationen werden in der WORKING STORAGE SECTION vereinbart und in den DECLARATIVES aus gewertet 208 U3987 J 2125 8 Dateiverarbeitung Relative Dateien 4 Die DECLARATIVES sehen lediglich eine Prozedur f r nicht behebbare Ein Aus gabefehler FILE STATUS gt 30 vor da eine Endebedingung bei Ausgabedateien nicht auftreten kann und Schl sselfehler ber INVALID KEY abgefangen werden 5 Eine INVALID KEY Bedingung bei wahlfreiem WRITE tritt auf wenn der Satz mit der zugeh rigen rel
53. Erstellung des Quellprogramms m gliche Fehlersituationen eingeplant werden Die Diagnose unvorhergesehener Fehler kann es daher erforderlich machen Testhilfezeilen abzu ndern oder hinzuzuf gen und an schlie end das Quellprogramm neu zu bersetzen Testhilfezeilen werden in 1 und in Abschnitt 7 2 beschrieben Die Testhilfen lassen sich im POSIX Subsystem analog verwenden siehe Kapitel 13 U3987 J 2125 8 123 Dialogtesthilfe AID Testhilfen f r den Programmablauf 7 1 Dialogtesthilfe AID In COBOL85 BC nicht unterst tzt In diesem Benutzerhandbuch soll AID lediglich kurz vorgestellt werden Die ausf hrliche Beschreibung dieser Testhilfe findet sich in den Handb chern 9 24 und 25 AID zeichnet sich durch folgende Leistungsmerkmale aus 1 Es bietet die M glichkeit symbolisch zu testen d h in den Kommandos anstelle se dezimaler Adressen auch symbolische Namen aus dem Quellprogramm anzugeben wenn die daf r n tigen LSD Informationen beim bersetzen erzeugt und sp ter an das geladene Programm weitergegeben werden siehe 7 1 2 Dabei ist es nicht unbedingt erforderlich diese Informationen stets f r das Gesamtpro gramm zusammen mit diesem Programm zu laden AID erlaubt n mlich ein Nachladen der LSD Informationen f r jede bersetzungseinheit falls die zugeh rigen Module mit den LSD Informationen in einer PLAM Bibliothek stehen Dadurch lassen sich Be triebsmittel wirtschaftlicher einsetzen
54. FILE LINK Kommando RECORD Klausel Datensatzerkl rung RECORD SIZE Operand Widerspr chliche Angaben zum Satzschl ssel COBOL Programm SET FILE LINK Kommando RECORD KEY Klausel Datensatzerkl rung KEY POSITION Operand KEY LENGTH Operand Widerspr chliche Angaben zum Plattenformat oder Dateiformat Katalogeintrag SET FILE LINK Kommando BLK CONTR BUF LEN BLOCK CONTROL INFO Operand BUFFER LENGTH Operand Namen im Katalogeintrag ab BS2000 V11 0 U3987 J 2125 8 163 Grundlagen Dateiverarbeitung Beispiel 9 4 Erzeugen und Abbilden eines TFT Eintrags Abbildung in BS2000 V11 0 SET FILE LINK INOUTFIL ISAM UPDATE BUFFER LENGTH BY CATALOG a SUPPORT DISK SHARED UPDATE YES SHOW FILE LINK INOUTFIL INFORMATION ALL 2 LINK NAME FILE NAME INOUTFIL N F2190202 ISAM UPDATE STATUS STATE INACTIVE ORIG FILE PROTECTIO RET PE BY PROG PROT LEV BY PROG BYPASS BY PROG DESTROY BY CAT FILE CONTROL BLOCK GENERAL ATTRIBUTES ACC METH BY PROG OPEN MODE BY PROG REC FORM BY PROG REC SIZE BY PROG BUF LE BY CAT BLK CONTR BY PROG F CL MSG STD CLOSE MODE BY PROG FILE CONTROL BLOCK DISK FILE ATTRIBUTES SHARED UPD YE
55. Indizierte Dateien Ein Ausgabe Zustand Bedeutung 46 Es wurde versucht ein sequentielles READ f r eine Datei auszuf hren die sich im Er ffnungsmodus INPUT oder I O befindet ein n chster g ltiger Datensatz steht aber nicht zur Verf gung Grund 1 Die vorhergehende START Anweisung war erfolglos oder 2 Die vorhergehende READ Anweisung war erfolglos ohne die Endebedin gung zu verursachen oder 3 Es wurde versucht nach bereits erkannter AT END Bedingung eine READ Anweisung auszuf hren 47 Es wurde versucht eine READ oder START Anweisung f r eine Datei auszuf h ren die sich nicht im Er ffnungsmodus INPUT oder l O befindet 48 Es wurde versucht eine WRITE Anweisung f r eine Datei auszuf hren die sich beisequentiellem Zugriff nicht im Er ffnungsmodus OUTPUT oder EXTEND bei wahlfreiem oder dynamischem Zugriff nicht im Er ffnungsmodus OUTPUT oder I O befindet 49 Es wurde versucht eine DELETE oder REWRITE Anweisung f r eine Datei aus zuf hren die sich nicht im Er ffnungsmodus l O befindet Sonstige erfolglose Ausf hrungen 90 Systemfehler es ist keine weitere Information ber die Ursache vorhanden 91 OPEN Fehler die eigentliche Ursache ist aus dem DVS Code ersichtlich siehe FILE STATUS Klausel mit Angabe von datenname 2 93 Nur bei Simultanverarbeitung siehe Abschnitt 9 5 Die Ein Ausgabe Anweisung konnte nicht erfolgreich durchgef hrt werden weil ein anderer Proze auf dieselbe
56. J 2125 8 Stichw rter OPEN EXTEND indizierte Dateien 224 relative Dateien 203 sequentielle Dateien 177 OPEN INPUT indizierte Dateien 225 relative Dateien 203 sequentielle Dateien 176 OPEN I O indizierte Dateien 226 relative Dateien 205 sequentielle Dateien 177 OPEN OUTPUT indizierte Dateien 224 relative Dateien 202 sequentielle Dateien 176 OPEN Anweisung indizierte Dateien 221 relative Dateien 199 sequentielle Dateien 174 Operandenfragebogen SDF 29 OPTIMIZE CALL IDENTIFIER Comopt 72 OPTIONAL Angabe 159 indizierte Dateien 218 relative Dateien 196 sequentielle Dateien 171 Optionen SDF Eingabe im Expert Modus 26 Eingabe im Men Modus 27 Optionenliste 360 OPTIONS SDF Operand 46 ORGANIZATION Klausel indizierte Dateien 218 relative Dateien 196 sequentielle Dateien 171 OUTPUT SDF Operand 48 U3987 J 2125 8 397 Stichw rter P PADDING FACTOR Operand 216 PAM Block 156 PAM Datei Struktur 193 Pamkey 166 Parameter bergabe an C Programme 267 Physischer Daten block 156 PLAM Bibliothek Eigenschaften 11 Eingabe des Quellprogramms 12 Elementtypen 11 Plattenformate 166 POSIX Dateien LLM Objektdatei 270 bersetzungsliste 270 POSIX Objektdatei 270 POSIX Subsystem 269 PREPARE CANCEL STMT SDF Operand 41 PREPARE FOR JUMPS SDF Operand 52 Prim rschl ssel 219 Prim rzuweisung der Systemdateien 136 PRINT DIAGNOSTIC MESSAGES Comopt 72 309 PROC ARGUMENT NR SDF Operand 54 PROCESS INFO 150 Programm Begr
57. Kapitel 9 4 1 F r PAM Dateien gilt In ihrer logischen Struktur kann eine PAM Datei als eine Folge von Bereichen gleicher L n ge aufgefa t werden die jeweils einen Datensatz aufnehmen k nnen in PAM Dateien sind nur S tze fester L nge erlaubt Jeder dieser Bereiche kann dazu ber seine relative Satz nummer angesprochen werden Bei sequentieller Erstellung einer Datei werden diese Bereiche beginnend mit dem ersten nacheinander mit Datens tzen gef llt es kann kein Bereich bersprungen werden U3987 J 2125 8 193 Relative Dateien Dateiverarbeitung Bei wahlfreier Erstellung wird jeder Datensatz in den Bereich geschrieben mit dessen relativer Satznummer das Schl sselfeld vor der Ausgabeanweisung versorgt wurde Die zugeh rige Position in der Datei errechnet das Programm aus der angegebenen Satz nummer und der Satzl nge Leere Bereiche die bei der Ausgabe bersprungen werden legt es als Leers tze an d h es reserviert Speicherbereiche in Satzl nge und versorgt je weils das erste Byte mit dem sedezimalen Wert FF HIGH VALUE als Kennzeichen f r einen Leer satz siehe 9 3 4 194 U3987 J 2125 8 Dateiverarbeitung Relative Dateien 9 3 2 COBOL Sprachmittel f r die Verarbeitung relativer Dateien Das folgende Programmskelett gibt einen berblick ber die wichtigsten Klauseln und An weisungen die COBOL85 f r die Verarbeitung relativer Dateien zur Verf gung stellt Die wesentlichsten Angaben werden
58. LINK Kommando und RESUME PROGRAM eingeben Bei einem wiederum ung ltigen SET FILE LINK Kommando wird die Fehler meldung nicht wiederholt und das Programm wird abgebrochen STOP LITERAL AWAITING REPLY aaa STOP LITERAL ANTWORT ERWARTET aaa Typ Hinweis Bedeutung aaa ausgegebenes Literal Verhalten Programm unterbrochen Meldung an den Bedienplatz Ma nahme Operator Eingabe abwarten Eingabe des Operators zur Programmfortsetzung ist beliebig 320 U3987 J 2125 8 Meldungen des COBOLB85 Systems COB9119 ABNORMAL TERMINATION USERS RETURN CODE aaa COBOL RETURN CODE bbb COB9119 ABNORMALE BEENDIGUNG ANWENDER RETURN CODE aaa COBOL RETURN CODE bbb Typ Anwenderfehler oder Systemfehler Bedeutung aaa gt 0 Vom Programm wurde ein Anwender Return Code gesetzt was zur Programmbeendigung f hrt bbb gt 0 Vom COBOL85 System wurde ein Fehler festgestellt und zu Diagno sezwecken ein interner Return Code gesetzt Jedem Return Code ist eine Fehlermeldung oder ein Anwender Return Code zugeordnet aus der dem seine Bedeutung ersichtlich ist Falls das Programm von einer Jobvariable berwacht wird wird au erdem der interne Return Code in deren R ckkehrcode Anzeige bernommen siehe dazu Abschnitt 6 6 Tabelle 6 1 R ckkehr Code Anzeige in Jobvariablen Ma nahme Vorher ausgegebene Meldung beachten Programm bzw Zuweisung ndern ggf Systemverwalter berater verst ndigen COB9120 JOB VAR
59. NO ROUND FLOAT legt fest ob Gleitpunktdatenfelder vor der bertragung in Festpunktdatenfelder auf die 7 COMP 1 bzw 15 Dezi malstelle COMP 2 gerundet werden sollen SDF Option SEPARATE TESTPOINTS YES NO SEP TESTP In COBOL85 BC nicht verf gbar bestimmt ob zum Testen mit AID f r jeden Paragraphen und Kapitelanfang in der PROCEDURE DIVISION eine eigene Adresse generiert werden soll SDF Option TEST SUPPORT AID PREPARE FOR JUMPS 72 U3987 J 2125 8 COMOPT Steuerung COMOPT Operanden Operandenformat Funktion SET FUNCTION ERROR DEFAULT YES NO S F E D bewirkt da die G ltigkeit von Funktionsargumenten ber pr ft wird und im Fehlerfall der jeweiligen Funktion der Feh ler Returnwert zugewiesen wird SDF Option RUNTIME OPTIONS PARAMETERS FUNCTION ERR RETURN SHORTEN OBJECT YES NO SHORT OBJ In COBOL85 BC nicht verf gbar legt fest ob in der angeforderten Objektliste nur die ESD Informationen aufgef hrt werden sollen SDF Option SHORTEN XREF YES NO SHORT XREF entscheidet ob in der gew nschten Querverweisliste nur Daten bzw Prozedurnamen aufgelistet werden sollen die im Programm angesprochen werden SDF Option LISTING PARAMETERS NAME INFORMATION YES CROSS REFERENCE SORT EBCDIC DIN YES NO SORT E D erlaubt es f r SORT das Format ED zu w hlen siehe 6 Dadurch werde
60. Namen der Quellprogrammdatei bzw dem des Bibliotheks elements und dem Suffix IND gebildet wird OUTPUT lt full filename 1 54 gt Das Ergebnis der BEAUTIFY Aktion wird in eine katalogisierte Datei mit dem angege benen Namen geschrieben OUTPUT LIBRARY ELEMENT Das Ergebnis der BEAUTIFY Aktion wird in ein Element einer PLAM Bibliothek geschrieben LIBRARY lt full filename 1 54 gt Name der PLAM Bibliothek ELEMENT lt full filename 1 40 gt Name des Elements in der PLAM Bibliothek VERSION Angabe der Versionsbezeichnung VERSION UPPER LIMIT Wird keine Versionsbezeichnung oder UPPER LIMIT angegeben erh lt das Ele ment die h chstm gliche Versionsnummer VERSION INCREMENT Das Element erh lt die gegen ber der h chsten vorhandenen Version um 1 inkre mentierte Versionsnummer vorausgesetzt die h chste vorhandene Versionsbe zeichnung endet mit einer Ziffer Andernfalls ist die Versionsbezeichnung nicht inkrementierbar In diesem Fall wird UPPER LIMIT angenommen Beispiel h chste vorhandene Version durch INCREMENT erzeugte Version ABC1 ABC2 ABC ABC9 ABC09 ABC10 003 004 keine 001 96 U3987 J Z125 8 COBOLS55 Strukturierer STRUCTURIZER ACTION Option VERSION HIGHEST EXISTING Die h chste in der Bibliothek vorhandene Version wird berschrieben VERSION lt alphanum name 1 24 gt Das Element erh lt die angegebene Versionsbez
61. PROGRAM TEST OPTIONS NONE Binden mit TSOSLNK PROGRAM SYMTEST ALL PROGRAM SYMTEST MAP Laden bzw Laden und Starten mit dem Statischen Lader LOAD PROGRAM TEST OPTIONS AID oder START PROGRAM TEST OPTIONS AID LOAD PROGRAM TEST OPTIONS NONE oder START PROGRAM TEST OPTIONS NONE Tabelle 7 1 Operanden zur Erzeugung von LSD Informationen 1 Dies ist nur dann m glich wenn die zugeh rigen Module in einer PLAM Bibliothek ste hen Informationen ber das Testobjekt Mit dem AID Kommando _COMPILER _COMPILATION_DATE DLISPLAY _COMPILATION_TIME _PROGRAM_NAME k nnen allgemeine Informationen ber das zu testende Objekt angefordert werden _COMPILER _COMPILATION_DATE _COMPILATION_TIME _PROGRAM_NAME Compiler von dem das Objekt bersetzt wurde Datum der bersetzung Uhrzeit der bersetzung PROGRAM ID Name des Objekts U3987 J 2125 8 Testhilfen f r den Programmablauf Dialogtesthilfe AID 7 1 2 Symbolisches Testen mit AID Beim symbolischen Testen mit AID k nnen Datenfelder Kapitel und Paragraphen mit den Namen angesprochen werden die im Quellprogramm definiert wurden Um dagegen auf eine beliebige Zeile in der PROCEDURE DIVISION Bezug zu nehmen mu der Benutzer einen Namen der Form S n f r eine Zeile mit einem Kapitel oder Paragraphennamen bzw S nverbm f r eine Zeile mit COBOL Verben a
62. REFERENCE MODIFICATION YES NO CHECK REF CHECK SCOPE TERMINATORS CHECK S T CHECK SOURCE SEQUENCE YES NO CHECK S SEQ CHECK TABLE ACCESS YES NO CHECK TAB CONTINUE AFTER MESSAGE YES NO CON A MESS ENABLE UFS ACCESS YES NO 278 U3987 J 2125 8 COBOL85 und POSIX Steuerung des Compilers EXPAND COPY YES NO FLAG ABOVE INTERMEDIATE YES NO FLAG ABOVE MINIMUM YES NO FLAG ALL SEGMENTATION YES NO FLAG INTRINSIC FUNCTIONS YES NO FLAG NONSTANDARD YES NO FLAG OBSOLETE YES NO FLAG REPORT WRITER YES NO FLAG SEGMENTATION ABOVE1 YES NO GENERATE INITIAL STATE YES NO GENERATE LINE NUMBER YES NO GENERATE SHARED CODE YES NO IGNORE COPY SUPPRESS YES NO LINE LENGTH 132 119 172 LINES PER PAGE 64 20 128 MAXIMUM ERROR NUMBER ganzzahl MERGE DIAGNOSTICS YES NO OPTIMIZE CALL IDENTIFIER YES NO REDIRECT ACCEPT DISPLAY YES NO RESET PERFORM EXITS YES NO ROUND FLOAT RESULTS DECIMAL SEPARATE TESTPOINTS YES NO SET FUNCTION ERROR DEFAULT YES NO SHORTEN OBJECT YES NO SHORTEN XREF YES NO SORT EBCDIC DIN YES NO SORT MAP YES NO SUPPRESS LISTINGS YES NO SUPPRESS MODULE YES NO TCBENTRY name TERMINATE AFTER SEMANTIC YES NO TERMINATE AFTER SYNTAX YES NO TEST WITH COLUMN1 YES NO USE APOSTROPHE YES NO EXP COPY GEN INIT STA GEN L NUM GEN SHARE IGN C SUP LINE L LINES MAX ERR M DIAG O C I RES PERF ROUND FLOAT SEP TESTP S F E D SHORT OBJ SHORT XREF SORT E D SUP LIST
63. S tze geblockt oder ungeblockt vorlie gen Im COBOL Quellprogramm kann das Format der zu verarbeitenden S tze in der RECORD Klausel festgelegt werden Welche Angaben dabei dem jeweiligen Satzformat zugeordnet sind ist in der folgenden Tabelle zusammengestellt Satzformat Angabe in der RECORD Klausel S tze fester L nge RECORD CONTAINS CHARACTERS Format 1 RECORD IS VARYING IN SIZE Format 2 S tze variabler L nge oder RECORD CONTAINS TO Format 3 Tabelle 9 15 Festlegen von Satzformaten in der RECORD Klausel 222 U3987 J 2125 8 Dateiverarbeitung Indizierte Dateien Zugriffsarten Auf S tze einer indizierten Datei kann sequentiell wahlfrei oder dynamisch zugegriffen werden Im COBOL Quellprogramm wird die Zugriffsart durch die ACCESS MODE Klausel festge legt Die folgende bersicht stellt die m glichen Angaben und ihre Auswirkungen auf die Zugriffsart zusammen ACCESS MODE Klausel Zugriffsart SEQUENTIAL Sequentieller Zugriff Die Datens tze k nnen nur in aufsteigender Reihenfolge ihrer Satzschl s sel verarbeitet werden Das bedeutet Beim Lesen wird jeweils der n chste logische Datensatz zur Verf gung gestellt Beim Schreiben wird jeweils der n chste logische Datensatz in die Da tei ausgegeben RANDOM Wahlfreier Zugriff Die Datens tze k nnen in beliebiger Reihenfolge ber ihre Satzschl ssel angesprochen werden Dazu mu vor jeder Ein Ausgabeanweisung f r einen Sat
64. START IND DA INVALID DISPLA SET VE OT INVAL READ IND DATEI NEX 3 AT I nn Me u I KEY LESS OR EQUAL REC KEY ARBEITUNGS ENDE TO TRUE E Y DATEI IST LEER UPON T R a I SET VERARBEITUNGS ENDE TO TRUE U3987 J 2125 8 229 Indizierte Dateien Dateiverarbeitung NACHLAUF SATZ VERARBEITEN NOT AT END DISPLAY HOECHSTER SATZSCHLUESSEL REC KEY UPON T PERFORM SATZ VERARBEITEN END READ END START PERFORM WITH TEST BEFORE UNTIL VERARBEITUNGS ENDE START IND DATEI KEY LESS REC KEY 4 INVALID KEY SET VERARBEITUNGS ENDE TO TRUE NOT INVALID KEY READ IND DATEI NEXT AT SET VERARBEITUNGS ENDE TO TRUE NOT AT END ISPLAY NAECHSTER SATZSCHLUESSEL REC KEY PON T ORM SATZ VERARBEITEN TEE END READ END START END PERFORM CLOSE IND DATEI STOP RUN VERARBEITUNG DES AKTUELLEN SATZES 5 nn a A O v F r die Verarbeitung wird die Datei IND DATEI mit OPEN l O er ffnet Um den Satz mit dem h chsten Schl ssel in der Datei zu erhalten wird der RECORD KEY mit dem h chstm glichen Wert HIGH VALUE im NATIVE Alphabet vorbelegt und mit START KEY LESS OR EQUAL positioniert READ NEXT liest den Satz ein auf den zuvor mit START positioniert wurde START KEY LESS positioniert auf den Vorg nger des zuletzt gelesenen Satzes Der eingeles
65. U3987 J 2125 8 205 Relative Dateien Dateiverarbeitung OPEN I O setzt voraus da die zu verarbeitende Datei bereits existiert Es ist daher nicht m glich in diesem Modus eine relative Datei neu zu erstellen Welche dieser Verarbeitungsformen durchgef hrt werden k nnen und wie die Ein Ausgabeanweisungen dabei wirken h ngt von der vereinbarten Zugriffsart ab ACCESS MODE IS SEQUENTIAL erlaubt es wie bei OPEN INPUT die Datei mit READ sequenitiell zu lesen und dabei durch einen vorhergehenden START auf einen beliebigen Satz der Datei als Anfangs punkt zu positionieren Dar berhinaus kann nach einem erfolgreichen READ der gelesene Satz durch das Pro gramm aktualisiert und mit REWRITE zur ckgeschrieben oder mit DELETE logisch ge l scht werden Dabei darf zwischen READ und REWRITE bzw DELETE keine weitere Ein Ausgabeanweisung f r diese Datei ausgef hrt werden ACCESS MODE IS RANDOM erm glicht es wie bei OPEN INPUT mit READ S tze wahlfrei zu lesen Ferner k nnen mit WRITE neue S tze in die Datei eingef gt und mit REWRITE bzw DELETE bereits in der Datei vorhandene S tze berschrieben bzw gel scht werden unabh ngig davon ob sie vorher gelesen wurden Das RELATIVE KEY Schl sselfeld mu dazu vor jeder WRITE REWRITE oder DELETE Anweisung mit der relativen Nummer des Satzes versorgt werden der hinzu gef gt berschrieben oder gel scht werden soll Wird bei WRITE die Nummer eines bereits vorha
66. Verwendung von ASA Vorschubsteuerzeichen ASA Vorschubsteuerzeichen k nnen nur in Dateien verwendet werden deren Zuweisung mit ASSIGN TO literal oder ASSIGN TO datenname erfolgt Ferner ist f r die zu verarbeitende Datei folgendes SE T FILE LINK Kommando erforder lich SET FILE LINK dateiname REC FORM V A Die unter diesen Bedingungen verwendbaren ASA Steuerzeichen und die korrespondie renden WRITE Anweisungen sind folgender Tabelle zu entnehmen ASA Vorschubsteuerzeichen Format der WRITE Anweisung WRITE BEFORE ADVANCING 0 0 WRITE AFTER ADVANCING 0 oder 1 WRITE AFTER ADVANCING 2 1 WRITE AFTER ADVANCING PAGE oder C01 2 WRITE AFTER ADVANCING C02 3 WRITE AFTER ADVANCING C03 4 WRITE AFTER ADVANCING C04 5 WRITE AFTER ADVANCING C05 6 WRITE AFTER ADVANCING C06 7 WRITE AFTER ADVANCING C07 8 WRITE AFTER ADVANCING C08 A WRITE AFTER ADVANCING C10 B WRITE AFTER ADVANCING C11 Tabelle 9 8 ASA Vorschubsteuerzeichen und korrespondierende WRITE Anweisungen 184 U3987 J Z125 8 Dateiverarbeitung Sequentielle Dateien 9 2 7 Verarbeiten von Dateien im ASCII oder ISO 7 Bit Code Die Verarbeitung einer sequentiellen Datei im ASCII bzw ISO 7 Bit Code unterst tzt COBOLB85 durch die Klauseln siehe 1 ALPHABET alphabetname 1 IS STANDARD 1 f r den ASCII Code bzw ALPHABET alphabetname 1 IS STANDARD 2 f r den ISO 7 Bit C
67. WRITE Anweisung mit dem Satzschl ssel des auszugebenden Datensatzes versorgt werden Dabei mu jeder neue Schl ssel gr s ser sein als der zuletzt angegebene Ist dies nicht der Fall tritt eine INVALID KEY Be dingung auf und WRITE verzweigt zur INVALID KEY Anweisung bzw zur vereinbarten USE Prozedur ohne den Satz zu schreiben Ein berschreiben von Datens tzen ist hier also nicht m glich ACCESS MODE IS DYNAMIC oder RANDOM erlaubt es eine indizierte Datei wahlfrei zu erstellen Dabei ist zu beachten da das Erstellen nach aufsteigenden Satzschl sseln effizienter abl uft OPEN EXTEND Mit OPEN EXTEND kann eine vorhandene Datei erweitert werden Die ACCESS MODE Klausel wird wie bei OPEN OUTPUT verwendet 224 U3987 J 2125 8 Dateiverarbeitung Indizierte Dateien OPEN INPUT Welche Ein Ausgabeanweisungen bzw Anweisungsformate erlaubt sind h ngt von der Angabe in der ACCESS MODE Klausel ab Die folgende Tabelle stellt die M glichkeiten f r OPEN INPUT zusammen Eintrag in der ACCESS MODE Klausel Anweisung SEQUENTIAL RANDOM DYNAMIC START START Anweisung nicht zul ssig START KEY IS KEY IS INVALID KEY INVALID KEY NOT INVALID KEY NOT INVALID KEY END START END START READ READ NEXT READ F r sequenitiellen Zugriff INTO INTO AT END KEY IS Not NOT AT END INVALID KEY AT END END READ NOT INVALID KEY NOT AT EN
68. Wie Plattendateien k nnen auch Magnetbanddateien ber das SET FILE LINK Komman do zugewiesen und mit Attributen versehen werden vgl 9 1 2 und 9 1 3 Eine ausf hrliche Beschreibung des Kommandoformates f r Banddateien findet sich in den Handb chern 3 und 4 Beispiel 9 8 Zuweisen einer Banddatei SEC RESOURCE ALLOC TAPE PAR VOL CA176B TYPE T6250 ACCESS WRITE 1 CREATE FILE BESTAND NEU SUPPORT TAPE VOLUME CA176B DEVICE TYPE T6250 2 SET FILE LINK AUSDAT BESTAND NEU 3 START PROGRAM LIB PLAM LIB AKTUALISIERUNG 4 REMOVE FILE LINK AUSDAT UNLOAD RELEASED TAPE YES 5 1 Vor allem im Stapelbetrieb ist es empfehlenswert vor der Verarbeitung die ben tig ten privaten Datentr ger und Ger te mit SECURE RESOURCE ALLOCATION zu reservieren In diesem Fall wird das Band mit der Archivnummer CA176B auf einem Bandger t mit der Schreibdichte 6250 bpi TYPE T6250 mit montiertem Schreib ring ACCESS WRITE angefordert Das CREATE FILE Kommando katalogisiert die Datei BESTAND NEU als Banddatei und vereinbart das Datentr gerkennzeichen VOLUME und das Bandger t DEVICE TYPE Das SET FILE LINK Kommando verkn pft den Dateinamen BESTAND NEU mit dem Linknamen AUSDAT START PROGRAM ruft das Verarbeitungsprogramm auf das als Programm unter der Elementbezeichnung AKTUALISIERUNG in der PLAM Bibliothek PLAM LIB gespeichert ist Das REMOVE FILE LINK Kommando nach beendeter
69. a cobupro1 o cobupro2 0 usr private libxyz a MYTEST LIB1 MYTEST LIB2 Laufzeitbibliotheken 8 IE DE Testen Fertig gebundene Programme k nnen mit der Dialogtesthilfe AID getestet werden Voraussetzung hierf r sind Testhilfeinformationen LSD die der Compiler bei Angabe der Option g siehe S 283 erzeugt Die Testhilfe AID wird von einem BS2000 Terminal aus mit dem POSIX Kommando debug programmname argumente aktiviert Nach Eingabe dieses Kommandos ist die BS2000 Umgebung die aktuelle Umgebung Dies wird mit dem Prompting DEBUG angezeigt In diesem Modus k nnen die Testhilfe Kommandos so eingegeben werden wie im Handbuch AID Testen von COBOL Program men 9 beschrieben Nach Beendigung des Programms ist wieder die POSIX Shell die aktuelle Umgebung Das debug Kommandeo ist im Handbuch POSIX Kommandos 33 beschrieben U3987 J 2125 8 273 Bereitstellen des Quellprogramms COBOLB85 und POSIX 13 2 Bereitstellen des Quellprogramms Der COBOL85 Compiler erkennt COBOL Quelldateien an einem der folgenden Standard Suffixe cob oder cb COBOL Quelldateien deren Dateinamen nicht mit einem Standard Suffix enden k nnen ebenfalls bersetzt werden wenn die Dateinamen mit der Option k angegeben werden siehe S 277 Quellprogramme die in BS2000 Dateien oder PLAM Bibliotheken abgelegt sind k nnen mit dem Compiler im POSIX Subsystem nicht verarbeitet werden F r das Transferieren von BS2000 Datei
70. aus schlie lich Aufrufe in der Form CALL literal kann es wie in Kapitel 6 beschrieben zu einer permanent oder tempor r ablauff higen Programmausf hrungseinheit gebunden und anschlie end geladen werden Unterprogrammaufruf CALL bezeichner Der Name des Unterprogramms mu erst zum Ablaufzeitpunkt bekannt sein z B nach Ein gabe an der Datensichtstation F r Unterprogramme die nach Bedarf mit CALL bezeich ner aufgerufen werden gibt es keine Externverweise sie werden deshalb vom DBL w h rend des Programmablaufs dynamisch nachgeladen Programmsysteme mit derartigen Unterprogrammaufrufen k nnen nur auf eine der folgenden Arten zum Ablauf gebracht werden 1 Mit dem DBL die bei der bersetzung entstandenen Module dynamisch binden und die Unterprogramme ohne Externverweise dynamisch nachladen 2 Mitdem TSOSLNK ein Gro modul vorbinden das das Hauptprogramm sowie die Un terprogramme mit Externverweisen enth lt Mit dem DBL das Gro modul aufrufen und die Unterprogramme ohne Externverweise dynamisch nachladen 3 Mit dem BINDER einen LLM oder mehrere LLMs vor binden Mit dem Bindelader den Gro LLM bzw den LLM der das Hauptprogramm enth lt aufrufen und die Unterpro gramme ohne Externverweise dynamisch nachladen Vor dem Aufruf des Bindeladers m ssen im Regelfall folgende Zuweisungen vorgenommen werden SET FILE LINK COBOBJCT bibliothek f r die Bibliothek in der die nachzuladenden Unterprogramme s
71. aus dem TFT Eintrag d h die explizit im SET FILE LINK Kommando festgelegten Dateimerkmale die Dateivereinbarungen aus dem COBOL Pro gramm w hrend aus dem Katalogeintrag lediglich Dateimerkmale bernommen werden die weder durch das Programm noch im TFT Eintrag festgelegt sind oder im SET FILE LINK Kommando als Nulloperanden vereinbart wurden Beim Dateizugriff kann dieses Verfahren insbesondere dann zu Konflikten f hren wenn im SET FILE LINK Kommando Dateimerkmale angegeben werden die mit den explizit oder implizit im COBOL Programm festgelegten Eigenschaften oder mit dem Katalogeintrag der zugewiesenen Datei unvereinbar sind Dies trifft vor allem auf folgende Situationen zu 162 U3987 J 2125 8 Dateiverarbeitung Grundlagen Widerspr chliche Angaben zur Er ffnungsart COBOL Programm SET FILE LINK Kommando OPEN INPUT REVERSED OPEN MODE OUTPUT oder OPEN MODE EXTEND OPEN OUTPUT OPEN MODE INPUT oder OPEN MODE REVERSE OPEN EXTEND OPEN MODE INPUT oder OPEN MODE REVERSE Widerspr chliche Angaben zur Organisationsform der Datei COBOL Programm SET FILE LINK Kommando ASSIGN Klausel ORGANIZATION Klausel ACCGESS METHOD Operand Widerspr chliche Angaben zum Satzformat COBOL Programm SET FILE LINK Kommando RECORD Klausel RECORDING MODE Klausel RECORD FORMAT Operand Widerspr chliche Angaben zur Satzl nge COBOL Programm SET
72. bbb Gesamtanzahl der Fehler ccc Anzahl der Severity Code I Hinweise und ggf der Severity Code F Hinweise ddd Anzahl der Severity Code O Fehler eee Anzahl der Severity Code 1 Fehler fff Anzahl der Severity Code 2 Fehler ggg Anzahl der Severity Code 3 Fehler C0B9002 COMPILATION OF aaa ABORTED C0B9002 DIE UEBERSETZUNG VON aaa WURDE ABGEBROCHEN Typ Anwenderfehler oder Systemfehler oder COBOL85 Fehler Bedeutung aaa Programmname Ma nahme Fehler beheben nochmal bersetzen ggf Systemverwalter berater verst ndigen U3987 J 2125 8 313 Meldungen des COBOLB85 Systems C0OB9004 COB9004 C0B9005 C0B9005 COB9006 COB9006 C0OB9008 C0B9008 COMPILATION OF aaa USED bbb CPU SECONDS DIE UEBERSETZUNG VON aaa BENOETIGTE bbb CPU SEKUNDEN Typ Hinweis Bedeutung aaa Programmname bbb Anzahl der Sekunden INCORRECT COMOPT END STATEMENT OR END STATEMENT MISSING DIE COMOPT END ANWEISUNG IST FALSCH ODER ES FEHLT DIE END ANWE I SUNG Typ Anwenderfehler Verhalten i In Batch Prozedur Ubersetzung abgebrochen Im Dialog weitere COMOPTs angefordert Ma nahme COMOPT oder END Anweisung korrigieren bzw einf gen nochmals bersetzen REASSIGNMENT OF SYSDTA NOT POSSIBLE EINE NEUZUWEISUNG VON SYSDTA IST NICHT MOEGLICH Typ Systemfehler Verhalten Ubersetzung abgebrochen Ma nahme Systemverwalter berater verst ndigen COMPILER ERROR OVERLAY aaa ADDRESS bbb LAST SOURCE SE
73. beiden folgenden Tabellen Bei fehlender ADVANCING Angabe wird in diesen F llen einzeiliger Vorschub angenommen Der Platz f r das Vorschubsteuerzeichen wird vom Compiler reserviert und ist dem Benutzer nicht zu g nglich Wird f r eine Datei in der ASSIGN Klausel literal angegeben kann das Steuerbyte auf zwei Arten mit einem Vorschubsteuerzeichen versorgt werden Eine WRITE Anweisung mit ADVANCING Zusatz erzeugt bei ihrer Ausf hrung ein Siemens Nixdorf Steuerzeichen das den im ADVANCING Zusatz angegebenen Vor schub bewirkt Eine WRITE Anweisung ohne ADVANCING Zusatz versorgt das Steuerbyte nicht Das erforderliche Vorschubsteuerzeichen mu explizit dorthin bertragen werden bevor die Anweisung ausgef hrt wird Dies gibt dem Anwender die M glichkeit nicht nur mit den Siemens Nixdorf Vorschub informationen zu arbeiten sondern im Programm davon abweichende Vorschub steuerzeichen zu definieren z B f r spezielle Drucker Welche Zeichen dabei im ein zelnen zul ssig sind und wie sie bei der Druckausgabe interpretiert werden kann in den entsprechenden Druckerhandb chern nachgelesen werden Da Vorschubsteuerzeichen meistens nicht abdruckbar sind m ssen sie im Programm mit Hilfe der SYMBOLIC CHARACTERS KIausel definiert werden damit sie in MOVE Anweisungen angesprochen werden k nnen siehe dazu Beispiel 9 7 Je nach Ausgabeziel werden unterschiedliche Vorschubzeichen erzeugt Vorschub bei Ausgabe Vor
74. bestimmt wie viele Datens tze jeweils gemeinsam durch eine Ein Ausgabeoperation in den bzw aus dem Puffer des Pro gramms bertragen werden sollen blockl ngenangabe mu dabei eine zul ssige Angabe aus dem Format der BLOCK CONTAINS Klausel sein U3987 J 2125 8 219 Indizierte Dateien Dateiverarbeitung Die Blockung von Datens tzen verringert die Zahl der Zugriffe auf periphere Speicher und damit die Laufzeit des Programms und die Zahl der Blockzwischenr ume auf dem Speichermedium und damit den physischen Platzbedarf der Datei Andererseits wird bei Zugriffen mit Sperrmechanismus im Verlauf einer Simultanverarbei tung siehe 9 5 stets der gesamte Block gesperrt in dem sich der aktuelle Satz befindet Ein gro er Blockungsfaktor f hrt in diesem Fall daher zu Einbu en an Verarbeitungsge schwindigkeit Der Compiler errechnet bei der bersetzung aus den Angaben im Quellprogramm ber Block und Satzl nge einen Wert f r die Puffergr e der vom Laufzeitsystem f r das DVS auf das n chstgr ere Vielfache eines PAM Blocks 2048 byte aufgerundet wird Diese Voreinstellung kann bei der Dateizuweisung durch die Angabe des BLKSIZE Operanden im SET FILE LINK Kommando ver ndert werden siehe 9 1 3 wobei darauf zu achten ist da der Puffer mindestens so gro sein mu wie der l ngste Datensatz und bei Verarbeitung im keylosen Format BLKCTRL DATA die Verwaltungsinformatio nen Pamkey im Puffe
75. daran kurz erl utert IDENTIFICATION D ENVIRONMENT DIVIS INPUT OUTPUT SEC TROL ECT intern IGN TO ext IZATION ESS MODE ORD KEY IS ER C GAUT T gt RNATE REC STATUS DATA DIVISION FILE SECTION FD interner date BLOCK CONTAIN RECORD satzl 01 datensatz nn feld 1 ty nn prim rschl nn sekund rsc PROCEDURE DIVISION OPEN open mod START interne READ interner REWRITE daten RITE datensa DELETE intern CLOSE interne STOP RUN VISION ION ION er dateiname erner name IS INDEXED S zugriffsart prim rschl ssel ORD KEY IS sekund rschl ssel S statusfelder iname S blockl ngenangabe ngenangabe p amp l nge ssel feld typ amp l nge hl ssel feld typ amp l nge us interner dateiname r dateiname dateiname satz tz er dateiname r dateiname U3987 J 2125 8 217 Indizierte Dateien Dateiverarbeitung SELECT interner dateiname legt den Namen fest unter dem die Datei im Quellprogramm angesprochen wird interner dateiname mu ein g ltiges Programmiererwort sein Das Format der SELECT Klausel erlaubt auch die Angabe OPTIONAL f r Eingabedateien die beim Programmablauf nicht unbedingt vorhanden sein m ssen Ist einem mit SELECT OPTIONAL vereinbarten Dateinamen beim Programmablauf keine Datei zugewiesen so wird bei OPEN INPUT im Dialogbetrieb der Programmablauf mit der Meldung COB9117 un terbro
76. das Einrichten von Dateien und das Festlegen von Dateimerkmalen steht im BS2000 das SET FILE LINK Kommando zur Verf gung Sein vollst ndiges Format und eine aus f hrliche Beschreibung kann in den Handb chern 3 oder 4 nachgelesen werden Task File Table Zu jeder Datei f r die ein SET FILE LINK Kommando mit dem Operanden LINK NAME linkname abgesetzt wird erzeugt das DVS unter dem Dateikettungsnamen linkname in der Task File Table TFT der Task einen Eintrag der alle Dateimerkmale festh lt die im SET FILE LINK Kommando explizit vereinbart wurden Jeder dieser Eintr ge bleibt so lange in der TFT gespeichert bis er durch ein REMOVE FILE LINK Kommando f r den zugeordneten Dateikettungsnamen oder bei Task Ende zusammen mit dem der TFT gel scht bzw durch ein neues SET FILE LINK Kommando f r den gleichen Dateikettungsnamen berschrieben wird ber den aktuellen Inhalt der TFT kann man sich mit dem Kommando SHOW FILE LINK Kommando informieren Versucht ein COBOL Programm eine Datei zu er ffnen so pr ft das DVS ob in der TFT der Linkname eingetragen ist der f r die Datei bei der bersetzung festgelegt wurde siehe 9 1 2 Wird ein solcher Eintrag gefunden bernimmt das Programm die Dateimerkmale aus dem TFT Eintrag unter diesem Linknamen den Dateieigenschaften die explizit oder implizit im Programm vereinbart wurden und dem Katalogeintrag der zugeh rigen Datei Dabei berschreiben Angaben
77. den Spei cher geladen In anderer Dokumentation wird f r ablauff hige Programme oft synonym der Begriff Lade modul verwendet Technisch gesehen ist jedoch ein Lademodul eine ladbare Einheit innerhalb eines Programms Ein segmentiertes Programm besteht z B aus mehreren La demodulen U3987 J 2125 8 5 Begriffserkl rungen Einleitung Das Synonym Objektprogramm f r Lademodul kann in der COBOL Terminologie zu Mi verst ndnissen f hren Im COBOL Standard wird ohne auf die herstellerspezifische Not wendigkeit eines Bindelaufs einzugehen als Objektprogramm bereits das vom COBOL Compiler erzeugte Objekt bezeichnet Auftrag Job Task Proze Ein Auftrag Job ist die Folge von Kommandos Anweisungen etc die zwischen den Kom mandos LOGON und LOGOFF angegeben werden Es wird zwischen Stapelauftr gen ENTER Jobs und Dialogauftr gen unterschieden Ein Auftrag wird zu einer Task wenn ihm Systemressourcen CPU Speicher Ger te zu geteilt werden Im Dialogbetrieb wird ein Auftrag zu einer Task sobald das LOGON Kom mando akzeptiert ist Als Prozesse werden die innerhalb einer Task ablaufenden Aktivit ten z B Programm abl ufe bezeichnet Bis heute wird f r die Begriffe Task bzw Auftrag oft synonym der Begriff Proze ver wendet In Zukunft sollen die Begriffe so verwendet werden wie oben erkl rt Die Formulie rung bei Proze ende bedeutet also bei Beendigung eines Progra
78. det SDF Option COMPILER ACTION MODULE GENERATION SHAREABLE CODE IGNORE COPY SUPPRESS YES NO IGN C SUP bestimmt ob im Quellprogramm vorhandene COPY Ele mente mit SUPPRESS Angabe trotzdem in der Quellpro grammliste aufgef hrt werden SDF Option LISTING PARAMETERS SOURCE YES COPY EXPANSION LIBFILESS listenangabe listenangabe legt fest welche bersetzungsprotokolle erzeugt und in eine PLAM Bibliothek ausgegeben werden sollen listenangabe ist dabei eine der folgenden Angaben NOJOPTIONS NO DIAG SYSLIST NOJSOURCE NOJOBJECT ALL NO MAP NO JXREF NO Jede angeforderte Liste wird als Element vom Typ R mit einem Standardnamen generiert Die Standardnamen lau ten OPTLST COB85 programmname SRCLST COB85 programmname ERRLST COB85 programmname LOCLST COB85 programmname ste OBJLST COB85 programmname Objektliste Steueranweisungsliste Quellprogrammliste Fehlerliste Adre Querverweisli DEE programmname wird dabei ggf auf 16 Zeichen gek rzt SDF Option LISTING PARAMETERS OUTPUT LIBRARY ELEMENT LIBRARY lt full filename 1 54 gt U3987 J 2125 8 69 COMOPT Operanden COMOPT Steuerung Operandenformat Funktion LINE LENGTH 132 119 172 LINE L legt die maximale Anzahl von Zeichen fest die in den ber setzungsprotokollen pro Zeile gedruckt werden SDF Option LISTING PARAMETERS LAYOUT PAR
79. do MODIFY SDF OPTION GUIDANCE EXPERT explizit in den Expert Modus zur ck schaltet Tempor rer Men Modus F r die Compilersteuerung im tempor ren Men Modus gibt es zwei Wege 1 Schrittweises Durchlaufen der SDF Men s bis zum Operandenfragebogen Mit der Angabe des Fragezeichens auf Systemebene gelangt der Benutzer in das SDF Hauptmen Wechsel in das SDF Hauptmen Angabe der Nummer des PROGRAMMING SUPPORT Men s Wechsel in das PROGRAMMING SUPPORT Men Angabe der Nummer des Compiler Aufrufkommandos Wechsel in den Operandenfragebogen 2 Unmittelbarer Wechsel in den Operandenfragebogen Unmittelbar an START COBOL85 COMPILER wird ein Fragezeichen angeh ngt START COBOL8S COMPILER Loptionen Wechsel in den Operandenfragebogen Mit START COBOL85 COMPILER verzweigt die Steuerung in den Men Modus und die erste Seite des Operandenfragebogens wird aufgeschlagen Der Fragebogen enth lt ggf die Operandenwerte der Optionen die unmittelbar nach START COBOL85 COMPILER angegeben wurden Durch Angabe von CANCEL in der NEXT Zeile bzw durch Bet tigen der K1 Taste kann der Benutzer aus jedem Men sofort zur ck in den Expert Modus gelangen Nach der bersetzung befindet sich der Benutzer wieder im Expert Modus angezeigt durch 28 U3987 J 2125 8 Steuerung des Compilers ber SDF Compileraufruf und Eingabe der Optionen Hinweise zur Bearbeitung des Operandenfragebogens Der Operandenfragebo
80. durch fol gende Sprachmittel siehe 1 Die Vereinbarung programminterner Merknamen f r Auftrags und Benutzerschalter und ihre Zust nde im SPECIAL NAMES Paragraphen der ENVIRONMENT DIVISION ber diese Merknamen k nnen sich Anweisungen der PROCEDURE DIVISION auf die zugeordneten Schalter und deren Zust nde beziehen siehe unten Diese Merknamen k nnen folgenderma en vereinbart werden F r die Auftragsschalter ber die Herstellernamen TSW 0 TSW 1 TSW 31 wo bei die zus tzlichen Angaben ON IS und OFF IS die Festlegung von Bedin gungsnamen f r den jeweiligen Schalterzustand erm glichen So lassen sich z B Merknamen f r Auftragsschalter 17 und seine Zust nde verein baren durch die Angaben TSW 17 IS merkname 17 ON IS schalterzustand ein 17 OFF IS schalterzustand aus 17 F r die Benutzerschalter ber die Herstellernamen USW 0 USW 1 USW 31 wobei die zus tzlichen Angaben ON IS und OFF IS die Festlegung von Bedin gungsnamen f r den jeweiligen Schalterzustand erm glichen So lassen sich z B Merknamen f r Benutzerschalter 18 und seine Zust nde ver einbaren durch die Angaben USW 18 IS merkname 18 ON IS schalterzustand ein 18 OFF IS schalterzustand aus 18 U3987 J 2125 8 139 Auftrags und Benutzerschalter Schnittstelle COBOL Programm BS2000 e Die Abfrage und Ver nderung von Schaltern in der PROCEDURE DIVISION Bedingungen z B in der IF PERFORM EVALUATE Anw
81. f r Felder variabler L nge Adresse oder gt 256 byte ITCSVMAO MOVE ALL literal ITCSVMPO Auff llen f r Felder gt 256 byte bei MOVE ITCSVMVO MOVE f r Felder variabler L nge Adresse oder gt 256 byte ITCSWRIO WRITE REWRITE Anweisung f r indizierte Dateien ITCSWRLO WRITE REWRITE Anweisung f r zeilensequentielle Dateien ITCSWRRO WRITE REWRITE Anweisung f r relative Dateien ITCSWRSO WRITE Anweisung f r sequentielle Dateien ITCSXITO FILE STATUS und Fehlerbehandlungsroutine ITCSXPFO Potenzierung Modul nicht gemeinsam benutzbar U3987 J 2125 8 355 Datenbankbedienung UDS Anhang 16 2 Datenbankbedienung UDS In COBOL85 BC nicht unterst tzt Eine Beschreibung des universellen Datenbanksystems UDS findet sich in den Handb chern Entwerfen und Definieren 14 Aufbauen und Umstrukturieren 15 Anwendungen programmieren 16 UDS Datenbanken werden von Anwenderprogrammen bedient ber COBOL DML Sprachelemente DML ist integraler Bestandteil von COBOL CALL DML Datenbankbehandlung ber Unterprogrammaufruf Der folgende Text beschr nkt sich auf COBOL DML Ferner wird davon ausgegangen da Schema und Subschema bereits generiert sind Hier werden einzelne Schritte zur Erzeu gung eines UDS Anwenderprogramms kurz dargestellt Der Database Handler DBH als Kernkomponente des UDS Datenbanksystems ist zu st ndig f r die Kommunikation zwischen dem Anwenderprogramm und der Datenbank ber das S
82. gen numerischen Zustandscode dessen Bedeutung der Tabelle am Ende dieses Ab schnitts entnommen werden kann 210 U3987 J 2125 8 Dateiverarbeitung Relative Dateien datenname 2 mu als sechs Byte langes Gruppenfeld der folgenden Struktur erkl rt werden 01 datenname 2 02 datenname 2 1 PIC 9 2 COMP 02 datenname 2 2 PIC X 4 dient der Aufnahme des DVS Fehlerschl ssels DVS Codes zum jeweiligen Ein Ausgabezustand und enth lt nach jedem Zugriff auf die zugeordnete Datei einen Wert der vom Inhalt des Feldes datenname 1 abh ngt und sich aus folgender Zusammen stellung ergibt Inhalt von DVS Code Wert von Wert von datenname 1 ungleich 0 datenname 2 1 datenname 2 2 ungleich 0 nein nicht relevant undefiniert undefiniert ja nein 0 undefiniert DVS Code der zugeordne ja ja 64 ten Fehlermeldung Die DVS Codes und die zugeordneten Fehlermeldungen k nnen Handbuch 4 ent nommen werden U3987 J 2125 8 211 Relative Dateien Dateiverarbeitung Tabelle 9 14 Ein Ausgabezust nde f r relative Dateien Ein Ausgabe Zustand Bedeutung 00 04 05 Erfolgreiche Ausf hrung Die Ein Ausgabe Anweisung wurde erfolgreich ausgef hrt Es ist keine weitere Information bez glich der Ein Ausgabe Operation verf gbar Satzl ngenkonflikt Eine READ Anweisung wurde erfolgreich ausgef hrt Die L n ge des gelesenen Datensatzesliegt jedoch nicht in den Grenzen die
83. im Anschlu daran kurz erl utert IDENTIFICATION DIVISION ENVIRONMENT DIVISION INPUT OUTPUT SECTION FILE CONTROL SELECT interner dateiname ASSIGN TO externer name ORGANIZATION IS RELATIVE ACCESS MODE IS zugriffsart RELATIVE KEY IS schl ssel FILE STATUS IS statusfelder DATA DIVISION FILE SECTION FD interner dateiname BLOCK CONTAINS blockl ngenangabe ECORD CONTAINS satzl ngenangabe a 01 datensatz n feld 1 typ amp l nge n feld 2 typ amp l nge WORKING STORAGE SECTION nn schl ssel typ amp l nge PROCEDURE DIVISION Ds PEN open modus interner dateiname START interner dateiname READ interner dateiname REWRITE datensatz RITE datensatz DELETE interner dateiname CLOSE interner dateiname STOP RUN U3987 J 2125 8 195 Relative Dateien Dateiverarbeitung SELECT interner dateiname legt den Namen fest unter dem die Datei im Quellprogramm angesprochen wird interner dateiname mu ein g ltiges Programmiererwort sein Das Format der SELECT Klausel erlaubt auch die Angabe OPTIONAL f r Eingabedateien die beim Programmablauf nicht unbedingt vorhanden sein m ssen Ist einem mit SELECT OPTIONAL vereinbarten Dateinamen beim Programmablauf keine Datei zugewiesen so wird bei OPEN INPUT im Dialogbetrieb der Programmablauf mit der Meldung COB9117 un terbrochen und ein SET FILE LINK Kommando angefordert im Stapelbetrieb die AT END Bedingung a
84. kann mit ESQL COBOL BS2000 0OSD V2 0 uneingeschr nkt genutzt werden Erweiterungen bez glich Datenmanipulation Datendefinition Datenkontrolle Utility und Auskunftsfunktionen Schema Information Tables Ferner bietet ESQL COBOL BS2000 0OSD V2 0 abgestufte Syntax und Semantikpr fungen der embedded SQL zum Vor berset zungszeitpunkt wahlweise mit oder ohne Verbindung zur Datenbank zur Fehlerbehandlung den standardisierten Returncode SQLSTATE des ISO Stan dards von 1992 zus tzlich zu dem bisherigen SQLCODE des ISO Standards von 1989 Dies verbessert deutlich die Portierbarkeit der SQL Anwendungen ESQL COBOL BS2000 0SD V2 0 ist lediglich als SQL Precompiler zur Programment wicklung erforderlich Das SQL Laufzeitsystem ist Bestandteil von SESAM SQL Server F r den Einsatz von ESQL COBOL BS2000 OSD V2 0 ob mit oder ohne Verbindung zur Datenbank ist das SQL Laufzeitsystem von SESAM SQL V2 0 erforderlich Umfang der SQL Funktionen Suchen von Datens tzen SELECT Anweisung einschlie lich h herer Funktionen wie Join Arithmetik Aggregatsfunktionen z B Durchschnittsbildung Neuaufnahme ndern L schen von Datens tzen ESQL COBOL BS2000 bietet auch einige ber die ISO Norm hinausgehende Funktionen an um die bestehende Funktionalit t der Datenbanksysteme abzubilden z B multiple Felder f r SESAM SQL strukturierte Felder Vektoren Wiederholungs und Datengruppen f r UDS SQL
85. m glich und wird deshalb im Abschnitt 10 3 beschrieben Nach jeder fehlerfreien Ausgabe eines Fixpunktes werden dem Benutzer auf SYSOUT Informationen f r einen eventuellen Wiederanlauf gemeldet Format der Meldung siehe 7 E301 CHECKPOINT aa HALF PAGE bb DATE cc TIME dd ee aa Fixpunkt Nummer bb PAM Seiten Nummer cc mmi tt j Monat Tag Jahr dd Stunde ee Minute 254 U3987 J 2125 8 Fixpunktausgabe und Wiederanlauf Wiederanlauf 11 2 Wiederanlauf Mit dem RESTART PROGRAM Kommando startet der Benutzer ein ablauff higes Pro gramm bei einem durch einen Fixpunkt festgehaltenen Zustand Format des RESTART PROGRAM Kommandos siehe 3 RESTART PROGRAM dateiname REST OPT START PROG CHECKPOINT NUMBERC dateiname Name der Fixpunktdatei COBOL Standardname siehe 11 1 NUMBER Nummer der PAM Seite in der die Fixpunkts tze beginnen Hinweise 1 F r den Wiederanlauf mu der Benutzer alle Betriebsmittel zuweisen die vom wieder anlaufenden Programm ben tigt werden da bei Ausgabe des Fixpunktes Angaben ber ben tigte Betriebsmittel nicht sichergestellt werden 2 Der Zustand der Benutzerdaten wird beim Wiederanlauf nicht automatisch wiederher gestellt Also mu der Benutzer selbst seine Daten so wie zum Zeitpunkt der Fixpunkt ausgabe in geeigneter Weise zur Verf gung stellen U3987 J 2125 8 255 256 U3987 J 2125 8 12 Programmverkn pfungen Ein Programmsystem besteht aus einem H
86. neu ge n entfallen Abschnitt dert 2 2 2 COPY Elemente aus POSIX Dateien x 3 3 1 SOURCE Option Eingabe aus POSIX Dateisystem x 3 3 5 MODULE OUTPUT Option x Modulausgabe ins POSIX Dateisystem x 3 3 6 LISTING Option x Listenausgabe ins POSIX Dateisystem Operand IMPLICIT SCOPE END x 3 3 7 TEST SUPPORT Option Operand WINDOW DEBUG SUPPORT x 3 3 11 RUNTIME OPTIONS Option x Operand ENABLE UFS ACCESS 4 2 COMOPT CHECK SCOPE TERMINATORS x COMOPT ENABLE UFS ACCESS x COMOPT ROUND FLOAT RESULTS DECIMAL x COMOPT SUPPORT WINDOW DEBUGGING x COMOPT USE STANDARD 74 x 5 3 2 STRUCTURIZER ACTION Option Operand DATA FORMATTING x 71 41 Informationen ber das Testobjekt x 13 COBOL85 und POSIX Subsystem x 14 5 Kurzbeschreibung ESQL COBOL x 15 COB92xx Meldungen x 16 3 Layout der Adre liste x U3987 J Z125 8 3 Im Handbuch verwendete Darstellungsmittel Einleitung 1 4 Im Handbuch verwendete Darstellungsmittel In diesem Benutzerhandbuch werden folgende metasprachliche Konventionen verwendet COMOPT name YES NO I YES NO Sonderzeichen Hinweise Gro buchstaben bezeichnen Schl sselw rter die in dieser Form eingegeben werden m ssen Kleinbuchstaben bezeichnen Variablen die bei der Eingabe durch aktuelle Werte ersetzt werden m ssen Die Unterstreichung eines Wertes bedeutet da es sich um einen Standardwert handelt der automatisch eingesetzt wird wenn der Anwender keine Angaben macht Geschweifte Klammern schlie en
87. r den Ablauf ben tigt werden ist im BS2000 Segmentierung zur Entlastung des Hauptspeichers nicht notwendig Erforderlich wird sie lediglich dann wenn der virtuelle Adre raum nicht ausreicht das gesamte Programm einschlie lich der Daten aufzunehmen Aus diesem Grund ist es nicht m glich eine echte berlagerungsstruktur f r Programme zu definieren die auf XS Anlagen im oberen Adre raum ablaufen sollen Mit folgenden TSOSLNK Anweisungen lassen sich berlagerungsstrukturen f r segmen tierte Programme definieren Anweisung Kurzbeschreibung OVERLAY bestimmt die berlagerungsstruktur f r das Programm Die OVERLAY Anwei sungen eines Binderlaufs legen fest welche Segmente einander berlagern k nnen und an welchen Stellen im Programm sie sich gegenseitig berlagern sollen OVERLAY Anweisungen sind nur beim Binden eines Programms erlaubt PROGRAM Anweisung beim Binden eines Gro moduls MODULE Anwei sung werden sie mit einer Fehlermeldung zur ckgewiesen Im Adre raum oberhalb 16 Mbyte Angabe LOADPT XS in der PROGRAM oder OVERLAY Anweisung sind keine echten berlagerungsstrukturen m g lich der Binder akzeptiert zwar die OVERLAY Anweisung ordnet aber die Segmente hintereinander an TRAITS vereinbart f r einen Programmteil da er beim Laden auf Seitengrenze ausgerichtet werden soll w hrend des Programmlaufs nur gelesen werden darf Angabe READONLY Y U3987 J 2125 8 109
88. werden 0673 Letzter Teilsatz wurde nicht abgeschlossen 0674 Spezifizierter Wert f r Positionierung ist unzul ssig 0675 Satzformat ist nicht bestimmbar 0676 MAXSIZE ist nicht bestimmbar 0677 Interner PROSOS D Fehler aufgetreten 0678 Spezifizierte Datei ist ein Container von Dateien 0679 Spezifizierte Datei ist unter angegebenem Pfad nicht erreichbar 0680 Versionsangabe kann nicht erh ht werden 0681 Nochmaliges ffnen nach implizitem Schlie en wurde abgewiesen 0682 Fehler bei Initialisierung von PROSOS D 0683 Linkindirektionen bersteigen P_MAXLINKNESTING U3987 J 2125 8 297 298 U3987 J 2125 8 14 Nutzbare Software f r COBOL Anwender 14 1 Advanced Interactive Debugger AID Charakterisierung des Produktes AID ist ein leistungsstarkes Testsystem zur Fehler Diagnose zum Test und f r die vorl u fige Korrektur von Programm Fehlern im BS2000 AID unterst tzt das symbolische Testen von COBOL C C Assembler FORTRAN und PL 1 Programmen und das nicht symbolische Testen auf Maschinencode Ebene aller Programmiersprachen des BS2000 Beim symbolischen Testen eines COBOL Programms k nnen die symbolischen Namen aus einem COBOL Quellprogramm zur Adressierung verwendet werden Das nicht symbo lische Testen auf Maschinencode Ebene bietet sich dort an wo das symbolische Testen nicht ausreicht oder wegen fehlender Testhilfe Information nicht m glich ist ber spezielle AID Kommandos sind u a folgende
89. zu bertragende Wert wird es am rechten Ende mit Leer zeichen aufgef llt ist es k rzer wird der Wert bei der bertragung rechts auf die Feldl nge abgeschnitten Hat die Eingabedatei das Satzformat F S tze fester L nge siehe 8 1 2 so gilt au erdem Ist die L nge des Empfangsfeldes der ACCEPT Anweisung gr er als die logische Satzl nge der Systemdatei werden automatisch Daten nachgefordert d h weitere Leseoperationen Makroaufrufe veranla t Erkennt das Programm beim Lesen der Systemdatei das Dateiende gibt es die Meldung COB9121 bzw COB9122 aus Abh ngig vom COMOPT Operanden CONTINUE AFTER MESSAGE bzw ERROR REACTION in der RUNTIME OPTIONS Option SDF wird der Pro grammablauf anschlie end fortgesetzt Voreinstellung oder beendet Bei Fortsetzung des Programmablaufs wird im Empfangsfeld auf den ersten zwei Positionen die Zeichenfolge abgelegt bzw wenn das Empfangsfeld nur 1 Zeichen lang ist und mit der auf ACCEPT folgenden Anweisung fortgefahren ACCEPT ohne FROM Angabe liest standardm ig aus der Systemeingabedatei SYSIPT Mit COMOPT REDIRECT ACCEPT DISPLAY YES bzw ACCGEPT DISPLAY ASSGN TERMINAL in der SDF Option RUNTIME OPTIONS kann auf die Systemdatei SYSDTA umgewiesen werden 134 U3987 J 2125 8 Schnittstelle COBOL Programm BS2000 Systemdateien DISPLAY UPON merkname schreibt in die im SPECIAL NAMES Paragraphen mit merkname verkn pfte Ausgabedatei Die Daten we
90. 000001 01 ISAM SATZ LAENGE 0000000002 00000002 BINARY 00024 00049 00035 00000E90 000000 00000001 01 SAM SATZ LAENGE 0000000002 00000002 BINARY 00018 00049 COBOL85 V02 2A00 KOPIEREN LOCATOR MAP LISTING 14 46 36 1995 09 14 PAGE 0007 PROCEDURE DIVISION 12 13 11 LVL PROGRAM NAME SOURCE REL SECTION NAME REFERENCED SEQ NO ADDR PARAGRAPH NAME BY STATEMENTS 000 KOPIEREN 00037 00000000 ABLAUF 00038 00000000 ABLAUF 001 00055 00000286 ABLAUF 999 U3987 J 2125 8 369 Anhang 370 U3987 J 2125 8 Literatur 1 COBOL385 BS2000 COBOL Compiler Beschreibung Zielgruppe COBOL Anwender im BS2000 Inhalt COBOL Glossary Einf hrung in Standard COBOL Beschreibung des gesamten Sprachumfangs des COBOL85 Compilers Formate Regeln und Beispiele zu den COBOL ANS 85 Sprachelementen der Sprachmenge High sowie zu den Siemens Nixdorf spezifischen Spracherwei terungen 2 CRTE BS2000 Common RunTime Environment Benutzerhandbuch Zielgruppe Programmierer und Systemverwalter im BS2000 Inhalt Beschreibung der gemeinsamen Laufzeitumgebung f r COBOL85 C und C Objekte sowie f r Fremdsprachmix Komponenten des CRTE Programmkommunikationsschnittstelle ILCS Bindebeispiele U3987 J 2125 8 371 Literatur 3 4 5 BS2000 0OSD BC V2 0A Kommandos Band 1 A L Band 2 M SG Band 3 SH Z Benutzerhandbuch Zielgruppe Die Handb cher wenden sich sowohl an den nichtprivilegierten
91. 1 Syntax und Anwendung der SDF Schnittstelle sind in Kapitel 3 kurzgefa t beschrieben SOURCE Option Die Parameter dieser Option bestimmen ob das Quellprogramm von SYSDTA aus einer katalogisierten Datei oder aus einer PLAM Bibliothek eingelesen wird Format SOURCE SYSDTA lt full filename 1 54 gt LIBRARY ELEMENT LIBRARY ELEMENT LIBRARY lt full fiiename 1 54 without gen gt ELEMENT lt full filename 1 40 without gen vers gt lt full filename 1 40 without gen vers gt VERSION HIGHEST EXISTING UPPER LIMIT lt alphanum name 1 24 gt SOURCE SYSDTA Das Quellprogramm wird von der Systemdatei SYSDTA eingelesen die im Dialogbetrieb standardm ig der Datensichtstation zugewiesen ist Wurde die Quellprogrammdatei vor Beginn des bersetzunglaufs mit dem ASSIGN SYSDTA Kommando der Systemdatei SYSDTA zugewiesen er brigt sich die Angabe der SOURCE Option SOURCE lt full filename 1 54 gt Mit lt full flename gt wird eine katalogisierte Datei zugewiesen SOURCE LIBRARY ELEMENT Mit diesem Parameter wird eine PLAM Bibliothek und ein Element daraus angegeben LIBRARY lt full filename 1 54 Name der PLAM Bibliothek in der das Quellprogramm als Element steht ELEMENT lt full filename 1 40 gt Name des Bibliothekselements in dem das Quellprogramm steht VERSION Versionsbezeichnung des Bibliothekselements VERSION HIGHEST EXISTING Wird kein
92. 1 Ein Ausgabeanweisungen 222 Ein Ausgabezust nde 231 Er ffnungsarten 224 FILE STATUS Klausel 219 231 FILE STATUS Werte 233 Indexbl cke 216 Merkmale 215 OPEN Anweisung 221 ORGANIZATION Klausel 218 PAD Operand 216 Programmskelett 217 RECORD KEY Klausel 219 RECORD Klausel 220 Satzformate 222 Schl sselvereinbarung 221 392 U3987 J 2125 8 Stichw rter SELECT Klausel 218 Simultanverarbeitung von ISAM Dateien 236 START Anweisung 229 Verarbeitung 215 Verarbeitung in umgekehrter Richtung Beispiel 229 Verarbeitungsformen 224 WRITE Anweisung 224 Zugriffsarten 223 Indizierte Dateiorganisation 215 INSERT ERROR MSG SDF Operand 46 integer SDF Datentyp 32 Inter Language Communication Services 257 INTRINSIC FUNCTIONS SDF Operand 39 ISAM Datei indizierte Dateiorganisation 215 nutzbarer Bereich 167 READ WITH NO LOCK 237 relative Dateiorganisation 193 Simultanverarbeitung 236 START WITH NO LOCK 237 ISO 7 Bit Code Dateien im 185 J Job Begriffserkl rung 6 Jobvariablen 145 Beispiel 147 COBOL Sprachmittel f r den Zugriff 145 einrichten 56 Funktionsbeschreibung 304 Linknamen vereinbaren 145 Merknamen vereinbaren 145 R ckkehrcodes bei Programmbeendigung 117 berwachende 145 305 JV jvlink 145 K Katalogeintrag 162 K Datentr ger 166 K ISAM Datei 167 Klasse 4 Speicher 120 Klasse 6 Speicher 120 K Plattenformat 166 K SAM Datei 168 U3987 J 2125 8 393 Stichw rter L Lademodul Begriffser
93. 2 188 FILE STATUS Werte indizierte Dateien 233 relative Dateien 212 sequentielle Dateien 190 FIPS Flagging 38 Fixpunktausgabe 254 f r Sortierprogramme 251 Fixpunktdatei 254 f r Sortierprogramme 251 FLAG ABOVE INTERMEDIATE Comopt 67 FLAG ABOVE MINIMUM Comopt 67 FLAG ALL SEGMENTATION Comopt 67 FLAG INTRINSIC FUNCTIONS Comopt 67 FLAG NONSTANDARD Comopt 68 FLAG OBSOLETE Comopt 68 FLAG REPORT WRITER Comopt 68 FLAG SEGMENTATION ABOVEI1 Comopt 68 FOR REMOVAL Angabe 186 Formatsteueranweisungen 364 full filename SDF Datentyp 31 FUNCTION ARGUMENTS SDF Operand 54 FUNCTION ERR RETURN SDF Operand 57 Funktionsargumente pr fen 54 66 73 G gemeinsam benutzbare Programme 120 GENERATE INITIAL STATE Comopt 68 GENERATE LINE NUMBER Comopt 68 311 GENERATE LLM Comopt 69 GENERATE SHARED CODE Comopt 69 120 Gro modul Begriffserkl rung 5 U3987 J 2125 8 391 Stichw rter Binden mit TSOSLNK 105 262 H Herstellernamen 133 COMPILER INFO 150 CPU TIME 150 DATE ISO4 150 JV jvlink 145 PROCGESS INFO 150 TERMINAL 133 TERMINAL INFO 150 TSW 0 TSW 31 139 USW 0 USW 31 139 I IGNORE COPY SUPPRESS Comopt 69 ILCS 257 IMPLICIT SCOPE END SDF Operand 47 Indexbl cke indizierte Dateien 216 Indizierte Dateien 215 ACCESS MODE Klausel 218 223 ASSIGN Klausel 218 BLOCK CONTAINS Klausel 219 Blockteilung 216 CLOSE Anweisung 222 COBOL Sprachmittel 217 Dateistruktur 215 Datenbl cke 215 Datensatzerkl rung 22
94. 2 Strukturanalyse f r REPORT SECTION ITCL70 syntaktische Analyse f r DML Anweisungen der PROCEDURE DIVISION ITCL71 syntaktische Analyse f r PROCEDURE DIVISION ITCL81 Referenzbefriedigung f r Daten und Prozedurnamen der PROCEDURE DI VISION ITCLA1 semantische Analyse f r CORRESPONDING Datennamen und f r INITIALIZE Statement ITCL919 Erzeugung der Querverweisinformation ITCLBO semantische Analyse der DML Anweisungen der PROCEDURE DIVISION und erste Codegenerierung f r DML ITCLBB semantische Analyse der PROCEDURE DIVISION Anweisungen und Zer legung komplexer Quellprogramm Anweisungen in einfache einschlie lich REPORT WRITER ITCLB2 Analyse arithmetischer Ausdr cke ITCLB3 Operandenanalyse Generierung der PROCEDURE DIVISION Literale ITCLBA Literal pooling Tabellenvorbereitung f r ITCLC1 ITCLD1 ITCLC1 Codegenerierung f r PROCEDURE DIVISION ITCLDO Codegenerierung f r DML Anweisungen ITCLD1 Codegenerierung f r ENVIRONMENT DATA DIVISION Generierung der VALUE Literale ITCLD2 PROCEDURE DIVISION Slicing U3987 J Z125 8 349 Aufbau des COBOL85 Systems Anhang Name Funktion ITCLD3 Umwandlung der Codegeneratorausgabe in Maschinensprache ITCLEB Generierung der LSD S tze ITCLE1 Verarbeitung und Generierung der Tabellen des generierten Moduls Adre tabellen Maschinencodegenerierung der Standardunterprogramme des Moduls ITCLE2 Adre auswertung und Abbildung auf expl
95. 2125 8 10 Sortieren und Mischen 10 1 COBOL Sprachmittel zum Sortieren und Mischen Das Sortieren und Mischen unterst tzt COBOL85 durch folgende Sprachmittel siehe 1 Die Angabe des Literals SORTWK in der ASSIGN Klausel Sie vereinbart explizit den Linknamen SORTWK f r die Sortierdatei Das Format der ASSIGN Klausel f r Sortierdateien l t auch andere Angaben zu die jedoch vom Compiler als Kommentar betrachtet werden Der Linkname f r die Sortier datei ist stets SORTWK Die Sortierdateierkl rung SD in der DATA DIVISION Sie entspricht der Dateierkl rung FD f r andere Dateien und legt die physische Struk tur das Format und die Gr e der Datens tze fest Die Anweisungen SORT und MERGE in der PROCEDURE DIVISION SORT sortiert Datens tze nach einem oder mehreren bis zu 64 Datenfeldern die als Sortierschl ssel vereinbart wurden Diese Datens tze k nnen SORT aus einer Datei oder ber eine Eingabeprozedur zur Verf gung gestellt werden Die sortierten S tze werden in eine Datei geschrieben oder einer Ausgabeprozedur bergeben F r das Sortieren verwendet COBOLS85 die Sortierfunktion des BS2000 SORT siehe 6 MERGE mischt in einer Sortierdatei Datens tze aus zwei oder mehreren gleichartig sortierten Eingabedateien anhand einer Anzahl von bis zu 64 Datenfeldern die als Sortierschl ssel vereinbart wurden Die gemischten S tze werden in eine Datei geschrieben oder einer Ausgabeprozedur bergeben
96. 25 8 Dateiverarbeitung Sequentielle Dateien Damit beliebige sedezimale Werte und damit auch nicht abdruckbare Vorschubsteuerzei chen im COBOL Quellprogramm angesprochen werden k nnen gestattet es der SPECIAL NAMES Paragraph der ENVIRONMENT DIVISION ihnen symbolische Namen zuzuordnen siehe 1 Das folgende Beispiel veranschaulicht wie auf diese Weise Vor schubsteuerzeichen definiert werden k nnen Beispiel 9 7 Versorgung des Steuerbytes mit einem sedezimalen Steuerzeichen Der sedezimale Wert OA soll in das Steuerbyte eines Drucksatzes bertragen werden was einen Vorschub von 10 Zeilen nach dem Drucken bewirkt IDE pari FICATION DIVISION ENVIRONMENT DIVISION INPUT OUTPUT SECTION FILE CONTROL SELECT DRUCKDATEI ASSIGN TO AUSGABE CONFIGURATION SECTION SPECIAL NAMES SYMBOLIC CHARACTERS HEX OA IS 11 1 DATA DIVISION FILE SECTION FD DRUCKER DATEI 01 DRUCK SATZ 02 STEUERBYTE PIC X 02 DRUCK ZEILE PIC X 132 PROCEDURE DIVISION MOVE INHALT TO DRUCK ZEILE MOVE HEX 0A TO STEUERBYTE 2 WRITE DRUCK SATZ 1 Dem elften Zeichen des EBCDI Codes es entspricht dem sedezimalen Wert OA wird der symbolische Name HEX OA zugeordnet 2 Die MOVE Anweisung bezieht sich auf diesen symbolischen Namen um den sedezimalen Wert OA in das Steuerbyte zu bertragen U3987 J 2125 8 183 Sequentielle Dateien Dateiverarbeitung
97. 25 8 341 Meldungen des COBOLB85 Systems COB9201 C0B9201 C0B9205 C0B9205 C0B9206 C0B9206 C0B9207 C0B9207 coB9211 coB9211 POSIX DRIVER FOR COBOL VERSION AAA POSIX TREIBER FUER COBOL VERSION AAA Typ Hinweis Bedeutung aaa Versionsnummer des Treibers USAGE COBOL OPTIONS FILENAME SYNTAX COBOL OPTIONEN DATEINAME Typ Anwenderfehler Bedeutung Es wurde keine Datei zur Bearbeitung angegeben MISSING ARGUMENT FOR OPTION XXX FEHLENDES ARGUMENT FUER OPTION XXX Typ Anwenderfehler Bedeutung xxx Option zu der das Argument fehlt WARNING OPTION XXX IGNORED WARNUNG OPTION XXX IGNORIERT Typ Hinweis Bedeutung Option xxx wurde nicht ben tigt COBOL COMPILER RETURNED WITH ERROR NN COBOL COMPILER KEHRT MIT FEHLER NN ZURUECK Typ Systemfehler Bedeutung Programm abgebrochen Ma nahme Systemverwalter berater verst ndigen 342 U3987 J 2125 8 Meldungen des COBOLB85 Systems C0B9212 CCC COMMAND NOT FOUND C0B9212 CCC KOMMANDO NICHT GEFUNDEN Typ Anwenderfehler oder Systemfehler Ma nahme Herausfinden warum das Kommando nicht gefunden wurde bzw Systemverwalter berater verst ndigen C0B9213 CANNOT EXECUTE CCC ERRNO NN C0B9213 CCC KANN NICHT AUSGEF HRT WERDEN ERRNO NN Typ Systemfehler Bedeutung ccc Nicht ausfuehrbares Kommando nn Nummer des Fehlers der beim Versuch das Kommando auszuf hren aufgetreten ist Ma nahme Systemve
98. 25 8 171 Sequentielle Dateien Dateiverarbeitung FILE STATUS IS statusfelder gibt die Datenfelder an in denen das Laufzeitsystem nach jedem Zugriff auf die Datei In formationen dar ber hinterlegt ob die Ein Ausgabeoperation erfolgreich war und welcher Art ggf die dabei aufgetretenen Fehler sind Die statusfelder m ssen in der WORKING STORAGE SECTION oder der LINKAGE SECTION vereinbart werden Ihr Format und die Bedeutung der einzelnen Zustandscodes werden in Abschnitt 9 2 8 beschrieben Die FILE STATUS Klausel ist optional Wird sie nicht angegeben stehen dem Programm die oben erw hnten Informationen nicht zur Verf gung BLOCK CONTAINS blockl ngenangabe legt die maximale Gr e eines logischen Blockes fest Sie bestimmt wie viele Datens tze jeweils gemeinsam durch eine Ein Ausgabeoperation in den bzw aus dem Puffer des Pro gramms bertragen werden sollen blockl ngenangabe mu dabei eine zul ssige Angabe aus dem Format der BLOCK CONTAINS Klausel sein Die Blockung von Datens tzen verringert die Zahl der Zugriffe auf periphere Speicher und damit die Laufzeit des Programms und die Zahl der Blockzwischenr ume auf dem Speichermedium und damit den physischen Platzbedarf der Datei Der Compiler errechnet bei der bersetzung aus den Angaben im Quellprogramm ber Block und Satzl nge einen Wert f r die Puffergr e der bei Plattendateien vom Laufzeit system f r das DVS auf das n chstgr
99. 25 8 173 Sequentielle Dateien Dateiverarbeitung OPEN open modus interner dateiname er ffnet die Datei in der angegebenen Er ffnungsart open modus f r die Verarbeitung F r open modus sind folgende Angaben m glich INPUT er ffnet die Datei als Eingabedatei sie kann nur gelesen werden OUTPUT er ffnet die Datei als Ausgabedatei sie kann nur geschrieben werden EXTEND er ffnet die Datei als Ausgabedatei sie kann erweitert werden I O er ffnet die Datei als Ein Ausgabedatei sie kann Satz f r Satz gelesen aktualisiert und zur ckgeschrieben werden Die Angabe open modus legt fest mit welchen Ein Ausgabeanweisungen auf die Datei zu gegriffen werden darf siehe 9 2 4 WRITE datensatz READ interner dateiname REWRITE datensatz sind Ein Ausgabeanweisungen f r die Datei die jeweils einen Satz schreiben bzw lesen bzw zur ckschreiben Welche dieser Anweisungen f r die Datei zul ssig sind h ngt von der Er ffnungsart ab die in der OPEN Anweisung vereinbart wird Dieser Zusammenhang wird in 9 2 4 beschrieben CLOSE interner dateiname beendet je nach Angabe im Format die Verarbeitung der Datei keine weitere Angabe oder einer Plattenspeichereinheit Angabe UNIT oder einer Magnetbandspule Angabe REEL und verhindert wahlweise ein R ckspulen des Magnetbandes Angabe WITH NO REWIND oder ein erneutes Er ffnen der Datei Angabe WITH LOCK im selben Programmablauf
100. 3 WORKING STORAGE SECTION 01 REL KEY PTC OTSIS 88 EINGABE ENDE VALUE 01 EIN AUSGABE ZUSTAND 05 FS CODE PIC 9 2 05 DVS CODE 06 DVS CODE 1 PIC 9 2 COMP 88 DVS CODE 2 DEFINIERT VALUE 06 DVS CODE 2 PIC X 4 01 CLOSE SCHALTER PIC X VALUE 88 DATEI OFFE VALUE 88 DATEI GESCHLOSSEN VALUE 01 RELATIV TEXT 05 PIC X 24 VALUE DIES IST SATZ NR 05 SATZNR PIC 963 05 PIC X 6 VALUE PROCEDURE DIVISION DECLARATIVES AUSGABE FEHLER SECTION USE AFTER STANDARD ERROR PROCEDURE ON RELATIV DATEI PERMANENTER FEHLER IF FS CODE NOT LESS THAN 30 DISPLAY NICHT BEHEBBARER FEHLER FUER RELATIV DATELI UPON T DISPLAY FILE STATUS FS CODE UPON T IF DVS CODE 2 DEFINIERT DISPLAY DVS CODE DVS CODE 2 UPON T END IF IF DATEI OFFEN U3987 J 2125 8 207 Relative Dateien Dateiverarbeitung CLOSE RELATIV DATEI DISPLAY PROGRAMM ABNORMAL BEENDET UPON T mo AUSGA UJ END D VORLA LATIV DATEI TO TRUE NO mimocm _4mno DATEI U UMMER EINLESE AFTER KEY IS NUMERIC H TEST BEFORE UNTIL EINGABE ENDE LATIV SATZ FROM RELATIV TEXT LID KEY 5 SPLAY SATZ MIT NR REL KEY IST BEREITS IN DER DATEI UPON T mo m gt Ham m m T AT Ti O zu n 1 wm gt TZNUMMER EINLESE ITH TEST AFTER UNTIL REL KEY IS NUMERIC ERFORM NACHLAUF SET DA CLOSE STOP RUN SATZNUMMER EINLESEN DIS BITTE SATZNUMMER
101. 3 F r eine Datei die mit der DVS Zugriffsmethode UPAM verarbeitet werden soll wurde variable Satzl nge vereinbart 41 42 43 44 Erfolglose Ausf hrung Logischer Fehler Es wurde versucht eine OPEN Anweisung f r eine Dateiauszuf hren die bereits er ffnet ist Es wurde versucht eine CLOSE Anweisung f r eine Datei auszuf hren die nicht er ffnet ist Bei ACCESS MODE IS SEQUENTIAL Die letzte vor Ausf hrung einer DELETE oder REWRITE Anweisung ausgef hrte Ein Ausgabe Anweisungwar keine erfolgreich ausgef hrte READ Anweisung berschreiten der Satzl ngengrenzen Es wurde versucht eine WRITE oder REWRITE Anweisung auszuf hren Die L nge des Datensatzes liegt jedoch nicht in dem f r diese Datei zul ssigen Be reich U3987 J 2125 8 213 Relative Dateien Dateiverarbeitung Ein Ausgabe Zustand Bedeutung 46 47 48 49 Es wurde versucht eine sequentielle READ Anweisung f r eine Datei auszuf h ren die sich im Er ffnungsmodus INPUT oder l O befindet ein n chster g ltiger Datensatz steht aber nicht zur Verf gung Grund 1 Die vorhergehende START Anweisung war erfolglos oder 2 die vorhergehende READ Anweisung war erfolglos ohne eine Endebedin gung zu verursachen oder 3 die vorhergehende READ Anweisung hat eine Ende Bedingung verursacht Es wurde versucht eine READ oder START Anweisung f r eine Datei auszuf h ren die sich nicht im Er ff
102. 32 U3987 J Z125 8 Meldungen des COBOLB85 Systems C0B9157 PROGRAM REFERENCED BY CALL OR CANCEL STATEMENT IS STILL ACTIVE C0B9157 DAS MIT EINER CALL ODER CANCEL ANWEISUNG ANGESPROCHENE PROGRAMM IST NOCH AKTIV Typ Anwenderfehler Verhalten Programm abgebrochen Ma nahme Programmaufrufe berpr fen und ndern keine Rekursion zul ssig C0B9158 MORE THAN 9 RECURSIVE CALLS OF DEPENDING PARAGRAPHS C0B9158 MEHR ALS 9 REKURSIVE AUFRUFE VON DEPENDING PARAGRAPHEN Typ Anwenderfehler Verhalten Programm abgebrochen Ma nahme Programm ndern COB9160 PROGRAMS COMPILED BY COBOL85 VERSIONS LOWER THAN V2 0A FOUND IN RUNUNIT USING INITIAL OR CANCEL COB9160 DIE RUNUNIT ENTHAELT MIT COBOL85 VERSIONEN KLEINER V2 0A UEBERSETZTE PROGRAMME OBWOHL INITIAL ODER CANCEL VERWENDET WIRD Typ Anwenderfehler Verhalten Programm abgebrochen Ma nahme Alte Programme mit neuer COBOL85 Version bersetzen U3987 J 2125 8 333 Meldungen des COBOLB85 Systems COB9162 COB9162 COB9163 COB9163 C0B9164 C0B9164 INCONSISTENT DESCRIPTIONS FOR EXTERNAL FILE aaa IN DIFFERENT PROGRAMS DIE EXTERNE DATEI aaa WURDE IN VERSCHIEDENEN PROGRAMMEN UNTERSCHIEDLICH BESCHRIEBEN Typ Anwenderfehler Bedeutung aaa Name der externen Datei Verhalten Programm abgebrochen Ma nahme In allen Programmen die gleiche Beschreibung f r die externe Datei verwenden NOT ENOUGH SPACE AVAILABLE FOR DYNAMIC DATA OR FUNCTIO
103. 54 gt Das Ergebnis der PRETTY PRINT Aktion wird in eine katalogisierte Datei mit dem angegebenen Namen geschrieben OUTPUT SYSLST Die Liste wird auf SYSLST ausgegeben STRUCTURIZER ACTION BEAUTIFY Das Quellprogramm soll strukturgerecht einger ckt werden INFORMATION STD Es werden die voreingestellten Werte der folgenden PARAMETERS Struktur bernom men INFORMATION PARAMETERS SEQUENCE AREA YES NO Bei Angabe von YES wird die Sequence Number Area Spalten 1 6 des Referenz formats in die Ausgabe bertragen IDENTIFICATION AREA YES NO Bei Angabe von YES wird die Program Identification Area Spalten 73 80 des Referenzformats in die Ausgabe bertragen LAYOUT STD Es werden die voreingestellten Werte der folgenden PARAMETERS Struktur bernom men LAYOUT PARAMETERS LOWER CASE KEYWORDS YES NO Bei YES werden die vom Strukturierer erg nzten Schl sselw rter z B explizite Bereichbegrenzer klein geschrieben Diese Funktion ist nur sinnvoll wenn das ein gegebene Quellprogramm in Kleinbuchstaben geschrieben ist INDENTATION AMOUNT 2 lt integer 1 8 gt Mit lt integer gt wird angegeben um wieviel die Anweisungen innerhalb von Struktur bl cken einger ckt werden sollen U3987 J 2125 8 95 STRUCTURIZER ACTION Option COBOLB85 Strukturierer OUTPUT STD FILES Das Ergebnis der BEAUTIFY Aktion wird in eine katalogisierte Datei geschrieben deren Name aus dem
104. 61 Binden und Laden von Unterprogrammen Programmverkn pfungen 2 Verwendung des TSOSLNK Gro modulbinden START PROGRAM TSOSLNK MODULE GROSSMOD LET Y LIB MODUL LIB 1 INCLUDE MAINPROG BENUTZER PROGRAMME 2 RESOLVE BENUTZER PROGRAMME 3 RESOLVE SYSLNK CRTE 4 LINK SYMBOLS KEEP 5 END SET FILE LINK BLSLIBOO SYSLNK CRTE 6 SET FILE LINK COBOBJCT BENUTZER PROGRAMME 7 START PROGRAM MODULE LIB MODUL LIB ELEM GROSSMOD 8 RUN MODE ADVANCED CALT LIB YES UNRES EXT DELAY LOAD INFO REFERENCE amp nn a A Daa O lt Das zu erstellende Gro modul GROSSMOD wird in der Bibliothek MODUL LIB ab gelegt Einbinden des Moduls MAINPROG aus der Bibliothek BENUTZER PROGRAMME Einbinden der Bibliothek BENUTZER PROGRAMMEE zur Befriedigung der Extern verweise auf UPROG1 und UPROG3 Einbinden der Bibliothek die die Laufzeitroutinen enth lt Mit dieser Anweisung werden die Symbole f r die Einsprungstellen und die Pro grammabschnitte f r den sp teren Ablauf mit dem Bindelader sichtbar gehalten Zuweisung der Laufzeitbibliothek Zuweisung der Bibliothek aus der das Unterprogramm UPROG2 dynamisch nach geladen wird Aufruf des Gro moduls GROSSMOD Die Operanden UNRESOLVED EXTERNAL DELAY und LOAD INFORMATION REFERENCES m ssen immer dann angegeben werden wenn die Ladeeinheit noch offene be dingte Externverweise WXTRNs enth lt siehe
105. 85 Compilers ber akzeptierte Steueranweisungen Summe aller Hinweis und Fehlermeldungen des bersetzungslaufs verbrauchte CPU Zeit die vollst ndige Kommandozeile f r den Binderaufruf Diese Option betrifft nur die Ausgaben des COBOL85 Compilers Wenn bei der gleichzeitigen bersetzung von C Quellen entsprechende Meldungen des C Compilers ausgegeben werden sollen mu die Option CC V verwendet werden U3987 J 2125 8 277 Steuerung des Compilers COBOLB85 und POSIX W err level In der Fehlerliste stehen keine Meldungen deren Fehlergewicht kleiner ist als der angege bene Wert F r err level sind folgende Angaben m glich I Information Voreinstellung 0 Warnung 1 Fehler 2 Schwerwiegender Fehler 3 Abbruchfehler 13 3 2 Option f r Compiler Anweisungen C comopt F r comopt k nnen alle in der folgenden bersicht aufgef hrten COMOPT Anweisungen in Voll oder Abk rzungsschreibweise angegeben werden Die Wirkungsweise der einzelnen COMOPTSs ist in Kapitel 4 beschrieben Beispiel C SET FUNCTION ERROR DEFAULT YES oder C S F E D YES bersicht COMOPTSs die mit der Option C bergeben werden k nnen COMOPT m gliche Abk rzung ACCEPT LOW TO UP YES NO ACC L T U ACTIVATE WARNING MECHANISM YES NO ACT W MECH ACTIVATE XPG4 RETURNCODES YES NO CHECK CALLING HIERARCHY YES NO CHECK C H CHECK FUNCTION ARGUMENTS YES NO CHECK FUNC CHECK PARAMETER COUNT YES NO CHECK PAR C CHECK
106. 9 251 SORT CORE SIZE Sortier Sonderregister 250 SORT EBCDIC DIN Comopt 73 248 SORT FILE SIZE Sortier Sonderregister 249 Sortierdatei 249 Sortierdateierkl rung 247 Sortieren und Mischen 247 Ausgabedatei 250 Ausgabeprozedur 248 COBOL Sprachmittel 247 Eingabedatei 250 Eingabeprozedur 248 Fixpunktausgabe 251 MERGE Anweisung 247 RERUN Klausel 251 SORT Anweisung 247 249 Sortierdatei 249 U3987 J 2125 8 403 Stichw rter Sortierdateierkl rung 247 SORT Sonderregister 249 Wiederanlauf 251 Sortierprogramm 249 Sortierung nach DIN 57 73 SORTIN Linkname 159 SORTING ORDER SDF Operand 47 57 SORTINnn Linkname 159 SORT MAP Comopt 73 SORT MODE SIZE Sortier Sonderregister 249 SORTOUT Linkname 159 SORT RETURN Sortier Sonderregister 250 SORTWK Linkname 159 SORTWKn Linkname 159 SORTWKnn Linkname 159 SOURCE SDF Operand 46 SOURCE ELEMENT Comopt 74 SOURCE Option des Compilers 35 des Strukturierers 90 SOURCE PROPERTIES Option 37 SOURCE VERSION Comopt 74 Sprachelemente kennzeichnen 67 bei COMOPT Steuerung 65 bei SDF Steuerung 38 SRCLIB Linkname 63 START TSOSLNK Operand 107 START KEY LESS 229 START WITH NO LOCK 237 START Anweisung indizierte Dateien 229 relative Dateien 203 START COBOL85 COMPILER Aufrufkommando 26 START COBOL85 STRUCTURIZER Strukturierer Aufruf 77 START PROGRAM Kommando 112 Statischer Binder TSOSLNK 102 Statischer Lader ELDE 115 Stellungsoperanden SDF 27 Steueranwei
107. 987 J 2125 8 COBOL85 und POSIX Unterschiede zu COBOL85 im BS2000 13 5 2 Sprachfunktionale Erweiterungen Zugriff auf Kommandozeile Bei Ablauf in POSIX kann vom Programm aus mittels ACGEPT DISPLAY Anweisungen in Verbindung mit den Sondernamen ARGUMENT NUMBER und ARGUMENT VALUE auf die Kommandozeile zugegriffen werden siehe COBOL85 Sprachbeschreibung 1 Beispiel IDENTIFICATION DIVISION SPECIAL NAMES ARGUMENT NUMBER IS NO OF CMD ARGUMENTS ARGUMENT VALUE S CMD ARGUMENT WORKING STORAGE SECTION 01 I PIC 99 VALUE 0 01 g PIC 99 VALUE 0 01 A PIC xX 5 VALUE ALL x PROCEDURE DIVISION ACCEPT I FROM NO OF CMD ARGUMENTS DISPLAY no of command arguments I PERFORM VARYING J FROM 1 BY 1 UNTIL J gt 1I ACCEPT A FROM CMD ARGUMENT DISPLAY cmd argument J lt A gt END PERFORM DISPLAY 2 UPON NO OF CMD ARGUMENTS ACCEPT A FROM CMD ARGUMENT DISPLAY argument 2 A Programmaufruf a out AAAA BBB CC D Ablaufprotokoll no of command arguments 4 cmd argument 1 lt AAAA gt cmd argument 2 lt BBB gt cmd argument 3 lt CC gt cmd argument 4 lt D gt argument 2 BBB U3987 J 2125 8 287 Unterschiede zu COBOL85 im BS2000 COBOL85 und POSIX 13 5 3 Unterschiede bez glich der Programm Betriebssystem Schnittstellen F r COBOL Programme die in POSIX ablaufen ist in einigen Bereichen ein gegen ber dem Ablauf im BS2000 abweichendes Verhalten zu beachten Ein Ausg
108. A PAR 5 PERFORM B PAR IF FELD 99 SET SCHALTER 13 TO ON STOP RUN A PAR 6 B PAR SKIP COMMANDS TO LABEL ENDE IF JOB SWITCHES OFF 13 7 START PROGRAM PROG 2 ENDE MODIFY JOB SWITCHES OFF 12 13 8 END PROC U3987 J Z125 8 141 Auftrags und Benuizerschalter Schnittstelle COBOL Programm BS2000 Auftragsschalter 12 erh lt den Status ON 13 den Status OFF auf Betriebssystem Ebene Ausschnitt aus einer DO Prozedur Das COBOL Programm PROG 1 wird aufgerufen F r die Auftragsschalter 12 TSW 12 bzw 13 TSW 13 werden die programmin ternen Namen SCHALTER 12 bzw SCHALTER 13 vereinbart f r ihren jeweiligen ON Status die Bedingungsnamen EIN 12 bzw EIN 13 Falls Auftragsschalter 12 den Status ON hat siehe 1 wird die Anweisung PERFORM A vor PERFORM B ausgef hrt Falls am Ende des Programmablaufs der Indikator FELD den Wert 99 enth lt setzt PROG 1 den Auftragsschalter 13 auf ON Die Prozedur wertet den Status des Auftragsschalters 13 aus Falls er von PROG 1 nicht auf ON gesetzt wurde verzweigt sie zum Ende andernfalls f hrt sie zus tzlich zu PROG 1 das Programm PROG 2 aus Auf Betriebssystem Ebene werden die Auftragsschalter 12 und 13 zur ckgesetzt 142 U3987 J 2125 8 Schnittstelle COBOL Programm BS2000 Auftrags und Benutzerschalter Beispiel 8 3 Verwendung von Benutzerschaltern Im folgenden Ausschnitt er
109. AMETERS LINE SIZE LINES PER PAGES 64 20 128 LINES legt die maximale Anzahl von Zeilen fest die in den ber setzungsprotokollen pro Seite gedruckt werden Ein Sei tenwechsel wird ausgef hrt wenn diese Zeilenzahl erreicht ist SDF Option LISTING PARAMETERS LAYOUT PARAMETERS LINES PER PAGE LISTFILESS listenangabe listenangabe legt fest welche bersetzungsprotokolle erzeugt und in katalogisierte Dateien ausgegeben werden sollen listenangabe ist dabei eine der folgenden Angaben NOJOPTIONS ALL NOJSOURCE NO NO MAP SYSLIST NOJDIAG NOJOBJECT NO XREF SDF Option LISTING PARAMETERS OUTPUT STD FILES MAXIMUM ERROR NUMBER ganzzahl MAX ERR legt fest ab welcher Fehlerzahl in Abh ngigkeit von der MINIMAL SEVERITY Angabe die bersetzung abgebro chen werden soll SDF Option COMPILER TERMINATION PARAMETERS MAX ERROR NUMBER MERGE DIAGNOSTICS YES NO M DIAG bewirkt da alle w hrend der bersetzung aufgetretenen Fehlermeldungen in die Quellprogrammliste eingemischt werden SDF Option LISTING PARAMETERS SOURCE YES INSERT ERROR MSG 70 U3987 J Z125 8 COMOPT Steuerung COMOPT Operanden Operandenformat Funktion MINIMAL SEVERITY 1 0 1 2 3 MIN SEV unterdr ckt in der Fehlerliste Meldungen deren Severity Code kleiner als der angegebene Wert ist SDF Option LIST
110. AT FROM DATE IF AKT DAT NOT EQUAL TAGDAT 6 PERFORM ARBEIT ELSE PERFORM SCHON AKTUELL ARBEIT MOVE TAGDAT TO AKT DAT ADD 1 TO AKT NUM 7 DISPLAY INHALT JV UPON FELDJV SCHON AKTUELL DISPLAY ENDE AKTUALISIERUNG UPON T SHOW JV JV NAME CKONTROLLE ABLAUF 8 930629 AKTUALISIERUNG NR 1679 U3987 J 2125 8 147 Jobvariablen Schnittstelle COBOL Programm BS2000 S G Die Jobvariable KONTROLLE ABLAUF wird dem nachfolgend aufgerufenen CO BOL Programm PROG ARBEIT 1 ber den Linknamen AKTUELL zugewiesen Im SPECIAL NAMES Paragraphen von PROG ARBEIT 1 werden f r die Jobvaria ble der Linkname AKTUELL und der programminterne Merkname FELDJV ver einbart TAGDAT wird als Empfangsfeld f r das Tagesdatum reserviert Das Empfangsfeld f r den Inhalt der Jobvariable wird vereinbart Es enth lt Teil felder f r die Aufnahme des letzten Aktualisierungsdatums AKT DAT und eines Aktualisierungsz hlers AKT NUM ACCEPT bertr gt den Inhalt der Jobvariable FELDJV nach INHALT JV Abh ngig davon ob das Aktualisierungsdatum AKT DAT der Jobvariable mit dem Tagesdatum TAGDAT bereinstimmt werden im Programm verschiedene Verar beitungsprozeduren durchlaufen Am Ende der Verarbeitung werden die Felder AKT DAT und AKT NUM aktualisiert und mit DISPLAY INHALT JV in die Jobvariable zur ckgeschrieben Auf Betriebssystem Ebene wird die Jobvariable gelesen Sie enth lt Datum u
111. Angabe OPTIONAL f r Eingabedateien die beim Programmablauf nicht unbedingt vorhanden sein m ssen Ist einem mit SELECT OPTIONAL vereinbarten Dateinamen beim Programmablauf keine Datei zugewiesen so wird bei OPEN INPUT im Dialogbetrieb der Programmablauf mit der Meldung COB9117 un terbrochen und ein SET FILE LINK Kommando angefordert im Stapelbetrieb die AT END Bedingung ausgel st bei OPEN I O oder OPEN EXTEND eine Datei mit dem Namen FILE COB85 linkname angelegt ASSIGN TO externer name gibt die Systemdatei an die der Datei zugewiesen wird oder legt den Linknamen fest ber den eine katalogisierte Datei zugeordnet werden kann externer name mu entweder ein zul ssiges Literal ein in der DATA DIVISION definierter zul ssiger Datenname oder ein g ltiger Herstellername aus dem Format der ASSIGN Klausel sein siehe 1 ORGANIZATION IS SEQUENTIAL legt fest da die Datei satzsequentiell organisiert ist Die ORGANIZATION Klausel kann bei satzsequentiellen Dateien entfallen da satzsequen tielle Dateiorganisation die Standardannahme des Compilers ist ACCESS MODE IS SEQUENTIAL bestimmt da auf die S tze der Datei nur sequentiell zugegriffen werden kann Die ACCESS MODE Klausel ist optional und dient bei sequentiellen Dateien lediglich der Dokumentation da sequentieller Zugriff die Standardannahme des Compilers und die ein zige f r sequentielle Dateien erlaubte Zugriffsart ist U3987 J 21
112. Auftragsschalter 4 gesetzt wird Alte 90xx Meldungen des COBOL Laufzeitssystems ber den Ablauf von Objekten die von fr heren Compilerversionen lt 2 1B bersetzt wurden alte Meldungsnummer entspricht neuer Meldungsnummer 9034 entf llt 9054 COB9112 9067 COB9151 9068 COB9168 9069 COB9169 9070 COB9154 9071 COB9171 9074 COB9134 9076 COB9176 9077 COB9117 9079 COB9179 Die folgende Liste stellt die wichtigsten Meldungen des COBOL85 Compilers und des Lauf zeitsystems zusammen Sie enth lt f r jede Meldung Meldungsnummer und Meldungstext englisch und deutsch und zus tzliche Erl uterungen die auch ber SYSOUT ausgegeben werden sie sind in fol gende Punkte gegliedert Typ der Meldung Bedeutung der Variablen in der Meldung Verhalten des Programms Ma nahme des Anwenders Achtung Bei Auftreten von Meldungen die in der folgenden Liste nicht aufgef hrt sind Compi ler bzw Systemfehler ist generell der Systemberater zu verst ndigen 312 U3987 J 2125 8 Meldungen des COBOLB85 Systems C0B9000 Copyright C Siemens Nixdorf Informationssysteme AG 1996 All rights reserved C0B9000 Copyright C Siemens Nixdorf Informationssysteme AG 1996 Alle Rechte vorbehalten Typ Hinweis Bedeutung Copyright COB9001 aaa TOTAL FLAGS bbb SI ccc SO ddd Sl eee S2 fff S3 ggg COB9001 aaa FEHLER GESAMT bbb SI ccc SO ddd Sl eee S2 fff S3 gg9g Typ Hinweis Bedeutung aaa Programmname
113. Band 2 Benutzerhandbuch Zielgruppe Die Handb cher wenden sich an Systemverwalter Operateure und Benutzer Inhalt Kapitel 1 von Band 1 behandelt die Meldungsbearbeitung im BS2000 OSD Kapitel 2 und Band 2 enthalten die Systemmeldungen f r den Grundausbau des Betriebs systems BS2000 OSD Die Meldungen sind nach Meldungsklassen in alphabeti scher Reihenfolge geordnet Die Meldungstexte der Meldungen sind in Deutsch und Englisch die Bedeutungs und Ma nahmetexte in Deutsch abgedruckt 8 JV BS2000 Jobvariablen Beschreibung Zielgruppe Nicht privilegierte BS2000 0OSD Anwender Inhalt Das Handbuch beschreibt die Anwendung des Softwareprodukts JV Jobvariablen zur Steuerung und berwachung von Auftr gen und Programmen in BS2000 Systemen Die Jobvariablen Funktionen sind im Grundausbau des BS2000 nicht enthalten U3987 J 2125 8 373 Literatur 9 10 11 AID BS2000 Advanced Interactive Debugger Testen von COBOL Programmen Benutzerhandbuch Zielgruppe COBOL Programmierer Inhalt Beschreibung der AID Kommandos f r das symbolische Testen von COBOL Programmen Anwendungsbeispiel Einsatz Testen von COBOL Programmen im Dialog und Stapelbetrieb BS2000 TSOSLNK Benutzerhandbuch Zielgruppe Software Entwickler Inhalt Anweisungen und Makroaufrufe des Binders TSOSLNK zum Binden von Lade und Gro modulen Kommandos des statischen Laders ELDE BS2000 0SD BC Bindelader Starte
114. Bibliothek SYSLNK CRTE PARTIAL BIND aufgel st Binde Reihenfolge 1 Alle explizit angegebenen Objektdateien o Dateien mit INCLUDE MODULES Anweisungen und gof alle explizit angegebenen ar Bibliotheken a Dateien F r jede ar Bibliothek wird eine eigene RESOLVE BY AUTOLINK Anweisung abgesetzt 2 Alle vom Compiler bei der bersetzung generierten Objektdateien mit INCLUDE MODULES Anweisungen 3 Alle mit den Optionen 1 und L angegebenen ar Bibliotheken sowie die mit 1 BLSLIB zugewiesenen PLAM Bibliotheken F r jede ar Bibliothek wird eine eigene RESOLVE BY AUTOLINK Anweisung abgesetzt Die mit 1 BLSLIB zugewiesenen PLAM Bibliotheken werden in einer einzigen RESOLVE BY AUTOLINK in einer Liste an den BINDER bergeben 4 Die CRTE Bibliothek SYSLNK CRTE PARTIAL BIND und ggf die SORT Bibliothek SORTLIB Die in den Schritten 1 bis 3 bearbeiteten Objektdateien und Bibliotheken werden jeweils in der Reihenfolge eingebunden in der sie in der Kommandozeile angegeben werden Bei den vom Compiler generierten Objektdateien siehe 2 richtet sich die Bindereihenfolge nach der Reihenfolge der zugeh rigen Quelldateien 272 U3987 J 2125 8 COBOL85 und POSIX berblick 13 1 3 Beispiel export BLSLIBIYI MYTEST LIB2 export BLSLIBOl MYTEST LIBI cobol M COBBSP o cobbsp cobuprol cob cobupro2 cob cobbsp o cobupro3 5 a L usr private 1 xyz 1 BLSLIB Bindereihenfolge cobbsp o cobupro3 5
115. CE Bestimmen der Eingabequelle des Quellprogramms SOURCE PROPERTIES Festlegen bestimmter Eigenschaften des Quellprogramms ACTIVATE FLAGGING Kennzeichnung bestimmter Sprachelemente in der Fehler liste mit einer Meldung der Klasse F COMPILER ACTION Teilweise Durchf hrung des Compilerlaufs Beeinflussen einiger Eigenschaften des generierten Codes sowie des Modulformats Objektmodul LLM MODULE OUTPUT Bestimmen des Namens und Ausgabezieles der Objekt module oder LLMs LISTING Festlegen welche Listen ausgegeben werden welches Layout die Listen haben und wohin sie ausgegeben wer den sollen TEST SUPPORT Bestimmen ob Informationen f r die Testhilfe AID erzeugt werden sollen RUNTIME CHECKS Aktivieren der Pr froutinen des Laufzeitsystems COMPILER TERMINATION Bestimmen ab welcher Fehlerzahl der bersetzungslauf abgebrochen werden soll MONJV Einrichten einer Jobvariablen zur berwachung des Com pilerlaufs RUNTIME OPTIONS Festlegen einiger Ablaufeigenschaften des Programms bersicht Die Optionen zur Steuerung des Compilers Option in COBOL85 BC nicht verf gbar U3987 J 2125 8 SDF Steuerung des Compilers SOURCE Option 3 3 1 SOURCE Option Die Parameter dieser Option bestimmen ob das Quellprogramm von SYSDTA aus einer katalogisierten BS2000 Datei aus einer PLAM Bibliothek oder aus einer POSIX Datei ein gelesen wird Format SOURC
116. COBOL Verben und ihrer Abk rzungen ACC ACCEPT INI INITIATE ADD ADD INSP INSPECT ADDC ADD CORRESPONDING KEE KEEP ALT ALTER MOD MODIFY CALL CALL MOV MOVE CANC CANCEL MOVC MOVE CORRESPONDING CLO CLOSE MRG MERGE COM COMPUTE MUL MULTIPLY CON CONNECT OPE OPEN CONT CONTINUE PER PERFORM oder EXIT PERFORM DEL DELETE oder Ende des Schleifenrumpfes 2 DIS DISPLAY PERT TEST OF PERFORM DIV DIVIDE REA READ DSC DISCONNECT REDY READY END END xxx 1 2 REL RELEASE ENTR ENTRY RET RETURN ERA ERASE REW REWRITE EVAL EVALUATE SEA SEARCH EXI EXIT SET SET EXIT EXIT PROGRAM SOR SORT FET FETCH STA START FIN FINISH STO STOP FND FIND STOR STORE FRE FREE STRG STRING GEN GENERATE SUB SUBTRACT GET GET SUBC SUBTRACT CORRESPONDING GOT GO TO TER TERMINATE IF IF UNST UNSTRING INIT INITIALIZE WRI WRITE 1 expliziter Bereichsbegrenzer z B END ADD 2 Der Haltepunkt f r END liegt hinter dem Bereichsbegrenzer insbesondere f r END PERFORM hinter dem vollst ndigen PERFORM Zus tzlich gibt es einen Haltepunkt vor END PERFORM und zwar am Ende eines Schleifendurchlaufs Dieser zweite Hal tepunkt wird mit PER angesprochen 128 U3987 J Z125 8 Testhilfen f r den Programmablauf Dialogtesthilfe AID Hinweise zum symbolischen Testen von geschachtelten Programmen e Setzen von Testpunkten Paragraphen und Kapitel des inneren Programms in dem die Unterbrechungsstelle liegt k nnen ohne Qualifikation angesprochen werden Auf Ka
117. D END READ END READ F r wahlfreien Zugriff READ INTO KEY IS INVALID KEY NOT INVALID KEY END READ Tabelle 9 17 Erlaubte Ein Ausgabeanweisungen f r OPEN INPUT In diesem Modus k nnen indizierte Dateien gelesen werden Abh ngig von der vereinbar ten Zugriffsart hat die READ Anweisung dabei folgende Wirkung ACCESS MODE IS SEQUENTIAL erlaubt es ausschlie lich die Datei sequentiell zu lesen READ stellt dabei die Daten s tze in der Reihenfolge aufsteigender Satzschl ssel zur Verf gung Das ALTERNATE KEY Schl sselfeld wird von READ nicht ausgewertet Vor der Aus f hrung einer READ Anweisung kann jedoch mit Hilfe von START auf einen beliebigen Satz der Datei positioniert werden ber eine Vergleichsbedingung legt START den Schl ssel des zuerst zu lesenden Satzes und damit den Ausgangspunkt f r nachfol gende sequentielle Leseoperationen fest siehe auch 9 4 5 Kann die Vergleichsbedin gung von keinem Satzschl ssel der Datei erf llt werden tritt eine INVALID KEY Bedin gung auf und START verzweigt zur INVALID KEY Anweisung bzw zur vereinbarten USE Prozedur U3987 J 2125 8 225 Indizierte Dateien Dateiverarbeitung ACCESS MODE IS RANDOM erm glicht es die S tze der Datei wahlfrei zu lesen READ stellt dabei die Datens tze in beliebiger Reihenfolge zur Verf gung der Zugriff auf jeden Satz erfolgt ber seinen Satzschl ssel Das ALTERNATE KEY Feld m
118. D Anweisung kann eine katalogisierte Datei oder ein Bibliothekselement zuge wiesen werden Die END Anweisung mit Angabe einer Datei oder eines Bibliotheksele ments kann auch die erste Anweisung nach Aufruf des Compilers sein Am Anfang der zu gewiesenen Datei k nnen weitere COMOPT Anweisungen stehen Hinweis Falls mit der END Anweisung ein Bibliothekselement zugewiesen wird kann der Quellpro grammname in den bersetzungslisten und an der Schnittstelle zu AID FE nicht korrekt ab gebildet werden U3987 J 2125 8 61 Quelldaten Eingabe COMOPT Steuerung Beispiel 4 1 Zuweisen einer katalogisierten Datei nach Eingabe von COMOPT Anweisungen START PROGRAM COBOL85 1 COMOPT 2 END QUELL EINXEINS 3 1 Der Compiler wird aufgerufen SYSDTA ist im Dialog der Datensichtstation zuge ordnet 2 Das Schl sselwort COMOPT teilt dem Compiler mit da die folgenden Eingaben Steueranweisungen sind 3 Die END Anweisung weist SYSDTA der katalogisierten Datei QUELL EINXEINS zu in der sich das zu bersetzende Quellprogramm oder eine Folge von Steueran weisungen befinden Am Ende der bersetzung werden SYSDTA und SYSCMD zusammengeschaltet Beispiel 4 2 Zuweisen einer Bibliothek ohne COMOPT Anweisungen START PROGRAM COBOL85 1 END PLAM LIB BEISP3 2 1 Aufruf des Compilers SYSDTA ist im Dialog der Datensichtstation zugeordnet 2 Die Systemdatei SYSDTA wird dem Elem
119. DUPLICATES Angabe zu erstellen obwohl in der Datei bereits ein Alternativschl ssel mit iden tischem Schl sselwert vorhanden ist Datensatz nicht gefunden Es wurde versucht anhand eines Schl ssels mit einer READ START DELETE oder REWRITE Anweisung auf einen Datensatz zuzugreifen der in der Datei nicht vorhanden ist berschreiten der Bereichsgrenzen Es wurde versucht eine WRITE Anweisung au erhalb der vom System festge legten Bereichsgrenzen einer indizierten Datei auszuf hren U3987 J 2125 8 233 Indizierte Dateien Dateiverarbeitung Ein Ausgabe Zustand Bedeutung Erfolglose Ausf hrung Permanenter Fehler 30 Es ist keine weitere Information bez glich der Ein Ausgabe Operation verf gbar der DVS Code liefert weitere Informationen 35 Es wurde versucht eine OPEN INPUT I O oder EXTEND Anweisung f r eine nicht optionale Datei auszuf hren die nicht vorhanden war 37 OPEN Anweisung auf eine Datei die wegen folgender Bedingungen nicht er ff net werden kann 1 OPEN OUTPUT I O EXTEND auf eine schreibgesch tzte Datei Pa wort RETENTION PERIOD ACCESS READ 2 OPEN INPUT auf eine lesegesch tzte Datei Pa wort 38 Es wurde versucht eine OPEN Anweisung f r eine Datei auszuf hren die vorher mit der LOCK Angabe geschlossen wurde 39 Die OPEN Anweisung war aus einem der folgenden Gr nde erfolglos 1 Im SET FILE LINK Kommando wurden einer oder mehrere der Operanden ACCESS METHOD
120. Datei zugreift und die Zugriffe nicht vereinbar sind 94 1 Nur bei Simultanverarbeitung siehe Abschnitt 9 5 Die Aufruffolge READ REWRITE DELETE wurde nicht eingehalten 2 Die Satzl nge ist gr er als die Blockl nge 95 Unvertr glichkeit zwischen den Angaben im BLOCK CONTROL INFO oder BUFFER LENGTH Operanden des SET FILE LINK Kommandos und dem Datei format der Blockgr e oder dem Format des verwendeten Datentr gers U3987 J 2125 8 235 Simultanverarbeitung SHARED UPDATE Dateiverarbeitung 9 5 Simultanverarbeitung von Dateien SHARED UPDATE 9 5 1 ISAM Dateien ISAM Dateien mit indizierter oder relativer Dateiorganisation k nnen f r mehrere Benutzer gleichzeitig zug nglich gemacht werden Dies geschieht mit dem Operanden SHARED UPDATE im SUPPORT Parameter des SET FILE LINK Kommandos SET FILE LINK Tinkname dateiname SUPPORT DISK CSHARED UPDATE YES Die folgende Tabelle zeigt welche OPEN Anweisungen f r einen Benutzer B m glich sind nachdem die Datei von Benutzer A bereits er ffnet wurde Zul ssige Angaben f r Benutzer B Von Benutzer A OPEN SHARED UPDATE YES SHARED UPDATE NO gew hlte Angaben Anweisung INPUT I O OUPUT INPUT I O OUTPUT EXTEND EXTEND INPUT x x x SHARED UPDATE YES a I O x x OUTPUT EXTEND INPUT x x l SHARED UPDATE NO 2 OUTPUT EXTEND Tabelle 9 20 Zul ssige OPEN Anweisungen bei Simultanverar
121. Dateien mit dem Dienstprogramm ar erstellte Bibliotheken a Dateien LLMs die mit dem POSIX Kommando bs2cp aus PLAM Bibliotheken in POSIX Objektdateien kopiert wurden Dies k nnen LLMs sein die in BS2000 Umgebung direkt von einem Compiler erzeugt wurden oder Objektmodule die mit dem BINDER in ein LLM geschrieben wurden LLMs und Objektmodule die in BS2000 PLAM Bibliotheken stehen Die PLAM Biblio theken m ssen dazu mit den Umgebungsvariablen BLSLIBrnn zugewiesen werden siehe Operand 1 BLSLIB S 282 Die Module k nnen von jedem ILCS f higen BS2000 Compiler erzeugte Module sein z B COBOL85 C C ASSEMBH FORTRAN9D Wenn vom COBOL85 Compiler in BS2000 Umgebung erzeugte Module eingebunden wer den sollen m ssen diese mit der Option ENABLE UFS ACCESS YES bersetzt worden sein F r POSIX Objektdateien werden beim Bindelauf intern INCLUDE MODULES Anweisun gen abgesetzt f r ar Bibliotheken und PLAM Bibliotheken RESOLVE BY AUTOLINK Anweisungen Die Module werden in der nachfolgend beschriebenen Reihenfolge einge bunden U3987 J 2125 8 271 berblick COBOL85 und POSIX Beim Binden ist mit der Option M der Name des COBOL Hauptprogramms PROGRAM ID Name anzugeben Ohne diese Angabe nimmt der Binder an da das Hauptprogramm das C Programm main ist Binden der CRTE Laufzeitbibliotheken Die offenen Externbez ge auf das COBOL85 Laufzeitsystem werden vom Binder automa tisch aus der CRTE
122. Dateien die auf einem Drucker ausgegeben werden sollen wird von COBOLB85 durch folgende Sprachmittel unterst tzt die Angabe von symbolischen Ger tenamen in der ASSIGN Klausel die LINAGE Klausel in der Dateierkl rung Die ADVANCING und die END OF PAGE Angabe in der WRITE Anweisung Der Einsatz dieser Sprachmittel ist in der COBOL85 Sprachbeschreibung 1 detailliert be schrieben Die folgende Tabelle zeigt die Verwendung der symbolischen Ger tenamen in Verbindung mit der WRITE Anweisung und die Generierung der entsprechenden Vor schubsteuerzeichen symboli WRITE Anweisung scher Ger ohne ADVANCING Angabe tename PRINTER literal Standardvorschub bei fehlender ADVANCING Angabe entspricht der Angabe AFTER 1LINE das erste Zeichen des Datensatzes steht f r Benutzerdaten zur Ver f gung PRINTER wie oben PRINTERO1 PRINTER9Y9 Der Vorschub wird durch das erste Zeichen in jedem logischen Daten satz kontrolliert der Benutzer mu daher vor der Ausf hrung jeder solchen WRITE Anwei sung das geeignete Steuerzeichen dort zur Verf gung stelllen literal WRITE Anweisung mit ADVANCING An gabe Das erste Zeichen des Datensatzes steht f r Benutzerdaten zur Verf gung wie oben Der Benutzer mu das erste Zeichen eines logi schen Datensatzes reser vieren an diese Stelle wird vom Laufzeitsystem zum Programmablauf das Vorschubzeichen eingetragen Eventuell enthaltene Benutzer
123. Dateien mit KEYPOS 5 und KEYLEN 8 katalogisiert sein m ssen Wie das Quellpro gramm in eine solche Datei eingegeben werden kann h ngt davon ab in welcher Form es zur Verf gung steht e Liegt das Quellprogramm bereits auf einem externen Datentr ger z B Magnetband gespeichert vor kann es mit Hilfe geeigneter BS2000 Kommandos siehe 3 z B des COPY FILE Kommandos f r Quellpro gramme auf Magnetb ndern Dienstprogramme z B ARCHIVE f r Magnetb nder in eine katalogisierte Datei bernommen werden e Soll das Quellprogramm neu erfa t werden l t sich der Dateiaufbereiter EDT siehe 23 einsetzen Er bearbeitet SAM oder ISAM Dateien und stellt Funktionen zur Ver f gung die ein formatgerechtes Erstellen und sp teres ndern von COBOL Quellpro grammen unterst tzen Dazu geh ren u a die M glichkeit Tabulatoren zu setzen Sie erlauben ein schnelles und zuverl ssi ges Positionieren auf die Anfangsspalten der Bereiche A 8 Spalte und B 12 Spal te und erleichtern so die Einhaltung des Referenzformats f r COBOL Programme siehe 1 Funktionen f r das Einf gen L schen Kopieren bertragen und ndern von Quellprogrammzeilen und Zeilen bzw Spaltenbereichen Anweisungen f r das Einf gen L schen und Ersetzen von Zeichenfolgen in der Datei 10 U3987 J 2125 8 berblick Bereitstellen des Quellprogramms 2 1 2 Bereitstellen in PLAM Bibliotheken Neben SAM oder ISAM D
124. Der Programmspeicher wird entlastet da LSD Informationen nur dann geladen werden m ssen wenn sie zum Testen ben tigt werden der Speicherbedarf f r ein Programm steigt durch das Mitladen dieser Informationen ungef hr auf das F nffa che Ein Programm das im Test fehlerfrei bleibt mu f r den Produktiveinsatz nicht un bedingt neu ohne LSD Informationen bersetzt oder gebunden werden Falls sich f r ein Programm w hrend seines Produktiveinsatzes ein Test als n tig erweist stehen daf r LSD Informationen zur Verf gung ohne da das Programm erneut bersetzt und gebunden werden mu 2 Es stellt Funktionen zur Verf gung die es insbesondere gestatten den Programmablauf auf symbolischer Ebene zu verfolgen und zu protokollieren TRACE Funktion den Programmablauf an festgelegten Stellen oder beim Eintreten definierter Ereig nisse zu unterbrechen um AID oder BS2000 Kommandos sogenannte Subkom mandos ausf hren zu lassen nach einer Programmunterbrechung ein Kapitel oder einen Paragraphen der PROCEDURE DIVISION zu vereinbaren mit dem abweichend von der codierten Programmlogik der Testablauf fortgesetzt werden soll JUMP Anweisung siehe 9 nur m glich wenn das Programm mit PREPARE FOR JUMPS YES im AID Parameter der TEST SUPPORT Option bzw mit COMOPT SEPARATE TESTPOINTS YES bersetzt wurde siehe Abschnitte 3 3 7 bzw 4 2 124 U3987 J 2125 8 Testhilfen f r den Programmablauf Dia
125. E SYSDTA lt full filename 1 54 gt lt c string 1 1024 with Iow gt LIBRARY ELEMENT LIBRARY ELEMENT LIBRARY lt full filename 1 54 gt ELEMENT lt composed name 1 40 gt lt composed name gt VERSION HIGHEST EXISTING UPPER LIMIT lt alphanum name 1 24 gt SOURCE SYSDTA Das Quellprogramm wird von der Systemdatei SYSDTA eingelesen die im Dialogbetrieb standardm ig der Datensichtstation zugewiesen ist Wurde SYSDTA vor Beginn des bersetzunglaufs mit dem ASSIGN SYSDTA Kommando der Quellprogrammdatei zuge wiesen er brigt sich die Angabe der SOURCE Option SOURCE lt full filename 1 54 gt Mit lt full flename gt wird eine katalogisierte Datei zugewiesen SOURCE lt c string 1 1024 with low gt Wenn das POSIX Subsystem vorhanden ist kann mit diesem Parameter eine Quelldatei aus dem POSIX Dateisystem angefordert werden Mit lt c string gt wird der Name der POSIX Datei angegeben Enth lt lt c string gt keinen Dateiverzeichnisnamen sucht der Compiler die Quelldatei unter dem angegebenen Dateinamen im Home Dateiverzeichnis der aktuellen BS2000 Benutzerkennung Steht die Datei in einem anderen Dateiverzeich nis mu mit lt c string gt der absolute Pfadname angegeben werden Dieser Operand ist in COBOL BC nicht verf gbar SOURCE LIBRARY ELEMENT Mit diesem Parameter wird eine PLAM Bibliothek und ein Element daraus angegeben LIBRARY lt full fil
126. E Kommando oder eine WRITE Anweisung im sequentiellen Zugriffsmodus zu geben bei der die relative Satznummer so gro ist da sie nicht in das mit der RELATIVE KEY Angabe beschriebene Datenfeld pa t 212 U3987 J 2125 8 Dateiverarbeitung Relative Dateien Ein Ausgabe Zustand Bedeutung 30 35 37 38 39 Erfolglose Ausf hrung Permanenter Fehler Es ist keine weitere Information bez glich der Ein Ausgabe Operation verf gbar Es wurde versucht eine OPEN INPUT I O Anweisung f r eine Datei auszuf hren die nicht vorhanden ist OPEN Anweisung auf eine Datei die aufgrund folgender Bedingungen nicht er ffnet werden kann 1 OPEN OUTPUT I O EXTEND auf eine schreibgesch tzte Datei Pa wort RETENTION PERIOD ACCESS READ 2 OPEN INPUT auf eine lesegesch tzte Datei Pa wort Es wurde versucht eine OPEN Anweisung f r eine Datei auszuf hren die vorher mit der LOCK Angabe geschlossen wurde Die OPEN Anweisung war aus einem der folgenden Gr nde erfolglos 1 Im SET FILE LINK Kommando wurde einer oder mehrere der Operanden ACCESS METHOD RECORD FORMAT bzw RECORD SIZE mit Werten angegeben die von den entsprechenden expliziten oder impliziten Pro grammangaben abweichen 2 F r eine Eingabedatei stimmt der Katalogeintrag des Operanden FCBTYPE nicht mit der entsprechenden expliziten oder impliziten Programmangab bzw mit der entsprechenden Angabe im SET FILE LINK Kommando berein
127. E OPTIONS wird das Programm fortgesetzt oder abgebrochen Ma nahme Programm korrigieren ggf Systemverwalter berater verst ndigen 322 U3987 J Z125 8 Meldungen des COBOLB85 Systems C0B9124 FUNCTION aaa IN STATEMENT bbb NOT ENOUGH ARGUMENTS SPECIFIED C0B9124 FUNKTION aaa IN ANWEISUNG bbb ES WURDEN NICHT GENUEGEND ARGUMENTE ANGEGEBEN Typ Anwenderfehler Bedeutung aaa Name der Standardfunktion bbb COBOL Anweisung Verhalten Abh ngig von COMOPT CONTINUE AFTER MESSAGE bzw ERROR REACTION SDF Option RUNTIME OPTIONS wird das Programm fortgesetzt oder abgebrochen Ma nahme Programm korrigieren C0B9125 FUNCTION aaa IN STATEMENT bbb ARGUMENT HAS INVALID VALUE C0B9125 FUNKTION aaa IN ANWEISUNG bbb EIN ARGUMENT HAT EINEN UNGUELTIGEN WERT Typ Anwenderfehler Bedeutung aaa Name der Standardfunktion bbb COBOL Anweisung ccc Zeilennummer Verhalten Abh ngig von COMOPT CONTINUE AFTER MESSAGE bzw ERROR REACTION SDF Option RUNTIME OPTIONS wird das Programm fortgesetzt oder abgebrochen Ma nahme Programm korrigieren U3987 J 2125 8 323 Meldungen des COBOL85 Systems COB9126 COB9126 C0B9127 C0B9127 FUNCTION aaa IN STATEMENT bbb ARGUMENT HAS INVALID LENGTH FUNKTION aaa IN ANWEISUNG bbb EIN ARGUMENT HAT EINE UNGUELTIGE LAENGE Typ Anwenderfehler Bedeutung aaa Name der Standardfunktion bbb COBOL Anweisung ccc Zeilennummer Verhalten Abh ngig von COMOPT CONT
128. ENCE MODIFICATION Comopt 66 CHECK SCOPE TERMINATORS Comopt 66 CHECK SOURCE SEQUENCE Comopt 66 CHECK TABLE ACCESS Comopt 66 CLASS2 OPTION 166 CLOSE Anweisung indizierte Dateien 222 relative Dateien 200 sequentielle Dateien 174 COBLIB COBLIB1 bis COBLIB9 Linknamen 14 COBOBUGCT Linkname 113 258 cobol Kommando POSIX 276 COBOLB85 BC Grundausbaustufe 2 COBOL85 Compiler Aufbau 347 Aufgaben 8 Aufruf 22 Ausgabeziele 9 Beendigungsverhalten 23 Eingabequellen 9 Moduln 349 COBOLB85 Laufzeitsystem 351 Moduln 351 COBOLS85 Strukturierer 77 Funktionen 77 SDF Optionen 90 Sprachumfang 78 Strukturliste 83 COBOL85 System Aufbau 347 Ausbaustufen 2 Struktur der Meldungen 309 386 U3987 J 2125 8 Stichw rter COBOL Anweisungen Ausgabe in Systemdateien 135 Eingabe aus Systemdateien 134 Lesen von Compiler und Betriebssysteminformationen 150 Zugriff auf Jobvariablen 146 Zugriff auf Umgebungsvariablen 149 COBOL DML Programm 356 Ablauf 358 Aufbau 356 Binden 357 bersetzen 357 COBOL Sprachmittel Anwendung von Testhilfezeilen 131 Erstellung von Druckdateien 180 Sortieren und Mischen 247 Verarbeitung indizierter Dateien 217 Verarbeitung relativer Dateien 195 Verarbeitung sequentieller Dateien 170 Verarbeitung von Magnetbanddateien 186 Zugriff auf Auftragsschalter 139 Zugriff auf Benutzerschalter 139 Zugriff auf Compiler und Betriebssysteminformationen 150 Zugriff auf Jobvariablen 145 Z
129. ERABLE ERROR ON ACCEPT FROM SYSDTA NICHT BEHEBBARER FEHLER BEI ACCEPT VON SYSDTA Typ Systemfehler Verhalten Programm abgebrochen Ma nahme Systemverwalter berater verst ndigen UNRECOVERABLE ERROR DURING DISPLAY UPON SYSLST NICHT BEHEBBARER FEHLER BEI DISPLAY AUF SYSLST Typ Systemfehler Verhalten Programm abgebrochen Ma nahme Systemverwalter berater verst ndigen ERROR ON INTERFACE RUN TIME SYSTEM OPERATING SYSTEM IN ACCEPT OR DISPLAY STATEMENT FEHLER AN DER SCHNITTSTELLE LAUFZEITSYSTEM BETRIEBSSYSTEM IN ACCEPT ODER DISPLAY ANWEISUNG Typ Systemfehler Verhalten Programm abgebrochen Ma nahme Systemverwalter berater verst ndigen 340 U3987 J 2125 8 Meldungen des COBOLB85 Systems C0B9197 C0B9197 C0B9198 C0B9198 ACCESS TO JOB VARIABLE aaa FAILED ERROR CODE bbb FEHLERHAFTER ZUGRIFF ZUR JOB VARIABLEN aaa FEHLER CODE bbb Typ Hinweis Bedeutung aaa Linkname der JV bbb Code der Systemmeldung Verhalten Abh ngig von COMOPT CONTINUE AFTER MESSAGE bzw ERROR REACTION SDF Option RUNTIME OPTIONS wird das Programm fortgesetzt oder abgebrochen Ma nahme Zugriffsberechtigungen zu Jobvariablen ndern INTERRUPT CODE aaa AT PC bbb UNTERBRECHUNGS CODE aaa BEI PC bbb Typ Hardwareunterbrechung im Anwenderprogramm Bedeutung aaa Unterbrechungsgewicht bbb Befehlsz hler Verhalten Programm abgebrochen Ma nahme Programm korrigieren U3987 J 21
130. Error wird der Strukturierungslauf sofort abgebrochen und der Abbruchgrund am Bildschirm gemeldet OUTPUT STD FILES Die Meldungen werden in eine katalogisierte Datei mit dem Standardnamen STRERR COBS35 program id name ausgegeben Werden alle Meldungen unterdr ckt enth lt die Meldungsdatei nur ihren Namen sowie die Summenzeile ber Anzahl und Art der Meldungen Endet der Strukturierungslauf bevor program id name ermittelt wurde z B bei einem schwerwiegenden Eingabefehler so wird anstelle von program id name die TSN Nummer als standardm iges Suffix verwendet OUTPUT SYSLST Die Meldungen werden auf SYSLST ausgegeben SYSOUT YES NO Bei Angabe von YES werden alle Meldungen auch auf SYSOUT Bildschirm ausgege ben Bei Angabe von NO wird am Bildschirm nur die Summenzeile ausgegeben U3987 J Z125 8 99 MONJV Option COBOLB85 Strukturierer 5 3 5 MONJV Option Mit dieser Option kann eine BS2000 Jobvariable zugewiesen werden Format MONJV NONE lt full filename 1 54 without gen vers gt MONJV lt full filename 1 54 gt Mit lt full filename gt wird eine berwachende Jobvariable zugewiesen in die der Strukturie rer eine Anzeige ber m gliche Ablauffehler ausgibt 100 U3987 J 2125 8 6 Binden Laden Starten Im Verlauf der bersetzung erzeugt COBOL85 Objektmodule oder Bindelademodule LLMs die anschlie end in einer PLAM Bibliothek oder in der tempor ren EAM Datei de
131. GGING FIPS SEGMENTATION ABOVEI1 GENERATE INITIAL STATE YES NO GEN INIT STA legt fest ob der Compiler Bereiche f r die Initialisierung bereitstellt Alle Programme die von einer CANCEL Anweisung betrof fen sind oder eine INITIAL Klausel enthalten sollten f r einen standardkonformen Ablauf mit GENERATE INITIAL STATE YES bersetzt werden SDF Option COMPILER ACTION MODULE GENERATION PREPARE CANCEL STMT GENERATE LINE NUMBER YES NO GEN L NUM entscheidet ob statt der Meldung COB9101 die Meldung COB9102 ausgegeben wird Die Meldung COB9102 ent h lt zus tzlich die von COBOL85 vergebene Quellpro gramm Zeilennummer der Anweisung deren Ausf hrung die jeweilige Meldung veranla t hat SDF Option RUNTIME OPTIONS PARAMETERS ERR MSG WITH LINE NR 68 U3987 J 2125 8 COMOPT Steuerung COMOPT Operanden Operandenformat Funktion GENERATE LLM YES NO GEN LLM legt fest mit welchem Modulformat das Modul erzeugt wer den soll Bei Angabe von YES wird ein LLM Bindelademo dul bei Angabe von NO ein OM Objektmodul erzeugt SDF Option COMPILER ACTION MODULE GENERATION MODULE FORMAT GENERATE SHARED CODE YES NO GEN SHARE legt fest ob der Code der PROCEDURE DIVISION ohne DECLARATIVES in ein eigenes Codemodul geschrieben wird Als Name des Moduls wird der ggf auf 7 Zeichen gek rzte Programmname mit angeh ngten verwen
132. Gepr ft wird ob Indexwerte gr er als Null sind Indexwerte nicht gr er als die Anzahl von Elementen in den entsprechenden Di mensionen sind Indexwerte nicht gr er als zugeh rige Werte in DEPENDING ON Feldern sind Werte in DEPENDING ON Feldern innerhalb der Grenzen liegen die in entspre chenden OCCURS Klauseln definiert sind Das Laufzeitsystem reagiert im Fehlerfall mit der Meldung COB9144 bzw COB9145 Das Programm bricht ab wenn in der RUNTIME OPTIONS Option ERROR REACTION TERMINATION angegeben wurde U3987 J 2125 8 53 RUNTIME CHECKS Option SDF Steuerung des Compilers FUNCTION ARGUMENTS NO YES Bei Angabe von YES werden zur Ablaufzeit die Funktionsargumente bez glich Werte bereich Anzahl und L nge berpr ft Treten ung ltige Werte auf wird je nach Art des Fehlers eine der Meldungen COB9123 COB9124 COB9125 COB9126 oder COB9127 ausgegeben das Programm bricht ab wenn in der RUNTIME OPTIONS Option ERROR REACTION TERMINATION angegeben wurde PROC ARGUMENT NR NO YES Mit YES wird beim Aufruf eines getrennt bersetzten COBOL Unterprogramms gepr ft ob die Anzahl der bergebenen Parameter mit der Anzahl der erwarteten Parameter bereinstimmt Stimmt die Anzahl nicht berein erfolgt die Meldung COB9132 das Programm bricht ab wenn in der RUNTIME OPTIONS Option ERROR REACTION TERMINATION angegeben wurde Die Pr fung ist nur wirksam wenn das aufgerufene Programm m
133. Grundfunktionen aufrufbar e zur Ablauf berwachung bestimmter Quellprogramm Anweisungstypen ausgew hlter Ereignisse im Programmablauf vereinbarter Programmadressen e zum Zugriff auf Datenfelder und Modifikation von Feldinhalten e zur Verwaltung von AID Ausgabedateien und Bibliotheken e zur Festlegung globaler Vereinbarungen e zur Steuerung von Ausgabe Datenmengen AID Ausgabemedien Die Hantierung wird unterst tzt durch eine zus tzliche HELP Funktion f r alle AID Kommandos und Operanden f r die Bedeutung und die m glichen Reaktionen auf AID Meldungen U3987 J 2125 8 299 Advanced Interactive Debugger AID Nutzbare Software f r COBOL Anwender Der Anwender kann festlegen da AID den Programmablauf an definierten Adressen oder bei Ausf hrung ausgew hlter Anweisungstypen oder beim Eintreten definierter Ereignisse unterbricht und dann Subkommandos ausf hrt Ein Subkommando ist ein einzelnes Kom mando oder eine Folge von AID und BS2000 Kommandos Es wird als Operand eines AID Kommandos definiert Ab der Version V2 0 kann die Ausf hrung von Subkommandos von Bedingungen abh ngig gemacht werden Damit lassen sich u a Programmzust nde bzw Variablenwerte dynamisch berwachen Au erdem k nnen Datenfelder modifiziert und Datenelemente Datengruppen oder ganze DATA DIVISIONS von COBOL Programmen ausgegeben werden Mit einem Kommando kann man sich anzeigen lassen auf welcher Stufe der Aufrufh
134. HEMA YES NO Bei Angabe von YES wird der Inhalt der SUB SCHEMA Section eingelesen Die Ausgabe wird vom COPY EXPANSION Operanden gesteuert LINE NUMBERS YES NO Bei Angabe von YES wird eine fortlaufende Zeilennumerierung analog zur Quell programmliste des COBOL85 Compilers ausgegeben STATEMENTS YES NO Bei Angabe von NO werden die Anweisungen nicht ausgegeben Die Liste enth lt dann nur die strukturierten Anweisungen von COBOLSBS5 die Bedingungen sowie die Kommentare Mit dieser Komprimierung kann man z B Implementierungsde tails unterdr cken so da die Strukturliste nur den Steuerflu und die Inline Doku mentation des Programms zeigt U3987 J 2125 8 93 STRUCTURIZER ACTION Option COBOLB85 Strukturierer LAYOUT STD Es werden die voreingestellten Werte der folgenden PARAMETERS Struktur bernom men LAYOUT PARAMETERS LOWER CASE KEYWORDS YES NO Bei YES werden die vom Strukturierer erg nzten Schl sselw rter z B explizite Bereichbegrenzer klein geschrieben Diese Funktion ist nur sinnvoll wenn das ein gegebene Quellprogramm in Kleinbuchstaben geschrieben ist INDENTATION AMOUNT 2 lt integer 1 8 gt Mit lt integer gt wird angegeben um wieviel die Anweisungen innerhalb von Struktur bl cken einger ckt werden sollen BOLD FACE YES NO Bei YES werden die Anweisungen die einen Strukturblock einleiten die strukturie renden Zus tze z B THEN sowie die expliziten Bereichsbeg
135. IABLES ARE NOT SUPPORTED IN THIS OPERATING SYSTEM COB9120 JOB VARIABLE WERDEN IN DIESEM BETRIEBSSYSTEM NICHT UNTERSTUETZT Typ Hinweis Verhalten Abh ngig von COMOPT CONTINUE AFTER MESSAGE bzw ERROR REACTION SDF Option RUNTIME OPTIONS wird das Programm fortgesetzt oder abgebrochen Ma nahme Liefereinheit Jobvariablen anmieten U3987 J 2125 8 321 Meldungen des COBOLB85 Systems COB9121 C0B9121 C0B9122 C0B9122 C0B9123 C0B9123 END OF FILE ON ACCEPT FROM SYSIPT BEI ACCEPT VON SYSIPT WURDE DATEIENDE ERKANNT Typ Hinweis Verhalten Abh ngig von COMOPT CONTINUE AFTER MESSAGE bzw ERROR REACTION SDF Option RUNTIME OPTIONS wird das Programm fortgesetzt oder abgebrochen Ma nahme Zuweisung von SYSIPT pr fen ggf neu zuweisen und Programm erneut starten END OF FILE ON ACCEPT FROM SYSDTA BEI ACCEPT VON SYSDTA WURDE DATEIENDE ERKANNT Typ Hinweis Verhalten Abh ngig von COMOPT CONTINUE AFTER MESSAGE bzw ERROR REACTION SDF Option RUNTIME OPTIONS wird das Programm fortgesetzt oder abgebrochen Ma nahme Zuweisung von SYSDTA pr fen ggf neu zuweisen und Programm erneut starten FUNCTION aaa IN STATEMENT bbb UNEXPECTED ERROR FUNKTION aaa IN ANWEISUNG bbb UNERWARTETER FEHLER Typ Anwenderfehler oder Systemfehler Bedeutung aaa Name der Standardfunktion bbb COBOL Anweisung Verhalten Abh ngig von COMOPT CONTINUE AFTER MESSAGE bzw ERROR REACTION SDF Option RUNTIM
136. ING PARAMETERS DIAGNOSTICS YES MINIMAL WEIGHT MODULE OME libname vereinbart wohin das bei der bersetzung erzeugte Objektmodul ausgegeben werden soll OMF bewirkt die Ausgabe in die tempor re EAM Datei der aktu ellen Task libname ist der Name der PLAM Bibliothek in die das Objektmodul ausgegeben werden soll libname mu ein zul ssiger Dateiname des BS2000 sein SDF Option MODULE OUTPUT OMF LIBRARY ELEMENT LIBRARY MODULE ELEMENT elementname MODULE ELEM Angabe des Elementnamens unter dem ein Bindelademo dul LLM in die PLAM Bibliothek geschrieben werden soll Maximale L nge von elementname 32 Zeichen Bei Objektmodulen und Quellprogrammfolgen wird diese Compileroption ignoriert und mit einer Hinweismeldung quittiert SDF Option MODULE OUTPUT LIBRARY ELEMENT LIBRARY lt full filename gt ELEMENT MODULE VERSION version MODULE VERS erm glicht es dem Element das das bei der bersetzung erzeugte Modul enth lt eine Versionbezeichnung zu geben version ist eine der folgenden Angaben UPPER LIMIT UPPER HIGHEST EXISTING HIGH INCREMENT INCR lt alphanum name 1 24 gt Beschreibung der Angaben siehe SDF Option MODULE OUTPUT LIBRARY ELEMENT LIBRARY lt full flename gt ELEMENT lt composed name gt VERSION U3987 J 2125 8 71 COMOPT Operanden COMOPT Steuerung Operandenf
137. INUE AFTER MESSAGE bzw ERROR REACTION SDF Option RUNTIME OPTIONS wird das Programm fortgesetzt oder abgebrochen Ma nahme Programm korrigieren FUNCTION aaa IN STATEMENT bbb TABLE SUBSCRIPTED WITH ALL HAS NO ELEMENT FUNKTION aaa IN ANWEISUNG bbb EINE MIT ALL SUBSKRIBIERTE TABELLE HAT KEINE ELEMENTE Typ Anwenderfehler Bedeutung aaa Name der Standardfunktion bbb COBOL Anweisung ccc Zeilennummer Verhalten Abh ngig von COMOPT CONTINUE AFTER MESSAGE bzw ERROR REACTION SDF Option RUNTIME OPTIONS wird das Programm fortgesetzt oder abgebrochen Ma nahme Programm korrigieren 324 U3987 J 2125 8 Meldungen des COBOLB85 Systems C0B9128 C0B9128 C0B9131 C0B9131 ABNORMAL TERMINATION USERS RETURN CODE aaa ABNORMALE BEENDIGUNG ANWENDER RETURN CODE aaa Typ Anwenderfehler oder Systemfehler Bedeutung aaa gt 0 Vom Programm wurde ein Anwender Return Code gesetzt was zur Programmbeendigung f hrt Ma nahme Programm ndern ggf Systemverwalter berater verst ndigen ACCESS TO JOB VARIABLE aaa FAILED JOB VARIABLE IS EMPTY FEHLER BEI ZUGRIFF ZUR JOB VARIABLEN aaa JOB VARIABLE IST LEER Typ Anwenderfehler Bedeutung aaa Name der Jobvariablen Verhalten Abh ngig von COMOPT CONTINUE AFTER MESSAGE bzw ERROR REACTION SDF Option RUNTIME OPTIONS wird das Programm fortgesetzt oder abgebrochen Ma nahme Jobvariable vor Ablauf versorgen U3987 J 2125 8 325 Meldungen des
138. J 2125 8 153 154 U3987 J 2125 8 9 Verarbeitung katalogisierter Dateien Die Verarbeitung von POSIX Dateien ist in Kapitel 13 beschrieben 9 1 Grunds tzliches zum Aufbau und zur Verarbeitung katalogisierter Dateien 9 1 1 Grundbegriffe zum Aufbau von Dateien Aus der Sicht eines COBOL Anwenderprogramms ist eine Datei eine benannte und mit ei ner logischen Struktur Dateiorganisation versehene Menge von Datens tzen bestimm ter Satzformate auf einem oder mehreren Datentr gern F r den Zugriff auf Dateien verwenden COBOL Programme Funktionen des Datenverwal tungssystems DVS wobei die jeweilige Zugriffsmethode des DVS durch die Dateiorga nisation festgelegt ist Aus der Sicht des DVS ist der Zugriff auf eine Datei stets die bertragung von Datenbl k ken zwischen einem peripheren Speicher und einem Teil des Hauptspeichers dem sog Puffer den das Anwenderprogramm zur Aufnahme der Datenbl cke angelegt hat Dateiorganisation und Zugriffsmethode des DVS Die Organisationsform einer Datei beschreibt deren logische Struktur und vereinbart damit die Art und Weise des Zugriffs Sie wird bei der Dateierstellung festgelegt und kann nach tr glich nicht mehr ver ndert werden COBOL kennt sequentielle relative und indizierte Dateiorganisation Die M glichkeiten und Besonderheiten der einzelnen Organisationsformen werden in den Abschnitten 9 2 9 3 und 9 4 n her erl utert Jeder dieser Organisationsformen entspricht eine Z
139. J 2125 8 COBOLBS5 Strukturierer Strukturlisten Erzeugung 5 2 2 Strukturliste mit Querverweisen Die Strukturliste mit Querverweisen enth lt zus tzlich zur graphischen Kennzeichnung der Anweisungsbl cke Querverweise zu allen definierten Namen Der Benutzer kann einer sol chen Strukturliste zwei wichtige Informationen entnehmen e An der Stelle wo der Name definiert ist werden alle Stellen angezeigt an denen der Name wieder verwendet wird e An den Stellen wo ein Name verwendet wird steht ein Verweis auf die Stelle wo der Name definiert wurde Die Strukturliste dient in erster Linie dem Programmierer als Grundlage f r die Arbeit am Schreibtisch Dabei ist die Strukturliste mit Querverweisangaben ein besonders hilfreiches Mittel bei der Erstellung nderung und Dokumentation des Quellprogramms Man erkennt sofort die Fernwirkungen Namenskonflikte etc und vermeidet damit unbeabsichtigte Ne beneffekte bei nderungen des Quellprogramms Die Strukturliste mit Querverweisen ist deshalb ein unerl licher Bestandteil der Programmdokumentation Kennzeichnung der Zeilen Der Dateiname des eingegebenen Quellprogramms steht in der Kopfzeile der Liste der Name eines COPY Elementes ist aus der letzten davorstehnenden COPY Anweisung er sichtlich Um das Auffinden der Zeilen aus COPY Elementen zu erleichtern ist der Strukturliste eine Liste angeh ngt aus der das Kennzeichen und die Zeilennummer jedes COPY Elements hervorgeht
140. Jede Zeile des Programmtextes ist eindeutig gekennzeichnet Dies erfolgt durch eine fort laufende Nummer die sich auf die entsprechende Zeile des eingegebenen Quellpro gramms oder COPY Elements bezieht Die Zeilen aus COPY Elementen sind durch die Buchstaben A Z und die Ziffern 1 9 gekennzeichnet Kommen mehr als 35 COPY Elemente vor werden sie durch eine Buchstaben Ziffer Kombination z B A1 oder QZ eindeutig gekennzeichnet Verweis von der Definition auf die Verwendung An der Stelle in der Ausgabeliste an der ein Name definiert wird werden in der rechten Spalte alle Zeilen angegeben an denen dieser Name verwendet wird Zus tzlich wird mit folgenden Abk rzungen die Verwendungsart gekennzeichnet U3987 J 2125 8 85 Strukturlisten Erzeugung COBOLB85 Strukturierer e bei Datenobjekten Leerzeichen keine Ver nderung des Inhalts k Ver nderung des Inhalts F Formalparameter in USING Leiste bei PROCEDURE DIVISION oder ENTRY R Aktualparameter in USING Leiste bei CALL by reference Standard C Aktualparameter in USING Leiste bei CALL by content Verwendung in REDEFINES oder RENAMES Klausel e bei Dateien l OPEN INPUT O OPEN OUTPUT B OPEN I O X OPEN EXTENDED e bei Prozeduren Kapiteln und Paragraphen P Aufruf mit PERFORM E CALL mit Literal N CALL mit Bezeichner G Ansprung mit GO TO A Verwendung in ALTER S Verwendung in SORT Innerhalb einer Zeile werden nur die Referenzen eine
141. L f r ISO SQL BS2000 Portierbare SQL Anwendungen f r BS2000 und SINIX Sprachbeschreibung Zielgruppe Anwender die mit SQL oder DRIVE auf SESAM bzw UDS Datenbanken zugreifen wollen Inhalt Das Handbuch beschreibt den Sprachumfang des Produktes ISO SQL V1 0 Au erdem erm glicht das Handbuch das Erstellen portierbarer SQL Anwendun gen in BS2000 und SINIX da der gemeinsame Sprachumfang von ISO SQL INFORMIX und SQL Norm hervorgehoben ist 20 SQL f r SESAM SQL Sprachbeschreibung Zielgruppe Programmierer die mit SQL Anweisungen auf SESAM Datenbanken zugreifen wollen Inhalt SQL Anweisungen f r den Zugriff auf SESAM Datenbanken U3987 J 2125 8 377 Literatur 21 SQL f r UDS SQL Sprachbeschreibung Zielgruppe Programmierer die mit SQL Anweisungen auf UDS Datenbanken zugreifen wol len Inhalt SQL Anweisungen f r den Zugriff auf UDS Datenbanken 22 ESQL Portierbare ESQL Anwendungen f r BS2000 SINIX und MS DOS Benutzerhandbuch Zielgruppe COBOL und C Programmierer die portierbare ESQL Anwendungen erstellen m chten Inhalt Gemeinsamer Sprachumfang von INFORMIX ESQL COBOL SINIX V5 0 INFORMIX ESQL C SINIX V5 0 ESQL COBOL BS2000 V1 1 und ESQL C BS2000 V1 1 mit ISO SQL V1 0 PRO COBOL V1 3 und PRO C V1 3 f r ORA CLE ESQL Precompiler COBOL V2 5 f r ComfoBase und SQL Norm ISO IEC 9075 1989 23 EDT BS2000 0OSD Anweisungen Benutzerhandbuch Zielgruppe EDT Einsteiger und EDT Anwe
142. LAY SATZ ZUR ZEIT GESPERRT UPON T ELSE DISPLAY DMS FEHLER ISAM1 FILE STATUS FILESTAT1 UPON T ISAMIERR EX EXIT 1 END DECLARATIVES STEUER SECTION 1 Verzweigen auf die Anweisung hinter der fehlerverursachenden Anweisung Wie der aufgetretene Fehler sinnvoll zu behandeln ist mu f r den jeweiligen Anwendungsfall entschieden werden U3987 J 2125 8 243 Simultanverarbeitung SHARED UPDATE Dateiverarbeitung 9 5 2 PAM Dateien Eine Datei mit relativer Organisation und FCBTYPE PAM kann ebenso wie eine ISAM Datei von mehreren Benutzern simultan aktualisiert werden wenn das SET FILE LINK Kommando SHARED UPDATE YES enth lt und die Datei mit OPEN l O er ffnet ist Um Datenkonsistenz bei simultaner Aktualisierung zu erm glichen benutzt das COBOL85 Laufzeitsystem den Sperr und Entsperrmechanismus der DVS Zugriffsmethode UPAM Die Zugriffskoordinierung erfolgt hier anders als bei ISAM dateispezifisch Dies hat u a zur Folge da Anweisungen f r eine Datei keine Auswirkungen auf eine andere Datei ha ben Die Sperrung betrifft wie bei ISAM nicht einen einzelnen Datensatz sondern den gesam ten Datenblock in dem sich der Datensatz befindet siehe Indizierte Dateien Wie f r ISAM Dateien gibt es auch f r PAM Dateien nur mit SHARED UPDATE YES OPEN O f r alle Formate der READ bzw START Anweisung die Erweiterung WITH NO LOCK Beschreibung siehe Indizierte Dateien Reg
143. LER ACTION Option PREPARE CANCEL STMT NO YES Bei Angabe von YES legt der Compiler Bereiche f r die Initialisierung an Jedes Pro gramm auf das sich eine CANCEL Anweisung bezieht oder das die INITIAL Klausel enth lt sollte f r einen standardkonformen Ablauf mit PREPARE CANCEL STMT YES bersetzt werden MODULE FORMAT OM LLM OM Das Modul soll zur Weiterverarbeitung mit BINDER TSOSLNK bzw DBL im OM Format Objektmodul Format erzeugt werden Maximale L nge der externen Namen 8 Zeichen LLM Das Modul soll zur Weiterverarbeitung mit dem BINDER bzw dem DBL im LLM Format Bindelademodul Format erzeugt werden Maximale L nge f r externe Namen 30 Zeichen SUPPRESS GENERATION NO AT SEVERE ERROR Tritt bei der bersetzung ein Fehler mit Severity Code gt 2 auf kann mit der Angabe AT SEVERE ERROR die Erzeugung des Moduls unterdr ckt werden U3987 J 2125 8 41 MODULE OUTPUT Option SDF Steuerung des Compilers 3 3 5 MODULE OUTPUT Option Mit dieser Option steuert der Benutzer in welche Bibliothek und unter welchem Namen das Modul abgelegt werden soll Format MODULE OUTPUT STD OMF lt c string 1 1024 with low gt LIBRARY ELEMENT LIBRARY ELEMENT LIBRARY lt full filename 1 54 gt ELEMENT STD lt composed name 1 32 gt STD VERSION UPPER LIMIT INCREMENT HIGHEST EXISTING lt alphanum name 1 24 gt lt composed name gt VERSI
144. Linkname 158 Dateimerkmale 162 indizierte Dateien 215 relative Dateien 193 sequentielle Dateien 169 Dateiorganisation indizierte 215 relative 193 sequentielle 169 DATE ISO4 150 Dateiverarbeitung 155 Datenbankbedienung UDS 356 388 U3987 J 2125 8 Stichw rter Datenbankschnittstelle ESQL COBOL 306 Datenblock 156 indizierte Dateien 215 logischer 156 reservieren 216 Datenfeldgrenzen pr fen 54 66 Datensatz 156 Datensatzerkl rung indizierte Dateien 221 relative Dateien 198 sequentielle Dateien 173 Datensatzformat vereinbaren indizierte Dateien 221 relative Dateien 200 sequentielle Dateien 175 Datensatzformate 156 Datensatzsperre 237 Datensatzsperre Simultanverarbeitung 238 244 Datentr ger Formate 166 Datentypen SDF 31 Datum Information 150 DBH Database Handler 356 DBL Dynamischer Bindelader 112 261 Deadlock Simultanverarbeitung 245 debug Kommando 273 DIAGNOSTICS SDF Operand 46 DIAGNOSTICS Option Strukturierer 99 Dialogtesthilfe AID 124 273 299 DISPLAY Anweisung 135 Ausgabe in Systemdateien 135 Schreiben in Jobvariablen 146 Druckdateien 180 COBOL Sprachmittel f r die Erstellung 180 SYMBOLIC CHARACTERS Klausel 181 DVS Dateiverwaltungssystem 155 DVS Code 211 DVS Fehlerschl ssel 189 211 232 Dynamischer Bindelader DBL 102 Dynamischer Zugriff indizierte Dateien 223 relative Dateien 201 Dynamisches Binden 112 Dynamisches Nachladen 113 U3987 J 2125 8 389 Stichw rte
145. M glichkeit ist in Abschnitt 3 3 5 MODULE OUTPUT Option S 42 beschrieben U3987 J 2125 8 19 Ausgaben des Compilers berblick Bildung von Elementnamen bei der Ausgabe von Modulen in Bibliotheken Quellprogramm Modulformat OMF Modulformat LLM Standardname abgeleitet aus nicht gemeinsam be nutzbarer Code nicht segmentiert PROGRAM ID Name 1 82 PROGRAM ID Name 1 30 benutzbarer Code Code Modul PROGRAM ID Name 1 7 Datenmodul segmentiert PROGRAM ID Name 1 6 PROGRAM ID Name 1 30 Segmentnummer Segmentierung ignoriert f r jedes Segment gemeinsam PROGRAM ID Name 1 7 PROGRAM ID Name 1 30 Tabelle 2 2 Elementnamenbildung bei Modulausgabe 1 Modul erzeugt mit COMPILER ACTION MODULE GENERATION SHAREABLE CODE NO bzw COMOPT GENERATE SHARED CODE NO Statt des Standardnamens kann mit Der Name sollte in den ersten 7 Zeichen eindeutig sein MODULE OUTPUT LIBRARY ELEMENT LIBRARY lt full filename gt ELEMENT lt composed name gt bzw COMOPT MODULE ELEMENT elementname ein eigener Elementname gew hlt werden Diese Option beeinflu t jedoch nicht den Namen des Einsprungpunktes d h den Namen der in der CALL Anweisung angegeben wird Modul erzeugt mit COMPILER ACTION MODULE GENERATION SHAREABLE CODE YES bzw COMOPT GENERATE SHARED CODE YES 20 U3987 J 2125 8 berblick Ausgaben des Compilers 2 3 2 Ausgabe von Listen und Meldun
146. MODE Klausel festge legt Die folgende bersicht stellt die m glichen Angaben und ihre Auswirkungen auf die Zugriffsart zusammen Angabe in der ACCESS MODE Zugriffsart Klausel SEQUENTIAL Sequentieller Zugriff Die Datens tze k nnen nur in der Reihenfolge verarbeitet werden in der sie entsprechend ihrer relativen Satznummer in der Datei vor kommen Das bedeutet Beim Lesen wird jeweils der n chste logische Datensatz zur Verf gung gestellt wobei m gliche vorangehende Leers tze bersprun gen werden Beim Schreiben wird jeder Satz mit der nachfolgenden relativen Satznummer in die Datei ausgegeben es werden keine Leers tze geschrieben RANDOM Wahlfreier Zugriff Die Datens tze k nnen in beliebiger Reihenfolge ber ihre relativen Satznummern angesprochen werden Dazu mu vor jeder Ein Aus gabeanweisung f r einen Satz dessen Nummer im RELATIVE KEY Schl sselfeld zur Verf gung gestellt werden DYNAMIC Dynamischer Zugriff Auf die Datens tze kann sowohl sequentiell als auch wahlfrei zuge griffen werden Die jeweilige Zugriffsart wird dabei ber das Format der Ein Ausgabeanweisung gew hlt Tabelle 9 11 ACCESS MODE Klausel und Zugriffsart U3987 J 2125 8 201 Relative Dateien Dateiverarbeitung 9 3 4 Er ffnungsarten und Verarbeitungsformen Mit den Sprachmitteln eines COBOL Programms lassen sich relative Dateien erstellen lesen durch Hinzuf gen neuer Datens tze erw
147. N IDENTIFIER ES IST NICHT GENUEGEND SPEICHER FUER DYNAMIC DATEN ODER FUNKTIONSBEZEICHNER VORHANDEN Typ Anwenderfehler oder Systemfehler Verhalten Programm abgebrochen Ma nahme DYNAMIC Daten im Programm kleiner machen oder L nge und Anzahl der Argumente in nichtnumerischen Funktionen verringern oder ggf ADDRSPACE im Join Eintrag erh hen PROGRAM aaa REFERENCED BY CALL IDENTIFIER STATEMENT CAN NOT BE MADE AVAILABLE BLS RETURNCODE bbb DAS MIT EINER CALL IDENTIFIER ANWEISUNG ANGESPROCHENE PROGRAMM aaa KANN NICHT VERFUEGBAR GEMACHT WERDEN RETURNCODE VON BLS bbb Typ Anwenderfehler Verhalten Programmlauf abgebrochen Bedeutung aaa Name des nachzuladenden Programms bbb Returncode des BIND LINK Makros Ma nahme F r das Programm die Bibliothek mit dem Linknamen COBOBUJCT zuweisen F r das LZS die Bibliothek mit dem Linknamen BLSLIBxx zuweisen 334 U3987 J 2125 8 Meldungen des COBOLB85 Systems C0B9168 C0B9168 C0B9169 C0B9169 C0B9171 C0B9171 REPORT DEFINED IN LINE aaa GROUP bbb REQUIRES TOO MANY LINES REPORT DEFINIERT IN ZEILE aaa GRUPPE bbb ENTHAELT ZU VIELE ZEILEN Typ Anwenderfehler Bedeutung aaa Zeilennummer bbb Name der Gruppe Verhalten Programm abgebrochen Ma nahme Programm ndern REPORT DEFINED IN LINE aaa GROUP bbb LINE CONFLICTS WITH HEADING REPORT DEFINIERT IN ZEILE aaa GRUPPE bbb EINE ZEILE STEHT IM WIDERSPRUCH ZUR SEITENKOPFBEGRENZUNG Typ Anwenderfehler
148. ND END READ NOT INVALID KEY NOT AT END END READ END READ F r wahlfreien Zugriff READ INTO KEY IS INVALID KEY NOT INVALID KEY END READ REWRITE REWRITE REWRITE REWRITE FROM FROM FROM INVALID KEY INVALID KEY INVALID KEY NOT INVALID KEY NOT INVALID KEY NOT INVALID KEY END REWRITE END REWRITE END REWRITE WRITE Anweisung nicht zul ssig WRITE WRITE FROM FROM INVALID KEY INVALID KEY NOT INVALID KEY NOT INVALID KEY END WRITE END WRITE DELETE DELETE DELETE DELETE END DELETE INVALID KEY INVALID KEY NOT INVALID KEY NOT INVALID KEY END DELETE END DELETE Tabelle 9 18 Erlaubte Ein Ausgabeanweisungen f r OPEN I O OPEN O setzt voraus da die zu verarbeitende Datei bereits existiert Es ist daher nicht m glich in diesem Modus eine indizierte Datei neu zu erstellen Welche der oben erw hnten Verarbeitungsformen durchgef hrt werden k nnen und wie die Ein Ausgabeanweisungen dabei wirken h ngt von der vereinbarten Zugriffsart ab U3987 J 2125 8 227 Indizierte Dateien Dateiverarbeitung ACCESS MODE IS SEQUENTIAL erlaubt es wie bei OPEN INPUT die Datei mit READ sequentiell zu lesen und dabei durch einen vorhergehenden START auf einen beliebigen Satz der Datei als Anfangs punkt zu positionieren Dar berhinaus kann nach einem erfolgrei
149. O ERRN sieht aufbereitet so aus ADD 1 TO Z ON SIZE ERROR MOVE X TO FLAG ADD TO ERRN END ADD END ADD W rde nur ein END ADD eingef gt dann w re nur die innere ADD Anweisung be grenzt Folgende veraltete Sprachmittel werden in Kommentarzeilen umgewandelt NOTE REMARKS ENTER COBOL ENTER LINKAGE EXHIBIT ON READY TRACE RESET TRAGE EXAMINE TRANSFORM Die beiden letzten Anweisungen l sen zus tzlich die Aufforderung aus sie manuell umzusetzen 80 U3987 J Z125 8 COBOLS55 Strukturierer Quelltext Aufbereitung Beispiel 5 1 Quelltext Aufbereitung Programmausschnitt des noch nicht aufbereiteten Quellprogramms MAI I zm ImOr m gt es oO m 5 PERFORM 4 TIMES L EINGABE USING R PROCEDURE DIVISION DISPLAY PLEASE GIVE TRIANGLE SIDES EACH ONE DIGIT UPON T J K J NOT GREATE OR NOT GREATER I O G NOT GREATER J D7 m E SPLAY NOT A TRIANGLE UPON T ZERO TO MATCH I J TO MATCH ADD 1 TO MATCH K 1 TO MATCH VALUATE TRUE HEN MATCH ZERO SPLAY SCALENE TRIANGLE UPON T HEN MATCH 1 SPLAY ISOSCELES TRIANGLE UPON T EN OTHER END END STO EES SPLAY EQUILATERAL TRIANGLE UPON T D EVALUATE F PERFOR P RUN U3987 J Z125 8 81 Quelltext Aufbereitung COBOLS85 Strukturierer Aufbereitetes Quellprogramm
150. OGRAM und LOAD PROGRAM f r den Aufruf des Statischen Laders zusammen eine ausf hrliche Beschreibung findet sich im Handbuch Binder Lader Starter 11 START PROG PHASE LIB bibliothek ELEM element VERS version FROM FILE LOAD PROG dateiname bibliothek gibt den Namen einer PLAM Bibliothek an die das vom TSOSLNK erzeug te Programm als Element enth lt element ist der Name des Bibliothekselements in dem das Programm gespei chert ist Das Element mu vom Typ C sein version gibt eine Elementversion mit maximal 24 Zeichen L nge an dateiname ist der Name der katalogisierten Datei die das vom TSOSLNK erzeugte Programm enth lt U3987 J 2125 8 115 Programmbeendigung Binden Laden Starten 6 6 Programmbeendigung Das Beendigungsverhalten eines Programms ist insbesondere dann von Bedeutung wenn es in einer Prozedur aufgerufen oder von einer Jobvariablen berwacht wird Treten w hrend des Programmablaufs Fehlermeldungen auf denen ein interner Return Code zugeordnet ist siehe dazu auch Fehlermeldung COB91 19 in Kap 15 wird dieser Re turn Code in die letzten beiden Bytes der R ckkehrcode Anzeige einer berwachenden Jobvariablen siehe 8 bernommen Die folgende Tabelle gibt einen berblick ber die m glichen Inhalte der R ckkehrcode Anzeige in Jobvariablen die zugeordneten Fehlermeldungen und deren Auswirkung auf den weiteren Verlauf einer Prozedur 116 U3987 J 2125 8 Bind
151. OL LORGANIZATION IS LINE SEQUENTIAL Eine zeilensequentielle Datei kann im BS2000 gespeichert werden als katalogisierte SAM Datei oder als Element einer PLAM Bibliothek Damit besteht die M glichkeit in einem COBOL Programm nicht nur katalogisierte Dateien sondern auch Dateien in Form von Bibliothekselementen zu verarbeiten Einschr nkungen gegen ber satzsequentiellen Dateien Es sind nur variabel lange S tze zul ssig RECORD FORMAT V Als Er ffnungsarten sind nur OPEN INPUT und OPEN OUTPUT ohne die Angaben REVERSED und NO REWIND zul ssig Als Ein Ausgabeanweisungen sind nur READ bei OPEN INPUT und WRITE bei OPEN OUTPUT zul ssig In der CLOSE Anweisung ist nur die Angabe WITH LOCK zul ssig Die Verkn pfung einer zeilensequentiellen Datei mit einer aktuellen SAM Datei erfolgt wie bei satzsequentiellen Dateien mittels SET FILE LINK Kommando siehe 9 1 2 Die Verkn pfung mit einem Bibliothekselement geschieht mit dem SDF P Kommando SET VARIABLE das folgenderma en aufgebaut sein mu LSET VAR SYSTIOL name LIBRARY ELEMENT bibliothek elementLversion typ SYSIOL name SDF P Variable name mu der externe Name der Datei in der ASSIGN Klausel sein bibliothek Name der PLAM Bibliothek element Name des Elements version Versionsbezeichnung Zul ssige Angaben sind lt alphanum name 1 24 gt UPPER LIMIT HIGH EST EXISTING INCR EMENT nur m glich beim Schreiben W
152. OLUMN1 YES NO TEST W C In COBOL85 BC nicht verf gbar legt fest ob bei SYMTEST ALL die AlD Source Referen zen mit Hilfe der Folgenummern des Quellprogramms Spalte 1 bis 6 gebildet werden sollen SDF Option TEST SUPPORT AID STMT REFERENCE USE APOSTROPHE YES NO USE AP erm glicht es anstelle der Anf hrungszeichen im Quell programm Apostrophe als Literalbegrenzer zu vereinba ren Diese Vereinbarung gilt auch f r die figurative Kon stante QUOTE Hinweis Ein Quellprogramm mit Apostroph als Literalbegrenzer entspricht nicht dem ANS85 SDF Option 76 U3987 J 2125 8 5 COBOLB55 Strukturierer In COBOL85 BC und in POSIX nicht unterst tzt Der COBOLB85 Strukturierer ist ein Programmpaket zur Aufbereitung von COBOL Quell programmen Es kann nach dem Editieren beim Test und bei der Programmdokumentation eingesetzt werden Der COBOLS85 Strukturierer wird ber SDF gesteuert und folgenderma en aufgerufen START COBOL85S STRUCTURIZER L Loptionen Abk rzung S COB S Die Bearbeitung wird sofort nach Eingabe des Kommandos gestartet Soll das Quellprogramm ohne explizite Eingabe von Optionen d h mit den voreingestellten Operandenwerten bearbeitet werden mu es vor Aufruf des Strukturierers der Systemda tei SYSDTA zugewiesen worden sein Die SDF Steuerung des Strukturierers entspricht formal der des Compilers die verschie denen M glichkeiten d
153. OMOPT Steuerung 4 2 Tabelle der COMOPT Operanden Fast alle Optionen haben einen Standardwert Gibt der Benutzer eine m gliche Option nicht explizit an so ist der Standardwert g ltig Sollen alle vom System voreingestellten Optionen benutzt werden so sind COMOPT Angaben berfl ssig Die folgende Tabelle fa t alle COMOPT Operanden zusammen mit denen der Compiler gesteuert werden kann F r die Darstellung der Anweisungsformate gilt folgendes Falls ein Operand abgek rzt werden kann steht seine Kurzform unter der ausf hrli chen Operandenbezeichnung z B ACC L T U f r ACCEPT LOW TO UP Das Gleich heitszeichen zwischen Operand und Wert ist dabei in jedem Fall anzugeben Voreingestellte Operandenwerte Defaultwerte sind im Format unterstrichen bzw in der Kurzfassung der Funktionsbeschreibung explizit erw hnt In der Spalte Funktion ist unter dem Stichwort SDF Option der zum jeweiligen COMOPT Operanden passende SDF Operand in Kurzform genannt Falls kein entspre chender SDF Operand existiert ist dies durch einen Querstrich kenntlich gemacht 64 U3987 J 2125 8 COMOPT Steuerung COMOPT Operanden Operandenformat Funktion ACCEPT LOW TO UP YES NO ACC L T U legt fest ob bei der Ausf hrung einer ACCEPT Anweisung eingegebene Kleinbuchstaben in Gro buchstaben umge setzt werden sollen Die Umsetzung erfolgt nur dann wenn ber die Datensichtstation eingegeben wird SDF Option RUN
154. ON UPPER LIMIT INCREMENT HIGHEST EXISTING lt alphanum name 1 24 gt MODULE OUTPUT STD Ein Objektmodul wird in die tempor re EAM Datei der aktuellen Task ausgegeben Ein Bindelademodul wird in eine PLAM Bibliothek mit dem Standardnamen PLIB COB85 lt prog id name gt ausgegeben wobei als Elementname der Programmname verwendet wird und als Versionsbezeichnung UPPER LIMIT d h h chstm gliche Ver sionsnummer angenommen wird MODULE OUTPUT OMF Ein Objektmodul wird in die tempor re EAM Datei geschrieben Falls OMF f r ein Binde lademodul LLM angegeben wird gibt der Compiler eine entsprechende Informationsmel dung aus und das Modul wird in die PLAM Bibliothek PLIB COB85 lt prog id name gt ausge geben MODULE OUTPUT lt c string 1 1024 with low gt Wenn das POSIX Subsystem vorhanden ist kann mit diesem Parameter das Modul nur als LLM als Objektdatei in das POSIX Dateisystem geschrieben werden Enth lt lt c string gt keinen Dateiverzeichnisnamen wird die Objektdatei unter dem angege benen Dateinamen in das Home Dateiverzeichnis der aktuellen BS2000 Benutzerkennung geschrieben Soll die Objektdatei in ein anderes Dateiverzeichnis geschrieben werden mu mit lt c string gt der absolute Pfadname angegeben werden Bei der Namensbildung ist zu beachten da Objektdateien im POSIX Subsystem nur wei terverarbeitet d h gebunden werden k nnen wenn der Name das Suffix o enth lt Ein
155. ON ARGUMENTS YES NO CHECK FUNC bewirkt da die G ltigkeit von Funktionsargumenten ber pr ft wird und das Laufzeitsystem im Fehlerfall eine Mel dung ausgibt SDF Option RUNTIME CHECKS PARAMETERS FUNCTION ARGUMENTS CHECK PARAMETER COUNT YES NO CHECK PAR C bestimmt ob beim Aufruf eines COBOL Unterprogramms die zahlenm ige bereinstimmung zwischen den berge benen und den erwarteten Parametern gepr ft werden soll SDF Option RUNTIME CHECKS PARAMETERS PROC ARGUMENT NR CHECK REFERENCE MODIFICATION YES NO CHECK REF bestimmt ob das Laufzeitsystem die Einhaltung von Datenfeldgrenzen f r teilfeldselektierte Bezeichner ber pr fen soll SDF Option RUNTIME CHECKS PARAMETERS REF MODIFICATION CHECK SCOPE TERMINATORS YES NO CHECK S T pr ft ob die Anweisungen in der PROCEDURE DIVISION syntaktisch richtig bereichsbegrenzt sind SDF Option LISTING PARAMETERS DIAGNOSTICS YES IMPLICIT SCOPE END CHECK SOURCE SEQUENCES YES NO CHECK S SEQ entscheidet ob im Quellprogramm Satzpaare die in nicht aufsteigender Reihenfolge gefunden werden durch eine Meldung der Fehlerklasse 0 Severity Code 0 in der Feh lerliste gekennzeichnet werden sollen SDF Option CHECK TABLE ACCESS YES NO CHECK TAB entscheidet ob das Laufzeitsystem die Einhaltung von Tabellengrenzen berpr fen soll sowohl f r Subskribie rung als auc
156. OPY EXPANSION NO Die in das Quellprogramm kopierten COPY Elemente werden nicht in der Quellpro grammliste abgedruckt Diese Angabe empfiehlt sich bei h ufig vorkommenden COPY Elementen um Papier zu sparen COPY EXPANSION VISIBLE COPIES In der Quellprogrammliste werden nur diejenigen COPY Elemente abgedruckt die keine SUPPRESS Angabe enthalten Jede Zeile eines COPY Elements ist in Spalte 1 der Quellprogrammliste mit einem C gekennzeichnet COPY EXPANSION ALL COPIES In der Quellprogrammliste werden alle COPY Elemente abgedruckt auch diejeni gen die eine SUPPRESS Angabe enthalten Jede Zeile eines COPY Elements ist in Spalte 1 der Quellprogrammliste mit einem C gekennzeichnet SUBSCHEMA EXPANSION NO YES Mit der Angabe von YES wird die SUB SCHEMA SECTION aufgelistet und jede Zeile mit einem D in Spalte 1 gekennzeichnet Dieser Operand ist in COBOL BC nicht verf gbar INSERT ERROR MSG NO YES Bei Angabe von YES werden in die Quellprogrammliste alle bei der bersetzung aufgetretenen Fehler Meldungen eingemischt Die Meldungszeile steht dabei jeweils unmittelbar nach der Quellprogrammzeile in der das meldungsausl sende Konstrukt beginnt Meldungen die der Compiler keiner bestimmten Quellpro grammzeile zuordnen kann werden nach der letzten Quellprogrammzeile ausge geben Der Operand wirkt auch dann wenn keine Fehlerliste angefordert wurde DIAGNOSTICS YES Der Compiler erzeugt eine Fehlerliste
157. P oder LOGOFF Kommando Ferner wird beim Verlassen eines COBOL Unterprogramms der Wert des Sonderregisters RETURN CODE in die Register 0 und 1 geladen Entsprechend den ILCS Konventionen steht der Wert damit dem aufrufenden Programm als Funktionswert zur Verf gung Um einen Funktionswert aus einem C Programm zu bernehmen mu das aufrufende COBOL Programm mit der Steueranweisung RETURN CODE FROM ALL SUBPROGRAMS der RUNTIME OPTIONS Option bzw mit dem COMOPT Operanden ACTIVATE XPG4 RETURNCODES YES bersetzt werden Um die abnormale Beendigung des Programms zu vermeiden mu der Benutzer daf r sorgen da RETURN CODE vor Erreichen der STOP RUN Anweisung den Wert 0 enth lt 266 U3987 J 2125 8 Programmverkn pfungen Parameter bergabe an C Programme 12 3 Parameter bergabe an C Programme Um eine C konforme direkte Wert bergabe an C Programme zu erm glichen existiert in beiden Sprachformaten der CALL Anweisung die Angabe USING BY VALUE bezeichner 3 bezeichner 3 mu als 2 oder 4 Byte langes Datenfeld mit USAGE COMP 5 oder als 1 Byte langes Datenfeld definiert sein Andernfalls ist das Ergebnis der Parameter bergabe unbe stimmt Die Parameter bergabe by value bewirkt da nur der Wert des Parameters an das auf gerufene C Programm bergeben wird Das aufgerufene Programm kann auf diesen Wert zugreifen und ihn ver ndern wobei der Wert des Parameters im COBOL Programm unver ndert bleibt Wird i
158. PROGRAMME um dynamisches Nachladen zu vermeiden damit er brigt sich beim anschlie enden Bindeladevorgang die Zuweisung der Bi bliothnek BENUTZER PROGRAMME mit dem Linknamen COBOBJCT 4 Einbinden aller weiteren erforderlichen Module UPROG1 UPROG3 aus der Bi bliothek BENUTZER PROGRAMME 5 Abspeichern des erzeugten Bindelademoduls in der Programmbibliothek MO DUL LIB als Element vom Typ L 6 Zuweisen der Laufzeitbibliothek 7 Aufruf des Bindelademoduls GROSSMOD Die Operanden UNRESOLVED EXTERNAL DELAY und LOAD INFORMATION REFERENCES m ssen immer dann angegeben werden wenn die Ladeeinheit noch offene be dingte Externverweise WXTRNs enth lt siehe 11 Dies ist z B dann der Fall wenn im Unterprogramm weitere Dateien mit anderer Dateiorganisation als im Hauptprogramm verarbeitet werden sollen U3987 J 2125 8 263 Binden und Laden von Unterprogrammen Programmverkn pfungen b Umwandeln der Objektmodule in einzelne Bindelademodule START PROGRAM BINDER START LLM CREATION INTERNAL NAME MAINPROG INCLUDE MODULES LIB BENUTZER PROGRAMME ELEM MAINPROG 1 SAVE LLM LIB MODULE LL START LLM CREATION INTERNAL NAME UPROGI1 INCLUDE MODULES LIB BENUTZER PROGRAMME ELEM UPROG1 m m m IE SAVE LLM LIB MODULE LLM ENTRY POINT UPROGI1 START LLM CREATION INTERNAL NAME UNTER2 INCLUDE MODULES LIB BENUTZER PROGRAMME ELEM UPROG2 ea S SAVE LLM LIB MODULE LLM ENTRY POINT UPROG2 START LLM
159. PY EXPANSION NO VISIBLE COPIES ALL COPIES SUBSCHEMA EXPANSION NO YES INSERT ERROR MSG NO YES DIAGNOSTICS NO YES YES MINIMAL WEIGHT NOTE WARNING ERROR SEVERE ERROR FATAL ERROR IMPLICIT SCOPE END STD REPORTED NAME INFORMATION NO YES YES SORTING ORDER ALPHABETIC BY DEFINITION CROSS REFERENCE NONE REFERENCED ALL SUPPRESS GENERATION NO AT SEVERE ERROR LAYOUT STD PARAMETERS PARAMETERS LINES PER PAGE 64 lt integer 20 128 gt LINE SIZE 132 lt integer 119 172 gt OUTPUT SYSLST STD FILES LIBRARY ELEMENT LIBRARY ELEMENT LIBRARY lt full filename 1 54 gt LISTING NONE Der Compiler soll keine Listen erzeugen LISTING STD Es werden die voreingestellten Werte der nachfolgenden PARAMETERS Struktur ber nommen LISTING PARAMETERS Mit den folgenden Parametern wird bestimmt welche Listen erzeugt werden und welches Layout und Ausgabeziel die angeforderten Listen haben sollen U3987 J 2125 8 45 LISTING Option SDF Steuerung des Compilers OPTIONS NO YES Der Compiler erzeugt standardm ig eine Liste in der die w hrend der bersetzung wirksamen Steueranweisungen die Umgebung des bersetzungsprozesses sowie einige Informationen f r Wartungs und Diagnosezwecke aufgef hrt sind SOURCE YES Der Compiler erzeugt eine Quellprogrammliste und eine Bibliotheksliste C
160. QUENCE NUMBER ccc COMPILERFEHLER OVERLAY aaa ADRESSE bbb LETZTE QUELLPROGRAMM FOLGENUMMER ccc Typ Compilerfehler Verhalten bersetzung abgebrochen Ma nahme Systemverwalter berater verst ndigen 314 U3987 J 2125 8 Meldungen des COBOLB85 Systems COB9017 COB9017 C0B9027 C0B9027 C0B9059 C0B9059 C0B9085 C0B9085 COMPILATION INITIATED VERSION IS aaa BEGINN DER UEBERSETZUNG VERSION aaa Typ Hinweis Bedeutung aaa Versionsnummer des Compilers INPUT TRUNCATED DIE EINGABE WURDE VERKUERZT Typ Hinweis Verhalten bersetzung l uft weiter Ma nahme COMOPT Zeilen k rzen COMPILER COBOL85 NOT RELEASED FOR BS2000 VERSIONS LOWER THAN V10 0 COMPILER COBOL85 IST NUR FUER BS2000 AB VERSION V10 0 FREIGEGEBEN Typ Anwenderfehler Verhalten bersetzung abgebrochen Ma nahme Systemverwalter berater verst ndigen COBOL85 BC DOES NOT SUPPORT AID COBOL85 BC UNTERSTUETZT AID NICHT Typ Anwenderfehler Verhalten bersetzung abgebrochen Ma nahme Vollausbau des COBOL85 benutzen U3987 J 2125 8 315 Meldungen des COBOL85 Systems C0OB9090 C0B9090 C0B9095 C0B9095 C0B9097 C0B9097 C0B9099 C0B9099 HARDWARE INTERRUPT ADDRESS aaa OVERLAY bbb SOURCE SEQUENCE NUMBER ccc INTERRUPT WEIGHT CODE ddd HARDWARE UNTERBRECHUNG BEI ADRESSE aaa OVERLAY bbb QUELLPROGRAMM FOLGENUMMER ccc EREIGNIS CODE ddd Typ Compilerfehler Bedeutung aaa Befehlsz hler
161. Quellprogramm ber Satz und Blockl nge f r jede Datei berechnet Diese Voreinstellung kann bei der Zuweisung der Datei durch die Angabe des BUFFER LENGTH Operanden im SET FILE LINK Kommando ver ndert werden wobei darauf zu achten ist da der Puffer mindestens so gro sein mu wie der l ngste Datensatz und bei Verarbeitung im keylosen Format BLKCTRL DATA die Verwaltungsinformatio nen Pamkey im Puffer Platz finden siehe 9 1 4 Au er bei neu angelegten Dateien OPEN OUTPUT hat die im Katalog eingetragene Blockgr e stets Vorrang gegen ber den Blockgr enangaben im Programm bzw im SET FILE LINK Kommando Zuweisen von katalogisierten Dateien F r jede Datei die ein COBOL Programm bearbeiten soll wird in der SELECT Klausel sie he 1 ein programminterner Name festgelegt auf den sich die COBOL Anweisungen f r diese Datei beziehen Bei Programmablauf mu jedem dieser Dateinamen eine aktuelle Datei zugewiesen sein Diese Zuweisung l t sich vor dem Aufruf des Programms durch ein SET FILE LINK bzw ein ASSIGN systemdatei Kommandb herstellen Welches der beiden Kommandos zu ver wenden ist h ngt vom Eintrag in der ASSIGN Klausel siehe 1 der Datei ab Ist explizit keine Datei zugewiesen werden Voreinstellungen des Programms wirksam die bei der bersetzung erzeugt wurden Die einzelnen M glichkeiten der Dateizuweisung sind im folgenden zusammengestellt U3987 J 2125 8 157 Grundlagen Dat
162. RD YES MERGE DIAGNOSTICS YES GENERATE SHARED CODE YES 3 MODULE OMF EXPAND COPY YES LINE LENGTH 132 EXPAND SUBSCHEMA YES MINIMAL SEVERITY 1 REPLACE PSEUDOTEXT YES RESET PERFORM EXITS YES CONTINUE AFTER MESSAGE YES FOR CUSTOMER SERVICE 4 REV A REV B 360 U3987 J Z125 8 Anhang Quellprogrammliste Quellprogrammliste Jede Zeile einer Quellprogrammliste ist in die folgenden Bereiche unterteilt 1 Anzeigenfeld Spalte 1 informiert ber Fehler innerhalb der vom Benutzer vergebenen Numerie rung der Eingabes tze Anzeige S und ber Verst e gegen die maximale Zeilen l nge von 80 Zeichen Anzeige T Au erdem werden in ihm S tze gekennzeich net die aus einer COPY Bibliothek kopiert wurden Anzeige C die durch ein REPLACING bzw REPLACE vereinbart wurden Anzeige R oder die zur SUB SCHEMA SECTION geh ren Anzeige D In Spalte 3 wird bei expandierten COPY Elementen die Schachtelungstiefe ange zeigt 2 Folgenummernfeld Enth lt eine von COBOL85 vergebene maximal 5 stellige Nummer die zur Kenn zeichnung des eingegebenen Quellprogrammsatzes dient Diese Nummer dient zur eindeutigen Identifizierung der Quellcodezeilen Sie findet sich in allen von COBOLSBS5 erzeugten Listen als Querverweisnummer wieder und wird zur Verkn p fung mit etwaigen Fehlermeldungen verwendet Der maximale Wert betr gt 32767 berschreitet ein Quellprogramm diese Zahl wird wieder von 0 an numeri
163. RECORD FORMAT RECORD SIZE oder KEY LENGTH mit Werten angegeben die von den entsprechenden explizi ten oder impliziten Programmangaben abweichen 2 Bei einer Eingabedatei trat ein Satzl ngenfehler auf Katalog berpr fung falls RECFORMS F 3 Die Satzl nge ist gr er als die BLKSIZE Angabe im Katalog einer Eingabe datei 4 F r eine Eingabedatei stimmt der Katalogeintrag eines der Operanden FCBTYPE RECFORM RECSIZE falls RECFORM F KEYPOS oder KEYLEN nicht mit den entsprechenden expliziten oder impliziten Programm angaben bzw mit den entsprechenden Angaben im SET FILE LINK Kommando berein 5 Es wurde versucht eine Datei zu er ffnen deren Alternativschl ssel nicht mit den im Programm angegebenen Schl sselwerten der ALTERNATE RE CORD KEY Klausel bereinstimmen Erfolglose Ausf hrung Logischer Fehler 41 Es wurde versucht eine OPEN Anweisung f r eine Datei auszuf hren die bereits er ffnet ist 42 Es wurde versucht eine CLOSE Anweisung f r eine Datei auszuf hren die nicht er ffnet ist 43 Bei ACCESS MODE IS SEQUENTIAL Die letzte vor Ausf hrung einer DELETE oder REWRITE Anweisung ausgef hr te Ein Ausgabe Anweisung war keine erfolgreiche READ Anweisung 44 berschreiten der Satzl ngengrenzen Es wurde versucht eine WRITE oder REWRITE Anweisung auszuf hren Die L nge des Datensatzes liegt jedoch nicht in dem f r diese Datei zul ssigen Bereich 234 U3987 J 2125 8 Dateiverarbeitung
164. RITE Anweisung mit der re lativen Satznummer versorgt werden die der zu schreibende Satz in der Datei erhalten soll Wird dabei die Nummer eines bereits existierenden Satzes angegeben tritt eine INVALID KEY Bedingung auf und WRITE verzweigt zur INVALID KEY Anweisung bzw zur vereinbarten USE Prozedur ohne den Satz zu schreiben Ein berschreiben von Datens tzen ist hier also nicht m glich 202 U3987 J Z125 8 Dateiverarbeitung Relative Dateien OPEN EXTEND Mit OPEN EXTEND kann eine vorhandene Datei erweitert werden Der Zugriff kann nur se quentiell erfolgen ACCESS MODE IS SEQUENTIAL erlaubt eine relative Datei sequentiell zu erweitern WRITE schreibt dabei beginnend mit dem h chsten Schl ssel 1 die S tze mit l ckenlos aufsteigenden relativen Satz nummern in die Datei Das RELATIVE KEY Schl sselfeld wenn angegeben wird von WRITE nicht ausge wertet es enth lt jeweils die automatisch hochgez hlte relative Satznummer des zu letzt geschriebenen Satzes Da keine Leers tze erzeugt werden ist es nicht m glich in eine sequentiell erweiterte Datei nachtr glich Datens tze einzuf gen OPEN INPUT Welche Ein Ausgabeanweisungen bzw Anweisungsformate erlaubt sind h ngt von der Angabe in der ACCESS MODE KLausel ab Die folgende Tabelle stellt die M glichkeiten f r OPEN INPUT zusammen Eintrag in der ACCESS MODE Klausel Anweisung SEQUENTIAL RANDOM DYNAMIC S
165. RR MSG WITH LINE NR NO YES ERROR REACTION CONTINUATION TERMINATION ENABLE UFS ACCESS NO YES RUNTIME OPTIONS STD Die voreingestellten Werte der PARAMETERS Struktur werden bernommen RUNTIME OPTIONS PARAMETERS ACCEPT STMT INPUT UNMODIFIED UPPERCASE CONVERTED Bei Angabe von UPPERCASE CONVERTED werden die mittels ACCEPT Anweisung eingegebenen Kleinbuchstaben in Gro buchstaben umgewandelt sofern die Eingabe von der Datensichtstation erfolgt FUNCTION ERR RETURN UNDEFINED STD VALUE Bei Angabe von STD VALUE werden die Funktionsargumente bez glich Wertebereich Anzahl und L nge berpr ft Falls ung ltige Argumentwerte auftreten wird der jewei ligen Funktion der entsprechende Fehler Returnwert zugewiesen SORTING ORDER STD BY DIN Die Angabe von BY DIN veranla t das Dienstprogramm SORT nach der DIN Norm f r EBCDIC zu sortieren Dabei werden die Kleinbuchstaben den entsprechenden Gro buchstaben gleichgesetzt die Zeichen mit AE mit OE mit UE sowie B mit SS identifiziert die Ziffern vor den Buchstaben einsortiert ERR MSG WITH LINE NR NO YES Bei Angabe von YES wird statt der Meldung COB9101 die Meldung COB9102 ausge geben die zus tzlich die vom Compiler vergebene Quellprogramm Zeilennummer der Anweisung enth lt bei deren Ausf hrung die Meldung ausgegeben wurde U3987 J 2125 8 57 RUNTIME OPTIONS Option SDF Steuerung des Compilers
166. Register verwendet das Dienstprogramm SORT zur Berechnung der Datei gr e d h der Programmierer kann indirekt den SPACE Operanden beeinflussen U3987 J 2125 8 249 Dateien f r das Sortierprogramm Sortieren und Mischen SORT CORE SIZE mit der gew nschten Gr e der internen Arbeitsbereiche in byte Durch diese Angaben kann der Programmablauf beeinflu t werden Bei fehlender Angabe werden standardm ig 24 x 4096 byte d h 24 Seiten zu je 4 Kbyte angenommen N heres siehe 6 Optimierung von Sortierl ufen Nach SORT und RELEASE und vor RETURN Anweisungen kann der Programmierer das SORT Sonderregister SORT RETURN abfragen 0 zeigt das ordnungsgem e Sortieren an 1 das fehlerhafte Sortieren Diese Abfrage empfiehlt sich da bei fehlerhaftem Sortieren der Programmlauf nicht abge brochen wird Die fehlerhafte Belegung eines SORT Sonderregisters bewirkt die Fehlermeldung COB9134 siehe Kap 14 Eingabedatei en Ist keine Eingabeprozedur definiert generiert COBOL85 einen OPEN INPUT und einen READ AT END f r die angegebene Datei Jede Eingabedatei mu im COBOL Programm definiert sein Die Linknamen SORTIN und SORTINnn 01 lt nn lt 99 d rfen nicht innerhalb eines Sor tierprogramms verwendet werden Ausgabedatei Ist keine Ausgabeprozedur definiert generiert COBOL85 einen OPEN OUTPUT und einen WRITE f r die angegebene Datei Die Ausgabedatei mu im COBOL Programm definiert sein Der Linkn
167. S NO IDENTIFICATION AREA YES NO LAYOUT STD PARAMETERS PARAMETERS LOWER CASE KEYWORDS YES NO INDENTATION AMOUNT 2 lt integer 1 8 gt 92 U3987 J 2125 8 COBOLBS5 Strukturierer STRUCTURIZER ACTION Option OUTPUT STD FILES lt full filename 1 54 gt LIBRARY ELEMENT LIBRARY ELEMENT LIBRARY lt full filename 1 54 without gen gt ELEMENT lt full filename 1 40 without gen vers gt VERSION UPPER LIMIT INCREMENT HIGHEST EXISTING lt alphanum name 1 24 gt STRUCTURIZER ACTION PRETTY PRINT Es soll eine Strukturliste vom aufbereiteten Quellprogramm erstellt werden CROSS REFERENCE YES NO Bei Angabe von YES wird die Strukturliste mit Querverweisen erg nzt INFORMATION STD Es werden die Voreinstellungen der PARAMETERS Struktur bernommen INFORMATION PARAMETERS SEQUENCE AREA YES NO Bei Angabe von YES wird die Sequence Number Area Spalten 1 6 des Referenz formats des eingegebenen Quellprogramms bernommen IDENTIFICATION AREA YES NO Bei Angabe von YES wird die Program Identification Area Spalten 73 80 des Referenzformats des eingegebenen Quellprogramms bernommen COPY EXPANSION YES NO Bei Angabe von YES wird der Inhalt der COPY Elemente und der SUB SCHEMA Section in die Ausgabe bernommen Das Einlesen der COPY Elemente wird von der COPY STATEMENTS Option gesteuert SUB SC
168. S Fehlercode ddd Linkname eee Z hlung der Ausnanmebedingungen Verhalten Programm abgebrochen Ma nahme Programm pr fen ggf ndern COB9176 REPORT DEFINED IN LINE aaa TERMINATE ISSUED TO REPORT WHICH IS NOT INITIATED COB9176 REPORT DEFINIERT IN ZEILE aaa EINE TERMINATE ANWEISUNG WURDE DURCHGEFUEHRT OBWOHL NOCH KEINE INITIATE ANWEISUNG GEGEBEN WURDE Typ Anwenderfehler Bedeutung aaa Zeilennummer Verhalten Programm abgebrochen Ma nahme Programm ndern U3987 J 2125 8 337 Meldungen des COBOL85 Systems C0B9178 THE LENGTH OF THE RECORD TO RELEASE TO THE SORT IS LARGER LESS THAN THE MAXIMUM MINIMUM RECORD LENGTH OF THE SORT FILE C0B9178 DIE LAENGE DES AN DEN SORT ZU UEBERGEBENDEN SATZES IST GROESSER KLEINER ALS DER MAXIMALE MINIMALE SATZ DER SORT DATEI Typ Anwenderfehler Verhalten Programm abgebrochen Ma nahme Programm ndern Satzl ngen angleichen C0B9179 THE LENGTH OF THE RECORD RETURNED FROM SORT IS LARGER LESS THAN THE MAXIMUM MINIMUM RECORD LENGTH OF THE GIVING FILE C0B9179 DIE LAENGE DES SORTIERTEN SATZES IST GROESSER KLEINER ALS DIE MAXIMALE MINIMALE SATZLAENGE DER GIVING DATEI Typ Anwenderfehler Verhalten Programm abgebrochen Ma nahme Programm ndern Satzl ngen angleichen COB9180 RELEASE RETURN OUTSIDE SORT MERGE CONTROL COB9180 RELEASE RETURN AUSSERHALB DER SORT MERGE STEUERUNG Typ Anwenderfehler
169. S R CHECK BY PROG IO PERF BY PROG IO USAGE BY PROG FILE CONTROL BLOCK TAPE FILE ATTRIBUTES LABEL BY PROG DIN R NUM BY PROG TAPE MARK BY PROG CODE BY PROG EBCDIC TR BY PROGG F SEQ BY PROG CHECKP POS BY PROG BLOCK LIM BY PROG REST USAGE BY PROG BLOCK OFF BY PROG TAPE WRITE BY PROG FILE CONTROL BLOCK ISAM FILE ATTRIBUTES KEY POS BY PROG EY LE BY PROG POOL LINK BY PROG OGIC FLAG BY PROG VAL FLAG BY PROG PROPA VAL BY PROG DUP KEY BY PROG PAD FACT BY PROG READ I ADV BY PROG R IMMED BY PROG VOLUME DEV TYPE NONE T SET NAME NONE VSN DEV PUBNO3 D3480 164 U3987 J 2125 8 Dateiverarbeitung Grundlagen 1 Das SET FILE LINK Kommando weist der Datei ISAM UPDATE den Linknamen INOUTFIL zu und vereinbart f r BUFFER LENGTH da dem Operanden bei der Dateier ffnung der Wert aus dem Katalogeintrag f r ISAM UPDATE zugewiesen wird und SHARED UPDATE YES d h ISAM UPDATE soll von mehreren Benutzern si multan aktualisiert werden k nnen Das DVS legt einen TFT Eintrag unter dem Namen INOUTFIL an in den es diese Angaben bernimmt Das SHOW FILE LINK Kommando gibt den TFT Eintrag f r INOUTFIL mit den Operandenwerten aus Dabei sind die Werte BUF LEN CAT und SHARUPD YES auf die Angaben im SET FILE LINK Kommando zur ckzuf hren Alle brigen Operanden wurden nicht explizit vereinbart un
170. S2000 0SD Inhalt Bedienung des COBOL85 Compilers COBOL85 Strukturierer Binden Laden und Starten von COBOL Programmen Testhilfen Dateiverarbeitung mit COBOL Programmen Programmverkn pfung COBOL85 und POSIX Subsystem Meldungen des COBOLS85 Systems Ausgabe Februar 1996 Datei CB85_BHB PDF BS2000 ist ein eingetragenes Warenzeichen der Siemens Nixdorf Informationssysteme AG Copyright Siemens Nixdorf Informationssysteme AG 1996 Alle Rechte vorbehalten E Lieferm glichkeiten und technische Anderungen vorbehalten Alle verwendeten Hard und Softwarenamen sind Handelsnamen und oder Warenzeichen der jeweiligen Hersteller U3987 J Z125 8 413 ee FUJITSU Information on this document On April 1 2009 Fujitsu became the sole owner of Fujitsu Siemens Compu ters This new subsidiary of Fujitsu has been renamed Fujitsu Technology So lutions This document from the document archive refers to a product version which was released a considerable time ago or which is no longer marketed Please note that all company references and copyrights in this document have been legally transferred to Fujitsu Technology Solutions Contact and support addresses will now be offered by Fujitsu Technology So lutions and have the format rs fujitsu com The Internet pages of Fujitsu Technology Solutions are available at http ts fujitsu com and the user documentation at hrip manuals ts fujitsu c
171. SAM1 und Zwischenspeichern in WORK1 betroffe ner Datenblock in ISAM1 gesperrt 2 Lesen eines Datensatzes aus ISAM2 Aufhebung der Sperre in ISAM1 Sperrung des betroffenen Datenblocks in ISAM2 3 Erneutes Lesen des Datenatzes in ISAM1 Aufhebung der Sperre in ISAM2 Sper rung des betroffenen Datenblocks in ISAM1 4 Zur ckschreiben des Datensatzes nach ISAM1 Aufhebung der Sperre in ISAM1 U3987 J Z125 8 241 Simultanverarbeitung SHARED UPDATE Dateiverarbeitung b Mit WITH NO LOCK Zusatz nur eine READ Anweisung auf dieselbe Datei erfor derlich daf r Sperrzeiten l nger 1 READ ISAMI INVALID KEY READ ISAM2 WITH NO LOCK INVALID KEY Verarbeitung von ISAM1SATZ unter Ber cksichtigung von ISAM2SATZ REWRITE ISAMISATZ FROM WORKI INVALID KEY 1 Lesen eines Datensatzes aus ISAM1 betroffener Datenblock gesperrt 2 Lesen eines Datensatzes aus ISAM2 betroffener Datenblock nicht gesperrt 3 Zur ckschreiben des Datensatzes nach ISAM1 Sperre wird aufgehoben 242 U3987 J 2125 8 Dateiverarbeitung Simultanverarbeitung SHARED UPDATE Beispiel 9 13 Verzweigen zu einer USE AFTER STANDARD ERROR Prozedur FILE CONTROL SELECT ISAM1 FILE STATUS IS FILESTATI WORKING STORAGE SECTION 77 FILESTATI PIC 99 PROCEDURE DIVISION DECLARATIVES ISAMIERR SECTION US TER STANDARD ERROR PROCEDURE ON ISAMI SPERRE IF nun lt FILESTATI1 93 THEN DISP
172. SED bewirkt da die S tze beginnend mit dem letzten Satz der Datei in umgekehrter Reihenfolge gelesen werden 176 U3987 J 2125 8 Dateiverarbeitung Sequentielle Dateien OPEN EXTEND Als Ein Ausgabeanweisung ist WRITE mit folgendem Format erlaubt BEFORE WRITE EFROM I C geid AFTER CAT END OF PAGE CNOT AT END OF PAGE LEND WRITE In diesem Modus k nnen am Ende einer sequentiellen Datei neue S tze hinzugef gt wer den Bereits vorhandene Datens tze werden dabei nicht berschrieben OPEN I O Als Ein Ausgabeanweisungen sind READ und REWRITE mit folgenden Formaten erlaubt READ CNEXT LINTO LAT END CNOT AT END LEND READ REWRITE LFROM LEND REWRITE In diesem Modus k nnen die S tze einer sequentiellen Plattendatei gelesen READ durch das Programm aktualisiert und anschlie end wieder zur ckgeschrieben werden REWRITE Dabei ist darauf zu achten da ein Satz nur dann mit REWRITE zur ckge schrieben werden kann wenn er vorher durch eine erfolgreiche READ Anweisung gelesen und seine Satzl nge bei der Aktualisierung nicht ver ndert wurde Die Angabe OPEN l O ist nur f r Plattendateien zul ssig U3987 J 2125 8 177 Sequentielle Dateien Dateiverarbeitung 9 2 5 Zeilensequenitielle Dateien Die zeilensequentielle Organisation von COBOL Dateien ist ein Sprachmittel des X Open Standards Das entsprechende Sprachformat lautet FILE CONTR
173. STRG 0645 Versionsidentifikation ist fehlerhaft 0646 Spezifizierte Dateiexistenz ist unzul ssig 0647 Syntaxfehler im Dateinamen Link oder Pfad 0649 Spezifizierter Modus beim Schlie en ist unzul ssig 0650 Dateizugriff ist nicht erlaubt 0651 Fehlerhafter Parameter angegeben 0652 Zeiger in den Ein Ausgabebereich ist fehlerhaft 0653 Satzl nge ist fehlerhaft 0654 Speichermangel auf Ausgabemedium aufgetreten 0655 Spezifizierte Vorschubsteuerung ist unzul ssig 0656 Spezifizierter Code ist unzul ssig 0657 ffnungsmodus und Dateiexistenz sind unzul ssig kombiniert 0658 Ein Ausgabeunterbrechung aufgetreten 0659 L nge des Schl sselwortes bersteigt P_MAXKEYWORD 0660 Schl sselwort ist mehrdeutig 0661 Anzahl der Exits bersteigt P_MAXEXITS 0662 Zeilenvorschubsteuerzeichen erkannt 0663 Seitenvorschubsteuerzeichen erkannt 0664 Einige Pfade sind nicht geschlossen 0665 N chster Satz hat den gleichen Sekund rschl ssel 0666 Sekund rschl ssel des geschriebenen Satzes existiert bereits 0667 Aktuelle Satznummer ist gr er als MAX_REC_NR 0668 Pfad ist bereits definiert 0669 Link ist bereits definiert 0670 Spezifizierter Wert f r Positionierbedingung ist unzul ssig 296 U3987 J 2125 8 COBOL85 und POSIX Verarbeiten von POSIX Dateien Ein Ausgabezustand Bedeutung 0671 Unbekanntes Kontrollzeichen gefunden 0672 Es konnte eindeutiger kein Dateiname erzeugt
174. SUBSKRIPT INDEXBEREICHES BEI ANWEISUNG aaa SUBSKRIPT bzw INDEXWERT bbb TABELLENGRENZE ccc Typ Anwenderfehler Bedeutung aaa Anweisung bbb ung ltiger Indexwert ccc maximal zul ssiger Indexwert Verhalten Abh ngig von COMOPT CONTINUE AFTER MESSAGE bzw ERROR REACTION SDF Option RUNTIME OPTIONS wird das Programm fortgesetzt oder abgebrochen Ma nahme Programm ndern 328 U3987 J 2125 8 Meldungen des COBOLB85 Systems COB9145 RANGE VIOLATION IN aaa STATEMENT VALUE OF DEPENDING ON ELEMENT IS bbb TABLE BOUNDARY IS ccc C0B9145 UEBERSCHREITUNG DES SUBSKRIPT INDEXBEREICHS BEI ANWEISUNG aaa WERT DES DEPENDING ON ELEMENTS bbb TABELLENGRENZE ccc Typ Anwenderfehler Bedeutung aaa Anweisung bbb ung ltiger Wert im DEPENDING ON Feld ccc maximal zul ssiger Wert Verhalten Abh ngig von COMOPT CONTINUE AFTER MESSAGE bzw ERROR REACTION SDF Option RUNTIME OPTIONS wird das Programm fortgesetzt oder abgebrochen Ma nahme Programm ndern C0B9146 COBOL85 RUNTIME SYSTEM VERSION aaa IN CRTE IS INCOMPATIBLE WITH OBJECT CODE COMPILED BY COBOL85 VERSION bbb C0B9146 COBOL85 LAUFZEIT SYSTEM VERSION aaa IM CRTE VERTRAEGT SICH NICHT MIT VON COBOL85 VERSION bbb UEBERSETZTEM OBJEKT CODE Typ Anwenderfehler Bedeutung aaa Versionsnummer des Laufzeitsystems bbb Versionsnummer des Compilers Das Laufzeitsystem ist lter als der Compiler der das Programm erzeugte Verhalten Programm a
175. SUP MOD TERM A SEM TERM A SYN TEST W C USE AP 279 Steuerung des Compilers COBOLB85 und POSIX 13 3 3 Option zur Ausgabe von bersetzungsprotokollen P listenangabe Mit dieser Option wird gesteuert welche bersetzungsprotokolle vom Compiler erzeugt werden Mit listenangabe k nnen analog zu COMOPT SYSLIST im BS2000 folgende Werte in einer Liste angegeben werden OPTIONS OOPTIONS URCE SOURCE N gt x lt E nToor0dYo o gt 0o06o0 gt a gt oO Standardm ig NO werden keine bersetzungsprotokolle erzeugt Die mit P angeforderten Listen schreibt der Compiler in eine Listendatei mit dem Namen basisname lst basisname ist der Name der Quelldatei ohne die Dateiverzeichnisbestandteile und ohne das Suffix cbl oder cob Die Listendatei wird in das aktuelle Dateiverzeichnis geschrieben Beispiel P CALL NOXREF 280 U3987 J 2125 8 COBOLB85 und POSIX Steuerung des Compilers 13 3 4 Optionen f r den Bindelauf Die folgenden Optionen f r den Binder bleiben ohne Wirkung wenn durch Angabe der Option c der Compilerlauf nach der bersetzung beendet wird F r jede solche unge nutzte Option gibt das cobol Kommando eine Warnungsmeldung aus Hinweise zum Binden allgemein und zur Binde Reihenfolge finden Sie im Abschnitt 13 1 2 S 27 1ff L dateiverzeichnis Mit dieser Option k nnen Pfadnamen von Dateiverzeichnissen angegeben werden die der Binder n
176. Statisches Binden mit TSOSLNK Der Statische Binder TSOSLNK erzeugt aus einem oder mehreren Bindemodulen Objekt module oder Gro module eine der folgenden Einheiten ein ablauff higes Programm das er in eine eigene katalogisierte Datei bzw als Ele ment vom Typ C in eine PLAM Bibliothek ausgibt oder ein vorgebundenes Modul ein sog Gro modul das er in der tempor ren EAM Datei der aktuellen Task bzw als Element vom Typ R in einer PLAM Bibliothek hinter legt Das Dienstprogramm TSOSLNK wird mit dem START PROGRAM Kommando aufgerufen Es erwartet anschlie end von SYSDTA Steueranweisungen e f r die Ausgabe die festlegen ob das Ergebnis des Binderlaufs ein ablauff higes Programm oder ein Gro modul sein soll und wohin das Ergebnis ausgegeben werden soll e f r die Eingabe die ihm mitteilen welche Bindemodule er einbinden soll und aus welchen Bibliotheken er offene Externverweise befriedigen soll Steueranweisungen f r den TSOSLNK Die Steueranweisungen f r TSOSLNK und deren Operanden sind ausf hrlich im Hand buch TSOSLNK 10 beschrieben die Zusammenstellung auf der folgenden Seite gibt nur einen berblick ber die wichtigsten Angaben U3987 J 2125 8 105 Statisches Binden mit TSOSLNK Binden Laden Starten Anweisung Kurzbeschreibung PROGRAM PROG weist den Binder an aus den eingelesenen Objektmodulen ein Programm zu erzeu gen und legt dessen Eigenschaft
177. TART START Anweisung nicht zul ssig START KEY IS KEY IS INVALID KEY INVALID KEY NOT INVALID KEY NOT INVALID KEY END START END START READ READ NEXT READ F r sequentiellen Zugriff INTO INTO READ NEXT AT END KEY IS INTO NOT AT END INVALID KEY TAT END END READ Meil An KEY NOT ATEEND END READ END READ F r wahlfreien Zugriff READ INTO KEY IS INVALID KEY NOT INVALID KEY END READ Tabelle 9 12 Erlaubte Ein Ausgabeanweisung f r OPEN INPUT In diesem Modus k nnen relative Dateien gelesen werden Abh ngig von der vereinbarten Zugriffsart hat die READ Anweisung dabei folgende Wirkung U3987 J 2125 8 203 Relative Dateien Dateiverarbeitung ACCESS MODE IS SEQUENTIAL erlaubt es ausschlie lich die Datei sequentiell zu lesen READ stellt dabei die Daten s tze in der Reihenfolge aufsteigender relativer Satznummern zur Verf gung wobei Leers tze bersprungen werden Das RELATIVE KEY Schl sselfeld wenn angegeben wird von READ nicht ausgewer tet es enth lt jeweils die relative Satznummer des zuletzt gelesenen Satzes Falls ein RELATIVE KEY Schl sselfeld vereinbart wird kann jedoch vor der Ausf h rung einer READ Anweisung mit Hilfe von START auf einen beliebigen Satz der Datei positioniert werden ber eine Vergleichsbedingung legt START die relative Satznum mer des zuerst zu lesenden Satzes
178. TEI ZUSTAND SELECT ISAM DATEI ASSIGN TO AUSGABE ORGANIZATION IS INDEXED RECORD KEY ISAM SCHLUESSEL FILE STATUS IS IDATSTA ACCESS IS SEQUENTIAL DATA DIVISION FILE SECTION COPY SAM DATEI FD SAM DATEI RECORD IS VARYING IN SIZE FROM 1 TO 255 DEPENDING ON SAM SATZ LAENGE 01 SAM SATZ 05 ZEICHEN PIC X OCCURS 1 TO 255 DEPENDING ON I LAENGE COPY ISAM DATEI REPLACING ZEICHEN BY FD ISAM DATEI RECORD IS VARYING IN SIZE FROM 9 TO 263 DEPENDING ON ISAM SATZ LAENGE 0 SAM SATZ 05 ISAM SCHLUESSEL 05 SATZ INHALT 10 PIC X OCCURS 1 TO 255 DEPENDING ON I LAENGE WORKING STORAGE SECTION 01 SAM DATEI ZUSTAND PIC XX 88 DATEI ENDE VALUE 10 DATSTA IS EXTERNAL PIC XX PIE LAENGE PIC 9 3 BINARY 0 SAM SATZ LAENGE PIC 9 3 BINARY 01 SAM SATZ LAENGE PIC 9 3 BINARY PROCEDURE DIVISION ABLAUF SECTION ABLAUF 001 OPEN INPUT SAM DATEI OUTPUT ISAM DATEI RFORM WITH TEST AFTER VARYING ISAM SCHLUESSEL FROM 100 BY 100 UNTIL DATEI ENDE OR ISAM SCHLUESSEL NOT LESS 99999900 MOVE 255 TO I LAENGE EAD SAM DATEI INTO SATZ INHALT AT END EXIT TO TEST OF PERFORM onngo gt PE ee END READ ADD 8 TO SAM SATZ LAENGE GIVING ISAM SATZ LAENGE WRITE ISAM SATZ INVALID KEY CALL EAFEHLER END WRITE END PERFORM CLOSE SAM DATEI ISAM DATEI PERIOD MISSING BEFORE PARAGRAPH OR SECTION PERIOD ASSUMED ABLAUF 999 STOP RUN PERIOD MISSING AFTER DATA DESCRIPTION ENTRY PERIOD
179. TIME OPTIONS PARAMETERS ACCEPT STMT INPUT ACTIVATE WARNING MECHANISM YES NO ACT W MECH gibt an ob bei der bersetzung im Programm enthaltene veraltete Sprachelemente und nicht standardgem e Spracherweiterungen durch eine Meldung der Klasse F Severity Code F in der Fehlerliste gekennzeichnet werden sollen Hinweis In Compilerl ufen f r die ACTIVATE WARNING MECHA NISM YES angegeben wird sind die folgenden COMOPT Operanden unwirksam die bei der bersetzung eine Abweichung vom ANS85 bewirken w rden RESET PERFORM EXITS NO USE APOSTROPHE YES Au erdem wird in diesem Fall der Operand MINIMAL SEVERITY gesetzt damit die Meldungen der Klasse F aufgelistet werden k nnen SDF Option ACTIVATE FLAGGING ANS85 ACTIVATE XPG4 RETURNCODES YES NO bestimmt da nach Aufruf von C Unterprogrammen deren Funktionswerte im COBOL Sonderregister RETURN CODE zur Verf gung stehen SDF Option SOURCE PROPERTIES PARAMETERS RETURN CODE CHECK CALLING HIERARCHY YES NO CHECK C H legt fest ob die Aufrufhierarchie berpr ft werden soll Ein Programm in dem die Anweisungen CALL bezeichner und oder CANCEL verwendet werden sollte mit CHECK CALLING HIERARCHY YES bersetzt werden SDF Option RUNTIME CHECKS PARAMETERS RECURSIVE CALLS U3987 J 2125 8 65 COMOPT Operanden COMOPT Steuerung Operandenformat Funktion CHECK FUNCTI
180. Tabelle 6 1 R ckkehrcode Anzeige in Jobvariablen U3987 J Z125 8 117 Programmbeendigung Binden Laden Starten R ckkehr Fortsetzung Code Fehler steuerbar Verhalten in Anzeige nummer Kurzbeschreibung des Fehlers mit Option Dump Prozeduren 2151 COB9151 Dateien nein nein Verzweigung Nicht abgefangener Ein Ausgabe ja zum n chsten fehler STEP keine USE Prozedur ABEND kein INVALID KEY kein AT END ABORT 2152 COB9152 Verbindung zu Datenbank konnte nein ae nicht hergestellt werden e Kommando 2154 COB9154 REPORT WRITER nein Anwenderfehler 2155 COB9155 Fehler beim Verlassen einer USE nein Prozedur 2156 COB9156 DML Zu kleines SUB SCHEMA nein Modul zur Verarbeitung einer umfangreichen DML Anweisung 2157 COB9157 CALL nicht ausf hrbar nein 2158 COB9158 Mehr als 9 rekursive Aufrufe von nein DEPENDING Paragraphen 2160 COB9160 Ablaufeinheit verwendet CANCEL nein enth lt aber Programme die mit einem Compiler lt V2 0 bersetzt wurden 2162 COB9162 Die Eigenschaften einer externen nein Datei sind in den Programmen einer Ablaufeinheit nicht konsistent 2163 COB9163 Der Speicherplatz f r DYNAMIC nein Daten konnte nicht angelegt werden 2164 COB9164 Mit CALL aufgerufenes Programm ist nein nicht verf gbar 2168 COB9168 REPORT WRITER nein 2169 COB9169 Anwenderfehler nein 2171 COB9171 nein 2174 COB9174 Fehlerbehandlung i
181. Umfang der Listenausgabe festlegen Die Steuerungsm glichkeiten die COBOL85 bzw das Betriebssystem bieten werden in den Kapiteln 3 und 4 ausf hrlich beschrieben U3987 J 2125 8 berblick M gliche Eingabequellen und Ausgabeziele des Compilers LISTENAUSGABE tempor re os Syelemdaiel automatische u SYSLST Ausgabe nach Taskende PLAM Bibliothek katalogisierte Datei Zuweisung vor Aufruf des Gesamtliste in Compilers katalogisierter Datei Einzellisten in katalog Dateien oder PLAM Bibliothek C O B O L 8 5 POSIX gt Dateisystem SAM Datei auf Magnetband C station POSIX Dateisystem MODULAUSGABE PLAM Bibliothek P 753009 EAM Datei der aktuellen Task gt SPOOLIN Dateisystem U3987 J 2125 8 9 Bereitstellen des Quellprogramms berblick 2 1 2 1 1 Bereitstellen des Quellprogramms Ein COBOL Quellprogramm mu nach seiner Codierung dem Compiler f r die berset zung zug nglich gemacht werden Unter den verschiedenen Wegen die daf r zur Verf gung stehen sind die gebr uchlichsten die Eingabe aus einer Datei die Eingabe aus einer PLAM Bibliothek Das Betriebssystem unterst tzt die Bereitstellung von Quellprogrammen in Dateien oder PLAM Bibliotheken durch verschiedene Kommandos und Dienstprogramme Bereitstellen in katalogisierten Dateien COBOLB85 kann Quellprogramme aus SAM oder ISAM Dateien verarbeiten wobei ISAM
182. VIOLATION IN aaa STATEMENT RELATIVE ADDRESS IS bbb COMPUTED LENGTH IS ccc SIZE OF DATA ITEM IS ddd COB9140 REFERENZ MODIFIZIERUNG UEBERSCHREITUNG DER DATENFELDGRENZEN BEI ANWEISUNG aaa RELATIVE ADRESSE bbb BERECHNETE LAENGE ccc LAENGE DES DATENFELDES ddd Typ Anwenderfehler Bedeutung aaa Anweisung bbb Wert der Adressangabe ccc Wert der L ngenangabe bzw berechnete L nge falls keine L nge angegeben wurde ddd L nge des teilfeldselektierten Datenfeldes Verhalten Abh ngig von COMOPT CONTINUE AFTER MESSAGE bzw ERROR REACTION SDF Option RUNTIME OPTIONS wird das Programm fortgesetzt oder abgebrochen Ma nahme Programm korrigieren C0B914 C0B914 N UNALTERED GO TO GO TO OHNE ALTER Typ Anwenderfehler N Verhalten Programm abgebrochen Ma nahme Programm ndern GO TO ohne Paragraphen Kapitel erst durchlaufen nachdem ein ALTER daf r ausgef hrt wurde U3987 J Z125 8 327 Meldungen des COBOL85 Systems COB9143 VOLUME aaa UNEXPIRED PURGE DATE COB9143 FUER DEN DATENTRAEGER aaa IST DAS FREIGABE DATUM NOCH NICHT ERREICHT Typ Anwenderfehler Bedeutung aaa Archivnummer des Datentr gers Verhalten Programmlauf unterbrochen Ma nahme Datentr ger verwenden dessen Freigabedatum bereits erreicht ist COB9144 SUBSCRIPT INDEX RANGE VIOLATION IN aaa STATEMENT VALUE OF SUBSCRIPT INDEX IS bbb TABLE BOUNDARY IS ccc COB9144 VEBERSCHREITUNG DES
183. Verarbeitung l st die Verkn pfung der Datei BESTAND NEU mit dem Linknamen AUSDAT wieder und bewirkt da das Band CA176B entladen wird Das Bandger t wird standard m ig wieder freigegeben U3987 J 2125 8 187 Sequentielle Dateien Dateiverarbeitung 9 2 9 Ein Ausgabezust nde Jeder Datei im Programm k nnen mit der FILE STATUS Klausel Datenfelder zugeordnet werden in denen das Laufzeitsystem nach jedem Zugriff auf die Datei Informationen dar ber hinterlegt ob die Ein Ausgabeoperation erfolgreich war und welcher Art ggf die dabei aufgetretenen Fehler sind Diese Informationen k nnen z B in den DECLARATIVES durch USE Prozeduren ausge wertet werden und gestatten eine Analyse von Ein Ausgabefehlern durch das Programm Als Erweiterung zum COBOL Standard bietet COBOL85 die M glichkeit in diese Analyse auch die Schl ssel der DVS Fehlermeldungen einzubeziehen Dadurch l t sich eine fei nere Differenzierung der Fehlerursachen erreichen Die FILE STATUS Klausel wird im FILE CONTROL Paragraphen der ENVIRONMENT DIVISION angegeben ihr Format ist siehe 1 FILE STATUS IS datenname 1 Ldatenname 2 Dabei m ssen datenname 1 und falls angegeben datenname 2 in der WORKING STORAGE SECTION oder der LINKAGE SECTION definiert sein F r die Formate und die m glichen Werte dieser beiden Datenfelder gelten folgende Regeln datenname 1 mu als zwei Byte langes numerisches oder alphanu
184. Wiederherstellung der Ausgangsdaten bei einem eventuellen Wiederanlauf m glich ist Diese Funktionalit t steht im POSIX Subsystem nicht zur Verf gung siehe Kapitel 13 U3987 J 2125 8 253 Fixpunktausgabe Fixpunktausgabe und Wiederanlauf 11 1 Fixpunktausgabe Die Ausgabe von Fixpunkten veranla t der Benutzer mit der RERUN Klausel Dabei kann er den Zeitpunkt der Fixpunktausgabe bestimmen eine Ausgabe bei jedem Spulenwechsel f r eine bestimmte Datei ist m glich sowie auch die Ausgabe nach Verarbeitung einer bestimmten Anzahl von S tzen einer Datei Format 1 der RERUN Klausel Auszug vollst ndiges Format siehe 1 REEL END OF RERUN ON herstellername EVERY UNIT OF dateiname ganzzahl 1 RECORDS herstellername Angabe SYSnnn 0 lt nnn lt 244 COBOLB85 erzeugt entweder eine Fixpunktdatei oder zwei Fixpunktdateien a eine Fixpunktdatei falls nnn lt 200 COBOLB85 bildet den Standardnamen progid RERUN SYSnnn sowie den Linkna men SYSnnn Die Fixpunkte werden fortlaufend in diese Datei geschrieben Bei Dateiende wird intern weiterer Speicherbereich angefordert a Zwei Fixpunktdateien falls nnn gt 200 COBOLSB85 bildet die Standardnamen progid RERUN SYS nnnA progid RERUN SYS nnnB und die Linknamen SYSnnnA und SYSnnnB Fixpunkte werden alternierend in beide Dateien ausgegeben wobei ein zuvor geschriebener Fixpunkt berschrieben wird Das Format 2 der RERUN Klausel ist nur f r Sortierdateien
185. XY Modul Modul XY XY Abbildung 6 2 Shared Code Klasse 6 Speicher Klasse 6 Speicher Programmabl ufe ohne SHARE Kommando Task C Modul XY Modul XY Klasse 6 Speicher f r Task A f r Task B f r Task C u Modul XY wird dreimal geladen Programmabl ufe mit SHARE Kommando Task A Task B Task C Modul XY Modul XY Modul XY Klasse 6 Speicher f r Task A Klasse 6 Speicher Klasse 6 Speicher f r Task B Modul XY gemeinsam benutzbar Modul XY wird nur einmal geladen f r Task C im Klasse 4 Speicher des Betriebssystems U3987 J Z125 8 121 122 U3987 J 2125 8 7 Testhilfen f r den Programmablauf Auch ein syntaktisch korrektes COBOL Programm enth lt m glicherweise noch logische Fehler und l uft daher nicht in der gew nschten Weise ab F r das Auffinden und Beseiti gen solcher Fehler stehen dem COBOL Programmierer verschiedene Hilfsmittel zur Verf gung Er kann w hrend des Programmlaufes die Dialogtesthilfe AID Advanced Interactive Debugger einsetzen Sie erfordert keine Vorkehrungen bei der Programmierung und erlaubt es im geladenen Programm w hrend dessen Ausf hrung Fehler zu suchen und korrigierend in den Ablauf einzugreifen Er kann bereits in das Quellprogramm Testhilfezeilen einbauen und sie bei Bedarf ak tivieren Dies setzt voraus da schon bei der
186. YESCCROSS REFERENCE ALL OUTPUT LIBRARY ELEMENTCLIBRARY LISTLIB 2 1 Compileraufruf im Men Modus 2 Die Voreinstellung Ausgabe von Optionen Quellprogramm und Fehlerliste wird erg nzt der Compiler soll zus tzlich eine Adre und Querverweisliste erzeugen und alle Listen in der PLAM Bibliothek namens LISTLIB ablegen Beispiel 3 4 Ausgabe von Listen ins POSIX Dateisystem Der Compiler soll eine Quellprogramm und eine Fehlerliste erzeugen und im POSIX Dateisystem ablegen SET VAR SYSIOL SRCLINK xpl srcelst 1 SET VAR SYSIOL ERRLINK xpl errIst 1 START COBOL85 COMPILER 2 1 Durch das Kommando SET VARIABLE wird die Variable mit dem gew nschten Da teinamen belegt wobei der Dateiname ohne Pfadangaben die Ablage der Datei im Home Dateiverzeichnis bewirkt 2 Compileraufruf im SDF Men Modus 50 U3987 J 2125 8 SDF Steuerung des Compilers TEST SUPPORT Option 3 3 7 TEST SUPPORT Option Diese Option steuert ob mit der Testhilfe AID der Ablauf eines Programms getestet werden soll Ferner k nnen bestimmte Eigenschaften der Testhilfe AID festgelegt werden Diese Option ist in COBOL85 BC nicht verf gbar Format TEST SUPPORT NONE AlD AID STMT REFERENCE LINE NUMBER COLUMN 1 TO 6 PREPARE FOR JUMPS NO YES WINDOW DEBUG SUPPORT NO YES TEST SUPPORT NONE Es wird keine Testhilfe angefordert Der Compiler erze
187. abe geringer Datenmengen Den COBOLB85 Herstellernamen in ACCEPT DISPLAY Anweisungen zur Ein Ausgabe kleiner Datenmengen sind in POSIX folgende Standard Ein Ausgabestr me zugeordnet COBOL85 BS2000 POSIX TERMINAL SYSDTA stdin SYSIPT SYSIPT undefiniert TERMINAL SYSOUT stdout PRINTER SYSLST stdout PRINTERO1 99 SYSLSTO1 99 undefiniert SYSOPT SYSOPT undefiniert CONSOLE CONSOLE undefiniert Sortieren und Mischen Die Sortierdatei wird automatisch im BS2000 Dateisystem abgelegt und der POSIX Nut zer hat auf sie keinen Zugriff Jobvariablen Die Verwendung von BS2000 Jobvariablen ist bei Programmablauf in POSIX nicht m glich Auftrags und Benuitzerschalter Die Verwendung von BS2000 Auftrags und Benutzerschaltern ist bei Programmablauf in POSIX nicht sinnvoll Dateiverarbeitung Die Verkn pfung zwischen dem externen Dateinamen in der ASSIGN Klausel und dem Dateinamen im POSIX Dateisystem wird ber eine Umgebungsvariable hergestellt deren Name identisch mit dem externen Dateinamen in der ASSIGN Klausel ist Der Name der Umgebungsvariablen mu immer in Gro buchstaben geschrieben wer den Ausf hrliche Informationen hierzu finden Sie in Abschnitt 13 6 2 S 292ff 288 U3987 J 2125 8 COBOL85 und POSIX Unterschiede zu COBOL55 im BS2000 Nach einem erfolglosen OPEN INPUT auf eine Datei f r die nicht OPTIONAL angege ben wurde wird der Programmablauf nicht unterbrochen
188. ablen 1 Die 1 Ziffer bezeichnet das Gewicht der Meldung 0 Hinweis 1 Warnung 2 Fehler 3 Abbruchfehler Die 2 Ziffer immer 1 kennzeichnet das Programm als COBOL Objekt Die beiden letzten Ziffern fett gedruckt stellen den internen Return Code dar Inhalt und Bedeutung der Meldungen siehe Kapitel 15 3 Mit RUNTIME OPTIONS PAR ERROR REACTION TERMINATION bzw COMOPT CONTINUE AFTER MESSAGE NO kann der Programmabbruch herbeigef hrt wer den Stapelbetrieb nein Dialogbetrieb Abfrage ja nein U3987 J 2125 8 119 Gemeinsam benutzbare COBOL Programme Binden Laden Starten 6 7 Gemeinsam benutzbare COBOL Programme Bei gro en Programmen kann es von Vorteil sein einzelne Programmteile auf die mehrere Benutzer Tasks zugreifen gemeinsam benutzbar shareable zu machen Hierf r ist bei der bersetzung eine der folgenden Steueranweisungen anzugeben COMOPT GENERATE SHARED CODE YES oder SHAREABLE CODE YES im MODULE GENERATION Parameter der COMPILER ACTION Option Der Compiler erzeugt dann zwei Objektmodule wovon das eine den nicht mehrfachbenutz baren Teil und das andere den gemeinsam benutzbaren Teil des Objekts enth lt Sie wer den im folgenden als nicht gemeinsam benutzbares bzw mehrfachbenutzbares Modul bezeichnet Die gemeinsam benutzbaren bzw nicht mehrfachbenutzbaren Module k nnen jeweils zu Gro modulen vorgebunden werden Die gemeinsam benutzbaren Module m ssen entweder unmittelbar vom
189. ach Bibliotheken mit dem Namen 1 i bname a durchsuchen soll Diese Bibliotheken m ssen mit dem Operanden name angegeben werden Standardm ig werden nur die Dateiverzeichnisse usr lib und usr ccs lib nach den Bibliotheken durchsucht Die Reihenfolge der L Optionen ist signifikant Die mit L angegebenen Dateiverzeich nisse werden vorrangig vor den Standard Dateiverzeichnissen durchsucht M name Mit name mu der PROGRAM ID Name des COBOL Hauptprogramms in Gro buchstaben angegeben werden Die Angabe dieser Option ist immer erforderlich wenn das Hauptpro gramm ein COBOL Programm ist 0 ausgabedatei Die vom Binder erzeugte ausf hrbare Datei wird in die Datei ausgabedatei geschrieben Enth lt ausgabedatei keine Dateiverzeichnisbestandteile wird die Datei in das aktuelle Dateiverzeichnis geschrieben sonst in das mit ausgabedatei angegebene Dateiverzeichnis Standardm ig wird die ausf hrbare Datei unter dem Namen a out in das aktuelle Datei verzeichnis geschrieben U3987 J 2125 8 281 Steuerung des Compilers COBOLB85 und POSIX name Diese Option veranla t den Binder beim Aufl sen von Externverweisen per Autolink die Bibliothek mit dem Namen 1 ibname a zu durchsuchen Wenn mit der Binder Option L kein anderes Dateiverzeichnis angegeben wird sucht der Binder die angegebene Bibliothek in den Standard Dateiverzeichnissen usr 1ib und usr ccs lib Die Bibliotheken werden vom Binder in der Reihenfolge
190. ach den in COBOL geltenden Qualifizie rungsregeln 300 U3987 J Z125 8 Nutzbare Software f r COBOL Anwender Advanced Interactive Debugger AID Ablaufverfolgung auf Statementebene Dynamische Ablaufverfolgung steuerbar ber Statementklassifikation z B Procedure trace Controlflow trace Assignment trace wird unterst tzt Ausgegeben werden bei AID die Sourcereferenz der durchlaufenen Statements die der Statementklassifikation entsprechen Dokumentation AID Basis Handbuch 24 AID Testen von COBOL Programmen 9 AID Testen auf Maschinencodeebene 25 U3987 J 2125 8 301 Library Maintenance System LMS Nutzbare Software f r COBOL Anwender 14 2 Library Maintenance System LMS Charakterisierung des Produktes Das Bibliotheksverwaltungssystem LMS erstellt und verwaltet Programmbibliotheken und bearbeitet die darin enthaltenen Elemente Programmbibliotheken sind PAM Dateien des BS2000 die mit der Bibliotheks Zugriffsme thode PLAM Program Library Access Method bearbeitet werden Daher werden sie auch als PLAM Bibliotheken bezeichnet Der grundlegende Nutzen besteht darin da e alle Elementtypen in einer Bibliothek mit einheitlichen Anweisungen bearbeitet werden k nnen e gleichnamige Elemente existieren k nnen die sich nur durch Typ oder Versionsbe zeichnung unterscheiden e Versionsbezeichnungen automatisch erh ht werden e auf die Bibliothek von mehreren Benutzern simultan auch schr
191. ame SORTOUT darf nicht innerhalb eines Sortierprogramms verwendet werden 250 U3987 J 2125 8 Sortieren und Mischen Fixpunktausgabe und Wiederanlauf 10 3 Fixpunktausgabe f r Sortierprogramme und Wiederanlauf Die Angabe der RERUN Klausel Format 2 veranla t die Ausgabe spezieller Fixpunkte f r Sortierdateien Fixpunkte enthalten Informationen ber den Zustand des Sortiervorgangs Sie sind notwendig um ein vom Benutzer oder wegen Anlagenst rung abgebrochenes Programm wieder starten zu k nnen ohne den gesamten bisherigen Programmablauf wie derholen zu m ssen Die Ausgabe von Sortier Fixpunkten empfiehlt sich vor allem bei gro Ben Mengen von zu sortierenden Daten da auf diese Weise eine erfolgte Vorsortierung bei einem Programmabbruch nicht verlorengenht Format 2 der RERUN Klausel RERUN ON herstellername EVERY SORT OF sortierdateiname herstellername SYSnnn 000 lt nnn lt 200 Fixpunkte werden in eine Fixpunktdatei siehe Kap 11 ausgegeben die vom Sortierpro gramm mit dem Standard Dateinamen SORTCKPT Djjttt Tnnnn jj Jahr ttt laufender Tag des Jahres nnnn TSN des laufenden Prozesses und mit dem Standard Linknamen SORTCKPT eingerichtet wird siehe 6 ber den SPACE Operanden im SUPPORT Parameter des MODIFY FILE ATTRIBUTES Kommandos kann der Anwender die Gr e dieser Datei selbst bestimmen Die Fixpunktausgabe wird auf SYSOUT protokolliert Mel dung E301 siehe Kap 11 und 7 Den Zeitpunkt der Fi
192. ateien stellen PLAM Bibliotheken eine weitere wichtige Einga bequelle f r den COBOL85 Compiler dar Eigenschaften von PLAM Bibliotheken PLAM Bibliotheken sind PAM Dateien die mit der Zugriffsmethode PLAM Primary Library Access Method bearbeitet werden siehe 26 F r das Einrichten und Verwalten dieser Bibliotheken steht das Dienstprogramm LMS siehe 12 zur Verf gung Eine PLAM Bibliothek kann als Elemente nicht nur Quellprogramme oder Quellprogramm teile COPY Elemente sondern z B auch Module und ablauff hige Programme enthalten Die einzelnen Elementarten werden dabei durch Typbezeichnungen charakterisiert In einer PLAM Bibliothek k nnen u a Elemente folgender Typen abgelegt werden Typbezeichnung Inhalt der Elemente S Quellprogramme COPY Elemente Objektmodule oder Gro module ablauff hige Programme Prozeduren Bindelademodule LLMs druckaufbereitete Daten Listen u r oD Tabelle 2 1 PLAM Elementtypen Eine PLAM Bibliothek kann auch gleichnamige Elemente enthalten die sich durch Typ oder Versionsbezeichnung unterscheiden Die Vorteile der Datenhaltung in PLAM Bibliotheken sind Bis zu 30 Speicherplatz k nnen durch das Zusammenlegen verschiedener Element typen und zus tzliche Komprimierungstechniken eingespart werden Die Zugriffzeiten zu den verschiedenen Elementtypen derselben PLAM Bibliothek sind k rzer als die Zugriffszeiten bei der herk mmliche
193. ativen Satznummer bereits in der Datei vorhanden ist U3987 J 2125 8 209 Relative Dateien Dateiverarbeitung 9 3 6 Ein Ausgabezust nde Jeder Datei im Programm k nnen mit der FILE STATUS Klausel Datenfelder zugeordnet werden in denen das Laufzeitsystem nach jedem Zugriff auf die Datei Informationen dar ber hinterlegt ob die Ein Ausgabeoperation erfolgreich war und welcher Art ggf die dabei aufgetretenen Fehler sind Diese Informationen k nnen z B in den DECLARATIVES durch USE Prozeduren ausge wertet werden und gestatten eine Analyse von Ein Ausgabefehlern durch das Programm Als Erweiterung zum COBOL Standard bietet COBOL85 die M glichkeit in diese Analyse auch die Schl ssel der DVS Fehlermeldungen einzubeziehen Dadurch l t sich eine fei nere Differenzierung der Fehlerursachen erreichen Die FILE STATUS Klausel wird im FILE CONTROL Paragraphen der ENVIRONMENT DIVISION angegeben ihr Format ist siehe 1 FILE STATUS IS datenname 1 datenname 2 Dabei m ssen datenname 1 und falls angegeben datenname 2 in der WORKING STORAGE SECTION oder der LINKAGE SECTION definiert sein F r die Formate und die m glichen Werte dieser beiden Datenfelder gelten folgende Regeln datenname 1 mu als zwei Byte langes numerisches oder alphanumerisches Datenfeld erkl rt wer den also z B 01 datenname 1 PIC X 2 enth lt nach jeder Ein Ausgabeoperation auf die zugeordnete Datei einen zweistelli
194. atz wurde ber ALTERNATE KEY gelesen und es existiert bei sequentiel lem Weiterlesen ber denselben Schl ssel noch mindestens ein Nachfolgesatz mit identischem Schl sselwert Ein Satz mit ALTERNATE KEY WITH DUPLICATES wurde geschrieben und es gibt bereits f r mindestens einen Alternativschl ssel einen Satz mit identischem Schl sselwert Satzl ngenkonflikt Eine READ Anweisung wurde erfolgreich ausgef hrt Die L nge des gelesenen Datensatzes liegt jedoch nicht in den Grenzen die durch die Satzbeschreibunge der Datei festgelegt wurden OPEN Anweisung auf eine nicht vorhandene OPTIONAL Datei 10 Erfolglose Ausf hrung Endebedingung Es wurde versucht ein sequentielles READ auszuf hren Es war jedoch kein n chster logischer Datensatz vorhanden da das Dateiende erreicht war 21 22 23 24 Erfolglose Ausf hrung Schl sselfehlerbedingung Reihenfolgefehler f r eine Datei bei ACCESS MODE IS SEQUENTIAL 1 Der Wert des Satzschl ssels wurde zwischen der erfolgreichen Ausf hrung einer READ Anweisung und der Ausf hrung der nachfolgenden REWRITE Anweisung ge ndert 2 Bei aufeinanderfolgenden WRITE Anweisungen wurde die aufsteigende Fol ge von Satzschl sseln nicht eingehalten Doppelter Schl ssel Es wurde versucht eine WRITE Anweisung mit einem Prim rschl ssel auszuf h ren f r den innerhalb der Datei bereits ein Satz vorhanden ist Es wurde versucht einen Satz mit ALTERNATE KEY ohne WITH
195. aufzeitmodule die nur aus Kompatibi lt tsgr nden noch im COBOLS85 Laufzeitsystem vorhanden sein m ssen sowie diejenigen Module die f r Zugriffe auf das POSIX Dateisystem verwendet werden U3987 J 2125 8 351 Aufbau des COBOL85 Systems Anhang Name Funktion ITCNAID1 AID Anschlu modul Datenteil ITCNECE1 ENTRY CANCEL EXIT ITCNERFI1 Fehleranalyseroutine f r Ein Ausgabe ITCNINIT ILCS Initialisierung ITCNMAT1 Daten f r mathematische IML Funktionen ITCNMDPO OCCURS DEPENDING rekursiv ITCNPOVH COBOL85 Programm Manager ITCNSMGO SORT MERGE Anweisung ITCNTBS1 Tabellensortieren non sharable ITCNTBS2 Tabellensortieren Daten ITCSACAO ACCEPT Anweisung ITCSACXO ACCEPT Anweisung f r Umgebungsvariable Kommandozeile ITCSAID2 AID Anschlu modul Prozedurteil ITCSBEGO Programmsystem Initialisierungsroutine ITCSCCL1 CLOSE f r INITIAL CANCEL ITCSCHPO RERUN Klausel mit Angabe ganzzahl RECORDS ITCSCHP2 RERUN Klausel f r SORT Dateien und END OF REEL ITCSCLAO Vergleich ALL literal ITCSCLIO CLOSE Anweisung f r indizierte Dateien ITCSCLLO CLOSE Anweisung f r zeilensequentielle Dateien ITCSCLRO CLOSE Anweisung f r relative Dateien ITCSCLSO CLOSE Anweisung f r sequentielle Dateien ITCSCVBO Umwandlung gepackt dezimal nach bin r gt 15 Stellen ITCSCVDO Umwandlung bin r nac
196. auptprogramm das Programm das auf Sy stemebene aufgerufen wird und einem oder mehreren externen Unterprogrammen die so wohl in der Sprache des Hauptprogramms als auch in anderen Programmiersprachen ge schrieben sein k nnen Den hierzu erforderlichen Programmverkn pfungen dienen die Inter Language Communi cation Services ILCS ILCS ist Bestandteil des Common Runtime Environment CRTE und ist im CRTE Benutzerhandbuch 2 beschrieben Hinweis Abweichend von den ILCS Konventionen ist bei der bergabe mehrerer Parameter von einem COBOL Programm an ein aufgerufenes Programm das h chstwertige Bit der letzten Parameteradre konstante der Liste gesetzt es sei denn einer oder mehrere Parameter der Liste werden by value bergeben siehe 12 3 U3987 J 2125 8 257 Binden und Laden von Unterprogrammen Programmverkn pfungen 12 1 Binden und Laden von Unterprogrammen Den Namen eines Unterprogramms kann man in der CALL Anweisung entweder als Literal angeben oder als Bezeichner eines Datenfeldes das den Unterprogrammnamen enth lt Abh ngig von der Art des Unterprogrammaufrufs wird ein Programmsystem unterschied lich gebunden und geladen Unterprogrammaufruf CALL literal Der Name des Unterprogramms ist bereits zur bersetzungszeit festgelegt Der Compiler setzt auf diese Unterprogramme Externverweise ab die in anschlie enden Bindel ufen vom jeweils verwendeten Binder befriedigt werden Enth lt ein Programmsystem
197. b der Schreibmarke alle Zeichen der Eingabezeile U3987 J Z125 8 29 SDF Syntaxbeschreibung Steuerung des Compilers ber SDF 3 2 SDF Syntaxbeschreibung In den folgenden Tabellen wird die Metasyntax der Optionenformate erl utert Tabelle 3 1 Metazeichen In den Optionenformaten werden bestimmte Zeichen und Darstellungsformen verwendet deren Bedeutung in der folgenden Tabelle erl utert wird Zeichen Bedeutung Beispiele GROSSBUCHSTABEN Gro buchstaben bezeichnen Schl sselw rter Einige Schl ssel w rter beginnen mit LISTING STD SOURCE SYSDTA Das Gleichheitszeichen verbindet einen Operandennamen mit dem dazugeh renden Operandenwert LINE SIZE 132 Spitze Klammern kennzeichnen Variablen deren Wertevorrat durch Datentypen und ihre Zus tze be schrieben wird siehe Tabellen 3 2 und 3 3 lt integer 1 100 gt Unterstreichung Die Unterstreichung kennzeichnet den Standardwert eines Operan den MODULE LIBRARY OMF Der Schr gstrich trennt alternative Operandenwerte SHAREABLE CODE NO YES Runde Klammern kennzeichnen Operandenwerte die eine Struktur einleiten TEST SUPPORT AID Einr ckung Die Einr ckung kennzeichnet die Abh ngigkeit zu dem jeweils ber geordneten Operanden Der Strich kennzeichnet zusam mengeh rende Operanden einer Struktur Sein Verlauf zeigt Anfang und Ende einer Struktur an Inner halb ei
198. bbb LINK ccc BEIM SCHREIBEN EINES WIEDERANLAUFPUNKTES TRAT EIN FEHLER AUF RETURNCODE aaa DMS bbb LINK ccc Typ Anwenderfehler oder Systemfehler Bedeutung aaa einer der folgenden Werte in Register 15 04 Arbeitsbereich im Klasse 5 Speicher konnte nicht zugewiesen werden 08 Fehler in der Operandenliste des Benutzers 0C Fixpunktdatei ist nicht er ffnet 10 Keine Sekund rzuweisung oder ung ltiges Schreiben 14 FCB nicht PAM oder OPEN nicht INOUT oder OUTIN 18 Nicht behebbaren Fehler vom DVS erhalten 1C Fehler in der Katalogverwaltung 24 Fixpunkt konnte nicht gesetzt werden weil ein gemeinsamer Spei cherbereich verwendet wurde Makro ENAMP ist wirksam 28 Fixpunkt konnte nicht gesetzt werden weil eine Serialisierungs kennung vorhanden ist Makro ENASI ist wirksam 2C Fixpunkt konnte nicht gesetzt werden weil eine Ereigniskennung vorhanden ist Makro ENAEI ist wirksam 30 Fixpunkt konnte nicht gesetzt werden weil ein Contingency Pro ze definiert wurde Makro ENACO ist wirksam Verhalten Programm wird fortgesetzt Ma nahme Systemverwalter berater verst ndigen U3987 J 2125 8 319 Meldungen des COBOLB85 Systems COB9117 COB9117 COB9118 COB9118 LINK aaa NO ENTRY IN CATALOG ISSUE NEW SET FILE LINK COMMAND LINK aaa KEIN KATALOG EINTRAG BITTE NEUES SET FILE LINK KOMMANDO EINGEBEN Typ Anwenderfehler Bedeutung aaa Linkname Verhalten Programm unterbrochen Ma nahme G ltiges SET FILE
199. bbb Overlay Name ccc Zeilennummer ddd Unterbrechungsgewicht Verhalten bersetzung abgebrochen Ma nahme Systemverwalter berater verst ndigen SAVLST FILE aaa CREATED AND CLOSED SAVLST DATEI aaa ERZEUGT UND GESCHLOSSEN Typ Hinweis Bedeutung aaa Name der erzeugten Listendatei z B SRCLST COB85 programmname Verhalten bersetzung l uft weiter COMPILATION COMPLETED WITHOUT ERRORS DIE UEBERSETZUNG WURDE OHNE FEHLER BEENDET Typ Hinweis aad aad Typ Hinweis Bedeutung aaa COMOPT Anweisung Verhalten bersetzung l uft weiter 316 U3987 J 2125 8 Meldungen des COBOLB85 Systems COB9100 COB9100 COB9101 C0B9101 C0B9102 C0B9102 C0B9105 C0B9105 AWAITING REPLY ANTWORT WIRD ERWARTET Typ Hinweis Verhalten Programmablauf unterbrochen Ma nahme Antwort eingeben f r ACCEPT FROM CONSOLE COMPILATION UNIT ID aaa UBERSETZUNGSEINHEIT aaa Typ Hinweis Bedeutung Erg nzung zum Text der vorher ausgegebenen Meldung COMPILATION UNIT ID aaa PROCEDURE DIVISION LINE NUMBER bbb UBERSETZUNGSEINHEIT aaa PROCEDURE DIVISION ZEILENNUMMER bbb Typ Hinweis Bedeutung Erg nzung zum Text der vorher ausgegebenen Meldung REPLY TERMINATE OR D DUMP BITTE TERMINATE ODER D DUMP EINGEBEN Typ Anwender oder Systemfehler der durch die vorhergehende Meldung beschrieben wurde Verhalten Programm wartet auf Antwort Ma nahme T f r Programmabbruch D f
200. be der Adre und Querver weisliste unterbunden werden falls bei der bersetzung eine Fehlermeldung mit einem Severity Code gt 2 auftritt LAYOUT STD Das Layout der erzeugten Listen entspricht den Standardeinstellungen der PARAMETERS Struktur LAYOUT PARAMETERS Mit den folgenden Parametern l t sich das Layout der erzeugten Listen ver ndern LINES PER PAGE 64 lt integer 20 128 gt Mit diesem Parameter kann die maximale Zeilenzahl pro Seite der Protokoll Listen festgelegt werden Ein Seitenwechsel wird ausgef hrt wenn diese Zeilenzahl erreicht ist LINE SIZE 132 lt integer 119 172 gt Dieser Parameter legt die maximale Anzahl von Zeichen fest die pro Zeile gedruckt wird U3987 J 2125 8 47 LISTING Option SDF Steuerung des Compilers OUTPUT SYSLST Mit dieser Angabe werden die erzeugten Listen in die tempor re Systemdatei SYSLST geschrieben von der sie automatisch nach Task Ende d h nach LOGOFF auf den Drucker ausgegeben werden OUTPUT STD FILES Mit dieser Angabe werden die angeforderten Listen in eigene katalogisierte Dateien ausgegeben Die so erzeugten katalogisierten Dateien haben Standardnamen die in der rechten Spalte der folgenden Tabelle genannt sind programmname wird aus dem PROGRAM ID Namen abgeleitet und ggf auf 16 Zeichen gek rzt Liste Dateiname Steueranweisungsliste OPTLST COB85 programmname Quellprogrammliste Bibliotheksliste SRCLST COB85 pr
201. bedeutet F r UPROG1 und UPROGS3 werden Externverweise abgesetzt UPROG2 wird dynamisch nachgeladen F r diese Programmkonstellation werden im folgenden die M glichkeiten gezeigt das Pro gramm zum Ablauf zu bringen Die einzelnen Programme sind als Objektmodule unter den Elementnamen MAINPROG UPROG1 UPROG2 und UPROGS3 in der Bibliothek BENUTZER PROGRAMME abgelegt 260 U3987 J 2125 8 Programmverkn pfungen Binden und Laden von Unterprogrammen 1 Verwendung des DBL dynamisches Binden SET FILE LINK BLSLIBOO SYSLNK CRTE 1 SET FILE LINK COBOBJCT BENUTZER PROGRAMME 2 START PROGRAM MODULECLIB BENUTZER PROGRAMME ELEM MAINPROG 3 RUN MODE ADVANCED CALT LIB YES UNRES EXT DELAY LOAD INF REFERENCES Zuweisung der Laufzeitbibliothek Zuweisung der Bibliothek aus der das Unterprogramm UPROG2 dynamisch nach geladen wird Aufruf des Objektmoduls mit dem Hauptprogramm MAINPROG Aus der hier ange gebenen Bibliothek BENUTZER PROGRAMME befriedigt der Bindelader die Ex ternverweise auf die Unterprogramme UPROGI1 und UPROG3 Die Operanden UNRESOLVED EXTERNAL DELAY und LOAD INFORMATION REFERENCES m ssen immer dann angegeben werden wenn die Ladeeinheit noch offene be dingte Externverweise WXTRNs enth lt siehe 11 Dies ist z B dann der Fall wenn im Unterprogramm weitere Dateien mit anderer Dateiorganisation als im Hauptprogramm verarbeitet werden sollen U3987 J 2125 8 2
202. beitung X zul ssige Kombinationen von OPEN Anweisung und SHARED UPDATE Angabe Aus der Tabelle geht hervor da die Angabe von SHARED UPDATE YES f r INPUT Da teien berfl ssig ist falls alle Anwender OPEN INPUT verwenden Wenn SHARED UPDATE YES f r INPUT Dateien trotzdem angegeben werden mu da mindestens ein Anwender OPEN I O verwendet wird das nachfolgend beschriebene Sper ren bzw Entsperren nicht durchgef hrt Die Angabe SHARED UPDATE YES ist nur f r die gleichzeitige Aktualisierung von einer oder mehreren ISAM Dateien OPEN l O durch zwei oder mehr Dialogbenutzer sinnvoll und auch notwendig 236 U3987 J 2125 8 Dateiverarbeitung Simultanverarbeitung SHARED UPDATE Aktualisierungen im Stapelbetrieb sollten nacheinander ablaufen um sowohl Logikfehler als auch Laufzeitverl ngerungen zu vermeiden unn tige Angabe von SHARED UP DATE YES kostet Laufzeit und CPU Zeit Bei Angabe von SHARED UPDATE YES wird automatisch auch WRITE CHECK YES ge setzt d h die ISAM Puffer werden nach jeder nderung sofort zur ckgeschrieben Dies ist aus Datensicherheits und Eindeutigkeitsgr nden erforderlich erh ht aber wesentlich die Anzahl der Ein Ausgaben Um Datenkonsistenz bei gleichzeitiger Aktualisierung einer ISAM Datei durch mehrere Be nutzer zu gew hrleisten benutzt das COBOL85 Laufzeitsystem den Sperr und Entsperr mechanismus der DVS Zugriffsmethode ISAM Dieser Mechanismus sorgt f r das Sperren bzw Entsperr
203. bgebrochen Ma nahme Vertr gliches Laufzeitsystem als gemeinsam benutzbares Laufzeitsystem installieren U3987 J Z125 8 329 Meldungen des COBOL85 Systems COB9148 PROGRAM NAME IN CALL OR CANCEL STATEMENT VIOLATES SYSTEM CONVENTION FOR ESD SYMBOLS COB9148 DER PROGRAMMNAME IN EINER CALL ODER CANCEL ANWEISUNG ENTSPRICHT NICHT DEN KONVENTIONEN FUER ESD SYMBOLE Typ Anwenderfehler Verhalten CALL ohne EXCEPTION Klausel Programmabbruch CALL mit EXCEPTION Klausel Fortsetzung mit EXCEPTION Klausel CANCEL Fortsetzung mit Anweisung nach CANCEL Ma nahme Programmnamen richtig schreiben C0B914 INCOMPATIBLE DATA IN NUMERIC EDITED ITEM C0B9149 IN NUMERISCH EDITIERTEM DATENFELD SIND INKOMPATIBLE DATEN Typ Anwenderfehler Ko Verhalten Programm abgebrochen Ma nahme Programm ndern 330 U3987 J Z125 8 Meldungen des COBOLB85 Systems COB9151 PC aaa STATUS bbb FILE ccc LINK ddd DMS SIS eee NO USE ERROR PROCEDURE COB9151 PC aaa STATUS bbb DATEI ccc LINK ddd DMS SIS eee KEINE USE PROZEDUR Typ Anwenderfehler oder Systemfehler schwerwiegender Fehler bei Ein Ausgabe oder Programmierfehler keine USE Prozedur kein INVALID KEY oder keine AT END Klausel Bedeutung aaa aktueller Stand des Befehlsz hlers bbb aktueller COBOL FILE STATUS ccc Dateiname ddd Linkname eee DVS Fehlercode Verhalten Programm abgebrochen Ma nahme abh ngig vom DVS Fehler Code korr
204. chen Binden mit dem DBL mu der Bibliothek eine BLSLIBrn mit niedri gerer nn zugewiesen werden als den nachrangig einzubindenden CRTE Bibliotheken Bei Programmentwicklung in der POSIX Shell mit dem cobol Kommando wird die CRTE Bibliothek automatisch eingebunden Einschr nkungen Die Verarbeitung einer BS2000 oder POSIX Datei unterliegt folgenden Einschr nkungen keine Kennsatzbehandlung m glich keine Fixpunktausgabe f r Wiederanlauf m glich keine Simultanverarbeitung m glich Die Dateiattribute werden beim ersten ffnen der Datei endg ltig festgelegt und k n nen sp ter nicht mehr ge ndert werden Relative Dateien die die BS2000 Zugriffsmethode UPAM verwenden k nnen nicht verarbeitet werden Der erweiterte Ein Ausgabezustand enth lt statt des BS2000 DVS Code den POSIX SIS Code siehe S 293 290 U3987 J 2125 8 COBOL85 und POSIX Verarbeiten von POSIX Dateien Zuweisen einer POSIX Datei Die Zuweisung einer POSIX Datei erfolgt mit einer SDF P Variablen namens SYSIOL externer name wobei SYSIOL ein fester Namensbestandteil ist und externer name den Linknamen aus der ASSIGN Klausel des Programms enthalten mu externer name darf keine Kleinbuchstaben enthalten Die SDF P Variable wird mit dem Kommando SET VARIABLE folgenderma en initialisiert POSIX dateiname ESET VAR SYSIOL externer name lt POSIX relativer pfadname POSIXCabsoluter pfadname dateiname bezeichne
205. chen READ der gelesene Satz durch das Programm aktualisiert und mit REWRITE zur ckgeschrieben oder mit DELETE logisch gel scht werden Dabei darf zwischen READ und REWRITE bzw DELETE keine weitere Ein Ausgabeanweisung f r diese Datei ausgef hrt und das RECORD KEY Schl sselfeld nicht ver ndert werden ACCESS MODE IS RANDOM erm glicht es wie bei OPEN INPUT mit READ S tze wahlfrei zu lesen Ferner k nnen mit WRITE neue S tze in die Datei eingef gt und mit REWRITE bzw DELETE bereits in der Datei vorhandene S tze berschrieben bzw gel scht werden unabh ngig davon ob sie vorher gelesen wurden Das RECORD KEY Schl sselfeld mu dazu vor jeder WRITE REWRITE oder DELETE Anweisung mit dem Schl ssel des Satzes versorgt werden der hinzugef gt berschrieben oder gel scht werden soll Wird bei WRITE der Schl ssel eines bereits vorhandenen Satzes bzw bei REWRITE oder DELETE der Schl ssel eines nicht existierenden Satzes angegeben dann tritt eine INVALID KEY Bedingung auf und WRITE oder REWRITE bzw DELETE verzweigt zur INVALID KEY Anweisung oder zur vereinbarten USE Pozedur ACCESS MODE IS DYNAMIC gestattet es die Datei sowohl sequentiell als auch wahlfrei zu verarbeiten Die jeweilige Zugriffsart wird dabei ber das Format der READ Anweisung gew hlt 228 U3987 J 2125 8 Dateiverarbeitung Indizierte Dateien 9 4 5 Positionieren mit START In indizierten wie auch in relativen Dateien kan
206. chen und ein SET FILE LINK Kommando angefordert im Stapelbetrieb die AT END Bedingung ausgel st bei OPEN I O oder OPEN EXTEND eine Datei mit dem Namen FILE COB85 linkname angelegt ASSIGN TO externer name gibt die Systemdatei an die der Datei zugewiesen wird oder legt den Linknamen fest ber den eine katalogisierte Datei zugeordnet werden kann externer name mu entweder ein zul ssiges Literal ein in der DATA DIVISION definierter zul ssiger Datenname oder ein g ltiger Herstellername aus dem Format der ASSIGN Klausel sein siehe 1 ORGANIZATION IS INDEXED legt fest da die Datei indiziert organisiert ist ACCESS MODE IS zugriffsart bestimmt die Art in der auf die S tze zugegriffen werden kann F r zugriffsart sind folgende Angaben m glich siehe auch 9 4 4 SEQUENTIAL legt fest da die S tze nur sequentiell verarbeitet werden RANDOM vereinbart da auf die S tze nur wahlfrei zugegriffen wird DYNAMIC gestattet da auf die S tze wahlweise sequentiell oder wahlfrei zugegriffen wird Die ACCESS MODE Klausel ist optional Wird sie nicht angegeben nimmt der Compiler ACCESS MODE IS SEQUENTIAL an 218 U3987 J 2125 8 Dateiverarbeitung Indizierte Dateien RECORD KEY IS prim rschl ssel gibt das Feld innerhalb des Datensatzes an das den prim ren Satzschl ssel enth lt prim rschl ssel mu als Datenfeld innerhalb der zugeh rigen Datensatzerkl rung verein bart werd
207. d Betriebssysteminformationen 152 U3987 J 2125 8 Schnittstelle COBOL Programm BS2000 Compiler und Betriebssysteminformationen Beispiel 8 6 Datenstrukturen f r die bernahme von Compiler und Betriebs system Informationen durch die ACCEPT Anweisung 02 02 02 02 02 01 PROZESS INFOR OMPILER NAME ROGRAMM NAME 01 CPU ZEIT IN SEKUND C COMPILER VERSIO UEBERSETZUNGS DATUM UEBERSETZUNGS Z P 01 COMPILER INFORMATION EIT ATION 02 PROZESS ART 88 BATCH PROZESS 88 DIALOG PROZESS 02 PROZESS FOLGENUMMER 02 BENUTZERKENNUNG 02 ABRECHNUNGSNUMMER 02 PRIVILEGIERUNGSKENNZEICHEN 88 SYSTEMVERWALTER 88 BENUTZER 02 BETRIEBSSYSTEMVERSION 02 PROZESSORNAME 02 SYSTEMVERWALTER PRIVILEGIEN 01 TERMINAL INFORMATION 02 STATIONS NAME 02 ZEICHEN PRO ZEILE 02 ZEILEN PRO SCHIRM 02 ZEICHEN PRO SCHIRM 02 GERAETE TYP 01 AKTUELLES DATUM 05 JAHR 05 FILLER 05 MONAT 05 FILLER 05 TAG 05 TAG DES JAHRES 05 FILLER T V U U U F a T e E U a AE T e T Ar T a E o GR Me v K v Aa o aae o ae II ann EY GP I ep I ca EELS CARS CI a A E E e E a E a E a E X 10 X 10 10 8 X 30 9 6 V9 4 9 4 X 8 X 8 x 10 X 8 80 X 8 95 95 905 X 4 X 4 X 2 X 2 X 3 VALUE B VALUE D VALUE S VALUE U U3987
208. d Exportieren der Umgebungsvariablen in der POSIX Shell export COPYLNK USERIDXY copy1 USERIDXY copy2 Durch den Doppelpunkt wird die Umgebungsvariable COPYLNK mit den Namen von zwei Dateiverzeichnissen initialisiert die nach den POSIX Dateien mit den COPY Texten TEXT1 TEXT2 durchsucht werden sollen Zuerst wird das Verzeichnis USERIDXY copy1 anschlie end das Verzeichnis USERIDXY copy2 durchsucht U3987 J 2125 8 275 Steuerung des Compilers COBOLB85 und POSIX 13 3 Steuerung des Compilers Der COBOL85 Compiler kann in der POSIX Shell mit dem Kommando cobol aufgerufen und mit Optionen gesteuert werden Aufruf Syntax cobol option eingabedatei Eingaberegeln 1 Optionen und Eingabedateien k nnen in der Kommandozeile gemischt angegeben werden Optionen ohne Argumente z B c v g d rfen gruppiert werden z B cvg Unzul ssig ist dagegen die Gruppierung der diversen Argumente einer Option z B von C Option und Argument m ssen durch ein Leerzeichen getrennt werden z B C EXPAND COPY YES 4 Folgende Optionen k nnen mehrfach in der Kommandozeile vorkommen O CE on BE a Ta Alle anderen Optionen d rfen nur einmal verwendet werden Wenn dennoch mehr als eine dieser Optionen angegeben wird gilt die jeweils letzte Option in der Kommando zeile Standardm ig d h wenn nicht mit der Option c der Compilerlauf nach der bersetzung beendet wird und wenn die bersetzung ohne schwe
209. d PRISMA UTM bietet Wiederanlauffunktionen bei Anwendungsabbruch Netzausfall Netzst rung oder Bildschirmst rungen UTM unterst tzt neben der Dialogverarbeitung auch die Asyn chronverarbeitung wobei der Startzeitpunkt der Programme bestimmt werden kann Es wird eine Steuerung zur Aufteilung von Ressourcen Tasks angeboten ber eine integrierte Steuerung von Druckausgaben auf Remote Drucker wird ein gesi chertes Druckverfahren angeboten Durch Teilhaberbetrieb kann eine gro e Anzahl Terminals mit UTM Anwendungen arbei ten F r Abrechnungszwecke steht ein auf den Teilhaberbetrieb abgestimmtes Accounting Ver fahren zur Verf gung UTM bietet umfangreiche Datenschutzmechanismen f r den Zugang zu Anwendungen und die Auswahl von Teilfunktionen einer Anwendung UTM dient als Basis f r eine Reihe von Siemens Nixdorf Softwareprodukten Dokumentation UTM Handb cher 28 31 308 U3987 J Z125 8 15 Meldungen des COBOL85 Systems Der COBOL85 Compiler und das COBOLB8S Laufzeitsystem protokollieren umfassend alle Fehler die w hrend der bersetzung und beim Ablauf eines COBOL Programmes auftre ten Die dabei ausgegebenen Meldungen lassen sich in zwei Gruppen einteilen 1 Meldungen die sich auf Fehler im COBOL Quellprogramm beziehen Sie werden vom Compiler am Ende der bersetzung in einer Fehlerliste und oder Fehlerdatei ausgege ben und haben folgenden Aufbau Msg Index Source Seq No Severity Code Error T
210. d haben die voreingestellten Werte BY PROG oder NONE U3987 J 2125 8 165 Grundlagen Dateiverarbeitung 9 1 4 Platten und Dateiformate Plattenformate Das BS2000 unterst tzt Datentr ger die unterschiedlich formatiert sind Key Datentr ger f r das Abspeichern von Dateien in denen die Blockkontrollinforma tion in einem separaten Feld Pamkey pro 2Kbyte Datenblock steht Diese Dateien besitzen das Blockformat PAMKEY Non Key Datentr ger f r Dateien in denen keine separaten Pamkey Felder existieren sondern die Blockkontrollinformation entweder fehlt Blockformat NO oder im jeweili gen Datenblock untergebracht ist Blockformat DATA Ab BS2000 V11 0 werden NK Datentr ger nach der Mindestgr e der bertragungseinheit Transfer Unit unterschieden NK2 Datentr ger haben die bisherige Transfer Unit von 2KByte NK4 Datentr ger haben eine Transfer Unit von 4KByte Das Blockformat f r eine COBOL Datei l t sich mit dem BLOCK CONTROL INFO Oper anden des SET FILE LINK Kommandos bestimmen SEI FILESLINK 4 3 BLOCK CONTROL INFO BY PROGRAM BY CATALOG WITHIN DATA BLOCK PAMKEY Hinweis Dateien mit BLOCK CONTROL INFO NO k nnen mit COBOL Programmen weder er zeugt noch gelesen werden F r NK ISAM Dateien gibt es ab BS2000 V11 0 zwei weitere Operandenwerte n mlich WITHIN DATA 2K BLOCK WITHIN DATA 4K BLOCK Die ausf hrliche Beschreibung des BLOCK CONTROL INFO Operanden der verschiede
211. da ten werden berschrie ben Der Platz f r das Vorschubzeichen wird vom Compiler reserviert und ist dem Be nutzer nicht zug nglich F r diesen Druk kertyp ist die Angabe der LINAGE Klausel in der Dateierkl rung m glich Es sind sowohl WRITE Anweisungen mit als auch ohne ADVANCING Angabe f r eine Datei zul ssig Der Platz f r das Vorschubzeichen wird vom Compiler reserviert und ist dem Benutzer nicht zug nglich Die LINAGE Klausel ist f r diese Datei nicht erlaubt Die Verwendung einer WRITE Anweisung mit und ohne ADVANCING Angabe f r ein und dieselbe Datei ist nicht zul ssig Sollte dennoch dieser Fall eintreten wird f r S tze ohne ADVANCING Angabe ein WRITE AFTER ADVANCING 1 LINE implizit durchgef hrt Es d rfen WRITE Anweisungen mit und ohne ADVANCING Angabe gemischt ver wendet werden In beiden F llen beginnt jedoch die Benutzerinformation des Druk kersatzes erst ab dem zweiten Zeichen des Datensatzes Tabelle 9 5 Verwendung symbolischer Ger tenamen in Verbindung mit der WRITE Anweisung 180 U3987 J 2125 8 Dateiverarbeitung Sequentielle Dateien Vorschubsteuerzeichen f r Druckdateien Bei allen Druckdateien deren ASSIGN Klauseln nicht die Angabe literal enthalten wird das Steuerbyte bei der Ausf hrung einer WRITE Anweisung automatisch mit einem Siemens Nixdorf spezifischen Druckervorschubzeichen versorgt das den in der ADVANCING An gabe gew nschten Vorschub bewirkt siehe die
212. digen das an dieser Anlage unter dem Namen SYSLNK CRTE katalogisiert ist 5 END schlie t die Eingabe der Steueranweisungen ab und leitet den Bindevorgang ein nach dessen Abschlu informiert TSOSLNK ber das erstellte Programm 108 U3987 J 2125 8 Binden Laden Starten Statisches Binden mit TSOSLNK Binden von segmentierten Programmen mit berlagerungsstruktur Durch geeignete COBOL Sprachmittel siehe 1 kann der Compiler veranla t werden den Maschinencode f r ein Quellprogramm nicht als ein einziges Objektmodul sondern in Teile zerlegt in Form mehrerer Objektmodule auszugeben Dieser Vorgang hei t Segmentierung die dabei entstehenden Programmteile nennt man Segmente Beim Binden eines segmentierten Programmes l t sich eine berlagerungsstruktur defi nieren siehe auch 10 Abgesehen vom Root Segment das w hrend des gesamten Programmlaufs im Speicher bleibt kann der Benutzer die einzelnen Segmente programmgesteuert nachladen lassen wenn sie f r den Ablauf erforderlich sind Dabei k nnen sich Segmente gegenseitig ber lagern d h nacheinander einen gemeinsamen Speicherbereich belegen Welche Segmen te einander berlagern k nnen wird durch Steueranweisungen beim Binden des Pro gramms festgelegt Da jedoch der Ablaufteil des BS2000 von sich aus ein Programm in Seiten d h Teile von 4096 byte gliedert und bei der Programmausf hrung jeweils nur die Seiten in den Haupt speicher l dt die gerade f
213. durch die Satzbeschreibungen der Datei festgelegt wurden Erfolgreicher OPEN INPUT I O EXTEND auf eine Datei mit OPTIONAL Angabe in der SELECT Klausel die zum Zeitpunkt der Ausf hrung der OPEN Anweisung nicht vorhanden war 10 14 Erfolglose Ausf hrung Endebedingung Es wurde versucht eine READ Anweisung auszuf hren Es war jedoch kein n ch ster logischer Datensatz vorhanden da das Dateiende erreicht war sequentielles READ Es wurde zum ersten Mal versucht eine READ Anweisung f r eine nicht vorhan dene Datei mit OPTIONAL Angabe auszuf hren Es wurde versucht eine READ Anweisung auszuf hren Das durch RELATIVE KEY beschriebene Datenfeld ist aber zu klein um die relative Satznummer aufzu nehmen sequentielles READ 22 23 24 Erfolglose Ausf hrung Schl sselfehlerbedingung Doppelter Schl ssel Es wurde versucht eine WRITE Anweisung mit einem Schl ssel auszuf hren f r den in der Datei bereits ein Satz vorhanden ist Datensatz nicht gefunden oder Satzschl ssel Null Es wurde versucht anhand eines Schl ssels mit einer READ START DELETE oder REWRITE Anweisung auf einen Datensatz zuzugreifen der in der Datei nicht vorhanden ist oder der Zugriff erfolgte mit Satzschl ssel Null berschreiten der Bereichsgrenzen Es wurde versucht eine WRITE Anweisung au erhalb der vom System festgeleg ten Bereichsgrenzen einer relativen Datei auszuf hren unzureichende Sekund r zuweisung im FIL
214. durchsucht in der sie in der Kom mandozeile angegeben werden 1 BLSLIB Diese Option veranla t den Binder PLAM Bibliotheken zu durchsuchen die mit den Shell Umgebungsvariablen BLSLIBrn 00 lt nn lt 99 zugewiesen wurden Die Umgebungsvaria blen m ssen vor Aufruf des Compilers mit den Bibliotheksnamen versorgt und mit dem POSIX Kommando export exportiert werden Die Bibliotheken werden in aufsteigender Reihenfolge nn durchsucht Alle mit den BLSLIB Umgebungsvariablen zugewiesenen Bibliotheken werden intern in einer einzigen RESOLVE Anweisung als Liste an den BINDER bergeben Beispiel export BLSLIBOO RZ99 SYSLNK COB 999 export BLSLIBOl MYTEST LIB cobol mytest o 1 BLSLIB M MYTEST 282 U3987 J 2125 8 COBOLB85 und POSIX Steuerung des Compilers 13 3 5 Testhilfe Option 9 Der Compiler erzeugt zus tzliche Informationen LSD f r die Testhilfe AID Standardm ig werden keine Testhilfeinformationen erzeugt 13 3 6 C spezifische Option CC option option wird an den C Compiler cC89 Kommando weitergereicht Wenn die zu bergebende Option ein Argument enth lt darf entgegen der blichen Optioneneingabe zwischen dem Optionsnamen und dem Argument kein Leerzeichen ste hen Die Optionen des c89 Kommandos sind ausf hrlich im Handbuch POSIX Kommandos des C und des C Compilers 35 beschrieben Beispiel CC XIs CC Flabs U3987 J Z125 8 283 Steuerung des Compilers COBOLB85
215. e Namenspr fung durch den Compiler findet nicht statt Dieser Operand ist in COBOL BC nicht verf gbar 42 U3987 J 2125 8 SDF Steuerung des Compilers MODULE OUTPUT Option MODULE OUTPUT LIBRARY ELEMENT Mit diesem Parameter wird angegeben in welcher PLAM Bibliothek LIBRARY und unter welchem Elementnamen ELEMENT das Modul abgelegt werden soll LIBRARY lt full filename 1 54 gt Name der PLAM Bibliothek in die das Modul geschrieben werden soll Wenn die PLAM Bibliothek noch nicht existiert wird sie automatisch angelegt ELEMENT STD Der Elementname des Moduls wird aus dem PROGRAM ID Namen abgeleitet Die Bildung der standardm igen Elementnamen ist in Abschnitt 2 3 1 Tabelle 2 3 dargestellt VERSION Angabe der Versionsbezeichnung VERSION UPPER LIMIT Wird keine Versionsbezeichnung oder UPPER LIMIT angegeben erh lt das Ele ment die h chstm gliche Versionsnummer vom LMS angezeigt mit VERSION INCREMENT Das Element erh lt die gegen ber der h chsten vorhandenen Version um 1 inkre mentierte Versionsnummer vorausgesetzt die h chste vorhandene Versionsbe zeichnung endet mit einer inkrementierbaren Ziffer Andernfalls ist die Versionsbe zeichnung nicht inkrementierbar In diesem Fall wird UPPER LIMIT angenommen und eine entsprechende Fehlermeldung ausgegeben Beispiel h chste vorhandene Version durch INCREMENT erzeugte Version ABC1 ABC2 ABC und Fehlermeldung ABC9
216. e Feldl n ge abgeschnitten Dies gilt nicht f r CPU TIME Dort wird immer eine ad quate nume rische bertragung durchgef hrt In welcher L nge und ggf mit welcher Struktur das Empfangsfeld zu vereinbaren ist h ngt von der Art der Information ab die es aufnehmen soll Die Formate der einzelnen Informationstypen k nnen der Zusammenstellung im folgenden Abschnitt entnommen werden 150 U3987 J 2125 8 Schnittstelle COBOL Programm BS2000 Compiler und Betriebssysteminformationen Inhalt und Struktur der Informationen Die folgende Tabelle gibt Aufschlu ber den Aufbau der Informationen die einem COBOL Programm ber die Herstellernamen COMPILER INFO CPU TIME PROCGESS INFO TERMINAL INFO und DATE ISO4 zur Verf gung gestellt werden Zeichenpositionen Informationen f r COMPILER INFO 1 10 Name des Compilers 11 20 Version des Compilers Format Vzz zbzzzz z Ziffer oder Leerzeichen b Buchstabe oder Leerzeichen z B V02 2A 21 30 Datum der bersetzung Format JJJJ MM TT z B 1995 12 31 31 38 Uhrzeit der bersetzung Format HH MM SS z B 23 59 59 39 68 Name der bersetzungseinheit PROGRAM ID Name Information f r CPU TIME PIC 9 6 V9 4 CPU Zeit auf zehntausendstel Sekunden genau Zeichenpositionen Informationen f r PROCESS INFO 1 Auftragstyp Inhalt B f r Batch D f r Dialog 2 5 TSN Nummer 6 13 Benutzerkennung
217. e Version oder HIGHEST EXISTING angegeben liest der Strukturierer aus dem Element mit der h chsten vorhandenen Versionsnummer 90 U3987 J 2125 8 COBOLBS5 Strukturierer SOURCE Option VERSION UPPER LIMIT Der Strukturierer liest aus dem Element mit der h chstm glichen Versionsnummer VERSION lt alphanum name 1 24 gt Der Strukturierer liest aus dem Element mit der angegebenen Versionsbezeich nung U3987 J 2125 8 91 STRUCTURIZER ACTION Option COBOLB85 Strukturierer 5 3 2 STRUCTURIZER ACTION Option Diese Option bestimmt Informationsumfang Layout und Ausgabemedium des verwende ten Tools Format STRUCTURIZER ACTION PRETTY PRINT BEAUTIFY PRETTY PRINT CROSS REFERENCE YES NO INFORMATION STD PARAMETERS PARAMETERS SEQUENCE AREA YES NO IDENTIFICATION AREA YES NO COPY EXPANSION YES NO SUB SCHEMA YES NO LINE NUMBERS YES NO STATEMENTS YES NO LAYOUT STD PARAMETERS PARAMETERS LOWER CASE KEYWORDS YES NO INDENTATION AMOUNT 2 lt integer 1 8 gt BOLD FACE YES NO BLOCK FRAMES EBCDIC CHARS GRAPHIC NONE LINES PER PAGE 64 lt integer 20 144 gt AS NEEDED LINE SIZE 132 lt integer 52 132 gt OUTPUT STD FILES lt full filename 1 54 gt SYSLST BEAUTIFY INFORMATION STD PARAMETERS PARAMETERS SEQUENCE AREA YE
218. e Zeichen ab Spalte 1 Der erste Zugriffsversuch auf eine Jobvariable veranla t die Ausgabe der Meldung COB9120 nach SYSOUT Ein fehlerhafter Zugriff auf eine Jobvariable in einer BS2000 Installation die Jobvaria blen unterst tzt f hrt zur Ausgabe der Meldung COB9197 nach SYSOUT siehe Tabel le in Abschnitt 6 6 146 U3987 J 2125 8 Schnittstelle COBOL Programm BS2000 Jobvariablen Beispiel 8 4 Kommunikation ber Jobvariable Im folgenden Auftrag wird die Jobvariable KONTROLLE ABLAUF sowohl von einem COBOL Programm als auch auf Kommandoebene verwendet Abh ngig vom Inhalt der Jobvariable kann das Programm unterschiedliche Verarbeitungszweige durchlaufen und ggf den Inhalt der Jobvariable aktualisieren Auch ein anderer Auftrag selbst unter einer anderen Benutzerkennung kann auf diese Jobvariable zugreifen falls sie mit dem Kom mando CREATE JV USER ACCESS ALL USERS katalogisiert wurde SET JV LINK LINK NAME AKTUELL JV NAME KONTROLLE ABLAUF 1 START PROGRAM PROG ARBEIT 1 Programmausschnitt ENVIRONMENT DIVISION CONFIGURATION SECTION SPECIAL NAMES TERMINAL IS T JV AKTUELL IS FELDJV 2 DATA DIVISION WORKING STORAGE SECTION 01 AGDA PIC X 6 3 01 HALT JV 4 05 AKT DAT PIC X 6 05 FILLER PIC xX 20 05 AKT NUM PIC 9 4 PROCEDURE DIVISION ACCEPT INHALT JV FROM FELDJV 5 ACCEPT TAGD
219. e im Quellprogramm erkannten Fehler angeh ren ob der Compiler selbst fehlerfrei abl uft Dieses Verhalten ist vor allem dann von Bedeutung wenn COBOLB5 in einer Prozedur auf gerufen oder von Monitor Jobvariablen berwacht wird Die folgende Tabelle gibt einen berblick ber die m glichen F lle deren Auswirkung auf den weiteren Ablauf der Prozedur und den Inhalt der R ckkehrcode Anzeige der Monitor Jobvariablen Fehler keine Fehler Fehlerklasse F Fehlerklasse Fehlerklasse 0 Fehlerklasse 1 Fehlerklasse 2 Fehlerklasse 3 Verhalten in Prozeduren Beendigung Dump R ckkehrcode Anzeige in Monitor Jobvariablen normal keine Verzweigung normal normal normal normal normal nein 2004 keine Verzweigung au er bei expliziter Unterdr ckung der Listen bzw Modul erzeugung normal nein 2005 Verzweigung zum n chsten STEP ABEND ABORT LOGOFF Kommando Tabelle 2 4 Beendigungsverhalten des Compilers U3987 J 2125 8 23 bersetzung von Quellprogramm Folgen berblick 2 6 bersetzung von Quellprogramm Folgen F r die bersetzung von Quellprogramm Folgen sequence of programs gelten einige Be sonderheiten Steueranweisungen Die vor dem Aufruf des Compilers angegebenen Steueranweisungen gelten f r alle Pro gramme der Quellprogramm Folge Zwischen den Programmen einer Folge d rfen keine Steueranweisungen stehen Listenausgabe ber SYSLST Die angeforderten Listen w
220. e m ssen durch Kommas voneinander getrennt werden e Reicht f r die Optioneneingabe eine Zeile nicht aus stehen zwei M glichkeiten zur Ver f gung Mit einem Bindestrich nach dem zuletzt eingegebenen Zeichen k nnen Fort setzungszeilen erzeugt werden Alle Optionen k nnen fortlaufend d h ohne R cksicht auf das Zeilenende ge schrieben werden Optionen k nnen als Schl sselwort oder als Stellungsoperanden angegeben werden e Schl sselwort Operanden Die Schl sselw rter m ssen formatgetreu angegeben werden k nnen aber soweit ab gek rzt werden da sie innerhalb der jeweiligen SDF Umgebung eindeutig sind Un zul ssige Abk rzungen und Schreibfehler werden als Syntaxfehler gemeldet und k n nen sofort korrigiert werden 26 U3987 J 2125 8 Steuerung des Compilers ber SDF Compileraufruf und Eingabe der Optionen Beispiel 3 1 START COBOL8S COMPILER SOURCE BSP COMPILER ACTION MODULE GENERATIONCSHAREABLE CODE YES ACTIVATE FLAGGING ANS85 TEST SUPPORT AID Die maximal m gliche Abk rzung in der Beispielumgebung lautet S COB C S BSP C A MOD SH Y A F ANS85 T A Stellungsoperanden Die Operanden Schl sselw rter d h jene Schl sselw rter die im Format links vom Gleichheitszeichen stehen und das Gleichheitszeichen k nnen weggelassen werden sofern die festgelegte Reihenfolge der Operanden und ihrer Werte exakt ei
221. eger 1 100 gt Mit einer Ganzzahl wird angegeben ab welcher Fehlerzahl der bersetzungslauf abge brochen werden soll Gez hlt wird ab der im MINIMAL WEIGHT Parameter der LISTING Option angegebenen Fehlerklasse Standardwert NOTE siehe 3 3 6 Die vorgegebene Fehlerzahl kann ggf berschritten werden da der Abbruch der ber setzung immer erst nach Ablauf eines Compilersegments erfolgt siehe Anhang U3987 J 2125 8 55 MONJV Option SDF Steuerung des Compilers 3 3 10 MONJV Option Mit dieser Option kann der Benutzer eine Jobvariable zur berwachung des Compilerlaufs einrichten Format MONJV NONE lt full filename 1 54 gt MONJV NONE lt full filename 1 54 gt Mit lt full filename gt definiert der Benutzer eine Monitorjobvariable W hrend des berset zungslaufs hinterlegt der Compiler in der R ckkehrcode Anzeige dieser Jobvariablen einen Code der ber aufgetretene Fehler w hrend des Compilerlaufs Aufschlu gibt 56 U3987 J 2125 8 SDF Steuerung des Compilers RUNTIME OPTIONS Option 3 3 11 RUNTIME OPTIONS Option Die Parameter dieser Option steuern bestimmte Eigenschaften des ablauff higen COBOL Programms Format RUNTIME OPTIONS STD PARAMETERS PARAMETERS ACCEPT STMT INPUT UNMODIFIED UPPERGASE CONVERTED FUNCTION ERR RETURN UNDEFINED STD VALUE SORTING ORDER STD BY DIN ACCEPT DISPLAY ASSGN SYSIPT AND SYSLST TERMINAL E
222. ehe Abschnitt 12 1 e Das COBOL Programm ist mit COMOPT GENERATE SHARED CODES YES in SDF SHAREABLE CODE YES bersetzt Der Compiler erzeugt ein nicht gemeinsam benutzbares Datenmodul und ein gemein sam benutzbares Codemodul siehe 6 7 Im Datenmodul existiert ein Externverweis auf das zugeh rige Codemodul U3987 J 2125 8 101 Aufgaben des Binders Binden Laden Starten 6 1 Aufgaben des Binders Der Vorgang in dessen Verlauf diese Externverweise befriedigt d h die zus tzlich ben tigten Module mit dem aus der bersetzung resultierenden Modul zu einer ablauff higen Einheit verkn pft werden hei t Binden das Dienstprogramm das diese Aufgabe ausf hrt wird als Binder bezeichnet Ein Binder verarbeitet entweder das Ergebnis einer bersetzung Objektmodul oder Binde lademodul oder ein bereits durch einen Bindelauf vorgebundenes Modul das ein aus meh reren Objektmodulen bestehendes Gro modul oder ein Bindelademodul sein kann Objekt module und Gro module werden unter dem Begriff Bindemodul zusammengefa t Dieser Begriff wird im folgenden immer dann verwendet wenn das zu beschreibende Objekt so wohl ein Objektmodul als auch ein Gro modul sein kann Damit die beim Binden erzeugte Einheit ablaufen kann mu ein Lader sie in den Speicher bringen so da der Rechner zum Code zugreifen und ihn ausf hren kann F r die Aufgaben des Bindens und Ladens stehen im Binder Lader Starter System des BS2000 folgende Fu
223. eibend zugegriffen wer den kann e differenzierte Zugriffsrechte je Element vergeben werden k nnen e der Zugriff auf Elemente berwacht werden kann e f r die meisten w hrend eines SW Entwicklungsprozesses anfallenden Datenelemente eine einheitliche Datenhaltung mit einheitlichen Zugriffsfunktionen existiert und e die Dienstprogramme und Compiler auf diese Datenhaltung zugreifen und die einzel nen Elemente direkt verarbeiten k nnen Damit unterst tzt LMS die Programmerstellung pflege und dokumentation Struktur der Bibliotheken Eine Programmbibliothek ist eine Datei mit Unterstruktur Sie enth lt Elemente und ein Inhaltsverzeichnis der gespeicherten Elemente Ein Element ist eine logisch zusammengeh rige Datenmenge z B eine Datei eine Proze dur ein Bindemodul oder ein Quellprogramm Jedes Element in der Bibliothek ist einzeln ansprechbar Jede Bibliothek hat einen Eintrag im Systemkatalog Der Benutzer kann den Namen und andere Dateimerkmale wie z B die Schutzfrist oder die gemeinsame Benutzbarkeit festle gen 302 U3987 J 2125 8 Nutzbare Software f r COBOL Anwender Library Maintenance System LMS Das Speichern mehrerer Dateien in einer Bibliothek entlastet den Systemkatalog da dort nur die Bibliothek eingetragen ist und nicht jedes Element Au erdem spart es Speicher platz da die Elemente in der Bibliothek in komprimierter Form abgespeichert werden Unterst tzung mehrerer Versionen Bei Verwe
224. eichnung Soll die Versionsbe zeichnung inkrementierbar sein mu mindestens das letzte Zeichen eine Ziffer sein siehe obiges Beispiel U3987 J 2125 8 97 COPY STATEMENTS Option COBOLB85 Strukturierer 5 3 3 COPY STATEMENTS Option Mit dieser Option wird die Behandlung von COPY Anweisungen festgelegt Format COPY STATEMENTS FLAGGED IGNORED COPY STATEMENTS FLAGGED Falls ein in einer COPY Anweisung genanntes Element in keiner der zugewiesenen COPY Bibliotheken gefunden werden kann erscheint eine Fehlermeldung Die Ausgabe der COPY Elemente in die Strukturliste steuert der INFORMATION Parame ter COPY EXPANSION der Pretty Print Funktion Bei der Beautify Funktion werden die COPY Elemente generell nicht ausgegeben COPY STATEMENTS IGNORED Es werden nur die COPY Anweisungen selbst ausgegeben aber keine COPY Bibliotheken er ffnet und elemente eingelesen 98 U3987 J 2125 8 COBOLBS5 Strukturierer DIAGNOSTICS Option 5 3 4 DIAGNOSTICS Option Diese Option steuert Umfang und Ausgabemedium der Meldungen Format DIAGNOSTICS YES NO YES MINIMAL WEIGHT FATAL ERROR ERROR WARNING NOTE OUTPUT STD FILES SYSLST SYSOUT YES NO DIAGNOSTICS YES NO Bei YES werden Meldungen ausgegeben MINIMAL WEIGHT FATAL ERROR ERROR WARNING NOTE Es wird festgelegt ab welchem Gewicht die Meldungen ausgegeben werden Bei Auf treten eines Fatal
225. eien ist ausschlie lich die Angabe ACCESS MODE IS SEQUEN TIAL zul ssig Da dies auch die Voreinstellung des Compilers ist kann die ACCESS MODE Klausel hier entfallen U3987 J 2125 8 175 Sequentielle Dateien Dateiverarbeitung 9 2 4 Er ffnungsarten und Verarbeitungsformen Mit den Sprachmitteln eines COBOL Programms lassen sich sequentielle Dateien erstellen lesen durch Anf gen neuer Datens tze am Dateiende erweitern und durch Ab ndern vorhandener Datens tze aktualisieren Welche Ein Ausgabeanweisungen im Programm im einzelnen f r eine Datei zul ssig sind wird dabei durch ihren Er ffnungsmodus bestimmt der in der OPEN Anweisung angege ben wird OPEN OUTPUT Als Ein Ausgabeanweisung ist WRITE mit folgendem Format erlaubt BEFORE WRITE CFROM C sere AFTER LAT END OF PAGE CNOT AT END OF PAGE LEND WRITE In diesem Modus k nnen sequentielle Dateien auf Platte oder Band neu erstellt werden Jede WRITE Anweisung schreibt dabei einen Satz in die Datei Hinweise zur Erzeugung von Druckerdateien sind in Abschnitt 9 2 5 zu finden OPEN INPUT bzw OPEN INPUT REVERSED als Ein Ausgabeanweisung ist READ mit folgendem Format erlaubt READ NEXT CINTO AT END NOT AT END LEND READ In diesem Modus k nnen sequentielle Dateien von Platte oder Band gelesen werden Jede READ Anweisung liest dabei einen Satz aus der Datei Die Angabe OPEN INPUT REVER
226. eines der Operanden FCBTYPE RECFORM oder RECSIZE falls RECFORMSF nicht mit den ent sprechenden expliziten oder impliziten Programmangaben bzw mit den ent sprechenden Angaben im SET FILE LINK Kommando berein Erfolglose Ausf hrung Logischer Fehler 41 Es wurde versucht eine OPEN Anweisung f r eine Datei auszuf hren die bereits er ffnet ist 42 Es wurde versucht eine CLOSE Anweisung f r eine Datei auszuf hren die nicht er ffnet ist 43 Bei Zugriff auf eine Plattenspeicherdatei die mit OPEN l O er ffnet wurde Die letzte vor Ausf hrung einer REWRITE Anweisung ausgef hrte Ein Ausgabe Anweisung war keine erfolgreich ausgef hrte READ Anweisung 44 berschreiten der Bereichsgrenzen 1 Es wurde versucht eine WRITE Anweisung auszuf hren Die L nge des Datensatzes liegt jedoch nicht in dem f r diese Datei zul ssi genBereich 2 Es wurde versucht eine REWRITE Anweisung auszuf hren Der zur ckzuschreibende Datensatz hat jedoch nicht die gleiche L nge wie der zu ersetzende Datensatz 46 Es wurde versucht eine READ Anweisung f r eine Datei auszuf hren die sich im Er ffnungsmodus INPUT oder I O befindet ein n chster g ltiger Datensatz steht aber nicht zur Verf gung Grund 1 Die vorhergehende READ Anweisung war erfolglos ohne eine Ende Bedin gung zu verursachen oder 2 Die vorhergehende READ Anweisung hat eine Ende Bedingung verursacht U3987 J 2125 8 191 Sequentielle Dateien Date
227. eisung k nnen die im SPECIAL NAMES Paragraphen vereinbarten Bedingungsnamen von Schalterzu st nden enthalten und sie auf diese Weise f r die Steuerung des Programmablaufs auswerten SET Format 3 siehe 1 kann ber die im SPECIAL NAMES Paragraphen verein barten Merknamen auf Schalter zugreifen und ihre Zust nde ver ndern 140 U3987 J Z125 8 Schnittstelle COBOL Programm BS2000 Auftrags und Benutzerschalter Beispiel 8 2 Verwendung von Auftragsschaltern Im folgenden Ausschnitt aus einem Dialogauftrag sieht eine DO Prozedur verschiedene Verarbeitungsvarianten vor die abh ngig vom Zustand der Auftragsschalter 12 und 13 aus gef hrt werden Die Schalter werden sowohl auf Betriebssystem Ebene als auch auf Pro gramm Ebene ver ndert und ausgewertet Zun chst kann Auftragsschalter 12 auf Betriebssystem Ebene gesetzt werden um die Ver arbeitung innerhalb der folgenden DO Prozedur zu steuern Dort wird auf Programmebene sein Zustand ausgewertet und abh ngig vom Programmablauf Auftragsschalter 13 ge setzt Dieser wird anschlie end auf Betriebssystem Ebene ausgewertet MODIFY JOB SWITCHES ON 12 OFF 13 1 DO PROG SYSTEM Die Datei PROG SYSTEM enth lt 2 folgende Kommandos BEGIN PROC START PROGRAM PROG 1 3 Ausschnitt aus PROG 1 SPECIAL NAMES TSW 12 IS SCHALTER 12 ON IS EIN 12 4 TSW 13 IS SCHALTER 13 ON IS EIN 13 PROCEDURE DIVISION IF EIN 12 PERFORM
228. eisung der Sy stemdatei SYSDTA ist nachfolgend dargestellt Zuweisen des Quellprogramms mit dem ASSIGN SYSDTA Kommando Standardm ig erwartet der Compiler die Quelldaten von der Systemdatei SYSDTA SYSDTA kann vor dem Aufruf des Compilers einer katalogisierten Datei oder einem Biblio thekselement zugewiesen werden Das Kommando hierf r lautet dateiname ASSIGN SYSDTA LTO FILE LIB ELEM LIB bibliothek ELEM e ement Ausf hrliche Informationen zum ASSIGN SYSDTA Kommando k nnen im Handbuch Be nutzerkommandos SDF 3 nachgelesen werden Beispiel 2 2 Einlesen des Quellprogramms aus einer katalogisierten Datei ASSIGN SYSDTA QUELL EINXEINS 1 Compileraufruf 2 bersetzung ASSIGN SYSDTA PRIMARY 3 1 Der Systemdatei SYSDTA wird die katalogisierte Datei QUELL EINXEINS zuge wiesen in der sich das zu bersetzende Quellprogramm befindet 2 Der Compiler wird geladen und gestartet Er verarbeitet die Daten die von SYSDTA kommen 3 Die Systemdatei SYSDTA wird wieder auf ihre Prim rzuweisung zur ckgesetzt U3987 J 2125 8 13 Quelldaten Eingabe berblick 2 2 2 Beispiel 2 3 Einlesen eines Quellprogramms aus einer Bibliothek ASSIGN SYSDTA LIBRARY ELEMENT CLIB PLAM LIB ELEM BEISP3 1 Compileraufruf 2 bersetzung ASSIGN SYSDTA PRIMARY 3 1 Die Systemdatei SYSDTA wird dem Element BEISP3 in der PLAM Bibliothek PLAM LIB zugewiesen
229. eisung ohne WITH NO LOCK Zusatz Gibt Benutzer AWITH NO LOCK nicht an und ist der entsprechende Datensatz vorhan den kann eine READ bzw START Anweisung nur dann erfolgreich ausgef hrt wer den wenn der entsprechende Datensatz nicht bereits durch Benutzer B gesperrt ist War die Ausf hrung der Anweisung erfolgreich wird der Datensatz gesperrt Vor Auf hebung der Sperre kann Benutzer B denselben oder irgendeinen anderen Datensatz desselben Datenblocks nur mit WITH NO LOCK lesen oder auf ihn positionieren er kann aber keinen Datensatz dieses Datenblocks aktualisieren Hat Benutzer B die Da tei mit OPEN INPUT er ffnet kann er S tze des gesperrten Datenblocks immer lesen Aktualisierung von Datens tzen Soll durch eine REWRITE oder DELETE Anweisung ein Datensatz aktualisiert wer den mu der betroffene Datensatz unmittelbar zuvor durch eine READ Anweisung ohne WITH NO LOCK Zusatz gelesen werden Nach dieser READ und vor der REWRITE bzw DELETE Anweisung darf f r dieselbe ISAM Datei keine weitere Ein Ausgabeanweisung ausgef hrt werden Zwischen diesen beiden Anweisungen d rfen f r andere ISAM Dateien deren SET FILE LINK Kommando SHARED UPDATE YES enth lt und die zur gleichen Zeit mit OPEN l O er ffnet sind nur READ oder START Anweisungen mit WITH NO LOCK Zusatz ausgef hrt werden Anweisungen f r andere ISAM Dateien ohne SHARED UPDATE YES und OPEN O d rfen ausgef hrt wer den Ein Versto gegen diese Vorschrift
230. eitern und durch Ab ndern oder L schen vorhandener Datens tze aktualisieren Welche Ein Ausgabeanweisungen im Programm jeweils f r eine Datei zul ssig sind wird dabei durch ihren Er ffnungsmodus bestimmt der in der OPEN Anweisung angegeben wird OPEN OUTPUT Als Ein Ausgabeanweisung ist unabh ngig von der Angabe in der ACCESS MODE Klau sel WRITE mit folgendem Format erlaubt WRITE LFROM LINVALID KEY CNOT INVALID KEY CEND WRITE In diesem Modus k nnen relative Dateien ausschlie Blich neu erstellt geladen werden Ab h ngig von der vereinbarten Zugriffsart hat die WRITE Anweisung dabei folgende Wirkung ACCESS MODE IS SEQUENTIAL erlaubt eine relative Datei sequentiell zu erstellen WRITE schreibt dabei beginnend mit 1 die S tze mit l ckenlos aufsteigenden relativen Satznummern in die Datei Das RELATIVE KEY Schl sselfeld wenn angegeben wird von WRITE nicht ausge wertet es enth lt jeweils die automatisch hochgez hlte relative Satznummer des zu letzt geschriebenen Satzes Da keine Leers tze erzeugt werden ist es nicht m glich in eine sequentiell erzeugte Datei nachtr glich Datens tze einzuf gen ACCESS MODE IS RANDOM oder DYNAMIC beide Angaben haben hier gleiche Bedeutung erm glicht es eine Datei wahlfrei zu erstellen WRITE schreibt dabei jeden Datensatz an die Position in der Datei die des sen Satznummer angibt Das RELATIVE KEY Schl sselfeld mu daher vor jeder W
231. eiverarbeitung Zuweisung ber das SET FILE LINK Kommando Voraussetzung daf r ist da in der ASSIGN Klausel nicht der Name einer Systemdatei an gegeben wurde Die Systemdateien werden durch herstellername 1 PRINTER oder her stellername 2 PRINTERO1 PRINTER9Y9 SYSIPT SYSOPT bezeichnet Die Zuweisung ber das SET FILE LINK Kommando kann also nur erfolgen wenn in der ASSIGN Klausel der Dateikettungsname Linkname der Datei in der Form literal oder datenname angegeben ist Mit literal wird der Linkname programmstatisch angegeben Im Datenfeld datenname kann der Linkname dynamisch also w hrend des Programm ablaufs ver nderbar angegeben werden Um eine katalogisierte Datei zuzuweisen mu der Anwender f r diese Datei vor dem Pro grammaufruf ein SET FILE LINK Kommando absetzen in dessen LINK NAME Operanden er den vereinbarten Linknamen angibt Mit Hilfe weiterer Operanden des SET FILE LINK Kommandos k nnen damit zugleich auch Dateimerkmale festgelegt wer den Jeder Linkname mu den Anforderungen des BS2000 an einen Linknamen gen gen siehe dazu 4 d h insbesondere er mu alphanumerisch sein er darf aus h chstens acht Zeichen bestehen und darf keine Kleinbuchstaben enthalten Beispiel 9 1 Zuweisung einer katalogisierten Datei ber das SET FILE LINK Kommando Eintrag im FILE CONTROL Paragraphen des COBOL Programms LINKLIT SELECT STAMM DATEI ASSIGN TO STAMMLNK Bei der berset
232. eivereinbarung SET FILE LINK RECORD FORMAT FIXED BUFFER LENGTH STD SIZE 2 BLOCK CONTROL INFO WITHIN DATA BLOCK maximale Satzl nge nach Formel in Tab 9 2 4096 2 16 12 1 2 1 4 4046 abgerundet auf die n chste durch vier teilbare Zahl 4044 byte K SAM und NK SAM Dateien Bei SAM Dateien gibt es keine berlaufbl cke Deshalb k nnen SAM Dateien im K For mat die die maximale Satzl nge ausn tzen nicht in NK SAM Dateien umgewandelt wer den COBOL Programme die mit solchen f r K SAM Dateien maximalen Satzl ngen ar beiten sind mit NK SAM Dateien nicht mehr ablauff hig In folgender Tabelle wird dargestellt wieviel Platz bei SAM Dateien pro logischem Block f r Datens tze zur Verf gung steht Dateiformat RECORD FORMAT maximal nutzbarer Bereich K SAM VARIABLE BUF LEN 4 FIXED UNDEFINED BUF LEN NK SAM VARIABLE FIXED UNDEFINED BUF LEN 16 Tabelle 9 3 Maximal nutzbarer Blockbereich bei SAM Datei Der Abzug von 4 byte bei K SAM Dateien mit variabler Satzl nge resultiert daraus da die logischen Bl cke solcher Dateien ein Blockl ngenfeld dieser L nge enthalten das nicht zur BUF LEN gerechnet wird 168 U3987 J 2125 8 Dateiverarbeitung Sequentielle Dateien 9 2 Sequentielle Dateiorganisation 9 2 1 Es gibt zwei Arten sequentiell organisierter Dateien satzsequentielle und zeilensequentiel le Dateien Die folgende allgemeine Beschreib
233. elldaten Eingabe bei COMOPT Steuerung Eingaben in den Compiler k nnen folgende Quelldaten sein Quellprogramme einzelne Quellprogramme oder Quellprogramm Folgen Quellprogrammteile COPY Elemente COMOPT Anweisungen Der Compiler erwartet die Quelldaten von der System Eingabedatei SYSDTA SYSDTA ist standardm ig im Dialogbetrieb der Datensichtstation und im Stapelbetrieb der SPOOLIN bzw der ENTER Datei zugewiesen Sollen Quelldaten direkt eingegeben werden so ist keine Steuerung der Eingabe erforder lich Der Compiler wird aufgerufen und die Steueranweisungen und Quellprogramm direkt eingegeben Kommen Quelldaten aus einer katalogisierten Datei bzw Bibliothek so mu die Eingabe datei SYSDTA explizit zugewiesen werden F r die Steuerung der Eingabe von COPY Ele menten stehen eigene Steueranweisungen zur Verf gung Die Zuweisung mit dem ASSIGN SYSDTA Kommando und die Eingabe von COPY Elementen ist in Abschnitt 2 2 beschrieben Zuweisen des Quellprogramms mit der END Anweisung Die Eingabe von Quellprogrammen und Steueranweisungen kann auch ohne Verwendung des ASSIGN SYSDTA Kommandos erfolgen Nach dem Aufruf erwartet der Compiler die Eingabe ber SYSDTA von der Datensichtstation Der Benutzer kann wenn der Stern in Spalte 1 erscheint Quellcode oder Compiler Optionen eingeben Alle eingegebenen Zei chen die nicht eine g ltige COMOPT Steueranweisung darstellen interpretiert der Compi ler als Quellcode Mit der EN
234. eln f r die Simultanaktualisierung 1 Das Lesen und Positionieren ohne bzw mit WITH NO LOCK Zusatz erfolgt wie bei ISAM Dateien 2 Aktualisierung von Datens tzen Soll durch eine REWRITE bzw DELETE Anweisung ein Datensatz aktualisiert wer den mu der betroffene Datensatz wie bei ISAM Dateien unmittelbar zuvor durch eine READ Anweisung ohne WITH NO LOCK Zusatz gelesen werden Zwischen bei den Anweisungen darf f r dieselbe Datei keine weitere Anweisung ausgef hrt werden Anweisungen f r andere PAM Dateien sind jedoch anders als bei ISAM Dateien zu l ssig aufgrund der dateispezifischen Zugriffskoordinierung 3 Wartezeiten bei einer Sperre Die maximale Wartezeit auf die Freigabe eines gesperrten Blocks betr gt 999 Sekun den Nach Ablauf dieser Zeit wird falls vorhanden die USE AFTER STANDARD ERROR Prozedur angesprungen oder das Programm mit der Fehlermeldung COB9151 beendet FILE STATUS 93 und DVS Fehlerschl ssel D9BO oder D9B1 4 Freigabe eines gesperrten Datensatzes Die Entsperrung eines gesperrten Datenblocks kann mit denselben Anweisungen be wirkt werden wie bei ISAM Dateien jedoch m ssen sich alle Anweisungen auf dieselbe Datei beziehen Im Unterschied zu ISAM Dateien bewirkt also eine Anweisung f r eine PAM Datei keine Entsperrung von Datenbl cken einer anderen PAM Datei 244 U3987 J 2125 8 Dateiverarbeitung Simultanverarbeitung SHARED UPDATE Hinweise 1 Soll in einem Programm e
235. en Laden Starten Programmbeendigung R ckkehr Fortsetzung Code Fehler steuerbar Verhalten in Anzeige nummer 2 Kurzbeschreibung des Fehlers mit Option Dump Prozeduren 0100 keine Vom Laufzeitsystem wurde kein nein keine Fehler erkannt Verzweigung 1120 COB9120 Jobvariablen nicht verf gbar ja Verzweigung zum n chsten i i STEP 1121 COB9121 End of File bei ACCEPT ja 1122 COB9122 ja ABEND ABORT 1123 COB9123 fehlerhaftes Argument in einer ja oder 1124 COB9124 Standardfunktion ja LOGOFF 1125 COB9125 ja Kommando 1126 COB9126 ja 1127 COB9127 ja 1128 COB9Y128 Anwender Returncode Users nein Return Code ist gesetzt 1131 COB9131 Jobvariablen ja ACCEPT auf leere Jobvariable 1132 COB9132 falsche Parameteranzahl CALL ja 1133 COB9133 Programmablauf in nein BS2000 Version lt 10 0 1134 COB9134 Sort Fehler ja 2140 COB9140 fehlerhafte Teilfeldselektion ja nein ja 2142 COB9142 GO TO ohne ALTER nein 2143 COB9143 Freigabedatum f r Datentr ger noch nein nicht erreicht 2144 COB9144 Tabelle Subskript Indexbereich ja berschritten 2145 COB9145 Tabelle mit DEPENDING ON Ele ja ment Subskript Indexbereich berschritten 2146 COB9Y146 COBOLB85 Laufzeitsystem ist nein inkompatibel zum Objektprogramm 2148 COB9Y148 CALL nicht ausf hrbar nein 2149 COB9149 Inkompatible Daten in numerisch nein editiertem Feld
236. en siehe unten Au er beim sequentiellen Lesen mu prim rschl ssel vor jeder Ein Ausgabeanweisung mit dem Prim rschl ssel des Satzes versorgt werden der bearbeitet werden soll ALTERNATE RECORD KEY IS sekund rschl ssel Ab der BS2000 Version 10 0A k nnen mit COBOL Programmen auch Dateien verarbeitet werden deren Datens tze au er dem obligatorischen Prim rschl ssel RECORD KEY einen oder mehrere Sekund rschl ssel ALTERNATE RECORD KEY enthalten Sind in einer Datei Sekund rschl ssel definiert kann der Benutzer auf die Datens tze ent weder ber den Prim rschl ssel oder ber den die Sekund rschl ssel zugreifen sekund rschl ssel mu als Datenfeld innerhalb der zugeh rigen Datensatzerkl rung ver einbart werden siehe unten FILE STATUS IS statusfelder gibt die Datenfelder an in denen das Laufzeitsystem nach jedem Zugriff auf die Datei In formationen dar ber hinterlegt ob die Ein Ausgabeoperation erfolgreich war und welcher Art ggf die dabei aufgetretenen Fehler sind Die statusfelder m ssen in der WORKING STORAGE oder der LINKAGE SECTION ver einbart werden Ihr Format und die Bedeutung der einzelnen Zustandscodes werden in Ab schnitt 9 4 6 beschrieben Die FILE STATUS Klausel ist optional Wird sie nicht angegeben stehen dem Programm die oben erw hnten Informationen nicht zur Verf gung BLOCK CONTAINS blockl ngenangabe legt die maximale Gr e eines logischen Blocks fest Sie
237. en Eingabe bei COMOPT Steuerung 2 22 2nsnen nennen nenn 61 Tabelle der COMOPT Operanden 2 2 22 sen nennen 64 COBOLB85 Strukturierer z snaunenn nun en nn nn 77 Quelltext Aufbereitung Beautify Funktion 2 222usse nennen nenn 79 Strukturliste vom Quellprogramm Pretty Print Funktion 22222220 0 83 SDF Optionen zur Steuerung des COBOL85 Strukturierers 2 2222222 90 Binden Laden Starten z2unannennann nun nenn nn nenn 101 Aufgaben des Binders t eaa TEE ernennen nn nen 102 Statisches Binden mit TSOSLNK 222222 n essen en enennnn 105 Binden mit dem BINDER non nnn nananana 110 Dynamisches Binden und Laden mit dem DBL 2 2 2 n seen nn 112 Laden und Starten von ablauff higen Programmen 2222er nennen 115 Programmbeendigung 2 22 22 22 ai aaae E E E E 116 U3987 J Z125 8 409 Inhalt 6 7 Gemeinsam benutzbare COBOL Programme 2 n sn nn 120 7 Testhilfen f r den Programmablauf seen annen nun nenn nn nn 123 7 1 Dialogtesthilfe AID oHu none een nenn nennen nennen nn 124 7 2 Testhiliezeil n 4 44 aan ieh hehe 131 8 Schnittstelle zwischen COBOL Programmen und BS2000 z run0 133 8 1 Ein Ausgabe ber Systemdateien 2 nun sennneeen nennen nenn 133 8 2 Auftrags und Benutzerschalter 22222222 nen een nen 139 8 3 JobVvari ablen sene penga a
238. en der Datenbl cke in denen die durch die Anweisungen READ WRITE REWRITE oder DELETE angesprochenen Datens tze liegen Ein Datenblock ist das Vielfache einer PAM Seite 2048 byte das durch den BUFFER LENGTH Parameter im SET FILE LINK Kommando implizit oder explizit beim Erzeugen der Datei vereinbart wurde siehe 9 1 1 Ist im folgenden von Datensatzsperre die Rede ist immer die Sperre des ganzen Blocks in dem dieser Datensatz liegt gemeint F r die Simultanverarbeitung von ISAM Dateien gibt es eine Formaterweiterung der READ bzw START Anweisung die jedoch nur wirksam wird wenn im SET FILE LINK Kommando SHARED UPDATE YES angegeben und die Datei mit OPEN l O er ffnet ist Formaterweiterung f r alle Formate READ dateiname WIT START dateiname WIT NO LOCK NO LOCK Regeln f r die Simultanaktualisierung 1 READ oder START Anweisung mit WITH NO LOCK Zusatz Gibt Benutzer AWITH NO LOCK an und ist der entsprechende Datensatz vorhanden wird dieser gelesen bzw wird auf diesen positioniert ungeachtet einer etwa durch ei nen anderen Benutzer bereits gesetzten Sperre Der Datensatz wird nicht gesperrt Eine REWRITE bzw DELETE Anweisung kann auf einen so gelesenen Satz nicht ausgef hrt werden Ein simultaner Benutzer B kann denselben Datensatz sowohl lesen als auch aktualisie ren U3987 J 2125 8 237 Simultanverarbeitung SHARED UPDATE Dateiverarbeitung READ oder START Anw
239. en des Bibliotheksnamens gebildet Falls in der COPY Anweisung kein Bibliotneksname vereinbart wurde k nnen bis zu zehn Bibliotheken mit den Standard Linknamen COBLIB COBLIB1 bis COBLIB9 verkn pft wer den Der Compiler durchsucht dann der Reihe nach die zugewiesenen Bibliotheken bis er das jeweils gesuchte COPY Element findet 14 U3987 J 2125 8 berblick Quelldaten Eingabe Je nach Formulierung der COPY Anweisung im Quellprogramm sind folgende Verkn pfun gen n tig COPY Anweisung SET FILE LINK Kommando COPY textname textname bis zu 30 Zeichen langer Elementname SET FILE LINK ELLINK NAME standard linkname ELFILE NAME ibname standard liinkname COBLIB COBLIB1 COBLIB9Y libname Name der katalogisierten Biblio thek in der das COPY Element ge speichert ist COPY textname OF bibliothek bibliothek bis zu 30 Zeichen langer Bibliotheksname SET FILE LINK LINK NAME linkname FILE NAME libname linkname die ersten acht Zeichen von bibliothek libname Name der katalogisierten Biblio thek in der das COPY Element ge speichert ist Eingabe von COPY Elementen aus dem POSIX Dateisystem Wenn das POSIX Subsystem vorhanden ist k nnen dem Compiler auch COPY Texte aus dem POSIX Dateisystem eingegeben werden Dies erfolgt mittels einer SDF P Variablen mit dem Standardnamen SYSIOL COBLIB bzw SYSIOL bibliotheksname Je nach Formu lierung der COPY Anweisung im Quellprogramm
240. en f hrt zu einer erfolglosen REWRITE bzw DELETE Anweisung mit FILE STATUS 94 Wartezeiten bei einer Sperre Hat Benutzer A aufgrund einer erfolgreich ausgef hrten READ oder START Anwei sung einen Datensatz gesperrt und versucht Benutzer B auf denselben Datensatz oder irgendeinen anderen aus demselben Datenblock eine READ oder START Anweisung ohne WITH NO LOCK Zusatz auszuf hren so f hrt dies f r letzteren nicht sofort zum Mi erfolg Benutzer B wird in eine Warteschlange eingeordnet in der er auf die Freiga be der Sperre durch Benutzer A wartet Erst wenn eine maximale Wartezeit abgelaufen und die Entsperrung innerhalb dieser Frist nicht erfolgt ist gilt die Anweisung als erfolg los und FILE STATUS 93 wird gesetzt Wurde die Sperre vor Ablauf der Wartezeit auf gehoben so kann Benutzer B mit dem erfolgreichen Aufruf fortfahren Freigabe eines gesperrten Datensatzes Ein Benutzer beh lt eine Datensatzsperre solange bei bis er eine der folgenden An weisungen ausf hrt erfolgreiche REWRITE oder DELETE Anweisung auf den gesperrten Datensatz 238 U3987 J 2125 8 Dateiverarbeitung Simultanverarbeitung SHARED UPDATE _WRITE Anweisung auf eine ISAM Datei deren SET FILE LINK Kommando SHARED UPDATE YES enth lt und die mit OPEN l O er ffnet ist d h auf die selbe Datei die den gesperrten Datensatz enth lt oder auf eine andere ISAM Da tei Entsperrung erfolgt auch bei Auftreten der INVALID KEY Bedingung
241. en stan dardm ig ber die Systemdatei SYSOUT auf die Datensichtstation ausgegeben Kapitel 14 enth lt die kommentierten Texte aller vom Compiler ausgegebenen COB90xx Meldungen U3987 J 2125 8 21 Steuerungsm glichkeiten des Compilers berblick 2 4 Steuerungsm glichkeiten des Compilers Die Quelldaten Eingabe die Eigenschaften des Moduls die Ausgabe von Meldungen und Listen sowie die Ausgabe des Moduls lassen sich durch Anweisungen an den COBOL85 steuern Der COBOL85 Compiler kann auf zwei Arten gesteuert werden e durch Optionen im SDF Syntaxformat oder e durch COMOPT Anweisungen Der Benutzer entscheidet sich mit der Gestaltung des Compiler Aufrufkommandos f r eine der beiden Steuerungsarten Aufrufkommandos Steuerungsart START COBOL85 COMPILER optionen SDF Steuerung Expert Modus SDF Steuerung Men Modus START COBOL85 COMPILER SDF Steuerung Men Modus START PROGRAM COBOL85 COMOPT Steuerung START COBOL85 COMPILER keine Eingabe des Quellprogramms von SYSDTA Tabelle 2 3 Aufrufkommando und Steuerungsart Die SDF Steuerung ist in Kapitel 3 die COMOPT Steuerung in Kapitel 4 ausf hrlich be schrieben Die Steuerung des Compilers im POSIX Subsystem ist in Kapitel 13 beschrieben 22 U3987 J 2125 8 berblick Beendigung des Compilerlaufs 2 5 Beendigung des Compilerlaufs Das Beendigungsverhalten des COBOLB85 h ngt davon ab welcher Klasse di
242. en und Ausgabeziel PLAM Bibliothek oder kata logisierte Datei fest Unter anderem k nnen folgende Operanden angegeben wer den SYMTEST MAP oder SYMTEST ALL erlauben es dem Benutzer beim Testen mit der Dialogtesthilfe AID die symbo lischen Namen aus dem Quellprogramm zu verwenden Voraussetzung daf r ist da COBOL85 beim bersetzen durch eine entspre chende Steueranweisung veranla t wurde LSD Informationen zu erzeugen SYMTEST ALL weist den Binder an diese Informationen sofort an das Pro gramm weiterzugeben w hrend SYMTEST MAP bewirkt da im Testfall LSD Informationen aus dem Objektmodul nachgeladen werden k nnen siehe dazu I LOADPT XS legt die Ladeadresse des Programms im Adre raum oberhalb 16 Mbyte fest Diese Angabe ist nur m glich wenn ausschlie lich Objektmodule gebunden werden die in den oberen Adre raum geladen werden k nnen ENTRY START einsprungstelle vereinbart den Startpunkt des Programmlaufs Diese Angabe wird ben tigt falls beim Binden zu einem ablauff higen Programm das COBOL Hauptpro gramm nicht als erstes eingebunden wird einsprungstelle ist dann der ggf auf 7 Stellen verk rzte PROGRAM ID Name mit dem Suffix Die Anweisungen PROGRAM und MODULE siehe unten schlie en sich gegen seitig aus MODULE MOD veranla t den Binder die eingelesenen Objektmodule zu einem Gro modul zu ver kn pfen und legt dessen Ausgabeziel fest Die Anweisungen MODULE und PROGRAM siehe oben
243. en und PLAM Bibliothekselementen in das POSIX Dateisystem und umgekehrt steht das POSIX Kommando bs2cp zur Verf gung F r das Editieren von POSIX Dateien von einem BS2000 Terminal aus steht das POSIX Kommando edt zur Verf gung Erfolgte der Zugang zum POSIX Subsystem von einem SINIX Terminal aus steht zum Edi tieren das POSIX Kommando vi zur Verf gung siehe Handbuch POSIX Kommandos 33 Eingabe von Quellprogrammteilen COPY Elemente F r das Kopieren von COPY Texten aus POSIX Dateien wird die COPY Anweisung wie folgt ausgewertet COPY textname LIN OF bibliotheksname textname ist der Name der POSIX Datei ohne Dateiverzeichnisbestandteile die den COPY Text enth lt Der Name darf keine Kleinbuchstaben enthalten bibliotheksname ist der Name einer Umgebungsvariablen die einen oder mehrere absolute Pfadnamen der zu durchsuchenden Dateiverzeichnisse enth lt Der Name darf keine Kleinbuchstaben enthalten Fehlt die Angabe IN OF bibliotheksname in der COPY Anweisung wertet der Compiler den Inhalt einer Umgebungsvariablen namens COBLIB aus Die Umgebungsvariablen m ssen vor Aufruf des Compilers mit den Pfadnamen der zu durchsuchenden Dateiverzeichnisse versorgt und mit dem POSIX Kommando export exportiert werden 274 U3987 J 2125 8 COBOLB85 und POSIX Bereitstellen des Quellprogramms Beispiel COPY Anweisungen im Quellprogramm COPY TEXT1 IN COPYLNK COPY TEXT2 IN COPYLNK Definieren un
244. ename 1 54 gt Name der PLAM Bibliothek in der das Quellprogramm als Element steht ELEMENT lt composed name 1 40 gt Name des Bibliothekselements in dem das Quellprogramm steht U3987 J 2125 8 35 SOURCE Option SDF Steuerung des Compilers VERSION HIGHEST EXISTING UPPER LIMIT lt alphanum name 1 24 gt Versionsbezeichnung des Bibliothekselements Wird keine Version oder HIGHEST EXISTING angegeben liest der Compiler die Version des Elements mit der h chsten in der Bibliothek vorhandenen Versionsbezeichnung Wird UPPER LIMIT angegeben liest der Compiler die Version des Elements mit der gr tm glichen Versionsnummer vom LMS angezeigt mit 36 U3987 J 2125 8 SDF Steuerung des Compilers SOURCE PROPERTIES Option 3 3 2 SOURCE PROPERTIES Option Mit dieser Option k nnen bestimmte Eigenschaften des Quellprogramms festgelegt wer den Format SOURCE PROPERTIES STD PARAMETERS PARAMETERS RETURN CODE FROM COBOL SUBPROGRAMS FROM ALL SUBPROGRAMS SOURCE PROPERTIES STD Es wird der voreingestellte Wert der nachfolgenden PARAMETERS Struktur bernommen SOURCE PROPERTIES PARAMETERS RETURN CODE FROM COBOL SUBPROGRAMS Das Sonderregister RETURN CODE wird nur zum Informationsaustausch zwischen den COBOL Programmen einer Ablaufeinheit verwendet RETURN CODE FROM ALL SUBPROGRAMS Das Sonderregister RETURN CODE soll auch zur Aufnahme eines Funktions
245. endet werden soll siehe Handbuch 9 und Ab schnitt 7 1 oder Testpunkte gezielt auf Paragraphen oder Kapitel gesetzt werden sollen z B beim Testen von geschachtelten GO TO Schleifen wie sie vom COLUMBUS Pr prozes sor COLCOB erzeugt werden in denen mehrere Paragraphen berschriften unmit telbar aufeinander oder auf eine Kapitel berschrift folgen Die Verwendung dieser Funktion vergr ert das Objekt und verl ngert die Programm laufzeit WINDOW DEBUG SUPPORT NO YES Bei Angabe von YES ist es m glich das Objekt auf Quellprogrammbasis mit Hilfe der Fenstertechnik des AID Testplatzes AID FE zu testen 52 U3987 J 2125 8 SDF Steuerung des Compilers RUNTIME CHECKS Option 3 3 8 RUNTIME CHECKS Option Mit dieser Option werden die Pr froutinen des Laufzeitsystems aktiviert Format RUNTIME CHECKS NONE ALL PARAMETERS PARAMETERS TABLE SUBSCRIPTS NO YES FUNCTION ARGUMENTS NO YES PROC ARGUMENT NR NO YES RECURSIVE CALLS NO YES REF MODIFICATION NO YES RUNTIME CHECKS NONE Es werden keine Pr froutinen des Laufzeitsystems beansprucht RUNTIME CHECKS ALL Alle in der PARAMETERS Struktur genannten Pr froutinen des Laufzeitsystems werden aktiviert RUNTIME CHECKS PARAMETERS TABLE SUBSCRIPTS NO YES Ist YES angegeben berpr ft das Laufzeitsystem die Einhaltung von Tabellengrenzen sowohl bei Subskribierung als auch bei Indizierung
246. ene Satz wird verarbeitet Falls sein RECORD KEY dabei ver ndert wird mu dessen urspr nglicher Wert vor der folgenden START Anweisung wie derhergestellt werden 230 U3987 J 2125 8 Dateiverarbeitung Indizierte Dateien 9 4 6 Ein Ausgabezust nde Jeder Datei im Programm k nnen mit der FILE STATUS Klausel Datenfelder zugeordnet werden in denen das Laufzeitsystem nach jedem Zugriff auf die Datei Informationen dar ber hinterlegt ob die Ein Ausgabeoperation erfolgreich war und welcher Art ggf die dabei aufgetretenen Fehler sind Diese Informationen k nnen z B in den DECLARATIVES durch USE Prozeduren ausge wertet werden und gestatten eine Analyse von Ein Ausgabefehlern durch das Programm Als Erweiterung zum COBOL Standard bietet COBOL85 die M glichkeit in diese Analyse durch die Schl ssel der DVS Fehlermeldungen einzubeziehen Dadurch l t sich eine fei nere Differenzierung der Fehlerursachen erreichen Die FILE STATUS Klausel wird im FILE CONTROL Paragraphen der ENVIRONMENT DI VISION angegeben ihr Format ist siehe 1 FILE STATUS IS datenname 1 Ldatenname 2 Dabei m ssen datenname 1 und falls angegeben datenname 2 in der WORKING STORAGE SECTION oder der LINKAGE SECTION definiert sein F r die Formate und die m glichen Werte dieser beiden Datenfelder gelten folgende Regeln datenname 1 mu als zwei Byte langes numerisches oder alphanumerisches Datenfeld erkl rt wer den al
247. ennung der aktuellen Task noch in der TASKLIB vorhanden An dieser Anlage ist das Laufzeitsystem unter dem Namen SYSLNK CRTE kata logisiert Nachdem es mit einem SET TASKLIB Kommando zur TASKLIB erkl rt worden ist kann das nachfolgende START PROGRAM Kommandb erfolgreich ausgef hrt werden und das Programm l uft ab 114 U3987 J 2125 8 Binden Laden Starten Laden und Starten von ablauff higen Programmen 6 5 Laden und Starten von ablauff higen Programmen Damit ein statisch gebundenes Programm ablaufen kann mu es in den Hauptspeicher ge laden werden F r diese Aufgabe steht im BS2000 ein Statischer Lader zur Verf gung Er wird wie der Dynamische Bindelader mit den Kommandos START PROGRAM bzw LOAD PROGRAM siehe 11 aufgerufen e Das START PROGRAM Kommando weist den Lader an das Programm in den Spei cher zu laden und zu starten Da das Programm unmittelbar im Anschlu an das Kom mando abl uft m ssen ihm bereits vorher die erforderlichen Betriebsmittel Dateien zugewiesen werden siehe Abschnitt 9 1 2 e Das LOAD PROGRAM Kommando weist den Lader an das Programm in den Spei cher zu laden ohne es zu starten Dadurch lassen sich vor dem Programmablauf wei tere Kommandos eingeben etwa zur Programm berwachung mit einer Dialogtesthilfe Das Programm kann dann mit einem RESUME PROGRAM oder RESUME Kom mando gestartet werden Die folgende bersicht stellt die wichtigsten Angaben der Kommandos START PR
248. ent BEISP3 in der PLAM Bibliothek PLAM LIB zugewiesen Am Ende der bersetzung werden SYSDTA und SYSCMD zusammengeschaltet 62 U3987 J 2125 8 COMOPT Steuerung Quelldaten Eingabe Zuweisen des Quellprogramms mit dem SET FILE LINK Kommando und COMOPT SOURCE ELEMENT Die Eingabe aus Bibliotheken kann auch direkt unter Umgehung von SYSDTA mit dem SET FILE LINK Kommanddb initiiert werden Dabei mu der Standard Linkname SRCLIB verwendet werden Das allgemeine Format des SET FILE LINK Kommandbos f r die Ein gabe von Quellprogrammen aus Bibliotheken lautet also SET FILE LINK ELINK NAME ISRCLIB LFILE NAME ibname Beispiel 4 3 Eingabe aus einer PLAM Bibliothek SET FILE LINK SRCLIB PLAM LIB 1 START PROGRAM COBOL85 2 COMOPT SOURCE ELEMENT BEISP3 3 COMOPT SOURCE VERSION VOOL 4 END 5 1 Mit dem SDF Kommando in Stellungsoperanden Form wird die PLAM Bibliothek PLAM LIB wird zugewiesen und mit dem Standard Linknamen SRCLIB verkn pft Aufruf des Compilers Das zu bersetzende Programm steht unter dem Elementnamen BEISP3 in der mit dem SET FILE LINK Kommando zugewiesenen PLAM Bibliothek Die Bibliothek PLAM LIB kann mehrere Versionen des Elements BEISP3 enthalten von denen dasjenige mit der Versionsbezeichnung V001 eingelesen wird Die Eingabe von Optionen ist abgeschlossen Der Compiler beginnt mit der ber setzung U3987 J 2125 8 63 COMOPT Operanden C
249. er B Beautify Funktion des Strukturierers 79 Beendigungsverhalten des COBOL85 Compilers 23 des COBOL Programms 116 Begriffserkl rungen 5 Benutzerschalter Abfrage in COBOL Programmen 140 Bedingungsnamen vereinbaren 139 Beispiel 143 COBOL Sprachmittel f r den Zugriff 139 Merknamen vereinbaren 139 Setzen in COBOL Programmen 140 Betriebssysteminformationen COBOL Sprachmittel f r den Zugriff 150 Datenstruktur 153 Bibliotnekselemente Verarbeitung im Programm 178 Bibliotheksliste Anforderung 48 69 70 Beschreibung 363 Bindelademodul 41 102 263 Begriffserkl rung 5 Verarbeitung durch den Binder 101 Bindelader DBL 102 Bindemodul Begriffserkl rung 5 Verarbeitung durch den Binder 102 Binden 101 bei Programmverkn pfung 258 eines COBOL DML Programms 357 eines Gro moduls 105 eines permanenten Programms 105 eines Programms mit Segmentierung 109 eines tempor ren Programms 112 mit dem BINDER 110 263 mit TSOSLNK 105 BINDER 102 110 263 Block logischer 156 Nichtstandard 156 physischer 156 Standard 156 BLOCK CONTAINS Klausel indizierte Dateien 219 U3987 J 2125 8 385 Stichw rter relative Dateien 197 sequentielle Dateien 172 Blockteilung indizierte Dateien 216 BLSLIBnn Linkname 113 bs2cp Kommando 271 274 Cc CALL bezeichner Unterprogrammaufruf 258 CALL literal Unterpogrammaufruf 258 CHECK CALLING HIERARCHY Comopt 65 CHECK FUNCTION ARGUMENTS Comopt 66 CHECK PARAMETER COUNT Comopt 66 CHECK REFER
250. er Optioneneingabe sind im Abschnitt 3 1 beschrieben und gelten auch f r den Strukturierer F r die Eingabe von COPY Elementen in den Strukturierer gelten dieselben Bedingungen wie f r die Eingabe von COPY Elementen in den Compiler siehe Abschnitt 2 2 2 Insbe sondere m ssen ggf die Standard Linknamen COBLIB COBLIB1 bis COBLIB9 verwendet werden Der COBOLS5 Strukturierer bietet folgende Funktionen e Quelltext Aufbereitung Beautify Funktion Einr cken der Quellprogrammzeilen in bereinstimmung mit dem COBOL Refe renzformat Einarbeitung expliziter Bereichsbegrenzer Scope Terminators Umwandlung obsoleter Sprachmittel in Kommentare Das so aufbereitete Quellprogramm kann bersetzt werden Das Ergebnis einer Quelltext Aufbereitung wird standardm ig in einer katalogisierten SAM Datei namens dateiname IND bzw elementname IND abgelegt U3987 J 2125 8 77 COBOLB85 Strukturierer e Strukturliste vom Quellprogramm Pretty Print Funktion Der Strukturierer erzeugt eine Quellprogramm Liste in der der Quelltext in aufbereite ter Form analog zur Beautify Funktion mit graphischer Kennzeichnung der Anwei sungsstruktur und wahlweise mit Querverweisen Cross References abgebildet ist Die Strukturliste kann wegen der graphischen Aufbereitung nicht bersetzt werden Die Strukturliste wird standardm ig in einer katalogisierten SAM Datei namens STRLST COBS85 program id name abgelegt Sprachumfang
251. er Steueranweisung bei jedem der folgenden Schritte veranla t oder unterdr ckt bersetzen mit COBOL85 Binden und Laden mit dem Dynamischen Bindelader oder Binden mit dem Statischen Binder und Laden mit dem Statischen Lader Dabei werden ESD Informationen standardm ig generiert und weitergegeben w hrend die LSD Informationen AID auf zwei Wegen zug nglich gemacht werden k nnen Nach dem sie bei der bersetzung erzeugt worden sind ist es m glich sie zusammen mit dem Gesamtprogramm zu laden oder sie erst bei Bedarf f r jede bersetzungseinheit nachzuladen falls die zugeh rigen Mo dule in einer PLAM Bibliothek stehen Die folgende Tabelle gibt f r beide F lle einen berblick ber die Operanden die zur Er zeugung und Weitergabe der LSD Informationen angegeben werden m ssen U3987 J 2125 8 125 Dialogtesthilfe AID Testhilfen f r den Programmablauf Schritte in der Programmentwick lung Operanden Angabe wenn die LSD Information zusam men mit dem Gesamtprogramm geladen werden soll wenn sp ter die LSD Information durch AID nachgeladen werden soll bersetzen mit COBOL85 TEST SUPPORT AID oder COMOPT SYMTEST ALL TEST SUPPORT AID oder COMOPT SYMTEST ALL Binden und Laden mit dem Dynamischen Bindelader LOAD PROGRAM TEST OPTIONS AID oder START PROGRAM TEST OPTIONS AID LOAD PROGRAM TEST OPTIONS NONE oder START
252. erarbeiten von POSIX Dateien COBOL85 und POSIX Einfacher Ein Ausgabezustand Wert Org Bedeutung 0x erfolgreiche Ausf hrung 00 SRI keine weitere Information 02 erfolgreicher READ erlaubter doppelter Schl ssel 04 SRI erfolgreicher READ aber Satzl ngenfehler 05 SRI erfolgreicher OPEN auf nicht vorhandene OPTIONAL Datei 07 S erfolgreicher OPEN mit NO REWIND erfolgreicher CLOSE mit NO REWIND REEL UNIT oder FOR REMOVAL 1x erfolglose Ausf hrung AT END Bedingung 10 SRI erfolgloser READ da Dateiende erreicht 14 R erfolgloser READ da Schl sselfeldl ngenfehler 2X erfolglose Ausf hrung Schl sselfehler 21 l falsche Schl sselreihenfolge bei sequentiellem Zugriff 22 RI WRITE auf schon vorhandenen Satz 23 RI READ auf nicht vorhandenen Satz 24 RI Schl sselfeldl ngenfehler 3x erfolglose Ausf hrung permanenter Fehler 30 SRI keine weitere Information SIS Code beachten 34 S unzureichende Sekund rzuweisung im SET FILE LINK Kommando 35 SRI OPEN INPUT I O auf nicht vorhandene Datei 38 SRI OPEN auf eine mit CLOSE WITH LOCK geschlosseneDatei 39 SRI OPEN Fehler wegen falscher Dateimerkmale 4x erfolglose Ausf hrung logischer Fehler 41 SRI OPEN auf bereits ge ffnete Datei 42 SRI CLOSE auf nicht ge ffnete Datei 43 S REWRITE ohne vorherigen erfolgreichen READ RI DELETE REWRITE ohne vorherigen erfolgreichen READ 44 SRI WRITE REWRITE mit unzul ssiger Satz
253. erarbeitung e 3 _ hohe semantische Analyse und Zwischensprache Statementzerlegung N A I niedrige Codegenerierung Zwischensprache Symboltabelle Definitions I maschinen datei Generierung der l orientierte Objekttabellen Zwischensprach Generierung der Testhilfeinformationen I Formatierung und Ausgabe des Moduls z Listenerzeugung J Testhilfe informationen speichergetreue Beschreibung des Objekts Modul in EAM PLAM Bibl BS2000 Quellprogrammliste Beendigun MONJV en Optionenliste Objektliste Adre liste XREF Liste Fehlerliste 348 U3987 J 2125 8 Anhang Aufbau des COBOL85 Systems Die Module des COBOL85 Compilers Name Funktion ITCLO1 Initialisierung bernahme der COMOPTs ITCLOA Einlesen des Quellprogramms ITCLO9 Rootsegment Koordinierungssegment Schnittstelle f r Arbeitsdateien Sy stemschnittstellen ITCL10 Lexikalische Analyse ITCL15 Nachlauf f r segmentierte Programme zur Umordnung aufgespaltener Seg mente ITCL21 syntaktische Analyse IDENTIFICATION ENVIRONMENT DIVISION ITCL31 syntaktische Analyse DATA DIVISION nicht REPORT SECTION ITCL41 Datenstrukturanalyse f r DATA DIVISION nicht REPORT SECTION ITCL5129 syntaktische Analyse f r REPORT SECTION ITCL61
254. erden in eine einzige SPOOL Datei ausgegeben in der sie pro grammspezifisch nacheinander aufgef hrt sind Listenausgabe in katalogisierte Dateien Bei Verwendung der Standardnamen werden f r jedes Programm der Quellprogramm Fol ge ebensoviele Dateien angelegt wie Listen angefordert wurden Bei Verwendung der Standard Linknamen werden Dateien nach Listenarten angelegt Die mit OPTLINK verkn pfte Datei enth lt die Optionenlisten aller Programme der Folge die mit SRCLINK verkn pfte Datei alle Quellprogrammlisten die mit ERRLINK verkn pfte Datei alle Fehlerlisten die mit LOCLINK verkn pfte Datei alle Adre Querverweislisten Listenausgabe in eine PLAM Bibliothek F r jedes Programm der Quellprogrammfolge werden ebensoviele Elemente angelegt wie Listen angefordert wurden Versorgen der Monitor Jobvariablen In der Monitor Jobvariablen wird stets der R ckkehrcode f r dasjenige Quellprogramm an gezeigt das den Fehler mit dem h chsten Gewicht enth lt Compilerabbruch Tritt in einem Programm innerhalb einer Quellprogramm Folge ein Fehler auf der zum Ab bruch der bersetzung dieses Programms f hrt so wird der gesamte Compilerlauf been det d h alle nachfolgenden Programme werden nicht mehr bersetzt Modulausgabe F r jedes Quellprogramm einer Folge wird ein Modul erzeugt In die EAM Datei werden die Module nacheinander abgelegt in eine PLAM Bibliothek als einzelne Elemente 24 U3987 J 2125 8 3 Steueru
255. erminologischen Verunsicherung f hren Um dem vorzubeugen sind nachfolgend die wichtigsten synonym verwendeten Begriffe erkl rt Bindemodul Objektmodul Gro modul Der Begriff Bindemodul fa t die beiden Begriffe Objektmodul und Gro modul zusam men Objektmodule und Gro module sind gleichartig aufgebaut und werden im gleichen Format abgelegt Objektmodulformat In PLAM Bibliotheken sind sie Elemente vom Typ R Objektmodule erzeugt der Compiler bei der bersetzung von Quellprogrammen Gro module auch vorgebundene Module genannt erzeugt der Binder TSOSLNK In einem Gro modul sind mehrere Objekt bzw Gro module in einem einzigen Modul zu sammengefa t Bindemodule k nnen vom statischen Binder TSOSLNK vom dynamischen Bindelader DBL oder vom Binder BINDER weiterverarbeitet werden Modul Objektmodul Bindelademodul Modul ist der Oberbegriff f r das Ergebnis der bersetzung eines Quellprogramms durch den COBOL85 Compiler Objektmodul ist ein Modul im OM Format Bindelademodul ist ein Modul im LLM Format Ablauff higes Programm Programm Lademodul Objektprogramm Ein ablauff higes Programm in diesem Handbuch auch kurz Programm genannt wird von den Bindern erzeugt und z B in PLAM Bibliotheken unter dem Typ C abgelegt Im Unterschied zu Bindemodulen k nnen ablauff hige Programme nicht vom Binder TSOSLNK weiterverarbeitet werden sondern werden vom statischen Lader in
256. ert 3 Zu Beginn jeder Seite einer Quellprogrammliste wird nach der berschrift eine Zei le erzeugt die Spaltenmarkierungen V enth lt Diese Markierungen entsprechen dem COBOL Referenzformat und erleichtern es dem Benutzer eine Verletzung des von COBOL geforderten Spaltenformats zu erkennen Vom Programmierer nutzbarer Bereich zur Markierung von Quellprogrammzeilen o1 Du Quellprogrammbereich Enth lt den vom Benutzer eingegebenen Satz Dabei ist zu beachten da nur ab druckbare Zeichen dargestellt werden U3987 J 2125 8 361 Quellprogrammliste Anhang 1 2 3 C04 V 00001 00002 00003 00004 00005 00006 00007 00008 00009 00010 00011 00012 00013 00014 00015 00016 00017 00018 00019 00020 00021 00022 00023 00024 00025 00026 00027 00028 00029 00030 00031 00032 OANDNINNI ANNINANIN 00033 00034 00035 00036 00037 00038 00039 0004 0004 0004 0004 0004 0004 0004 0004 SO PWNDHO 00048 00049 00050 00051 00052 00053 00054 00055 00056 COBOL85 V02 2A00 KOPIEREN gt gt gt gt gt 31018 gt gt gt gt gt 1 gt gt gt gt gt 71113 gt gt gt gt gt F gt gt gt gt gt 71168 gt gt gt gt gt 1 SOURCE LISTING 5 W V V IDENTIFICATION DIVISION PROGRAM ID KOPIEREN ENVIRONMENT DIVISION INPUT OUTPUT SECTION FILE CONTROL SELECT SAM DATEI ASSIGN TO EINGABE ORGANIZATION IS SEQUENTIAL FILE STATUS IS SAM DA
257. ert wurde Falls es unter der Benutzerkennung der aktuellen Task keine Datei namens TASKLIB gibt verwendet TSOSLNK die Bibliothek des Systems TASKLIB Sind auch nach dem Autolink Verfahren noch unbefriedigte Externverweise vorhanden gibt TSOSLNK ihre Namen in einer Liste nach SYSOUT und SYSLST aus Es ist nicht erlaubt COBOL Programme als Klasse 1 Programme zu binden U3987 J 2125 8 107 Statisches Binden mit TSOSLNK Binden Laden Starten Beispiel 6 1 Statisches Binden zu einem ablauff higen Programm START PROGRAM FROM FILE TSOSLNK 1 BLS0500 PROGRAM TSOSLNK VERSION V21 0E01 OF 1994 01 28 LOADED BLS0552 COPYRIGHT C SIEMENS NIXDORF INFORMATIONSSYSTEME AG 1991 ALL RIGHTS RESERVED PROG COB8S5SPROG LIB PLAM LIB ELEM COBSSLAD 2 INCLUDE COB8S5SMOD PLAM LIB 3 RESOLVE SYSLNK CRTE 4 END 5 LNKO500 PROG BOUND LNK0506 PROGRAM LIBRARY PLAM LIB LNK0507 ELEMENT WRITTEN COB85LAD 1 Das Dienstprogramm TSOSLNK wird aufgerufen 2 Die PROG Anweisung legt fest da TSOSLNK ein ablauff higes Programm mit dem Namen COB8S5PROG erzeugen und als Element unter dem Namen COBS85LAD in der PLAM Bibliothek PLAM LIB ablegen soll 3 Die INCLUDE Anweisung teilt dem Binder mit da er das Objektmodul COB85MOD aus der PLAM Bibliothek PLAM LIB binden soll 4 TSOSLNK soll Externverweise zun chst mit Modulen aus dem Laufzeitsystem be frie
258. etn R a Lin gr ange 145 8 4 Zugriff auf eine Umgebungsvariable 2 222220 n sn ne een nn 149 8 5 Compiler und Betriebssysteminformationen 2 222 snen nennen nn 150 9 Verarbeitung katalogisierter Dateien Hununerene nennen nen 155 9 1 Grunds tzliches zum Aufbau und zur Verarbeitung katalogisierter Dateien 155 9 2 Sequentielle Dateiorganisation auauua nee nennen nn 169 9 3 Relative Dateiorganisation 22mm sneene nennen 193 9 4 Indizierte Dateiorganisation 2 auaa aeea 215 9 5 Simultanverarbeitung von Dateien SHARED UPDATE 2 222222 nae sn 236 10 Sortieren und Mischen z2suunnonnannen nun en nn nenn nun nn 247 10 1 COBOL Sprachmittel zum Sortieren und Mischen 222 222er essen 247 10 2 Dateien f r das Sortierprogramm 2 aeaaeae 249 10 3 Fixpunktausgabe f r Sortierprogramme und Wiederanlauf 222 2 20 251 10 4 Sortieren von Tabellen siiin taa 2 222 aa iin 252 11 Fixpunktausgabe und Wiederanlauf zHrenennennn nennen nennen 253 11 1 Fixpunktausg be anrea 2 een rin ei 254 11 2 Wieder nl auf ees 2 2 enter hen ran en s kiemer Sees 255 12 Programmverkn pfungen 2rannsunan nenn nennen nn nenn 257 12 1 Binden und Laden von Unterprogrammen 22ns seen 258 12 2 COBOL Sonderregister RETURN CODE 2 2 22 usneeeen nennen 266 12 3 Parameter bergabe an C Programme saasaa aaan 267 13 COBOL85 und POSIX
259. ext Dabei bezeichnet Msg Index eine f nfstellige sedezimale Fehlermeldungsnummer Die beiden ersten Zeichen geben das Modul des Compilers an das den Fehler erkannt hat Source Seq No die Folgenummer der Quellprogrammzeile in welcher der Fehler auftritt Severity Code die Fehlerklasse der der Fehler zuzurechnen ist und Error Text den Text der Fehlermeldung Er enth lt eine genauere Beschrei bung des Fehlers und zeigt eventuell eine Umgehungsm glichkeit auf Meldungstexte k nnen wahlweise auf englisch oder deutsch ausgegeben werden die Sprache l t sich ber das SDF Kommando MODIFY MSG ATTRIBUTES TASK LANGUAGE E D ausw hlen Eine aktuelle Liste aller Fehlermeldungen des COBOL85 Compilers kann mit COMOPT PRINT DIAGNOSTIC MESSAGES YES bzw ber die SDF Option COMPILER ACTION PRINT MESSAGE LIST angefordert werden siehe Abschnitte 4 2 bzw 3 3 4 Achtung Werden Fehler gemeldet deren Text mit SE 1 oder S E beginnt ist in jedem Fall der Systemverwalter berater zu verst ndigen U3987 J 2125 8 309 Meldungen des COBOL85 Systems Fehlerklasse Bedeutung F Hinweismeldung Der Compiler hat im Quellprogramm Sprachmittel erkannt die Spracherweiterungen gegen ber der COBOL Norm ANS85 darstellen von k nftigen COBOL Normen nicht mehr unterst tzt werden gem FIPS Federal Information Processing Standard einer bestimmten Sprachmenge zuzuordnen sind COBOLSB85 gibt H
260. f einer neuen Seite gedruckt w rden Format gt U SKIP1 SKIP2 SKIP3 U3987 J 2125 8 365 Formatsteueranweisungen TITLE EJECT SKIP Anhang Beispiel Formatsteueranweisungen IDENTIFICATION DIVISION PROGRAM ID BSP DATA DIVISION TITLE WORKING STORAGE SECTION 1 ORKING STORAGE SECTION 01 ALPHA1 PIC 99 VALUE 1 01 BETAL PIC 99 VALUE 2 01 GAMMA1l PIC 99 TITLE PROCEDURE DIVISION 2 PROCEDURE DIVISION EJECT 3 ANFANG SECTION ULT ULTIPLY ALPHA1 BY BETA1 GIVING GAMMAL ULTIPLY BETA1l BY GAMMA1 GIVING ALPHA ULTIPLY GAMMA1 BY ALPHA1 GIVING BETAL SKIP3 4 ENDE SECTION STOPP STOP RUN Wirkung 1 In der Kopfzeile der n chsten Seite der Quellprogrammliste steht WORKING STORAGE SECTION 2 In der Kopfzeile der n chsten Seite n der Quellprogrammliste steht PROCEDURE DIVISION 3 Der nachfolgende Text ANFANG SECTION beginnt auf der n chsten Seite 4 Vor dem nachfolgenden Text ENDE SECTION stehen drei Leerzeilen 366 U3987 J 2125 8 Anhang Fehlermeldungsliste Fehlermeldungsliste Die von COBOL85 erzeugte Fehlermeldungsliste gibt Aufschlu ber alle w hrend der bersetzung erkannten Syntax und Semantikfehler Nach der berschriftszeile unterteilt eine Teil berschriftszeile die nachfolgenden Fehler meldungszeilen in folgende Bereiche 1 SGN SOURCE SEQ NO gibt die Folgenu
261. f keine Kleinbuchstaben enthalten Die Umgebungsvariable mu mit dem Namen der POSIX Datei initialisert und mit dem POSIX Kommando export exportiert werden Die Umgebungsvariable wird folgenderma en initialisiert dateiname externer name lt relativer pfadname absoluter pfadname dateiname bezeichnet die angeforderte POSIX Datei wenn sie im aktuellen Dateiverzeich nis steht Der Dateiname darf nicht mit einem Bindestrich beginnen relativer pfadname ist der Dateiname mit den Dateiverzeichnisbestandteilen ab ein schlie lich dem aktuellen Verzeichnis absoluter pfadname ist der Dateiname mit allen Dateiverzeichnisbestandteilen einschlie lich Root Verzeichnis Beginn mit Beispiel COBOL Quellprogramm FILE CONTROL SELECT AFILE ASSIGN TO CUSTI Verkn pfung mit der POSIX Datei cust1 vor Aufruf des Programms export CUST1 USERIDXY customers custl 292 U3987 J 2125 8 COBOL85 und POSIX Verarbeiten von POSIX Dateien 13 6 3 Ein Ausgabezust nde Jeder Datei im Programm k nnen mit der FILE STATUS Klausel Datenfelder zugeordnet werden in denen das Laufzeitsystem nach jedem Zugriff auf die Datei Informationen dar ber hinterlegt ob die Ein Ausgabeoperation erfolgreich war und welcher Art ggf die dabei aufgetretenen Fehler sind Diese Informationen k nnen z B in den DECLARATIVES durch USE Prozeduren ausge wertet werden und gestatten eine Analyse von Ein Ausgabefehlern du
262. formation 132 byte Daten SYSOPT F maximal 80 byte 72 byte Daten die Bytes 73 80 enthalten die ersten 8 Zei chen des Namens aus der PROGRAM ID Tabelle 8 3 Satzformate und Satzl ngen der Systemdateien 138 U3987 J Z125 8 Schnittstelle COBOL Programm BS2000 Auftrags und Benutzerschalter 8 2 Auftrags und Benutzerschalter Das BS2000 stellt jedem Auftrag Task 32 Auftragsschalter numeriert von 0 bis 31 und jeder Benutzerkennung 32 Benutzerschalter numeriert von 0 bis 31 zur Verf gung siehe 3 sie k nnen jeweils die Zust nde ON und OFF annehmen Mit ihrer Hilfe lassen sich die Abl ufe innerhalb eines Auftrags steuern bzw mehrere Auftr ge miteinander koordinieren So verwendet man z B Auftragsschalter wenn sich innerhalb eines Auftrags mehrere COBOL Programme verst ndigen m ssen etwa weil der Ablauf eines Programms von den Verarbeitungs schritten eines zuvor aufgerufenen Programms abh ngt Benutzerschalter wenn sich mehrere Auftr ge miteinander verst ndigen sollen Falls Auftr ge unter verschiedenen Kennungen ablaufen k nnen die Benutzerschalter einer Kennung zwar von Auftr gen einer anderen Kennung ausgewertet von ihnen jedoch nicht ver ndert werden Auftrags und Benutzerschalter k nnen sowohl auf Betriebssystem Ebene durch Komman dos als auch auf Programm Ebene ber COBOL Anweisungen abgefragt und ver ndert werden Den Zugriff auf Auftrags und Benutzerschalter unterst tzt COBOL85
263. fs nach SYSOUT aus gegeben und haben folgenden Aufbau COB90nn COB91nn Text COB92nn Dabei bezeichnet COB90nn die Kennummer der Meldung COB91nn COB9Y2xx Text den Text der Meldung Er enth lt einen Hinweis zum Ablauf des Compilers oder Anwenderpro gramms oder eine genauere Beschreibung des aufgetretenen Fehlers und in manchen F llen die Anforderung einer Eingabe durch den Anwender mit der der Fehler umgangen werden kann Meldungstexte k nnen wahlweise auf englisch oder deutsch aus gegeben werden die Sprache l t sich ber das SDF Kommando MODIFY MSG ATTRIBUTES TASK LANGUAGE E D ausw h len Der in den Meldungen COB9101 und COB9102 COMPILATION UNIT ID programm name genannte Programmname bezeichnet immer ein getrennt bersetztes Pro gramm Dabei kann es sich um ein einzelnes Programm oder um das u erste Pro gramm eines geschachtelten Programms handeln Die Angabe COMOPT GENERATE LINE NUMBER YES bzw ERR MSG WITH LINE NR YES in der SDF Option RUNTIME OPTIONS bewirkt da statt der Meldung COB9101 zu jeder Meldung des Programms die Meldung 9102 aus gegeben wird die auch die Nummer der Quellprogrammzeile enth lt bei deren Aus f hrung die Meldung ausgegeben wird U3987 J 2125 8 311 Meldungen des COBOL85 Systems Die im Verlauf der bersetzung ausgegebenen Meldungen COB9004 COB9017 COB9095 COB9097 und COB9099 werden unterdr ckt wenn vor dem Aufruf des Compilers der
264. gen Ausgabe von Listen Der Compiler kann folgende Protokoll Listen des bersetzungslaufs erzeugen Steueranweisungsliste OPTION LISTING Quellprogrammliste SOURCE LISTING Bibliotheksliste LIBRARY LISTING Objektliste OBJECT PROGRAM LISTING Adre liste LOCATOR MAP LISTING Querverweisliste Fehlermeldungsliste DIAGNOSTIC LISTING Standardm ig schreibt der Compiler jede angeforderte Liste in eine eigene katalogisierte Datei Die Listen in den katalogisierten Dateien k nnen zu einem beliebigen Zeitpunkt mit Hilfe des PRINT FILE Kommandos siehe 3 ausgedruckt werden Statt in katalogisierte Dateien k nnen die angeforderten Listen auch als Elemente in eine PLAM Bibliothek geschrieben werden Der Benutzer kann mit einer entsprechenden Steueranweisung veranlassen da die an geforderten Listen auf die Systemdatei SYSLST ausgegeben werden Die dabei erzeugte tempor re Datei gibt das System automatisch auf den Drucker aus Die Erzeugung und Ausgabe der Protokoll Listen kann der Benutzer steuern mit der SDF Option LISTING siehe Kapitel 3 oder den COMOPT Anweisungen LISTFILES LIBFILES oder SYSLIST siehe Kapitel 4 Falls das POSIX Subsystem vorhanden ist k nnen die Listen au er der Objektliste ins POSIX Dateisystem ausgegeben werden Diese M glichkeit ist in Abschnitt 3 3 6 LISTING Option S 45 beschrieben Ausgabe von Meldungen Die Meldungen des Compilers ber den Ablauf der bersetzung COB90xx werd
265. gen ist weitgehend selbsterkl rend aufgebaut Bei der Bearbeitung ist vor allem zu beachten da allein der Eintrag in der Eingabezeile NEXT den Aus schlag gibt welche Operation ausgef hrt wird Die jeweils zul ssigen Eingaben sind unter dieser Zeile aufgef hrt Im folgenden sind die wichtigsten Steuerzeichen zur Bearbeitung des Operandenfragebo gens zusammengefa t Die ausf hrliche Beschreibung des optimalen Umgangs mit SDF findet sich im Handbuch Einf hrung in die Dialogschnittstelle SDF 5 Steuerzeichen zur Bearbeitung des Operandenfragebogens als Operandenwert liefert Hilfetext und Angabe des Wertebereichs f r diesen Operanden Hat SDF nach vorheriger fehlerhafter Einga be die Meldung CORRECT INCORRECT OPERANDS gebracht liefert das Fragezeichen zus tzliche detaillierte Fehlermeldungen Der Zeilenrest mu nicht gel scht werden als Operandenwert setzt f r diesen Operanden den Standardwert wieder ein wenn der abgebildete Standardwert vorher berschrie ben wurde Der Zeilenrest mu nicht gel scht werden lt operand gt Ge ffnete Klammer nach einem struktureinleitenden Operanden gibt den Unterfragebogen f r die zugeh rige Struktur aus Nach der ge ffneten Klammer angegebene Operanden werden im Unterfra gebogen abgebildet als letztes Zeichen in einer Eingabezeile bewirkt die Ausgabe einer Fortsetzungszeile bis zu 9 Fortsetzungszeilen pro Operand m g lich Line LZF Taste l scht a
266. gramme k nnen auf Informationen des Compilers und des Betriebssystems zugreifen Dazu geh ren Informationen ber die bersetzung des Quellprogramms die seit dem LOGON Kommando verbrauchte CPU Zeit die Task in der das Programm abl uft und die Datenstation von der aus das Programm aufgerufen wurde Den Zugriff auf diese Informationen unterst tzt COBOL85 durch folgende Sprachmittel e Die Vereinbarung programminterner Merknamen f r die einzelnen Informationsarten im SPECIAL NAMES Paragraphen der ENVIRONMENT DIVISION ber diese Merknamen kann die ACCEPT Anweisung der PROCEDURE DIVISION auf die jeweilige Information zugreifen siehe unten Es k nnen Merknamen vereinbart werden f r Informationen ber die bersetzung mit COMPILER INFO IS merkname die verbrauchte GPU Zeit mit GPU TIME IS merkname den Proze mit PROCESS INFO IS merkname die Datenstation mit TERMINAL INFO IS merkname das Datum mit DATE ISO4 IS merkname mit Jahrhundert e Die ACCEPT Anweisung in der PROCEDURE DIVISION ACCEPT FROM merkname bringt die im SPECIAL NAMES Paragraphen mit merkname verkn pften Informatio nen in das angegebene Empfanggstfeld Die Daten werden dabei linksb ndig in der L nge des Empfangsfeldes der ACCEPT Anweisung bertragen Ist das Feld l nger als der zu bertragende Wert wird es am rechten Ende mit Leerzei chen aufgef llt ist es k rzer wird der Wert bei der bertragung rechts auf di
267. h f r Indizierung SDF Option RUNTIME CHECKS PARAMETERS TABLE SUBSCRIPTS CONTINUE AFTER MESSAGE YES NO CON A MESS entscheidet ob das Laufzeitsystem nach Ausgabe bestimmter COB91xx Meldungen den Programmablauf fortsetzen bzw beenden soll SDF Option RUNTIME OPTIONS PARAMETERS ERROR REACTION 66 U3987 J 2125 8 COMOPT Steuerung COMOPT Operanden Operandenformat Funktion ENABLE UFS ACCESS YES NO In COBOL85 BC nicht verf gbar legt fest ob der Compiler ein Objekt erzeugen soll das geeignet ist auch Dateien aus dem POSIX Dateisystem zu verarbeiten SDF Option RUNTIME OPTIONS PARAMETERS ENABLE UFS ACCESS EXPAND COPY YES NO EXP COPY steuert ob in das Quellprogramm eingef gte COPY Ele mente in der Quellprogrammliste abgedruckt werden SDF Option LISTING PARAMETERS SOURCE YES COPY EXPANSION EXPAND SUBSCHEMA YES NO EXP SUB In COBOL85 BGC nicht verf gbar steuert ob die SUOBSCHEMA SECTION des Quellpro gramms in der Quellprogrammliste protokolliert wird SDF Option LISTING PARAMETERS SOURCE YES SUBSCHEMA EXPANSION FLAG ABOVE MINIMUM YES NO In der Fehlerliste werden alle Sprachelemente mit F gekennzeichnet die zur ANS85 Sprachmenge interme diate oder high geh ren SDF Option ACTIVATE FLAGGING FIPS ABOVEMIN SUBSET FLAG ABOVE INTERMEDIATE YES NO
268. h gepackt dezimal gt 15 Stellen ITCSCVFO Umwandlung von und nach Gleitpunkt ITCSDBLO Verbindungsmodul zum Datenbanksystem UDS ITCSDFEO Division extern Gleitpunkt ITCSDPLO Division von Dezimalzahlen gt 15 Stellen ITCSDSAO DISPLAY Anweisung ITCSDSI1 Speicherzuweisung DYNAMIC Daten ITCSDSXO0 DISPLAY Anweisung f r Umgebungsvariable 352 U3987 J 2125 8 Anhang Aufbau des COBOL85 Systems Name Funktion ITCSDYF1 Beschaffung von Speicherplatz f r die Funktionen REVERSE UPPER CASE LOWER CASE ITCSECEO ENTRY CANCEL EXIT f r getrennt bersetzte Programme ITCSENDO Programmbeendigungsroutine normal und abnormal ITCSEVO Ereignisbehandlung R ckkehr aus einem fremdsprachigen Unterpro gramm ITCSEV1 Ereignisbehandlung recoverable interrupts ITCSEV2 Ereignisbehandlung unrecoverable interrupts ITCSEV3 Ereignisbehandlung brige Ereignisse ITCSFACO Tabelle f r FACTORIAL Funktion ITCSFCHO Meldungsausgabe der Funktionsargumentpr fung ITCSFCT1 Gleitpunkt Konstanten ITCSFDTO Datumskonvertierungsfunktionen ITCSFMDO Funktion MEDIAN ITCSFMXO Funktionen MAX MIN ORD MAX ORD MIN RANGE MIDRANGE ITCSFNMO Funktionen NUMVAL NUMVAL C ITCSFPVO Funktion PRESENT VALUE ITCSFRNO Funktion RANDOM ITCSFSTO Funktionen REVERSE UPPER CASE LOWER CASE ITCSFVRO Funktion VARIANCE ITCSHSWO Setzen und Pr fen von Auftrags
269. hilfezeilen vom Compiler zu behandeln sind Wird sie angege ben bersetzt er die Testhilfezeilen als normale Anweisungszeilen fehlt sie betrachtet er die Testhilfezeilen als Kommentar Dieses Verfahren erlaubt es die Testhilfezeilen nach der Testphase unge ndert im Quellprogramm zu belassen und vor der bersetzung f r den Produktiveinsatz lediglich die WITH DEBUGGING MODE Klausel zu entfernen Die Kennzeichnung von Testhilfezeilen durch ein D im Anzeigebereich Spalte 7 Ein D in Spalte 7 einer Zeile legt fest da sie abh ngig vom Vorhandensein der WITH DEBUGGING MODE Klausel vom Compiler als Anweisungs oder Kommentarzeile zu behandeln ist Bei der Vereinbarung von Testhilfezeilen ist folgendes zu beachten Im Quellprogramm sind Testhilfezeilen erst nach dem OBJECT COMPUTER Para graphen erlaubt Das COBOL Quellprogramm mu sowohl mit als auch ohne Ber cksichtigung der Testhilfezeilen syntaktisch korrekt sein U3987 J 2125 8 131 132 U3987 J 2125 8 8 Schnittstelle zwischen COBOL Programmen und BS2000 Die Schnittstelle zwischen COBOL Programmen und dem POSIX Subsystem ist in Kap 13 dargestellt 8 1 Ein Ausgabe ber Systemdateien Systemdateien sind normierte Ein Ausgabebereiche des Systems denen bestimmte End ger te oder Dateien zugeordnet werden k nnen Sie stehen jeder Task ohne vorherige Ver einbarung zur Verf gung Zu ihnen geh ren die logischen Eingabedateien des Bet
270. hlfreiem Zugriff mu schl ssel vor jeder Ein Ausgabeanweisung mit der relativen Nummer des Satzes versorgt werden der bearbeitet werden soll Die RELATIVE KEY Angabe ist optional bei Dateien f r die ACCESS MODE IS SEQUEN TIAL vereinbart wird bei ACCESS MODE IS RANDOM oder DYNAMIC mu sie angege ben werden FILE STATUS IS statusfelder gibt die Datenfelder an in denen das Laufzeitsystem nach jedem Zugriff auf die Datei In formationen dar ber hinterlegt ob die Ein Ausgabeoperation erfolgreich war und welcher Art ggf die dabei aufgetretenen Fehler sind Die Statusfelder m ssen in der WORKING STORAGE SECTION oder der LINKAGE SEC TION vereinbart werden Ihr Format und die Bedeutung der einzelnen Zustandscodes wer den in Abschnitt 9 3 6 beschrieben Die FILE STATUS Klausel ist optional Wird sie nicht angegeben stehen dem Programm die oben erw hnten Informationen nicht zur Verf gung BLOCK CONTAINS blockl ngenangabe legt die maximale Gr e eines logischen Blocks fest Sie bestimmt wie viele Datens tze jeweils gemeinsam durch eine Ein Ausgabeoperation in den bzw aus dem Puffer des Pro gramms bertragen werden sollen blockl ngenangabe mu eine ganze Zahl und darf nicht kleiner sein als die Satzl nge der Datei und nicht gr er als 32767 Sie gibt die Gr e des logischen Blocks in byte an Die Blockung von Datens tzen verringert die Zahl der Zugriffe auf periphere Speicher und damit die Laufzei
271. ibliothek ELEMENT elemen START PROGRAM LOAD PROGRAM STD L RUN MODE 2 ADVANCED CALT LIB YES Das START PROGRAM Kommando weist den Bindelader an ein ablauff higes Programm zu erzeugen es in den Speicher zu laden und zu starten Da das Programm unmittelbar im Anschlu an das Kommando abl uft m ssen ihm bereits vor dem START PROGRAM Kommando die erforderlichen Betriebsmittel Dateien zugewiesen werden siehe Ab schnitt 9 1 2 Das LOAD PROGRAM Kommando veranla t den Bindelader ein ablauff higes Programm zu erzeugen und in den Speicher zu laden ohne es zu starten Dadurch lassen sich vor dem Programmablauf weitere Kommandos eingeben etwa zur Programm berwachung mit einer Dialogtesthilfe Das Programm kann daraufhin folgenderma en gestartet werden durch ein RESUME Kommanddo falls mit der Dialogtesthilfe AID getestet werden soll oder durch ein RESUME PROGRAM Kommandb in allen anderen F llen LIBRARY OMF bezeichnet die tempor re EAM Datei der aktuellen Task in die der Compiler das bersetzte Objektmodul ausgegeben hat ELEMENT modul gibt den Namen des Moduls an der zuerst geladen werden soll modul besteht aus den ersten acht Zeichen des PROGRAM ID Namens im Quellprogramm modul kann auch der Einsprungname ENTRY Name des Programmabschnitts sein der als erster gela den werden soll 112 U3987 J 2125 8 Binden Laden Starten Dynamisches Binden und Laden mit dem DBL ELEMENT ALL bewirk
272. ie Definition auftritt MODULE REL ADDR Relative Anfangsposition einer Datendefinition innerhalb des Moduls GROUP REL ADDR Relative Anfangsadresse einer Datendefinition innerhalb einer 01 Stufe sedezi mal POSITION IN GROUP DEC Nummer des ersten Bytes einer Datendefinition innerhalb einer 01 Stufe dezimal gez hlt ab 1 LEV NO Stufennummer der Definition Ein G vor der Stufennummer kennzeichnet ein Datum als global Angabe des vom Benutzer vergebenen Datennamens LENGTH IN BYTES L nge des Bereiches dem der Datenname zugeordnet wurde in dezimaler DEC und in sedezimaler HEX Darstellung FORMAT Datenklasse in symbolischer Form REFERENCED BY STATEMENTS Auflistung aller Quellprogrammzeilennummern in aufsteigender Reihenfolge in de nen Anweisungen stehen die auf die Datendefinition Bezug nehmen Treten mehr Querverweise auf als in die Zeile passen wird eine Fortsetzungszeile gebildet siehe COMOPT LINE LENGTH S 70 LVL Schachtelungstiefe des Programms beginnend bei 000 f r das u erste Pro gramm PROGRAM NAME SECTION NAME PARAGRAPH NAME Angabe des Programmnamens und der in diesem Programm vorhandenen Kapitel und Paragraphennamen 368 U3987 J 2125 8 Anhang Adre liste COBOL85 V02 2A00 KOPIEREN LOCATOR MAP LISTING 14 46 36 1995 09 14 PAGE 0005 DATA DIVISION KOPIEREN 1 FILE SECTION FILE NAME SAM DATEI 2 FILE SERIAL NO 01 ADDR LHE FCB 000458 3 4 5 6
273. ierar chie das Programm unterbrochen wurde und welche Module in der CALL Verschachtelung liegen Mit AID kann ein laufendes Programm bearbeitet oder ein Speicherauszug in einer Platten datei diagnostiziert werden Innerhalb einer Testsitzung kann zwischen beiden M glichkei ten gewechselt werden z B um Datenbest nde im laufenden Programm mit einem Spei cherauszug zu vergleichen Beschreibung der Funktionen AID dient zum Test und zur Diagnose von Anwenderprogrammen auf Prim rsprachebene High Level Language Testhilfe Die Funktionen f r Test und Diagnose auf Prim rsprachebene von COBOL Programmen die mit dem COBOLB85 bersetzt wurden sind Ausgeben und Setzen von benutzerdefinierten Daten Daten die im Benutzerprogramm definiert sind k nnen interaktiv angesprochen wer den Dabei gelten die Regeln f r Qualifizierung Eindeutigkeit Indizierung und Bereichsgrenzen von COBOL Die Daten selbst werden entsprechend den im Benutzerprogramm angegebenen Attri buten konvertiert und aufbereitet Symbolischer Dump Alle oder ausgew hlte Daten von Programmen der dynamischen Programmverschach telung k nnen entsprechend dieser Programmverschachtelung aufbereitet ausgege ben werden Setzen von Testpunkten ber die Sourcereferenz oder die Marken im Programm Paragraphen Kapitel k nnen Testpunkte an denen bestimmte Aktionen ausgef hrt werden gesetzt und r ckgesetzt werden Das Ansprechen der Marken erfolgt n
274. iffserkl rung 5 Programmablauf fortsetzen 58 66 Programmbeendigung R ckkehrcodes in Jobvariablen 117 Verlauf von Prozeduren 117 Programmverkn pfung 257 Binden und Laden 258 CALL bezeichner 258 CALL literal 258 Protokoll Listen Beschreibung 359 Prozeduren Ausgabeprozedur f r Sortieren und Mischen 248 Eingabeprozedur f r Sortieren und Mischen 248 Verlauf bei Programmbeendigung 117 Proze Begriffserkl rung 6 Puffer 156 398 U3987 J Z125 8 Stichw rter Q Quelldateneingabe 13 bei COMOPT Steuerung 61 74 bei SDF Steuerung 35 mit ASSIGN SYSDTA Kommando 13 mit dem SET FILE LINK Kommando 63 mit der END Anweisung 61 Quellprogramm Semantikpr fung 40 75 Strukturliste des Strukturierers 83 Syntaxpr fung 40 75 bersetzen 7 Quellprogramm bereitstellen in katalogisierter Datei 10 in PLAM Bibliothek 11 Quellprogramm Eingabe 13 61 63 Quellprogramm Folge bersetzung 24 Quellprogrammliste Anforderung 46 48 69 70 Beschreibung 361 Quellprogrammteile 14 Quellprogrammteile COPY Elemente Eingabe 14 Quelltext Aufbereitung Funktion des Strukturierers 79 Querverweisliste Anforderung 47 48 69 70 Beschreibung 368 des Strukturierers 85 R READ WITH NO LOCK 237 READ Anweisung relative Dateien 203 sequentielle Dateien 176 177 RECORD KEY Klausel indizierte Dateien 219 RECORDING MODE Klausel 173 RECORD Klausel indizierte Dateien 220 relative Dateien 198 sequentielle Dateien 173 RECURSIVE CALLS SDF Ope
275. igenen Benutzerhandbuch 2 beschrieben Die COBOLB85 Laufzeitroutinen stellen dem COBOL85 Compiler bekannte Unterprogram me dar Sie k nnen im wesentlichen in zwei Gruppen unterteilt werden 1 Unterprogramme f r komplexe COBOL Anweisungen Beispiele f r komplexe COBOL Anweisungen sind Handbuch 1 zu entnehmen aber auch scheinbar einfache Anweisungen wie z B COMPUTE A B f r die keine entspre chenden Maschinenbefehle existieren werden durch Bildung von Unterprogrammen und Auslagerung dieser Unterprogramme in vor bersetzte Module realisiert 2 Unterprogramme zum Anschlu des generierten Moduls an Betriebssystemfunk tionen Diese Unterprogramme dienen haupts chlich dazu die Codegenerierung des Compilers v llig betriebssystemunabh ngig zu halten Die dabei m glicherweise auftretenden Effi zienzverluste werden weitgehend durch die gr ere Betriebssystemunabh ngigkeit ausge glichen Bei nderung der Schnittstellen zum Betriebssystem gen gt im allgemeinen das erneute Binden der vorhandenen Module mit dem neuen Laufzeitsystem Wesentliche Funktionen unter diesem Titel sind Anschlu der COBOL Programme an das Ein Ausgabesystem Anschlu der COBOL Programme an SORT Anschlu der COBOL Programme an UDS Anschlu der COBOL Programme an Ablaufteil Funktionen In folgender Tabelle sind die Namen und Funktionen der COBOL85 Laufzeitmodule aufge f hrt In der Tabelle nicht enthalten sind diejenigen L
276. igieren oder Systemverwalter berater verst ndigen C0B9152 NO CONNECTION WITH DATABASE DURING PROGRAM INITIALIZATION C0B9152 WAEHREND DER PROGRAMMINITIALISIERUNG KONNTE KEINE VERBINDUNG ZUR DATENBANK HERGESTELLT WERDEN Typ Anwenderfehler entweder DBH nicht geladen oder SET FILE LINK Kommando inkorrekt Verhalten Programm abgebrochen Ma nahme DBH laden und Programm mit evtl ge ndertem SET FILE LINK Kommando neu starten U3987 J 2125 8 331 Meldungen des COBOL85 Systems C0B9154 C0B9154 C0B9155 C0B9155 C0B9156 C0B9156 REPORT DEFINED AT LINE aaa INITIATE STATEMENT ISSUED TO REPORT WHICH IS NOT TERMINATED REPORT DEFINIERT IN ZEILE aaa EINE INITIATE ANWEISUNG SOLL AUSGEFUEHRT WERDEN OBWOHL FUER DEN REPORT NOCH KEINE TERMINATE ANWEISUNG GEGEBEN WURDE Typ Anwenderfehler Bedeutung aaa Zeilennummer Verhalten Programm abgebrochen Ma nahme Programm ndern ERROR ON EXIT FROM THE USE PROCEDURE ON PC aaa FEHLER BEIM VERLASSEN DER USE PROZEDUR AUF PC aaa Typ Anwenderfehler Bedeutung aaa Befehlsz hler Verhalten Programm abgebrochen Ma nahme Programm korrigieren SUB SCHEMA MODULE TOO SMALL TO PROCESS AN EXTENSIVE DML STATEMENT DER SUB SCHEMA MODUL IST ZU KLEIN UM EIN UMFANGREICHES DML STATEMENT ZU VERARBEITEN Typ Anwenderfehler Verhalten Programm abgebrochen Ma nahme Programm ndern k rzere DML Anweisungen da FIND 7 FETCH 7 zu umfangreich 3
277. iler unterst tzt die Formatsteueranweisungen TITLE EJECT und SKIP Mit diesen Anweisungen im Quellprogramm kann das Aussehen der Quellprogramm liste beeinflu t werden F r alle Formatsteueranweisungen gilt Sie d rfen nicht mit einem Punkt abgeschlossen werden Sie m ssen allein im B Bereich einer Zeile stehen Sie sind unwirksam wenn sie in der IDENTIFICATION DIVISION stehen da dort jeder Text im B Bereich als Kommentar behandelt wird Sie erscheinen selbst nicht in der Quellprogrammliste TITLE Anweisung Funktion Die Anweisung bewirkt da nachfolgend in den Kopfzeilen der Quellprogrammliste nicht der Standardtitel SOURCE LISTING erscheint sondern der in der Anweisung angegebe ne Zus tzlich wird ein Seitenvorschub erzeugt wenn nicht ohnehin eine neue Seite be ginnt Format A B Al TITLE literal Regel literal mu ein maximal 53 Zeichen langes nichtnumerisches Literal sein 364 U3987 J Z125 8 Anhang Formatsteueranweisungen TITLE EJECT SKIP EJECT Anweisung Funktion Die Anweisung bewirkt da der nachfolgende Text der Quellprogrammliste auf der n ch sten Seite beginnt Die Anweisung wirkt nicht wenn ohnehin eine neue Seite beginnt Format EJECT SKIP Anweisung Funktion Die SKIP Anweisung dient dazu den nachfolgenden Text der Quellprogrammliste um bis zu drei Zeilen vorzuschieben Die Anweisung wirkt nicht wenn die Leerzeilen als erstes au
278. im ASCII Code 185 im ISO 7 Bit Code 185 Magnetbanddateien 186 Merkmale 169 OPEN Anweisung 174 ORGANIZATION Klausel 171 Programmskelett 170 READ Anweisung 176 177 RECORDING MODE Klausel 173 RECORD Klausel 173 REWRITE Anweisung 177 SELECT Klausel 171 Verarbeitung 169 Verarbeitungsformen 176 WRITE Anweisung 176 Zugriffsarten 175 Zuweisen von Magnetbanddateien 187 Sequentielle Dateiorganisation 169 Sequentieller Zugriff indizierte Dateien 223 relative Dateien 201 sequentielle Dateien 175 SET FILE LINK Kommando SHARED UPDATE Operand 236 Steuern der Quelldateneingabe 63 Zuweisen dynamisch nachladbarer Unterprogramme 258 402 U3987 J 2125 8 Stichw rter Zuweisen von katalogisierten Dateien 158 SET FUNCTION ERROR DEFAULT Comopt 73 SET VARIABLE SDF P Variable 149 178 Severity Code Fehlerklasse 310 SHAREABLE CODE SDF Operand 40 Shared Code Generierung 120 SHARED UPDATE Simultanverarbeitung 236 SHORTEN OBJECT Comopt 73 SHORTEN XREF Comopt 73 Simultanverarbeitung 236 Aktualisierung von Datens tzen 238 244 Beispiele ISAM 241 Datensatz entsperren 238 244 Datensatzsperre 238 244 Datensatzsperre ISAM 237 Deadlock PAM 245 ISAM Dateien 236 PAM Dateien 244 Wartezeiten bei Sperre ISAM 238 SKIP Formatsteueranweisung 365 Sonderregister 249 RETURN CODE 266 SORT CORE SIZE 250 SORT FILE SIZE 249 SORT MODE SIZE 249 SORT RETURN 250 SORT Anweisung 247 249 SORTCKPT Linkname 15
279. ine PAM Datei mit SHARED UPDATE YES OPEN O ver arbeitet werden sollte f r diese Datei eine USE AFTER STANDARD ERROR Prozedur vereinbart werden siehe Indizierte Dateien Anders als bei ISAM Dateien mit SHARED UPDATE YES OPEN O kann bei simul taner Verarbeitung mehrerer Dateien alle mit SHARED UPDATE YES OPEN I O von denen mindestens eine eine PAM Datei ist f r jeden Benutzer je ein Datensatz in beliebig vielen Dateien gleichzeitig gesperrt werden innerhalb einer Datei immer nur ein Satz Dadurch kann es zu sogenannten Deadlock Situationen kommen siehe Beispiel 9 13 Wie bei ISAM Dateien sollte auch bei PAM Dateien die Sperre auf Datens tzen Da tenbl cken so schnell wie m glich aufgehoben werden um die damit verbundenen Wartezeiten f r andere Benutzer m glichst kurz zu halten Beispiel 9 14 Deadlock Benutzer A Benutzer B READ dateil satz n READ datei2 satz m READ datei2 satz m READ dateil satz n Block in dateit nicht entsperrt Block in datei2 nicht entsperrt Beide Benutzer warten auf Freigabe des jeweiligen Blocks Deadlock Die maximale Wartezeit auf die Freigabe eines gesperrten Blocks betr gt 999 Sekunden Nach Ablauf dieser Zeit wird falls vorhanden die USE AFTER STANDARD ERROR Pro zedur angesprungen oder das Programm mit der Fehlermeldung COB9151 beendet FILE STATUS 93 und DVS Fehlerschl ssel D9BO oder D9B1 U3987 J 2125 8 245 246 U3987 J
280. inn sind die Systemdateien im BS2000 jeweils bestimmten Ein Ausgabe ger ten zugeordnet Diese Zuordnung man bezeichnet sie als Prim rzuweisung h ngt von der Art des Auftrags Dialog oder Stapelbetrieb ab die folgende Tabelle stellt die M g lichkeiten zusammen Prim rzuweisung Systemdatei im Dialogbetrieb im Stapelbetrieb SYSDTA Datenstation SPOOLIN Datei oder ENTER Datei SYSIPT keine Prim rzuweisung SPOOLIN Datei oder ENTER Datei SYSOUT Datenstation tempor re SPOOLOUT Datei EAM Datei die bei Task Ende auf den Drucker ausgegeben und anschlie end gel scht wird SYSLST tempor re SPOOLOUT Dateien EAM Dateien die bei Task Ende auf den SYSLSTnn Drucker ausgegeben und anschlie end gel scht werden SYSOPT tempor re SPOOLOUT Datei EAM Datei die bei Task Ende aufDiskette oder auf Kartenstanzer ausgegeben und anschlie end gel scht wird Tabelle 8 1 Prim rzuweisungen der Systemdateien 136 U3987 J 2125 8 Schnittstelle COBOL Programm BS2000 Systemdateien Umweisungen Mit dem ASSIGN systemdatei Kommando kann im Verlauf einer Task die Zuordnung der Sy stemdateien ge ndert werden d h sie k nnen anderen Ger ten Systemdateien oder auch katalogisierten Dateien zugeordnet werden Eine ausf hrliche Beschreibung des Komman dos findet sich in 3 systemdatei Umweisung auf mit dem Kommando SYSDTA katalog Plattendatei SAM oder ISAM oder PLAM Bibliothek
281. inweise der Klasse F nur aus wenn sie explizit mit COMOPT ACTIVATE WARNING MECHANISM YES bzw ACTIVATE FLAGGING ANS85 FIPS angefordert werden Hinweismeldung Der Compiler hat Steueranweisungen oder COBOL Sprachelemente erkannt auf die der Anwender zwar aufmerksam gemacht werden soll die jedoch nicht die Ausgabe einer Warnungs oder Fehlermel dung rechtfertigen Warnungsmeldung M glicherweise wurde im Quellprogramm ein Fehler gemacht trotz dieses Fehlers ist der Programmab lauf m glich Fehlermeldung Der Compiler hat einen Fehler entdeckt Normaler weise macht der Compiler eine Korrekturannahme ein Ablauf des Programms zu Testzwecken ist m g lich Schwerwiegender Fehler In der Regel wird vom Compiler keine Korrekturan nahme gemacht die fehlerhafte Anweisung wird nicht generiert Abbruchfehler Es ist ein so schwerwiegender Fehler aufgetreten da der Compiler nicht in der Lage ist die berset zung fortzusetzen Tabelle 14 1 Fehlerklassen und ihre Bedeutung 310 U3987 J 2125 8 Meldungen des COBOLB85 Systems 2 Meldungen die der Compiler ber den Ablauf und die Beendigung des bersetzungslaufes gene riert COB90xx die das COBOL85 Laufzeitsystem ber den Ablauf und die Beendigung des Anwenderprogramms erzeugt COB91xx Meldungen des POSIX Treibers f r COBOL COB92xx Sie werden w hrend der bersetzung bzw des Programmablau
282. ion ist eine der folgenden Angaben HIGHEST EXISTING HIGH UPPER LIMIT UPPER lt alphanum name 1 24 gt Beschreibung der Angaben siehe SDF Option SOURCE LIBRARY ELEMENT LIBRARY ELEMENT VERSION SUPPRESS LISTINGS YES NO SUP LIST erm glicht es beim Auftreten einer Fehlermeldung mit einem Severity Code gt 2 die Ausgabe der Objekt Adre und Querverweis Liste zu verhindern Ausgegeben werden dann nur falls angefordert die Feh lerliste und die Quellprogrammliste SDF Option LISTING PARAMETERS NAME INFORMATION SUPPRESS GENERATION SUPPRESS MODULE YES NO SUP MOD erm glicht es beim Auftreten einer Fehlermeldung mit einem Severity Code gt 2 die Erzeugung eines Moduls zu verhindern SUPPRESS MODULES YES hat dar berhinaus den Oper anden SUPPRESS LISTINGS YES zur Folge SDF Option COMPILER ACTION MODULE GENERATION SUPPRESS GENERATION 74 U3987 J 2125 8 COMOPT Steuerung COMOPT Operanden Operandenformat Funktion SYMTEST ALL NO In COBOL85 BC nicht verf gbar legt die Information fest die der Compiler f r die Dialogtest hilfe AID siehe 9 bereitstellt ALL Der Compiler erzeugt LSD Informationen und ESD Test hilfe Informationen NO Der Compiler erzeugt nur ESD Testhilfe Informationen SDF Option TEST SUPPORT AID SYSLIST listenangabel listenangabe legt fest
283. ional Wird sie nicht angegeben ergibt sich das Satzformat aus der Angabe der RECORDING MODE Klausel siehe unten Fehlt auch diese nimmt der Compiler S tze variabler L nge an Zu den Abh ngigkeiten zwischen RECORD und RECORDING MODE Klausel siehe 9 2 3 RECORDING MODE IS U gibt an da das Format der logischen Datens tze undefiniert ist d h die Datei kann eine beliebige Kombination von festen oder variablen Datens tzen enthalten Die RECORDING MODE Klausel ist optional und nur f r die Vereinbarung von Datens t zen undefinierter L nge erforderlich da die S tze fester und variabler L nge in der RECORD Klausel festgelegt werden siehe 9 2 3 01 datensatz nn feld 1 typ amp l nge nn feld 2 typ amp l nge stellt eine Datensatzerkl rung f r die zugeh rige Datei dar Sie beschreibt den logischen Aufbau von Datens tzen F r jede Datei ist mindestens eine Datensatzerkl rung erforderlich Werden f r eine Datei mehrere Datensatzerkl rungen angegeben ist das vereinbarte Satzformat zu beachten Bei S tzen fester L nge m ssen alle Satzerkl rungen die gleiche Gr e haben bei S tzen variabler L nge d rfen sie nicht im Widerspruch zur Satzl ngenangabe der RECORD Klausel stehen Die Unterteilung von datensatz in Datenfelder feld 1 feld 2 ist optional F r typ amp l nge sind die erforderlichen L ngen und Formatvereinbarungen PICTURE und USAGE Klau seln etc einzusetzen U3987 J 21
284. ird keine Version angegeben wird beim Schreiben die h chste m gli che Versionsangabe generiert beim Lesen auf die h chste vorhandene Version zugegriffen typ Elementtyp Zul ssig sind S M J H P U F X R 178 U3987 J Z125 8 Dateiverarbeitung Sequentielle Dateien Voraussetzung f r die Verarbeitung zeilensequentieller COBOL Dateien in Bibliotheksele menten ist das Vorhandensein der Bibliothek LMSLIB die auf der TSOS Kennung einge richtet sein mu Beim Binden eines Programms das zeilensequentielle Dateien verarbeiten soll mu zur Befriedigung von Externverweisen zus tzlich zu CRTE die Bibliothek LMSLIB angegeben werden Beispiel 9 6 Erzeugen einer zeilensequentiellen Datei in einem Bibliothekselement Eintr ge im COBOL Quellprogramm FILE CONTROL SELECT AFILE ASSIGN TO LIBELEM ORGANIZATION IS LINE SEQUENTIAL PROCEDURE DIVISION OPEN OUTPUT AFILE Zuweisung von Bibliothek und Element vor Aufruf des Programms SET VAR SYSIOL LIBELEM LIBRARY ELEMENT CCUST LIB MEYER S Hinweis Das SET VARIABLE Kommandbo kann in eine BS2000 Prozedur eingef gt werden sofern es sich dabei um eine strukturierte SDF P Prozedur handelt Die Gestaltung einer struktu rierten Prozedur ist im Benutzerhandbuch zu SDF P 32 beschrieben U3987 J 2125 8 179 Sequentielle Dateien Dateiverarbeitung 9 2 6 Erzeugen von Druckdateien COBOL Sprachmittel f r Druckdateien Die Erstellung von
285. ist Nach dem Aufruf durchsucht der Compiler COBLIB COBLIB1 und COBLIB3 in die ser Reihenfolge nach den in den COPY Anweisungen genannten Elementen und kopiert die Programmzeilen in die Quellprogrammdatei BEISPIEL2 U3987 J Z125 8 17 Quelldaten Eingabe berblick Beispiel 2 6 Eingabe eines COPY Elements aus dem POSIX Dateisystem IDENTIFICATION DIVISION PROGRAM ID PROGI COPY ATEXT 1 Zuweisung des POSIX Dateisystems durch Einrichten und Setzen einer SDF P Variablen SET VAR SYSIOL COBLIB POSIXC usr dirl POSIXC usr dir2 2 START COBOL85 COMPILER 3 1 Das COPY Element ATEXT befindet sich als Datei im POSIX Dateisystem 2 Mit dem SDF P Kommando SET VARIABLE wird die Variable auf die Pfade im POSIX gesetzt in deren Verzeichnissen diri und dir2 nach der Datei ATEXT gesucht werden soll 3 Der Zugriff auf das POSIX Dateisystem ist nur m glich wenn der Compiler mit SDF Steuerung aufgerufen wird Mit dem an das Aufrufkommando angeh ngten 2 gelangt der Benutzer in den SDF Men modus siehe Abschnitt 3 1 2 S 27 in dem weitere Angaben zur Steuerung des bersetzungslaufs erfolgen k nnen 18 U3987 J 2125 8 berblick Ausgaben des Compilers 2 3 Ausgaben des Compilers 2 3 1 Ausgabe von Modulen Der Compiler bersetzt die eingegebenen Quelldaten in Maschinensprache und erzeugt auf diese Weise ein oder mehrere Module die wahlweise Objektmodu
286. ist die SDF P Variable folgenderma en zu gestalten siehe auch Beispiel 2 6 S 18 COPY Anweisung SDF P Variable COPY textname Name der POSIX Datei buchstaben enthalten textname bis zu 30 Zeichen langer die den COPY Text enth lt textname darf keine Klein soll LSET VAR SYSIOL COBLIB POSIX pfad pfad Absoluter Pfadname beginnend mit des Dateiverzeichnisses in dem die Datei textname gesucht werden COPY textname OF bibliothek men SYSIOL bibliothek buchstaben enthalten bibliothek bis zu 30 Zeichen langer Name zur Bildung der SDF P Variablen mit dem Na bibliothek darf keine Klein soll LSET VAR SYSIOL bibliothek POSIX pfad pfad Absoluter Pfadname beginnend mit des Dateiverzeichnisses in dem die Datei textname gesucht werden U3987 J Z125 8 15 Quelldaten Eingabe berblick Beispiel 2 4 Eingabe zweier COPY Elemente IDENTIFICATION DIVISION PROGRAM ID PROG COPY XYZ 1 COPY ABC OF BIBLIO 2 Zuweisung und Verkn pfung ASSIGN SYSDTA BEISPIEL 1 3 SET FILE LINK COBLIB BIBl 4 SET FILE LINK BIBLIO BIB2 5 Compileraufruf Das Quellprogramm in der Datei BEISPIEL 1 enth lt folgende COPY Anweisungen 1 XYZ ist der Name des Elements unter dem das COPY Element in der PLAM Bibliothek BIB1 abgespeichert ist 2 ABC ist der Name des Elements unter dem das COPY Element in der PLAM Biblio
287. it dieser Option und das aufrufende Programm mit einer Compilerversion gt 2 0 bersetzt wurde RECURSIVE CALLS NO YES Bei Angabe von YES wird die Aufrufhierarchie einer Programmablaufeinheit ber pr ft d h das Laufzeitsystem pr ft ob ein getrennt bersetztes Unterprogramm rekur siv aufgerufen wird also noch aktiv ist Liegt ein rekursiver Aufruf vor und enth lt die CALL Anweisung keine ON EXCEPTION Angabe wird der Programmlauf mit der Feh lermeldung COB9157 abgebrochen Jedes Quellprogramm das ein CALL und oder CANCEL enth lt sollte mit RECURSIVE CALLS YES bersetzt werden REF MODIFICATION NO YES Die Angabe von YES bewirkt da das Laufzeitsystem die Einhaltung von Datenfeld grenzen f r teilfeldselektierte Bezeichner berpr ft Sind Datenfeldgrenzen nicht einge halten erfolgt die Fehlermeldung COB9140 und das Programm bricht ab wenn in der RUNTIME OPTIONS Option ERROR REACTION TERMINATION angegeben wurde 54 U3987 J 2125 8 SDF Steuerung des Compilers COMPILER TERMINATION Option 3 3 9 COMPILER TERMINATION Option Mit dieser Option kann ein fehlerzahlabh ngiger Abbruch des bersetzungslaufs initiiert werden Format COMPILER TERMINATION STD PARAMETERS PARAMETERS MAX ERROR NUMBER NONE lt integer 1 100 gt COMPILER TERMINATION STD Es gilt die Voreinstellung der PARAMETERS Struktur COMPILER TERMINATION PARAMETERS MAX ERROR NUMBER NONE lt int
288. iverarbeitung Ein Ausgabe Bedeutung Zustand 47 Es wurde versucht eine READ Anweisung f r eine Datei auszuf hren die sich nicht im Er ffnungsmodus INPUT oder l O befindet 48 Es wurde versucht eine WRITE Anweisung f r eine Datei auszuf hren die sich nicht im Er ffnungsmodus OUTPUT oder EXTEND befindet 49 Es wurde versucht eine REWRITE Anweisung f r eine Datei auszuf hren die sich nicht im Er ffnungsmodus O befindet Sonstige erfolglose Ausf hrungen 90 Systemfehler es ist keine weitere Information ber die Ursache vorhanden 91 Systemfehler ein Systemaufruf war nicht erfolgreich entweder OPEN Fehler oder kein freies Ger t die eigentliche Ursache ist aus dem DVS Code ersichtlich siehe FILE STATUS Klausel 95 Unvertr glichkeit zwischen den Angaben im BLOCK CONTROL INFO oder BUFFER LENGTH Operanden des SET FILE LINK Kommandos und dem Datei format der Blockgr e oder dem Format des verwendeten Datentr gers 192 U3987 J 2125 8 Dateiverarbeitung Relative Dateien 9 3 Relative Dateiorganisation 9 3 1 Merkmale relativer Dateiorganisation In einer relativ organisierten Datei ist jedem Datensatz eine Nummer zugeordnet die seine Position in der Datei angibt Der erste Satz hat die Nummer 1 der zweite die Nummer 2 usw Mit Hilfe eines im Programm vereinbarten Schl sselfeldes kann ber diese relative Satz nummer direkt wahlfrei auf jeden Satz der Datei zugegriffen werden Z
289. izite Speicheradressen des Mo duls ITCLES3 Generierung des Moduls im OMF Format ITCLE49 Sortieren des Adre buches in alphabetischer Reihenfolge ITCLE89 Generierung des Moduls im LLM Format ITCLFO Erzeugung der Optionen Quellprogramm und Fehlermeldungsliste ITCLFB Erzeugung der Objektliste Die mit bis 9 bezeichneten Compilermodule werden nur in den unten n her beschriebe nen F llen verwendet falls Segmente aus mehreren SECTIONs zusammengef gt werden m ssen und dabei eine Umordnung des Quellprogramms notwendig ist bei REPORT SECTION innerhalb der DATA DIVISION bei SUB SCHEMA SECTION innerhalb der DATA DIVISION UDS bei ADD SUBTRACT MOVE oder INITIALIZE Anweisung mit CORRESPONDING Angabe wenn eine der Listen angefordert wird bei Angabe von COMOPT SORT MAP YES bzw SORTING ORDER ALPHABETIC im NAME INFORMATION Parameter der LISTING Option wenn eine Objektliste angefordert wird bei Angabe von COMOPT SYMTEST ALL bzw TEST SUPPORT AID wird statt ITCLES3 verwendet wenn mit COMOPT GENERATE LLM YES bzw COMPILER ACTION MODULE GENERATION MODULE FORMAT LLM ein Modul im LLM Format erzeugt werden soll 350 U3987 J 2125 8 Anhang Aufbau des COBOL85 Systems Das COBOLB85 Laufzeitsystem Das COBOL85 Laufzeitsystem ist Bestandteil des Common RunTime Environment CRTE der gemeinsamen Laufzeitumgebung f r COBOL85 und C C Programme Das CRTE ist in einem e
290. keine weitere Information bez glich der Ein Ausgabe Operation ver f gbar der DVS Code liefert weitere Informationen 2 Bei zeilensequentieller Verarbeitung erfolgloser Zugriff auf PLAM Element Es wurde versucht au erhalb der vom System festgelegten Bereichsgrenzen einer sequentiellen Datei zu schreiben Es wurde versucht eine OPEN Anweisung mit INPUT lI O Angabe f r eine nicht vorhandene Datei auszuf hren OPEN Anweisung auf eine Datei die auf folgende Weise nicht er ffnet werden kann 1 OPEN OUTPUT I O EXTEND auf eine schreibgesch tzte Datei Pa wort RETENTION PERIOD ACCESS READ 2 OPEN I O auf eine Banddatei 3 OPEN INPUT auf eine lesegesch tzte Datei Pa wort Es wurde versucht eine OPEN Anweisung f r eine Datei auszuf hren die vorher mit der LOCK Angabe geschlossen wurde 190 U3987 J 2125 8 Dateiverarbeitung Sequentielle Dateien Ein Ausgabe Bedeutung Zustand 39 Die OPEN Anweisung war aus einem der folgenden Gr nde erfolglos 1 Im SET FILE LINK Kommando wurden einer oder mehrere der Operanden ACCGESS METHOD RECORD FORMAT bzw RECORD SIZE mit Werten angegeben die von den entsprechenden expliziten oder impliziten Pro grammangaben abweichen 2 Bei Eingabedateien traten Satzl ngenfehler auf Katalog berpr fung falls RECFORMS F 3 Die Satzl nge ist gr er als die BLKSIZE im Katalog bei Eingabedateien 4 F r eine Eingabedatei stimmt der Katalogeintrag
291. kl rung 5 Laden bei Programmverkn pfung 258 dynamisch 112 eines permanenten Programms 115 eines tempor ren Programms 112 statisch 115 Laufzeitmeldungen 311 Laufzeitsystem 101 LAYOUT SDF Operand 47 LIBFILES Comopt 69 LIBRARY SDF Operand 35 LINE LENGTH Comopt 70 LINE SIZE SDF Operand 47 LINES PER PAGE Comopt 70 LINES PER PAGE SDF Operand 47 Linknamen Anforderungen 158 BLSLIBnn 113 COBLIB COBLIB1 bis COBLIB9 14 COBOBJCT 113 258 f r das Zuweisen von katalogisierten Dateien 158 f r Jobvariablen 145 MERGEnn 159 SORTCKPT 159 251 SORTIN 159 SORTINnn 159 SORTOUT 159 SORTWK 159 SORTWKn 159 SORTWKnn 159 SRCLIB 63 Listen Ausgabe 21 45 Beschreibung 359 Erzeugung 45 Listenausgabe bei COMOPT Steuerung 69 70 75 in Dateien 48 in PLAM Bibliothek 49 Standard Dateinamen 48 Standard Elementnamen 49 LISTFILES Comopt 70 394 U3987 J 2125 8 Stichw rter LISTING Option 45 LLM Objektdatei 270 LLM Bindelademodul 102 Erzeugen mit dem BINDER 110 263 LLM Format 41 LMS Leistungsbeschreibung 302 LOAD PROGRAM Kommando 112 Logischer Block 156 Ip Kommando 270 LSD List for Symbolic Debugging 125 LSD Namen Abk rzungen von COBOL Verben 128 Format f r AID 127 M Magnetbanddateien 186 COBOL Sprachmittel f r die Verarbeitung 186 FOR REMOVAL Angabe 186 im ISO 7 Bit Code 185 INPUT REVERSED Angabe 186 REEL Angabe 186 WITH NO REWIND Angabe 186 Zuweisen 187 MAX ERROR NUMBER SDF Operand 55 MAXIMUM ERROR NUMBER
292. knamen COBOBUGT und das Laufzeitsystem mit einem der Linknamen BLSLIBnn n 00 bis 99 zugewiesen werden SET FILE LINK LLINK NAME 1COBOBJCT LFILE NAME 1bibliothek SET FILE LINK LLINK NAME BLSLIBnn LFILE NAME 1 SYSLNK CRTE Die Verwendung des Linknamens BLSLIBnn ist nur m glich wenn im Aufrufkommando RUN MODE ADVANCED ALTERNATE LIBRARIES YES angegeben ist Siehe auch Kapitel 12 1 Beispiel 12 1 U3987 J 2125 8 113 Dynamisches Binden und Laden mit dem DBL Binden Laden Starten Beispiel 6 3 Dynamisches Binden und Laden eines Moduls aus einer PLAM Bibliothek START PROGRAM MOD LIB PLAM BSP ELEM COBS5MOD 1 BLSO001 DBL VERSION 070 RUNNING BLS0335 UNRESOLVED EXTERNAL REFERENCES ITCNO21D ITCSACAO ITCSBEGO ITCSDSAO ITCSENDO 2 BLS0336 CONTINUE PROCESSING REPLY Y YES N NO RT TASKLIB SYSLNK CRTE 3 T101 ABNORMAL JOBSTEP TERMINATION BLS0532 START BLS0001 DBL VERSION 070 RUNNING BLS0517 MODULE COB85MOD LOADED PROGRAM MOD LIB PLAM BSP ELEM COB85MOD Das START PROGRAM Kommando weist den Bindelader an das Modul COB85MOD aus der PLAM Bibliothek PLAM LIB zu binden zu laden und anschlie end zu starten Zuvor wurde keine TASKLIB vereinbart Der Bindelader meldet da Externverweise zu COBOL85 Laufzeitmodulen ITC nicht befriedigt werden k nnen d h sie sind weder in einer Bibliothek namens TASKLIB noch unter der Benutzerk
293. kund rschl ssel bersteigt P_MAXKEYS 0615 Anzahl offener Dateien bersteigt systemspezifische Grenze 0616 Spezifizierte Datei existiert nicht 0617 Kein Schreibzugriff erlaubt 0618 kein Dateiname spezifiziert 0619 Datei ist gesperrt 0620 unzul ssige Kombination von Dateiattributen 0621 File Handle ist ung ltig 0622 Aktueller Datensatz ist k rzer als MINSIZE 0623 Aktueller Datensatz ist l nger als MAXSIZE 0625 Vor rwrite sequentiell wurde kein read sequentiell ausgef hrt 0626 Spezifiziertes Satzformat ist unzul ssig 0627 MINSIZE ist gr er als MAXSIZE 0628 Spezifizierte Organisation ist unzul ssig 0629 Nicht existent spezifizierte Datei existiert 0630 Spezifizierte Zugriffsfunktion ist nicht erlaubt 0631 Spezifizierter Schl ssel ist unzul ssig 0632 Mehrfachschl ssel ist nicht erlaubt 0633 Aktueller Satz ist zur Zeit gesperrt U3987 J 2125 8 295 Verarbeiten von POSIX Dateien COBOL85 und POSIX Ein Ausgabezustand Bedeutung 0634 Aktueller Schl ssel in fehlerhafter Reihenfolge 0635 Spezifizierter Pfad ist undefiniert 0636 Es ist ein systemspezifischer Fehler aufgetreten 0637 Zeilenende ist erreicht 0638 Satz wurde abgeschnitten 0640 Kein Speicherplatz zur Dateierweiterung verf gbar 0643 Spezifizierter ffnungsmodus ist unzul ssig 0644 L nge des Links bersteigt P_MAXLINK
294. l OM Format oder Bindelademodul LLM Format besitzen Der Benutzer kann veranlassen da einem Mo dul ein Symbolisches Adre buch LSD List for Symbolic Debugging zugeordnet wird das die symbolischen Adressen des Quellprogramms speichert Objektmodule gibt der Compiler standardm ig in die tempor re EAM Datei der aktuellen Task aus Die Objektmodule werden dort additiv d h ohne Bezug zueinander abgespei chert Die EAM Datei geh rt zu der Task in der die bersetzung stattfindet Sie wird beim ersten bersetzungslauf f r diese Task angelegt und bei Task Ende LOGOFF Bearbeitung automatisch gel scht Soll das Ergebnis der bersetzung also weiterverwendet werden so ist der Benutzer daf r verantwortlich da der Inhalt der EAM Datei sichergestellt bzw wei terverarbeitet wird F r die Sicherstellung von Objektmodueln aus der EAM Datei in PLAM Bibliotheken steht ihm dabei das Dienstprogramm LMS zur Verf gung siehe 12 Werden die bersetzten Objektmodule in der EAM Datei nicht mehr ben tigt z B weil das Quellprogramm noch zu korrigierende Fehler enth lt so empfiehlt es sich die EAM Datei sp testens vor dem n chsten bersetzungslauf mit dem Kommando DELETE SYSTEM FILE LFILE NAME OMF zu l schen Bindelademodule LLMs schreibt der Compiler grunds tzlich als Elemente vom Typ L in eine PLAM Bibliothek Falls das POSIX Subsystem vorhanden ist k nnen die Module ins POSIX Dateisystem ausgegeben werden Diese
295. l nge 46 S erneuter READ nach erfolglosem READ oder erkanntem AT END RI sequent READ nach erfolglosem READ START oder nach erkanntem AT END S READ auf nicht zum Lesen ge ffnete Datei 47 RI READ START auf nicht zum Lesen ge ffnete Datei SRI WRITE auf nicht zum Schreiben ge ffnete Datei 48 S REWRITE auf nicht mit I O ge ffnete Datei 49 RI DELETE REWRITE auf nicht mit I O ge ffnete Datei 9x sonstige erfolglose Ausf hrung 90 SRI Systemfehler keine weiteren Informationen 91 SRI OPEN Fehler oder kein freies Ger t S sequentielle Organisation R relative Organisation indexsequentielle Organisation 294 U3987 J 2125 8 COBOL85 und POSIX Verarbeiten von POSIX Dateien Erweiterter Ein Ausgabezustand SIS Code Ein Ausgabezustand Bedeutung 0601 Dateiende ist erreicht 0602 Spezifizierter Satz existiert nicht 0603 Spezifizierter Satz existiert bereits 0604 Dateianfang ist erreicht 0605 Spezifizierter Link existiert nicht 0606 Dateiname ist l nger als P_MAXFILENAME 0607 Pfad ist l nger als P_MAXPATHSTRG 0608 Pfadname ist l nger als P_MAXPATHNAME 0609 Linkname ist l nger als P_MAXLINKNAME 0610 kein ausreichender Speicherplatz verf gbar 0611 Anzahl der Pfadelemente bersteigt P_MAXHIERARCHY 0612 Funktion wird nicht unterst tzt 0613 Dateiname ist fehlerhaft oder leer 0614 Anzahl der Se
296. l nger ist als der bei NK ISAM Dateien nutzbare Bereich eines logischen Blok kes In folgender Tabelle wird dargestellt wie man bei ISAM Dateien errechnen kann wieviel Platz pro logischem Block f r Datens tze zur Verf gung steht Dateiformat RECORD FORMAT maximaler nutzbarer Bereich K ISAM VARIABLE BUF LEN FIXED BUF LEN s 4 wobei s Anzahl der S tze pro logischem Block NK ISAM VARIABLE BUF LEN n 16 12 s 2 auf n chste durch 4 teilbare Zahl abgerundet wobei n Blockungsfaktor s Anzahl der S tze pro logischem Block FIXED BUF LEN n 16 12 s 2 s 4 auf n chste durch 4 teilbare Zahl abgerundet wobei n Blockungsfaktor s Anzahl der S tze pro logischem Block Tabelle 9 2 Maximal nutzbarer Blockbereich bei ISAM Dateien Zur Erl uterung der Formeln Bei RECORD FORMATS FIXED ist sowohl bei K als auch bei NK ISAM Dateien pro Satz ein 4 byte langes Satzl ngenfeld zwar vorhanden wird aber nicht zur RECSIZE gerechnet Deshalb m ssen in diesen F llen pro Satz jeweils 4 byte abgezogen werden Bei NK ISAM Dateien enth lt jede PAM Seite eines logischen Blocks jeweils 16 byte Ver waltungsinformation Der logische Block enth lt zus tzlich weitere 12 byte Verwaltungsin formation und pro Satz einen 2 byte langen Satzpointer U3987 J 2125 8 167 Grundlagen Dateiverarbeitung Beispiel 9 5 maximale Satzl nge einer NK ISAM Datei feste Satzl nge Dat
297. logtesthilfe AID 7 1 1 sich die Inhalte von Feldern in einer Form ausgeben zu lassen welche die Daten definitionen des Quellprogrammes ber cksichtigt die Inhalte von Feldern zu ver ndern wobei AID die dazu n tigen Daten ber tragungen gem den Regeln der COBOL MOVE Anweisung durchf hrt 3 Es unterst tzt neben der Diagnose geladener Programme auch die Analyse von Spei cherabz gen in Plattendateien 4 Es kann im Dialog und im Stapelbetrieb eingesetzt werden F r einen Programmtest empfiehlt sich allerdings der Dialog da die Folge der Kommandos nicht im voraus fest gelegt werden mu und der jeweiligen Testsituation angepa t werden kann Voraussetzungen f r das symbolische Testen Beim Testen auf symbolischer Ebene erlaubt es AID Datenfelder Kapitel und Paragraphen mit den im Quellprogramm definierten Namen anzusprechen und sich auf Anweisungszei len und einzelne COBOL Verben in der PROCEDURE DIVISION zu beziehen Daf r m s sen AID Informationen ber diese symbolischen Namen zur Verf gung gestellt werden Diese Informationen gliedern sich in zwei Teile siehe dazu 26 die LSD List for Symbolic Debugging in der die im Modul definierten symbolischen Namen und Anweisungen verzeichnet sind und das ESD External Symbol Dictionary das die Externbez ge eines Moduls registriert Die Erzeugung bzw Weitergabe dieser Informationen wird durch entsprechende Operan den im Aufrufkommando bzw in d
298. ls Eingabedatei sie kann nur gelesen werden OUTPUT er ffnet die Datei als Ausgabedatei sie kann nur neu geschrieben werden EXTEND er ffnet die Datei als Ausgabedatei sie kann erweitert werden I O er ffnet die Datei als Ein Ausgabedatei sie kann Satz f r Satz gelesen aktualisiert und zur ckgeschrieben werden Die Angabe f r open modus legt fest mit welchen Ein Ausgabeanweisungen auf die Datei zugegriffen werden darf siehe 9 4 4 U3987 J 2125 8 221 Indizierte Dateien Dateiverarbeitung START interner dateiname READ interner dateiname REWRITE datensatz WRITE datensatz DELETE interner dateiname sind Ein Ausgabeanweisungen f r die Datei die jeweils in der Datei auf einen Satz positionieren bzw einen Satz lesen bzw einen Satz zur ckschreiben bzw einen Satz schreiben bzw einen Satz l schen Welche dieser Anweisungen f r die Datei zul ssig sind h ngt von der Er ffnungsart ab die in der OPEN Anweisung vereinbart wird Dieser Zusammenhang wird in Abschnitt 9 4 4 be schrieben CLOSE interner dateiname beendet die Verarbeitung der Datei Durch die zus tzliche Angabe WITH LOCK kann ein erneutes Er ffnen der Datei im selben Programmlauf verhindert werden 9 4 3 Zul ssige Satzformate und Zugriffsarten Satzformate Indizierte Dateien k nnen S tze fester L nge RECFORMS F oder variabler L nge REC FORM V enthalten In beiden F llen k nnen die
299. m Programm nein 2175 COB9Y175 Anwenderfehler nein 2176 COB9176 REPORT WRITER Anwenderfehler Tabelle 6 1 R ckkehrcode Anzeige in Jobvariablen 118 U3987 J 2125 8 Binden Laden Starten Programmbeendigung R ckkehr Fortsetzung Code Fehler steuerbar Verhalten in Anzeige nummer Kurzbeschreibung des Fehlers mit Option Dump Prozeduren 2178 COB9178 Zu sortierender Satz pa t nicht zu nein nein Verzweigung SD Beschreibung ja zum n chsten 2179 COB9179 sortierter Satz pa t nicht zur nein a GIVING Dateibeschreibung ABORT 2180 COB9180 RELEASE RETURN au erhalb der nein oder SORT MERGE Steuerung LOGOFF 2181 COB9181 DATABASE HANDLER hat letzte nein Kommando DML Anweisung noch nicht abgear beitet 2184 COB9184 SORT innerhalb der SORT Steue nein rung 3192 COB9192 Programmende wurde erreicht nein ja ohne da STOP RUN oder EXIT PROGRAM ausgef hrt wurde 3193 COB9193 Fehler bei DISPLAY nein 3194 COB9194 Fehler bei Eingabe von SYSDTA nein 3195 COB9195 Fehler bei Ausgabe auf SYSLST nein 3196 COB9196 ACCEPT oder DISPLAY Anwei nein sung Fehler an der Schnittstelle Laufzeitystem Betriebssystem 3197 COB9197 Jobvariablen fehlerhafter Zugriff ja 3198 COB3198 Hardware Unterbrechung nein 3199 keine WROUT Fehler nein Es kann keine Meldung mehr ausge geben werden Tabelle 6 1 R ckkehrcode Anzeige in Jobvari
300. men BLSLIBnn 00 lt nn lt 99 zugewiesen werden Dies geschieht vor Aufruf des BINDERS mit dem SET FILE LINK Kommando z B SET FILE LINK LINK NAME BLSLIBOl FILE NAME SYSLNK CRTE Ein mit dem BINDER erzeugter LLM kann sofern alle Externverweise befriedigt sind mit dem DBL ohne Zuweisung alternativer Bibliotheken geladen und gestartet werden START PROGRAM MODULE LIB bibliothek ELEM modul RUN MODE ADVANCED Achtung LLMs mit eingebundenem Laufzeitsystem d rfen nicht in Bibliotheken abgelegt werden aus denen auch nicht vorgebundene LLMs direkt geladen werden sollen U3987 J Z125 8 111 Dynamisches Binden und Laden mit dem DBL Binden Laden Starten 6 4 Dynamisches Binden und Laden mit dem DBL Mit dem Dynamischen Bindelader DBL werden in einem Arbeitsgang Module tempor r zu einer ladbaren Einheit gebunden dann in den Speicher geladen und gestartet Die erzeug te Ladeeinheit wird am Ende des Programmablaufs automatisch gel scht Die Arbeitsweise des DBL ist im Handbuch Bindelader Starter 11 ausf hrlich beschrie ben Der DBL wird implizit durch die Kommandos START PROGRAM und LOAD PROGRAM aufgerufen Die folgende bersicht stellt die wichtigsten Angaben der Kommandos START PROGRAM und LOAD PROGRAM zum Aufruf des DBL zusammen die ausf hrliche Be schreibung aller m glichen Operanden findet sich im Handbuch 11 OMF ELEMENT modul FROM FILE MODULE LIBRARY lt 4 OMF ELEMENT ALL t b
301. merisches Datenfeld erkl rt wer den also z B 01 datenname 1 PIC X 2 enth lt nach jeder Ein Ausgabeoperation auf die zugeordnete Datei einen zweistelli gen numerischen Zustandscode dessen Bedeutung der Tabelle am Ende dieses Ab schnitts entnommen werden kann 188 U3987 J 2125 8 Dateiverarbeitung Sequentielle Dateien datenname 2 mu als sechs Byte langes Gruppenfeld der folgenden Struktur erkl rt werden 01 datenname 2 02 datenname 2 1 02 datenname 2 2 PIC 9 2 COMP PIC X 4 dient der Aufnahme des DVS Fehlerschl ssels DVS Codes zum jeweiligen Ein Ausgabezustand und enth lt nach jedem Zugriff auf die zugeordnete Datei einen Wert der vom Inhalt des Feldes datenname 1 abh ngt und sich aus folgender Zusammen stellung ergibt Inhalt von DVS Code Wert von Wert von datenname 1 ungleich 0 datenname 2 1 datenname 2 2 ungleich 0 nein nicht relevant undefiniert undefiniert ja nein 0 undefiniert DVS Code der zugeordne ja ja 64 ten Fehlermeldung Die DVS Codes und die zugeordneten Fehlermeldungen k nnen dem Handbuch 4 entnommen werden Achtung F r zeilensequentielle Dateien steht nur der durch datenname 1 repr sentierte Ein Ausgabezustand zur Verf gung Die Zustandswerte und ihre Bedeutung beziehen sich i d R auf sarzsequentielle Dateien Bei der Verarbeitung zeilensequentieller Dateien m ssen bez glich der Inter pretation der Zustandswerte die spezifi
302. mmablaufs Mit Taskende ist der Zeitpunkt nach dem LOGOFF Kommando gemeint Statt des Begriffs Proze schalter wird heute der Begriff Auftragsschalter verwendet 6 U3987 J 2125 8 2 berblick Vom Quellprogramm zum ablauff higen Programm Damit aus einem COBOL Quellprogramm ein ablauff higes Programm wird sind drei Schritte n tig 1 Bereitstellen des Quellprogramms siehe Abschnitt 2 1 2 bersetzen Das Quellprogramm mu in Maschinensprache umgesetzt werden Der Compiler erzeugt dabei wahlweise ein Objektmodul oder ein Bindelademodul und protokolliert Ablauf und Ergebnis der bersetzung 3 Binden Ein oder mehrere Module werden mit sog Laufzeitmodulen verkn pft Es entsteht ein ablauff higes Programm siehe Kap 6 Quellprogramm bersetzungslauf Objektmodul Bindelademodul Binderlauf ablauff higes Programm Abbildung 2 1 Der Weg zum ablauff higen Programm U3987 J 2125 8 7 berblick Der Compiler bernimmt w hrend des bersetzungslaufs drei Funktionen berpr fung des Quellprogramms auf syntaktische und semantische Fehler Umsetzung des COBOL Codes in Maschinensprache Ausgabe von Meldungen Protokoll Listen und Modulen Durch Steueranweisungen kann der Benutzer Funktionen des COBOL85 ausw hlen die Betriebsmittel f r Ein und Ausgabe zuweisen Eigenschaften des Moduls bestimmen Art und
303. mmando cobo zur Verf gung Dieses Kommando ist Abschnitt 13 3 S 276 ausf hrlich beschrieben Erzeugen einer LLM Objektdatei o Datei Der Compiler erzeugt pro bersetzter Quelldatei ein LLM und legt dieses im aktuellen Dateiverzeichnis als POSIX Objektdatei mit dem Standardnamen basisname o ab basisname ist der Name der Quelldatei ohne die Dateiverzeichnisbestandteile und ohne das Suffix cob oder cbl Bei der bersetzung von Quellprogramm Folgen wird f r jedes Quellprogramm ein LLM erzeugt das in einer POSIX Objektdatei abgelegt wird basisname ist in diesem Fall f r das zweite bis letzte Quellprogramm der jeweilige PROGRAM ID Name Standardm ig wird nach dem bersetzungslauf ein Bindelauf gestartet Mit der Option c kann der Bindelauf verhindert werden siehe S 277 Erzeugen einer bersetzungsliste Mit der Option P siehe S 280 k nnen diverse bersetzungslisten angefordert werden z B Quellprogrammliste Fehlerliste Querverweisliste etc Die angeforderten Listen schreibt der Compiler in eine Listendatei mit dem Standardnamen basisname Ist und legt diese im aktuellen Dateiverzeichnis ab basisname ist der Name der Quelldatei ohne die Dateiverzeichnisbestandteile und ohne das Suffix cob oder cbl F r das Ausdrucken von Listendateien steht das POSIX Kommando 1p zur Verf gung siehe Handbuch POSIX Kommandos Beispiel f r das Ausdrucken einer bersetzungsliste Ip o control mode physical cobbsp 1st
304. mmer der Quellprogrammzeile an in der der Fehler auftrat MSG INDEX gibt die Fehlermeldungskennzeichnung an SEVERITY CODE gibt die Fehlerklasse an siehe Tabelle 14 1 ERROR MESSAGE enth lt den erkl renden Text und gegebenenfalls die von COBOL85 durchgef hrte Korrektur oder einen von COBOL85 angenommenen Standardwert Am Ende der Fehlermeldungsliste wird eine Abschlu information ber Gesamtanzahl aller aufgetretenen Fehler sowie Gesamtanzahl der Fehler in den verschiedenen Fehlerklassen ausgedruckt COBOL85 V02 2A00 1 SOURCE SEQ NO 00032 00047 00054 TOTAL 00003 STATEMENT 00001 IN SEVER 00002 IN SEVER 2 MSG INDEX 31018 7141713 71168 KOPIEREN 3 SEVERIT coD N E F S V R E IS IN TY co DIAGNOSTIC LISTING 14 46 36 1995 09 14 PAGE 0004 4 RROR MESSAGE ACH EINER DATENSATZERKLAERUNG FEHLT DER ABSCHLIESSENDE PUNKT IN PUNKT WURDE ANGENOMMEN PALTENNUMMER 26 EXIT STATEMENT IST NONCONFORMING NONSTANDARD OR EINEM PARAGRAPHEN ODER EINER SECTION FEHLT EIN PUNKT UNKT WIRD ANGENOMMEN THIS DIAGNOSTIC LISTING TY CODE F DE 1 U3987 J Z125 8 367 Adre liste Anhang Adre liste 12 13 Angabe des Programmteils des Kapitels und des Programmnamens Dateiname Dateifolgenummer und Adresse des Dateisteuerblocks aller im Pro gramm verwendeten Dateien SOURCE SEQ NO Folgenummer der Quellprogrammzeile in der d
305. n u a beim Sortieren die Umlaute bzw wie AE OE bzw UE behandelt SDF Option RUNTIME OPTIONS PARAMETERS SORTING ORDER SORT MAP YES NO gestattet es sich die Adre liste LOCATOR MAP aufstei gend sortiert nach symbolischen Namen aus dem Quell programm ausgeben zu lassen Das Protokoll besteht aus Listen f r Daten Kapitel und Paragraphennamen SDF Option LISTING PARAMETERS NAME INFORMATION YES SORTING ORDER SUPPORT WINDOW DEBUGGING YES NO S W D In COBOL85 BC nicht verf gbar erm glicht es das generierte Objekt im Rahmen des gra phischen AID Testplatzes AID FE zu testen SDF Option TEST SUPPORT AID WINDOW DEBUG SUPPORT U3987 J 2125 8 73 COMOPT Operanden COMOPT Steuerung Operandenformat Funktion SOURCE ELEMENT element SOURCE ELEM weist dem Compiler als Quellprogramm ein Element einer PLAM Bibliothek zu Vor der bersetzung mu diese Biblio thek mit dem SET FILE LINK Kommando ber den Linknamen SRCLIB zugewiesen werden element ist dabei der Name des Bibliothekselementes Es mu in einer PLAM Bibliothek unter dem Elementtyp S enthalten sein element darf h chstens 40 Zeichen lang sein SDF Option SOURCE LIBRARY ELEMENT LIBRARY ELEMENT SOURCE VERSION version SOURCE VERS gibt dem Compiler an welche Version des mit SOURCE ELEMENT zugewiesenen Elementes zu bersetzen ist vers
306. n Datenhaltung Der EAM Speicher wird entlastet wenn Bindemodule direkt als PLAM Bibliotheksele mente abgelegt werden U3987 J 2125 8 11 Bereitstellen des Quellprogramms berblick Eingabe in PLAM Bibliotheken PLAM Bibliotheken k nnen Quellprogramme aufnehmen aus Dateien aus anderen Bibliotheken ber SYSDTA bzw SYSIPT d h von einer Datenstation oder einer tempor ren SPOOLIN Datei Wie ein Quellprogramm in eine PLAM Bibliothek eingegeben werden kann h ngt davon ab in welcher Form es daf r zur Verf gung steht Liegt es in einer katalogisierten Datei oder als Element einer Bibliothek vor kann es ber das Dienstprogramm LMS in eine PLAM Bibliothek aufgenommen werden siehe Beispiel 2 1 Bei der bernahme eines Quellprogramms aus einer ISAM Datei mit LMS ist zu beachten da nicht mit PAR KEY YES bzw SOURCE ATTRIBUTES KEEP der ISAM Schl ssel mit bernommen wird Ein Quellprogramm mit ISAM Schl ssel kann der COBOL85 Compiler nicht verarbeiten Soll das Quellprogramm neu erfa t werden kann es auch unmittelbar durch den Datei aufbereiter EDT als Element in eine PLAM Bibliothek geschrieben werden Beispiel 2 1 bernahme eines Quellprogramms aus einer katalogisierten Datei in eine PLAM Bibliothek START LMS 1 BLS0500 PROGRAM LMSSDF VERSION V03 0A OF 1994 06 21 LOADED BLS0552 COPYRIGHT C SIEMENS NIXDORF INFORMATIONSSYSTEME AG 1994 ALL RIGHTS RESERVED
307. n UTM Anwendungen Inhalt Installation von UTM Einrichten Bedienen und Verwalten von UTM Anwendungen UTM Benutzerkommandos SDF P V2 0A BS2000 0SD Programmieren in der Kommandosprache Benutzerhandbuch Zielgruppe Das Handbuch wendet sich an BS2000 0OSD Anwender und Systemverwalter Inhalt SDF P ist eine strukturierte Prozedursprache im BS2000 Nach einer Einf hrung werden Kommandos Funktionen und Makros ausf hrlich beschrieben SDF P V2 0A kann unter BS2000 OSD BC V1 0 nur mit VAS 2 0A und SDF V4 0 einge setzt werden POSIX V1 0A BS2000 0SD Kommandos Benutzerhandbuch Zielgruppe Das Handbuch wendet sich an alle Benutzer der POSIX Shell Inhalt Dieses Handbuch ist ein Nachschlagewerk Es beschreibt das Arbeiten mit der POSIX Shell sowie die Kommandos der POSIX Shell in alphabetischer Reihen folge U3987 J 2125 8 381 Literatur 34 33 POSIX V1 0A BS2000 0OSD Grundlagen f r Anwender und Systemverwalter Benutzerhandbuch Zielgruppe BS2000 Systemverwalter POSIX Verwalter BS2000 Benutzer Benutzer von UNIX SINIX Workstations Inhalt Einf hrung und Arbeiten mit POSIX BS2000 Softwareprodukte im Umfeld von POSIX POSIX installieren und steuern Dateisysteme verwalten POSIX Benutzer verwalten BS2000 Kommandos f r POSIX C C V2 2A BS2000 0SD POSIX Kommandos des C und des C Compilers Benutzerhandbuch Zielgruppe C und C Anwender im BS2000 OSD Inhalt Einf
308. n einer Liste von Parametern mindestens einer by value bergeben so ist in der letzten Parameteradre konstanten der Liste das h chstwertige Bit nicht gesetzt U3987 J 2125 8 267 268 U3987 J 2125 8 13 COBOL85 und POSIX In COBOL85 BC nicht unterst tzt Der Compiler COBOL85 V2 2 kann ab BS2000 OSD V2 0 in der POSIX Umgebung POSIX Shell aufgerufen und mit Optionen gesteuert werden Ferner k nnen COBOL Programme die in POSIX oder BS2000 bersetzt wurden in der POSIX Umgebung zum Ablauf gebracht werden Schlie lich kann falls das POSIX Subsystem vorhanden ist auch bei Compiler bzw Programmablauf im BS2000 auf das POSIX Dateisystem zugegriffen werden Auf folgende weiterf hrende Literatur zum Thema POSIX sei an dieser Stelle hingewiesen POSIX im BS2000 0SD Diese Brosch re gibt einen allgemeinen berblick ber die Strategien und Ziele von POSIX im BS2000 OSD POSIX Grundlagen Dieses Handbuch bietet eine anschauliche Einf hrung in POSIX und vermittelt alle Grund kenntnisse die f r das Arbeiten mit dem POSIX Subsystem ben tigt werden POSIX Kommandos Dieses Handbuch enth lt die Beschreibung aller POSIX Benutzerkommandos U3987 J 2125 8 269 berblick COBOL85 und POSIX 13 1 berblick Die folgenden drei Abschnitte bieten einen berblick ber den Einsatz des Compilers im POSIX Subsystem 13 1 1 bersetzen F r das bersetzen von COBOL Quellprogrammen steht das POSIX Ko
309. n mit START auf jeden beliebigen Daten satz als Ausgangspunkt f r nachfolgende sequentielle Leseoperationen positioniert wer den Den Schl ssel Prim r oder Sekund rschl ssel des zuerst zu lesenden Satzes legt START dabei ber eine Vergleichsbedingung fest Das folgende Beispiel zeigt wie es mit Hilfe der Spracherweiterung gegen ber ANS85 START KEY LESS m glich ist eine indizierte Datei sequentiell in umgekehrter Richtung zu verarbeiten d h in der Reihenfolge absteigender Satzschl ssel beginnend mit dem h chsten in der Datei vorhandenen Schl ssel Beispiel 9 11 Verarbeiten einer indizierten Datei in umgekehrter Richtung IDENTIFICATION DIVISION PROGRAM ID INDREV DREV VERARBEITET DIE SAETZE EINER INDIZIERTEN DATEI x DER FOLGE ABSTEIGENDER SATZSCHLUESSEL ENVIR ENT DIVISION CONFIGURATION SECTION SPEC NAMES AL IS T UTPUT SECTION FILE C ROL SELECT IND DATEI SSIGN TO INDFILE RGANIZATION IS INDEXED CCESS IS DYNAMIC ECORD KEY IS REC KEY DATA DIVISION FILE SECTION FD D DATEI 01 D SATZ REC KEY PIC X 8 REC TEXT PIC X 72 G STORAGE SECTION RARBEITUNGS SCHALTER PIC X VERARBEITUNGS ENDE VALUE 1 RE DIVISION IM gt oao OO INPU z gt o gt o on OR 01 I I 0 0 I V 8 PROCE VORLA UC U Om MT O IND DATEI MOV IGH VALUE TO REC KEY MOVE 0 TO VERARBEITUNGS SCHALTER DATEI VERARBEITE
310. nd Nummer der letzten Aktualisierung 148 U3987 J Z125 8 Schnittstelle COBOL Programm BS2000 Umgebungsvariable 8 4 Zugriff auf eine Umgebungsvariable Auf eine Umgebungsvariable kann mit ACCEPT bzw DISPLAY Anweisungen zugegriffen werden Der Name der Umgebungsvariablen wird mit Format 4 der DISPLAY Anweisung festgelegt Um auf den Inhalt der Umgebungsvariablen zuzugreifen ben tigt man Format 5 der AC CEPT Anweisung Auf Systemebene mu die Umgebungsvariable mit einer SDF P Variablen eingerichtet werden Beispiel 8 5 Zugriff auf eine Umgebungsvariable SET VAR TSTENV AAAA BBB CC D START PROGRA Programmausschnitt IDENTIFICATION DIVISION SPECIAL NAMES ENVIRONMENT NAME IS ENV NAME ENVIRONMENT VALUE IS ENV VAR RMINAL IS T m WORKING STORAGE SECTION 01 A PIC X 15 PROCEDURE DIVISION DISPLAY TSTENV UPON ENV NAME ACCEPT A FROM ENV VAR ON EXCEPTION DISPLAY ACCESS TO VARIABLE TSTENV FAILED UPON T END DISPLAY OT ON EXCEPTION DISPLAY VALUE IS A UPON T END DISPLAY END ACCEPT Die Ausnahmebedingung tritt bei jedem fehlerhaften Zugriff ein Ursachen f r einen fehler haften Zugriff k nnen z B sein fehlendes SET VAR Kommando Inhalt der Variablen ist l nger als das Empfangsfeld U3987 J 2125 8 149 Compiler und Betriebssysteminformationen Schnittstelle COBOL Programm BS2000 8 5 Compiler und Betriebssysteminformationen COBOL Pro
311. nd DISPLAY der PROCEDURE DIVISION ACCEPT FROM merkname liest den Inhalt der im SPECIAL NAMES Paragraphen mit merkname verkn pften Jobvariable Die Daten werden dabei linksb ndig in der L nge des Empfangsfeldes der ACGEPT Anweisung bertragen Ist das Feld l nger als 256 byte wird es am rechten Ende mit Leerzeichen aufgef llt ist es k rzer wird der Inhalt der Jobvaria ble bei der bertragung rechts auf die Feldl nge abgeschnitten DISPLAY UPON merkname schreibt in die im SPECIAL NAMES Paragraphen mit merkname verkn pfte Job variable Die Daten werden dabei in der L nge der Sendefelder bzw Literale der DISPLAY Anweisung bertragen falls die maximale Datensatzl nge von 256 byte bei ber wachenden Jobvariablen 128 byte nicht berschritten wird Ist die Gesamtzahl der zu bertragenden Zeichen gr er als die maximale Datensatzl nge wird der Satz bei der bertragung auf die maximale L nge abgeschnitten Bei der bertragung in eine berwachende Jobvariable ist zu beachten da deren erste 128 Bytes vom System gegen Schreibzugriffe gesch tzt werden Es wird da her nur der Teil des Datensatzes der mit der Position 129 beginnt ab Position 129 in die Jobvariable geschrieben L uft ein COBOL Programm mit Anweisungen f r Jobvariablen in einer BS2000 Instal lation ab die Jobvariablen nicht unterst tzt werden diese Anweisungen nicht ausge f hrt Nach einer ACCEPT Anweisung enth lt das Empfangsfeld di
312. nd vom Betriebssystem verwaltete Objekte die ber Namen adressiert wer den und in die Daten bis zu einer L nge von 256 byte abgespeichert werden k nnen Sie dienen zum Austausch von Informationen zwischen Benutzern einerseits sowie Betriebs system und Benutzern andererseits Auf sie kann ber die Kommando und Makroschnitt stelle zugeriffen werden Bei Verwendung der Komponente SDF der BS2000 BC k nnen Jobvariablen als globale Parameter auf Kommandoebene verwendet werden In Bedingungsanweisungen kann man Jobvariablen ber boolesche Operationen ver kn pfen und somit die Ausf hrung einzelner Aktionen vom Wahrheitswert der Bedingung abh ngig machen Benutzer Jobvariablen und berwachende Jobvariablen s u bieten zudem die M glichkeit der synchronen und asynchronen Ereignissteuerung auf Kom mando und Programmebene F r die verschiedenen Aufgabengebiete gibt es unterschiedliche Jobvariablen e Benutzer Jobvariablen Die allgemeinste Form in der Jobvariablen angeboten werden ist die Form der Benutzer Jobvariablen Ihr Name ihre Lebensdauer und die abzuspeichernden Daten werden aus schlie lich vom Benutzer bestimmt Sie kann mit Schutzattributen wie Pa w rtern Schreibschutz und Verfallsdatum versehen werden Der Zugriff auf sie kann auf eine Benut zerkennung beschr nkt oder generell gestattet sein Benutzer Jobvariablen sind besonders geeignet zum Austausch von Informationen Sie k nnen aber auch zur Auftragssteuerung verwe
313. ndenen Satzes bzw bei REWRITE bzw DELETE die Nummer eines nicht existierenden Satzes z B eines Leersatzes angegeben tritt eine INVALID KEY Bedin gung auf und WRITE REWRITE oder DELETE verzweigen zur INVALID KEY Anwei sung bzw zur vereinbarten USE Prozedur ACCESS MODE IS DYNAMIC gestattet es die Datei sowohl sequentiell als auch wahlfrei zu verarbeiten Die jeweilige Zugriffsart wird dabei ber das Format der READ Anweisung gew hlt 206 U3987 J 2125 8 Dateiverarbeitung Relative Dateien 9 3 5 Erstellen einer relativen Datei mit wahlfreiem Zugriff Das folgende Beispiel gibt ein einfaches COBOL Programm wieder mit dem eine relative Datei mit wahlfreiem Zugriff erstellt werden kann Die Datens tze k nnen dabei in beliebi ger Reihenfolge in die Datei geschrieben werden Beispiel 9 9 Programm zum wahlfreien Erstellen einer relativen Datei nananana 7S a S E m uu ZERO 64 gm gn o 4 IDENTIFICATION DIVISION PROGRAM ID RELATIV ENVIRONMENT DIVISION CONFIGURATION SECTION SPECIAL NAMES TERMINAL IS T INPUT OUTPUT SECTION FILE CONTROL SELECT RELATIV DATEI ASSIGN TO RELFILE ORGANIZATION IS RELATIVE ACCESS MODE IS RANDOM RELATIVE KEY IS REL KEY FILE STATUS IS FS CODE DVS CODE DATA DIVISION FILE SECTION FD RELATIV DATEI 01 RELATIV SATZ PIC X 3
314. nder Inhalt Bearbeiten von SAM und ISAM Dateien und Elementen aus Programm Bibliothe ken und POSIX Dateien 378 U3987 J 2125 8 Literatur 24 25 26 AID BS2000 Advanced Interactive Debugger Basishandbuch Benutzerhandbuch Zielgruppe Programmierer im BS2000 Inhalt berblick ber AID Beschreibung der Sachverhalte und Operanden die f r alle Programmierspra chen gleich sind Meldungen Gegen berstellung von AID IDA Einsatz Testen von Programmen im Dialog und Stapelbetrieb AID BS2000 OSD Testen auf Maschinencode Ebene Benutzerhandbuch Zielgruppe Programmierer und Tester Inhalt Beschreibung der AlD Kommandos f r das Testen auf Maschinencode Ebene Anwendungsbeispiel BS2000 Programmiersystem Technische Beschreibung Zielgruppe BS2000 Anwender und Betreiber die sich f r den technischen Hintergrund ihres Systems interessieren Softwareentwickler Systemanalytiker RZ Leiter System verwalter sowie Informatiker die ein konkretes General Purpose Betrieossystem studieren wollen Inhalt Funktionen und Realisierungsprinzipien des Binders des Laders des Binde Laders der Test und Diagnosehilfen des Programmbibliothekssystems U3987 J Z125 8 379 Literatur 27 28 29 BINDER BS2000 OSD Benutzerhandbuch Zielgruppe Das Handbuch wendet sich an Software Entwickler Inhalt Es beschreibt die BINDER Funkti
315. ndet werden 304 U3987 J 2125 8 Nutzbare So ftware f r COBOL Anwender Jobvariablen e berwachende Jobvariablen Die berwachende Jobvariable ist eine Spezialform der Benutzer Jobvariablen Sie wird einem Auftrag oder Programm zugeordnet Name Lebensdauer und Schutzattribute bestimmt der Benutzer Im Gegensatz zur Benutzer Jobvariable wird sie aber vom Betriebssystem mit fest vorgegebenen Werten versorgt die den Status des zugeordneten Auftrags oder Programms widerspiegeln berwachende Jobvariablen sind besonders geeignet zur Auftragssteuerung wie sie u a bei Abh ngigkeiten in Produktionsabl ufen notwendig ist Dokumentation Jobvariablen Beschreibung 8 U3987 J 2125 8 305 Datenbankschnittstelle ESQL COBOL Nutzbare Software f r COBOL Anwender 14 4 Datenbankschnittstelle ESQL COBOL Charakterisierung des Produktes ESQL COBOL BS2000 0OSD V2 0 realisiert f r COBOL Anwendungen im BS2000 0SD die Anwender Programmschnittstelle embedded SQL zum Datenbanksystem SESAM SQL Server V2 0 ESQL COBOL V2 0 ist die Nachfolgeversion von ESQL COBOL V1 1 f r SESAM SQL F r das Datenbanksystem UDS SQL ist weiterhin ESQL COBOL V1 1 zu verwenden Die neuartige Architektur des bersetzungs und Datenbanksystems ESQL COBOL BS2000 0OSD V2 0 SESAM SQL Server V2 0 f hrt zu einer neuen Aufgabenverteilung zwischen Precompiler und Datenbanksystem Der erweiterte SQL Funktionsumfang von SESAM SQL Server V2 0
316. ndung der Delta Technik werden von mehreren Versionen eines Elements nur die Unterschiede Deltas zur Vorg ngerversion abgespeichert was zus tzlich Speicher platz sparen hilft Beim Lesen solcher Deltaversionen werden diese Deltas von LMS wieder an die entspre chenden Stellen eingemischt Dem Anwender steht somit wieder das komplette Element zur Verf gung LMS unterst tzt symbolische Versionsbezeichner und erh ht Versionen automatisch in Abh ngigkeit vom gew hlten Versionsformat Einbettung in die Programmierumgebung Die Dienstprogramme der Programmierumgebung wie EDT Compiler etc k nnen direkt auf Programmbibliotheken zugreifen Dokumentation LMS Beschreibung 12 U3987 J 2125 8 303 Jobvariablen Nutzbare Software f r COBOL Anwender 14 3 Jobvariablen Charakterisierung des Produktes Jobvariablen sind Datenobjekte zum Austausch von Informationen zwischen Benutzern einerseits und Betriebssystem und Benutzern andererseits Der Benutzer kann Jobvariablen einrichten und ver ndern Er kann das Betriebssystem anweisen beim Eintreten gewisser Ereignisse bestimmte Jobvariablen auf vereinbarte Werte zu setzen Jobvariablen sind ein flexibles Werkzeug zur Auftragssteuerung unter Benutzerkontrolle Sie bieten die M glichkeit Abh ngigkeiten von komplexen Produktionsabl ufen einfach zu definieren und bilden die Basis f r eine ereignisgesteuerte Auftragsverarbeitung Beschreibung der Funktionen Jobvariablen si
317. ner Struktur k nnen weitere Strukturen auftreten Die Anzahl senkrechter Striche vor einem Operanden entspricht der Strukturtiefe LISTING PARAMETERS PARAMETERS SOURCE YES YES COPY EXP Das Komma steht vor weiteren Operanden der gleichen Struktur stufe SHAREABLE CODE PREPARE CANCEL STMT 30 U3987 J 2125 8 Steuerung des Compilers ber SDF SDF Syntaxbeschreibung Tabelle 3 2 Datentypen Variable Operandenwerte werden in SDF durch Datentypen dargestellt Jeder Datentyp re pr sentiert einen bestimmten Wertevorrat Die Anzahl der Datentypen ist beschr nkt auf die in Tabelle 3 2 beschriebenen Datentypen Die Beschreibung der Datentypen gilt f r alle Optionen Deshalb werden bei den entspre chenden Operandenbeschreibungen nur noch Abweichungen von Tabelle 3 2 erl utert Datentyp Zeichenvorrat Besonderheiten alphanum name A Z 0 9 composed name A Z alphanumerische Zeichenfolge die in mehrere 0 9 durch Punkt oder Bindestrich getrennte Teilzei chenfolgen gegliedert sein kann Bindestrich Punkt c string EBCDIC Zeichen In Hochkommas eingeschlossene Folge von EBCDIC Zeichen Der Buchstabe C kann vor angestellt werden full filename A Z Eingabeformat 0 9 datei Bindestrich datei nr Punkt gruppe cat user lt abs uppe a l rel cat wahlfreie Angabe der Katalogken
318. ng des Compilers ber SDF Der COBOL85 Compiler kann ber SDF System Dialog Facilities gesteuert werden In den folgenden Abschnitten werden die wesentlichen Vorgehensweisen im Umgang mit SDF beschrieben Die ausf hrliche Darstellung der Dialog Schnittstelle SDF findet sich in den Handb chern Einf hrung in die Dialogschnittstelle SDF 5 und Benutzer Komman dos SDF 3 U3987 J 2125 8 25 Compileraufruf und Eingabe der Optionen Steuerung des Compilers ber SDF 3 1 3 1 1 Compileraufruf und Eingabe der Optionen Im Dialogbetrieb bietet SDF folgende M glichkeiten e Eingabe von der Datensichtstation ohne Benutzerf hrung nachfolgend Expert Mo dus genannt e Eingabe von der Datensichtstation mit Benutzerf hrung in drei verschiedenen Stufen nachfolgend Men Modus genannt SDF Expert Modus Nach dem LOGON Kommanddo ist standardm ig der SDF Expert Modus eingeschaltet In diesem Modus startet der Benutzer den bersetzungslauf folgenderma en START COBOL8S COMPILER optionen Abk rzung S COB C optionen Die bersetzung wird sofort nach Eingabe des Kommandos gestartet Falls keine Optionen angegeben werden liest der Compiler das Quellprogramm von SYSDTA sofern SYSDTA der Datei bzw dem Bibliothekselement zugewiesen ist die das Quellprogramm enth lt siehe 2 2 1 F r die Optioneneingabe im Expert Modus gilt allgemein e Alle Optionen Parameter und Operandenwert
319. ng sein enthalten jedoch keine Angaben ber ihre Satzl nge Datenbl cke und Puffer Ein logischer Datenblock ist die Einheit einer Datei die das DVS bei einem Dateizugriff zwischen dem peripheren Speicher und dem Hauptspeicher bertr gt Zur Aufnahme die ser Datenbl cke reserviert das Programm einen Speicherbereich in seinem Adre raum den sog Puffer Ein logischer Block kann aus einem oder mehreren Datens tzen bestehen ein Datensatz dagegen kann sich nicht ber mehr als einen logischen Block erstrecken Enth lt ein logischer Block mehrere Datens tze so hei en diese S tze geblockt Es k n nen nur Datens tze fester oder variabler L nge geblockt werden f r S tze undefinierter L nge ist dies nicht m glich Hinsichtlich seiner Gr e kann ein logischer Block und damit ein Puffer bei Plattendateien als Standardblock d h ein physischer Block PAM Block von 2048 byte oder ein ganzzahliges Vielfaches davon bis zu 16 PAM Bl cken und bei Magnetbanddateien dar ber hinaus als Nichtstandardblock einer beliebigen L nge bis zu 32767 byte vereinbart werden 156 U3987 J 2125 8 Dateiverarbeitung Grundlagen Um das Umsteigen auf zuk nftige Plattenformate zu erleichtern sollten nur geradzahlige Vielfache von 2048 byte als Blockgr e im SET FILE LINK Kommando bzw mittels der Programmangaben verwendet werden Ein Wert f r die Puffergr e wird vom Compiler bei der bersetzung aus den Angaben im
320. ngabe legt fest ob S tze fester oder variabler L nge verarbeitet werden sollen und bestimmt bei S tzen variabler L nge einen Bereich f r die zul ssigen Satzgr en und falls im Format angegeben ein Datenfeld zur Aufnahme der jeweils aktuellen Satzl n geninformation satzl ngenangabe mu einem der drei Formate der RECORD Klausel entsprechen die COBOLBS5 zur Verf gung stellt Sie darf nicht im Widerspruch zu den Satzl ngen stehen die der Compiler aus den Angaben der zugeh rigen Datensatzerkl rung en errechnet Die RECORD Klausel ist optional Wird sie nicht angegeben nimmt der Compiler S tze va riabler L nge an 01 datensatz nn feld 1 typ amp l nge nn feld 2 typ amp l nge stellt eine Datensatzerkl rung f r die zugeh rige Datei dar Sie beschreibt den logischen Aufbau von Datens tzen F r jede Datei ist mindestens eine Datensatzerkl rung erforderlich Werden f r eine Datei mehrere Datensatzerkl rungen angegeben ist das vereinbarte Satzformat zu beachten Bei S tzen fester L nge m ssen alle Satzerkl rungen die gleiche Gr e haben bei S tzen variabler L nge d rfen sie nicht im Widerspruch zur Satzl ngenangabe der RECORD Klausel stehen 198 U3987 J 2125 8 Dateiverarbeitung Relative Dateien Die Unterteilung von datensatz in Datenfelder feld 1 feld 2 ist optional F r typ amp l nge sind die erforderlichen L ngen und Formatvereinbarungen PICTURE und USAGE Kla
321. ngeben Einen solchen LSD Namen bildet COBOLB85 f r jede Zeile in der PROCEDURE DIVISION und f r jedes COBOL Verb in einer Anweisungszeile siehe Beispiel 7 1 Seine Bestandteile haben dabei folgende Bedeutung n ist die maximal f nfstellige Nummer dieser Zeile in der PROCEDURE DIVISION die COBOL85 bei der bersetzung vergeben hat Sie mu ohne f hrende Nullen angegeben werden Soll als Zeilennummer die maximal sechsstellige Folgenum mer des Quellprogramms verwendet werden mu der Benutzer dies mit dem SDF Operanden STMT REFERENCE COLUMN 1 TO 6 in der TEST SUPPORT Option bzw mit COMOPT TEST WITH COLUMN1 anfordern verb ist die festgelegte Abk rzung eines COBOL Verbs in der betreffenden Zeile Diese Abk rzungen k nnen der nachstehenden Liste entnommen werden m ist eine einstellige Nummer die angibt das wievielte von mehreren gleichen COBOL Verben innerhalb der Zeile n bezeichnet werden soll Falls m gleich 1 ist wird es weggelassen Beispiel 7 1 Bildung von LSD Namen 000026 IF A B MOVE A TO D MOVE B TOE In dieser Anweisungszeile hat das erste Verb den LSD Namen S 26IF das zweite Verb den LSD Namen S 26MOV das dritte Verb den LSD Namen S 26MOV2 Ein ausf hrliches Beispiel f r das Testen eines COBOL Programms mit AID findet sich im AID Handbuch Testen von COBOL Programmen 9 U3987 J 2125 8 127 Dialogtesthilfe AID Testhilfen f r den Programmablauf Liste der
322. ngehalten wird Alle Operanden die nicht angegeben werden weil ihre Voreinstellung gelten soll m ssen durch das Trennzeichen Komma markiert werden Folgen auf die zuletzt belegte Option noch weitere m gliche Optionen braucht deren Position nicht durch Trennzeichen angegeben zu werden In Prozeduren sollten die Optionen nicht als Stellungsoperanden angegeben werden 3 1 2 SDF Men Modus Es gibt zwei M glichkeiten den SDF Men Modus zu verwenden Permanenter Men Modus Mit dem SDF Kommando MODIFY SDF OPTIONS GUIDANCE MAXIMUM MEDIUM MINIMUM gelangt der Benutzer in das SDF Hauptmen Die verf gbaren Compiler Aufrufkomman dos findet er dort unter dem Stichwort PROGRAMMING SUPPORT Mit der Angabe der zu geh rigen Nummer in der Eingabezeile wird das PROGRAMMING SUPPORT Men aus gegeben Von dort aus kann dann der Compiler unter Angabe der Kommando Nummer aufgerufen werden Die Werte des MODIFY SDF OPTIONS Kommandos bedeuten MAXIMUM Maximale Hilfestufe d h s mtliche Operandenwerte mit Zus tzen Hilfetex te f r Kommandos und Operanden MEDIUM S mtliche Operandenwerte ohne Zus tze Hilfetexte nur f r Kommandos MINIMUM Minimale Hilfestufe d h nur Standardwerte der Operanden keine Zus tze keine Hilfetexte U3987 J 2125 8 27 Compileraufruf und Eingabe der Optionen Steuerung des Compilers ber SDF Im permanenten Men Modus befindet sich der Benutzer solange bis er mit dem Komman
323. nktionseinheiten zur Verf gung e Der Statische Binder TSOSLNK TSOS LINKAGE EDITOR bindet ein oder mehrere Objektmodule zu einem Objektprogramm auch Lademodul genannt und speichert dieses in einer katalogisierten Datei oder als Element vom Typ C in einer PLAM Bibliothek oder bindet mehrere Objektmodule zu einem einzigen vorgebundenen Modul Gro modul und speichert diesen als Element vom Typ R in einer PLAM Bibliothek oder in der tem por ren EAM Datei e Der Binder BINDER bindet Module Objektmodule LLMs zu einer logisch und physisch strukturierten lad baren Einheit zusammen Diese Einheit bezeichnet man als Bindelademodul Link and Load Module LLM Der BINDER speichert den von ihm erzeugten LLM als Ele ment vom Typ L in einer PLAM Bibliothek e Der Dynamische Bindelader DBL f gt in einem Arbeitsgang Module Objektmodule und Bindelademodule die ggf durch einen vorhergehenden Bindevorgang mit dem BINDER erzeugt wurden einer tempor r ladbaren Einheit zusammen l dt diese sofort in den Speicher und startet sie COBOL Programme die mindestens ein externes Unterprogramm mit CALL bezeichner aufrufen k nnen nur ber dieses Verfahren zum Ablauf gebracht werden siehe Abschnitt 12 1 102 U3987 J 2125 8 Binden Laden Starten Aufgaben des Binders e Der Statische Lader ELDE l dt ein Programm das mit dem TSOSLNK gebunden und in einer Datei oder als Ele ment vom Typ C in einer PLAM Bibliothek ges
324. nsnummer Die Elemente erhalten folgende Standardnamen Liste Elementname Steueranweisunggsliste OPTLST COB85 programmname Quellprogrammliste Bibliotheksliste SRCLST COB85 programmname Fehlerliste ERRLST COB85 programmname Adre liste Querverweisliste LOCLST COB85 programmname programmname wird aus dem PROGRAM ID Namen abgeleitet und ggf auf 16 Zeichen gek rzt Beispiel 3 2 Ausgabe von Listen in katalogisierte Dateien Der Compiler soll nur eine Fehlerliste erzeugen und diese in die katalogisierte Datei FEHLER ausgeben SET FILE LINK ERRLINK FEHLER 1 START COBOL85 COMPILER Angabe im Operandenfragebogen 2 LISTING PAR OPTIONS NO SOURCE NO 3 1 Mit dem SET FILE LINK Kommando wird der katalogisierten Datei FEHLER der Standard Linkname ERRLINK zugeordnet S N Compileraufruf im Men Modus Die Voreinstellung Erzeugung von Optionen Quellprogramm und Fehlerliste wird ver ndert der Compiler soll nur eine Fehlerliste erzeugen und diese standard m ig in die katalogisierte Datei FEHLER ausgeben U3987 J Z125 8 49 LISTING Option SDF Steuerung des Compilers Beispiel 3 3 Ausgabe von Listen in eine PLAM Bibliothek Der Compiler soll alle Listen erzeugen und als Elemente in der PLAM Bibliothek LISTLIB ablegen START COBOL85 COMPILER 1 Angabe im Operandenfragebogen LISTING PAR NAME INFORMATION
325. nter PROGRAM COLLATING SEQUENCE ITCSPCSO Vergleiche unter PROGRAM COLLATING SEQUENCE ITCSPNDO ILCS Routine f r UTM Beendigung ITCSRCHO berpr fung von Tabellengrenzen ITCSRDIO READ START Anweisung f r indizierte Dateien ITCSRDLO READ START Anweisung f r zeilensequentielle Dateien ITCSRDRO READ START Anweisung f r relative Dateien ITCSRDSO READ Anweisung f r sequentielle Dateien ITCSRPWO REPORT WRITER Steuermodul ITCSSCHO SEARCH ALL Anweisung ITCSSEGO Ansprung segmentierter COBOL Programme ITCSSPCO Druckersteuerzeichen Auswertung ITCSST11 CODE SET Tabelle f r ASCII ITCSST21 CODE SET Tabelle f r ISO 7 ITCSSTGO STRING Anweisung ITCSSTPO STOP literal Anweisung ITCSTBSO Tabellensortieren ITCSTCA1 Klassentest Tabelle f r Test auf ALPHABETIC 354 U3987 J 2125 8 Anhang Aufbau des COBOLB85 Systems Name Funktion ITCSTCDI Klassentest Tabelle f r Test auf NUMERIC COMP 3 mit Vorz ITCSTCE1 Klassentest Tabelle f r Test auf NUMERIC COMP 3 ohne Vorz ITCSTCL1 Klassentest Tabelle f r Test auf ALPHABETIC LOWER ITCSTCP1 Klassentest Tabelle f r Test auf ALPHABETIC UPPER ITCSTCS1 Klassentest Tabelle f r Test auf NUMERIC mit Vorzeichen ITCSTCU1 Klassentest Tabelle f r Test auf NUMERIC ITCSTCVO Klassentest bei Datenfeldern gt 256 byte oder Variablen ITCSUPC2 Steuermodul f r Prozedurvereinbarungen ITCSUSTO UNSTRING Anweisung ITCSVCLO Vergleich
326. nung Zeichenvorrat auf A Z und 0 9 einge schr nkt max 4 Zeichen ist in Doppelpunkte einzuschlie en Standardwert ist die Katalog kennung die der Benutzerkennung laut Eintrag im Benutzerkatalog zugeordnet ist user wahlfreie Angabe der Benutzerkennung Zeichenvorrat ist A Z 0 9 max 8 Zeichen darf nicht mit einer Ziffer begin nen und Punkt m ssen angegeben werden Standardwert ist die eigene Benutzerkennung U3987 J Z125 8 31 SDF Syntaxbeschreibung Steuerung des Compilers ber SDF Datentyp Zeichenvorrat Besonderheiten full filename Sonderfall Forts System Standardkennung datei Datei oder Jobvariablenname letztes Zei chen darf kein Bindestrich oder Punkt sein max 41 Zeichen mu mindestens ein Zei chen aus A Z enthalten datei Sonderfall datei Sonderfall oder als erstes Zeichen kennzeichnet je nach Systemgenerierung tempor re Dateien und Jobvariablen datei nr Banddateiname nr Versionsnummer Zeichenvorrat ist A Z 0 9 Klammern m ssen angegeben werden gruppe Name einer Dateigenerationsgruppe Zeichenvorrat siehe unter datei abs gruppe lt rel rel abs absolute Generationsnummer 1 9999 und Klammern m ssen angegeben werden rel rel relative Generationsnummer 0 99 Vorzeichen und Klammern m ssen angege ben werden integer 0 9 bzw kann nur erste
327. nungsmodus INPUT oder O befindet Es wurde versucht eine WRITE Anweisung f r eine Datei auszuf hren die sich beisequentiellem Zugriff nicht im Er ffnungsmodus OUTPUT oder EXTEND bei wahlfreiem oder dynamischem Zugriff nicht im Er ffnungsmodus OUTPUT oder l O befindet Es wurde versucht eine DELETE oder REWRITE Anweisung f r eine Datei aus zuf hren die sich nicht im Er ffnungsmodus O befindet 90 91 93 94 95 Sonstige erfolglose Ausf hrungen Systemfehler es ist keine weitere Information ber die Ursache vorhanden Systemfehler OPEN Fehler Nur bei Simultanverarbeitung siehe Abschnitt 9 5 Die Ein Ausgabe Anweisung konnte nicht erfolgreich durchgef hrt werden weil ein anderer Proze auf dieselbe Datei zugreift und die Zugriffe nicht vereinbar sind Nur bei Simultanverarbeitung siehe Abschnitt 9 5 die Aufruffolge READ REWRITE DELETE wurde nicht eingehalten Unvertr glichkeit zwischen den Angaben im BLOCK CONTROL INFO oder BUFFER LENGTH Operanden des SET FILE LINK Kommandos und dem Datei format der Blockgr e oder demFormat des verwendeten Datentr gers 214 U3987 J 2125 8 Dateiverarbeitung Indizierte Dateien 9 4 Indizierte Dateiorganisation 9 4 1 Merkmale indizierter Dateiorganisation In einer indiziert organisierten Datei enth lt jeder Datensatz einen Schl ssel d h eine Fol ge beliebiger auch nichtabdruckbarer Zeichen die ihn innerhalb der
328. nweis Bedeutung Der Proze innerhalb dessen das Kommando ccc ausgef hrt wurde wurde infolge eines Signal mit dem Wert nn abgebrochen CCC STOPPED BY SIGNAL NN CCC ANGEHALTEN DURCH SIGNAL NN Typ Hinweis Bedeutung Der Proze innerhalb dessen das Kommando ccc ausgef hrt wurde wurde infolge eines Signals mit dem Wert nn angehalten CCC STRANGE TERMINATION STATUS CCC UNERWARTETER BEENDIGUNGSSTATUS Typ Systemfehler Bedeutung ccc Kommando das sich auf unerwartete Weise beendet hat Ma nahme Systemverwalter berater verst ndigen CANNOT FORK ERRNO NN FORK KANN NICHT AUSGEFUEHRT WERDEN ERRNO NN Typ Systemfehler Bedeutung Es konnte kein Sohnproze erzeugt werden als Fehlernummer wurde nn zur ckgegeben Ma nahme Systemverwalter berater verst ndigen U3987 J Z125 8 345 Meldungen des COBOL85 Systems C0B924 WAIT CALL FAILED ERRNO NN C0B9242 WAIT MELDET FEHLER ERRNO NN Typ Systemfehler m Bedeutung nn Nummer des Fehlers der beim wait Aufruf aufgetreten ist Ma nahme Systemverwalter berater verst ndigen C0B924 UNEXPECTED SON PROCESS RETURNED PID NN C0B9243 UNERWARTETER SOHNPROZE IST ZUR CKGEKEHRT PID NN Typ Systemfehler w Bedeutung nn Nummer des Sohnprozesses Ma nahme Systemverwalter berater verst ndigen 346 U3987 J 2125 8 16 Anhang 16 1 Aufbau des COBOL385 Systems Das COBOL85 System besteht aus den Modulen des C
329. ode im SPECIAL NAMES Paragraphen der CONFIGURATION SECTION und CODE SET IS alphabetname 1 in der Dateierkl rung der FILE SECTION ASCII Code Die erforderlichen Angaben im COBOL Quellprogramm zur Verarbeitung einer Datei im ASCII Code k nnen dem folgenden Programmskelett entnommen werden IDENTIFICATION DIVISION ENVIRONMENT DIVISION CONFIGURATION SECTION SPECIAL NAMES ALPHABET alphabetname 1 IS STANDARD 1 1 DATA DIVISION FILE SECTION FD datei CODE SET IS alphabetname 1 2 1 Die ALPHABET Klausel verkn pft die Codeart STANDARD 1 das ist der ASCII Code mit dem Namen alphabetname 1 2 Die CODE SET Klausel vereinbart die mit alphabetname 1 verkn pfte Codeart als Zeichencode f r die Datei ISO 7 Bit Code F r die Verarbeitung einer Datei im ISO 7 Bit Code k nnen im Quellprogramm Vereinba rungen analog denen f r den ASCII Code getroffen werden siehe oben es ist lediglich STANDARD 2 anstelle des Schl sselwortes STANDARD 1 in der ALPHABET Klausel an zugeben Bei Magnetbanddateien im ISO 7 Bit Code gibt es dar berhinaus auch die M glichkeit siehe auch 9 2 8 im SET FILE LINK Kommando f r die Dateizuweisung SUPPORT TAPE CODE ISO7 anzugeben U3987 J 2125 8 185 Sequentielle Dateien Dateiverarbeitung 9 2 8 Verarbeiten von Magnetbanddateien Die Verarbeitung von Magnetbanddateien unterst tzt COBOL85 durch folgende Sprach mittel siehe 1 Die Angaben INPUT
330. ogrammname Fehlerliste ERRFIL COB85 programmname Adre liste Querverweisliste LOCLST COB85 programmname Dateinamen und Dateieigenschaften f r diese katalogisierten Dateien sind standard m ig vorgegeben Der Benutzer kann aber mit Hilfe des SET FILE LINK Kommandos diese Vorgaben ndern z B Dateinamen eigener Wahl vergeben Dazu mu er vor dem Aufruf des Compilers die gew nschten Eigenschaften in einem SET FILE LINK Kommando mit den jeweiligen Dateikettungsnamen Linknamen verkn pfen die der Compiler verwendet Inhalt der katalog Datei Linkname Steueranweisunggsliste OPTLINK Quellprogrammliste Bibliotheksliste SRCLINK Adre liste Querverweisliste LOCLINK Fehlerliste ERRLINK Um die erzeugten Listen im POSIX Dateisystem abzulegen m ssen sie mittels SDF P Variablen dem POSIX Dateisystem zugewiesen werden Die Standardnamen dieser Variablen lauten Inhalt Name der SDF P Variablen Steueranweisunggsliste SYSIOL OPTLINK Quellprogrammliste Bibliotheksliste SYSIOL SRCLINK Adre liste Querverweisliste SYSIOL LOCLINK Fehlerliste SYSIOL ERRLINK 48 U3987 J 2125 8 SDF Steuerung des Compilers LISTING Option OUTPUT LIBRARY ELEMENT LIBRARY lt full filename 1 54 gt Die angeforderten Listen werden in die mit lt full flename gt bezeichnete PLAM Biblio thek ausgegeben Jede Liste belegt ein eigenes Bibliothekselement vom Typ P mit der gr tm glichen Versio
331. oll Format COMPILER ACTION PRINT MESSAGE LIST SYNTAX CHECK SEMANTIC CHECK MODULE GENERATION MODULE GENERATION SHAREABLE CODE NO YES PREPARE CANCEL STMT NO YES MODULE FORMAT OM LLM SUPPRESS GENERATION NO AT SEVERE ERROR COMPILER ACTION PRINT MESSAGE LIST Der Compiler gibt eine Liste aller m glichen Fehlermeldungen aus Eine bersetzung fin det nicht statt Dieser Operand ist in COBOL BC nicht verf gbar COMPILER ACTION SYNTAX CHECK Der Compiler pr ft ein Quellprogramm nur auf syntaktische Fehler COMPILER ACTION SEMANTIC CHECK Der Compiler pr ft die Syntax des Quellprogramms und zus tzlich die Einhaltung der semantischen Regeln Da kein Modul erzeugt wird k nnen nur die Quellprogrammliste und die Fehlerliste angefordert werden COMPILER ACTION MODULE GENERATION Es werden ein vollst ndiger bersetzungslauf durchgef hrt und falls nicht explizit unter dr ckt Module erzeugt SHAREABLE CODE NO YES Bei Angabe von YES schreibt der Compiler den Code der PROCEDURE DIVISION ohne DECLARATIVES in ein gemeinsam benutzbares Codemodul siehe 6 7 Der Name dieses Codemoduls besteht aus dem ggf auf 7 Zeichen gek rzten PROGRAM ID Namen gefolgt von dem Zeichen Die PROCEDURE DIVISION darf keine ENTRY Anweisungen enthalten Jede Segmentierung der PROCEDURE DIVISION wird ignoriert 40 U3987 J 2125 8 SDF Steuerung des Compilers COMPI
332. om Copyright Fujitsu Technology Solutions 2009 Hinweise zum vorliegenden Dokument Zum 1 April 2009 ist Fujitsu Siemens Computers in den alleinigen Besitz von Fujitsu bergegangen Diese neue Tochtergesellschaft von Fujitsu tr gt seit dem den Namen Fujitsu Technology Solutions Das vorliegende Dokument aus dem Dokumentenarchiv bezieht sich auf eine bereits vor l ngerer Zeit freigegebene oder nicht mehr im Vertrieb befindliche Produktversion Bitte beachten Sie dass alle Firmenbez ge und Copyrights im vorliegenden Dokument rechtlich auf Fujitsu Technology Solutions bergegangen sind Kontakt und Supportadressen werden nun von Fujitsu Technology Solutions angeboten und haben die Form ts fujitsu com Die Internetseiten von Fujitsu Technology Solutions finden Sie unter http de ts fujitsu com und Unter http manuals ts fujitsu com finden Sie die Benutzerdokumentation Copyright Fujitsu Technology Solutions 2009
333. ompilers und den Laufzeitmodulen Auf die Struktur des Compilers und die Namen der Module wird im folgenden n her einge gangen Die Laufzeitmodule f r COBOLS85 sind im Common Runtime Environment CRTE enthalten siehe 2 Aufbau des COBOL85 Compilers Der COBOL85 Compiler besteht aus einer Anzahl von Modulen die linear gebunden sind Die einzelnen Module bilden Funktionseinheiten die durch den Ablauf einer COBOL ber setzung und durch die Einteilung eines COBOL Programms in die einzelnen DIVISIONS vorgegeben werden Man kann den bersetzungsvorgang in folgende Funktionseinheiten gliedern Initialisierung Quelldateneingabe Lexikalische Analyse Syntaktische Analyse Semantische Analyse Codegenerierung Assemblierungslauf Modulgenerierung Or 08 EN ON 2 DE aa Listenerzeugung Der Aufbau des Compilers und die Anordnung der einzelnen Funktionseinheiten im Arbeits speicher ist in folgender Abbildung wiedergegeben U3987 J 2125 8 347 Aufbau des COBOL85 Systems Anhang Aufbau des Compilers BS2000 _L comorss 41 Quellprogramm gt von SYSDTA Quelldateneingabe en Initialisierung I komplettes lexikalische Analyse Quellprogr mm m Quellprogramm verschl sseltes COPY Elemente syntaktische Analyse Quellprogramm in Biblioth Be I syntaktisch Datenstrukturanalyse 2 korrektes Quellprogram I Referenzv
334. onen steuern die der Benutzer in einer oder mehreren COMOPT Anweisungen angibt Die Optionen werden ber SYSDTA nach Aufruf des COBOLS85 gelesen Der Benutzer hat drei M glichkeiten die Optionen einzugeben Er kann die COMOPT Anweisung en direkt eingeben indem er den Compiler aufruft ohne vorher mit dem ASSIGN SYSDTA Kommando die Systemdatei SYSDTA umzu weisen Der Compiler fordert explizit die Optionen an indem er einen Stern in Spalte 1 vorgibt Er kann die COMOPT Anweisung en in eine Datei schreiben und ber diese Datei ein geben Diese Datei kann eine Quellprogrammdatei sein die Optionen stehen dann vor dem Quellprogramm oder eine eigene Datei Mit einem ASSIGN SYSDTA Kommando wird diese Datei vor dem Aufruf des Compi lers der Systemdatei SYSDTA zugeordnet Er kann COMOPT Anweisungen direkt eingeben und mit der END Anweisung SYSDTA auf eine Datei umweisen in der vor dem Quellprogramm weitere COMOPT Anweisun gen stehen Wenn keine Steueranweisungen mehr erkannt werden beginnt der Compiler sofort mit dem Lesen des Programmtextes ber die END Anweisung bestimmt der Compiler den Ort des Quellprogramms und liest dort weiter Im Batch Proze wird bei fehlerhafter Eingabe von COMOPT oder END Anweisungen die bersetzung abgebrochen Fehlermeldung COB9005 U3987 J 2125 8 59 COMOPT Steuerung Format der COMOPT Anweisung YES COMOPT NO operand COBRUN option option option
335. onen und enth lt Beispiele dazu Im Nachschla geteil sind die BINDER Anweisungen und der Makroaufruf BINDER beschrieben BINDER V1 1A kann auch in BS2000 V10 0A eingesetzt werden UTM TRANSDATA BS2000 Planen und entwerfen Benutzerhandbuch Zielgruppe Organisatoren Einsatzplaner Programmierer Inhalt Einf hrung in UTM Erl uterung des Programm Speicher und Schnittstellen konzeptes sowie des Zugriffs auf Daten und Dateien und der Zusammenarbeit mit Datenbanken Hinweise zu Design Optimierung und Performance von UTM Anwendungen sowie Datenschutz und Anwendungsverbund UTM TRANSDATA Anwendungen programmieren Basishandbuch inklusive COBOL Zielgruppe Programmierer von UTM Anwendungen Inhalt Sprachunabh ngige Beschreibung der Programmschnittstelle KDCS Aufbau von UTM Programmen KDCS Aufrufe Testen von UTM Anwendungen Alle Informationen die der Programmierer von UTM Anwendungen ben tigt 380 U3987 J 2125 8 Literatur 30 31 32 33 UTM TRANSDATA Erg nzung f r COBOL Benutzerhandbuch Zielgruppe Programmierer von UTM COBOL Anwendungen Inhalt Umsetzung der Pro grammschnittstelle KDCS in die Sprache COBOL Alle Informationen die der Pro grammierer von UTM COBOL Anwendungen ben tigt UTM V3 3A BS2000 0OSD Anwendungen generieren und administrieren Benutzerhandbuch Zielgruppe Organisierer Einsatzplaner und Administratoren vo
336. orden ist siehe Beispiel 9 1 1b Um zu vermeiden da ein Benutzer m glicherweise mit nicht mehr aktuellen Daten ar beitet sollte der WITH NO LOCK Zusatz nur dann verwendet werden wenn dies un bedingt erforderlich ist Ein gesperrter Datensatz Datenblock f hrt bei simultanen Benutzern die auf densel ben Datensatz oder einen anderen desselben Blocks zugreifen wollen zu Wartezeiten Um diese so kurz wie m glich zu halten sollte die Sperre sobald wie m glich wieder aufgehoben werden Wird die Sperre nicht rechtzeitig aufgehoben l uft die Wartezeit ab und das Programm verzweigt in die vorgesehene USE Prozedur sofern vorhanden siehe Beispiel 9 12 oder wird abgebrochen mit Meldung COB9151 FILE STATUS 93 und DVS Fehlerschl ssel DAAA 240 U3987 J 2125 8 Dateiverarbeitung Simultanverarbeitung SHARED UPDATE Beispiel 9 12 Lesen und Zur ckschreiben in Datei ISAM1 wenn vor dem Zur ck schreiben Daten aus einer Datei ISAM2 ben tigt werden a Ohne WITH NO LOCK Zusatz zweimalige READ Anweisung auf dieselbe Datei erforderlich daf r Sperrzeiten k rzer READ ISAM1 INTO WORKI 1 INVALID KEY READ ISAM2 2 INVALID KEY Verarbeitung von WORK1 unter Ber cksichtigung von ISAM2SATZ READ ISAMI 3 INVALID KEY Pr fung ob ISAM1SATZ inzwischen ge ndert gegebenenfalls erneute Verarbeitung REWRITE ISAMISATZ FROM WORKI 4 INVALID KEY 1 Lesen eines Datensatzes aus I
337. ormat Funktion OPTIMIZE CALL IDENTIFIER YES NO O C I bewirkt da mehrmalige Aufrufe des gleichen Unterpro gramms ber CALL bezeichner ohne Aufruf von System schnittstellen abgewickelt werden m glich f r die ersten 100 aufgerufenen Unterprogramme SDF Option PRINT DIAGNOSTIC MESSAGES YES NO PRI DIAG In COBOL85 BGC nicht verf gbar erm glicht es sich eine Liste aller COBOLB85 Fehlermel dungen ausgeben zu lassen Eine bersetzung wird in die sem Fall nicht durchgef hrt SDF Option COMPILER ACTION PRINT MESSAGE LIST REDIRECT ACCEPT DISPLAY YES NO bewirkt da f r ACCEPT und DISPLAY Anweisungen ohne FROM bzw UPON Angaben statt der Systemda teien SYSIPT SYSLST Voreinstellung die Systemda teien SYSDTA bzw SYSOUT zugewiesen werden SDF Option RUNTIME OPTIONS PARAMETERS ACCEPT DISPLAY ASSGN REPLACE PSEUDOTEXT YES NO REP PSEUDO erm glicht es Quellprogramme die keine REPLACE und oder COPY Anweisungen in komplexeren Formen enthal ten mit einem geringeren Bedarf an CPU Zeit zu berset zen Angabe NO SDF Option RESET PERFORM EXITS YES NO RES PERF legt fest ob die Steuerungsmechanismen f r alle PERFORM Anweisungen bei EXIT PROGRAM entsprechend ANS85 zur ckge setzt werden Defaultwert oder Angabe YES oder beim Verlassen des Unterprogramm aktiv bleiben Angabe NO SDF Option ROUND FLOAT RESULTS DECIMAL YES
338. peichert wurde Der COBOL85 Compiler erzeugt bei der bersetzung Objektmodule oder LLMs Die Objektmodule stehen in der tempor ren EAM Datei der aktuellen Task oder als Ele mente vom Typ R in einer PLAM Bibliothek Die LLMs stehen als Elemente vom Typ L in einer PLAM Bibliothek Folgende Tabelle zeigt welche Module von den einzelnen Funktionseinheiten des Binder Lader Starter Systems verarbeitet bzw erzeugt werden Systembaustein Modulart BINDER DBL TSOSLNK ELDE Objektmodul ja ja ja nein Bindelademodul LLM ja ja nein nein Vorgebundener Modul Gro modul ja ja ja nein Objektprogramm Lademodul nein nein ja ja Nur im Betriebsmodus ADVANCED Der Bindevorgang im POSIX Subsystem ist in Kapitel 13 erl utert Die folgende Graphik gibt einen berblick ber die verschiedenen M glichkeiten tempo r re und permanente ablauff hige COBOL Programme im BS2000 zu erzeugen und auf zurufen U3987 J 2125 8 103 Aufgaben des Binders Binden Laden Starten COBOL55 Compiler MODULE OUTPUT OMF MODULE OUTPUT LIB ELEM lib elem Bibliotheks programm tempor re LMS permanente Module Module tempor res i permanentes i Bindelademodul Objektprogramm Objektprogramm Programmablauf Abbildung 6 1 Erzeugung und Aufruf permanent und tempor r ablauff higer COBOL Programme im BS2000 104 U3987 J 2125 8 Binden Laden Starten Statisches Binden mit TSOSLNK 6 2
339. pitel und Paragraphen in einem anderen Programm das auch in einer ande ren bersetzungseinheit liegen kann wird mit der S und PROC Qualifikation zu gegriffen INSERT S program id JPROC program id innen paragraph IN kapitel Die S Qualifikation mu immer dann angegeben werden wenn der Testpunkt in ei nem anderen getrennt bersetzten Programm gesetzt werden soll Ein Testpunkt am Beginn der Procedure Division des u ersten Programms kann mit einer PROG Qualifikation gesetzt werden INSERT PROGS program id program id oder ausgeschrieben INSERT S program id PROC program id program id Ein Testpunkt auf den Anfang eines inneren Programms kann da S und PROC ver schieden sind nicht mit einer PROG Qualifikation gesetzt werden sondern mu wie folgt angegeben werden INSERT S program id PROC program id innen program id innen Namen in der aktuellen bersetzungseinheit die dort eindeutig sind k nnen auch ohne Qualifizierung angesprochen werden Zugriff auf Daten Mit D werden die Daten des aktuellen geschachtelten Programms gefunden so wie Daten mit dem GLOBAL Attribut die nicht lokal verdeckt sind d h es kann auf die gleichen Daten zugegriffen werden auf die auch das Programm selbst an die ser Stelle zugreifen kann Mit SD kann man die Daten aller dynamisch umgebenden Programme erhalten entsprechend der aktuellen Aufrufhierarchie Mit der S und PROC Qualifikation kann man gezielt auf ein Datum eines ande
340. r E edt Kommando 274 Ein Ausgabe ber Systemdateien 133 Ein Ausgabeanweisungen indizierte Dateien 222 relative Dateien 199 sequentielle Dateien 174 Ein Ausgabezust nde indizierte Dateien 231 relative Dateien 210 293 sequentielle Dateien 190 Eingabe in den Compiler ber ASSIGN SYSDTA Kommando 13 ber END Anweisung 61 ber SET FILE LINK Kommando 63 Eingabedatei Sortieren und Mischen 250 Eingabeprozedur f r Sortieren und Mischen 248 Eingabequellen des Compilers 9 EJECT Formatsteueranweisung 365 ELDE Statischer Lader 103 ELEMENT SDF Operand 35 43 Elementnamenbildung bei Modulausgabe 20 ENABLE UFS ACCESS Comopt 67 ENABLE UFS ACCESS SDF Operand 58 END Anweisung Quelldateneingabe 61 ENTRY TSOSLNK Operand 107 Er ffnungsarten indizierte Dateien 224 relative Dateien 202 sequentielle Dateien 176 ERR MSG WITH LINE NR SDF Operand 57 ERROR REACTION SDF Operand 58 ESD External Symbol Dictionary 125 ESQL COBOL Allgemeine Beschreibung 306 EXPAND COPY Comopt 67 EXPAND SUBSCHEMA Comopt 67 Expert Modus SDF 26 Externverweise 101 Aufl sung durch TSOSLNK 107 390 U3987 J 2125 8 Stichw rter F Fehlerklassen Severity Codes 310 Fehlermeldungen in Quellprogrammliste einmischen 70 Liste aller m glichen F ausdrucken 40 72 Fehlermeldunggsliste Anforderung 46 69 70 Beschreibung 367 FILE STATUS Klausel indizierte Dateien 219 231 relative Dateien 197 210 sequentielle Dateien 17
341. r Benutzerhandbuch Zielgruppe Das Handbuch wendet sich an Software Entwickler und ge bte BS2000 0SD Benutzer Inhalt Es beschreibt die Funktionen die Unterprogrammschnittstelle die XS Unterst t zung und den Aufruf des Bindeladers DBL Daran anschlie end sind die Komman dos zum Aufruf des Laders ELDE beschrieben 374 U3987 J 2125 8 Literatur 12 13 14 LMS BS2000 SDF Format Benutzerhandbuch Zielgruppe BS2000 Anwender Inhalt Beschreibung der Anweisungen zum Erstellen und Verwalten von PLAM Bibliothe ken und darin enthaltenen Elementen H ufige Anwendungsf lle werden an Hand von Beispielen erkl rt BS2000 0SD BC Systeminstallation Benutzerhandbuch Zielgruppe BS2000 0OSD Systemverwaltung Inhalt Das Handbuch beschreibt die Generierung der Hardware und Software Konfiguration mit UGEN die Installationsdienste Plattenorganisation mit MPVS Programmsystem SIR Datentr gerinstallation mit SIR Configuration Update CONFUPD Dienstprogramm IOCFCOPY UDS SQL BS2000 Entwerfen und Definieren Benutzerhandbuch Zielgruppe Datenbankentwerfer Programmierer Datenbankadministrator Inhalt Einf hrung Phasen des DB Entwurfs Datendefinitionssprache DDL Speicherstruktursprache SSL Subschemadatendefinitionssprache Subschema DDL Relationales Schema U3987 J Z125 8 375 Literatur 15 16 17
342. r aktuellen Task zur Verf gung stehen Das Programm kann jedoch in dieser Form nicht ablaufen da sein Maschinencode noch nicht vollst ndig ist Jedes Modul enth lt Verweise auf externe Adressen d h auf weitere Module die ihn zur Ausf hrung erg nzen m ssen Der Compiler erzeugt diese Externver weise bei der bersetzung aus einem oder mehreren der folgenden Gr nde e Das COBOL Programm enth lt Anweisungen die komplexe Routinen auf Maschinencode Ebene erfordern z B SEARCH ALL INSPECT oder Schnittstellen zu anderen Softwareprodukten oder zum Betriebssystem bilden z B SORT oder Ein Ausgabeanweisungen wie READ WRITE Dies trifft auf alle COBOL Programme zu da in diese Kategorie auch die Routinen zur Programminitialisierung und beendigung fallen Die Maschinenbefehlsfolgen f r diese Anweisungen werden nicht bei der bersetzung erzeugt sie liegen bereits als fertige Module in einer Bibliothek vor dem Laufzeitsystem Der Compiler tr gt f r jede solche COBOL Anweisung in das Modul einen Externverweis auf das zugeh rige Modul im Laufzeitsystem ein e Das COBOL Programm ruft ein externes Unterprogramm auf CALL Anweisungen im Format CALL literal veranlassen den Compiler an den ent sprechenden Stellen im Modul Externverweise f r den Bindelauf zu erzeugen CALL Anweisungen im Format CALL bezeichner bewirken da der dynamische Bin delader die entsprechenden Module zum Ablaufzeitpunkt dynamisch nachl dt si
343. r Dump und Programmabbruch eingeben U3987 J Z125 8 317 Meldungen des COBOL85 Systems C0B9108 C0B9108 C0B9109 C0B9109 C0B9110 C0B9110 NESTING TOO DEEP SCHACHTELUNG ZU TIEF Typ Anwenderfehler Bedeutung Erg nzung zur vorher ausgegebenen Meldung ALTERNATE KEYS FOR LINK aaa DO NOT MATCH THE ALTERNATE KEYS IN THE PROGRAM ALTERNATE KEYS FUER LINK aaa STIMMEN NICHT MIT DEN ALTERNATE KEYS IM PROGRAMM UEBEREIN Typ Anwenderfehler Bedeutung aaa Linkname der Datei Verhalten Programm abgebrochen Ma nahme Programm und oder Datei ndern ERROR IN A CREAIX MACRO SUBRETURNCODE aaa MAINRETURNCODE bbb DMSERRCODE ccc FEHLER IN EINEM CREAIX MAKRO SUBRETURNCODE aaa MAINRETURNCODE bbb DMSERRCODE ccc Typ Anwenderfehler oder Systemfehler Verhalten Programm abgebrochen Ma nahme Abh ngig vom Makro DVS Fehlercode korrigieren oder Systemverwalter berater verst ndigen 318 U3987 J 2125 8 Meldungen des COBOLB85 Systems C0B9111 C0B9111 C0B9112 C0B9112 ERROR IN A SHOWAIX MACRO SUBRETURNCODE aaa MAINRETURNCODE bbb DMSERRCODE ccc FEHLER IN EINEM SHOWAIX MAKRO SUBRETURNCODE aaa MAINRETURNCODE bbb DMSERRCODE ccc Typ Anwenderfehler oder Systemfehler Verhalten Programm abgebrochen Ma nahme Abh ngig vom Makro DVS Fehlercode korrigieren oder Systemverwalter berater verst ndigen ERROR OCCURRED TAKING CHECKPOINT RETURNCODE aaa DMS
344. r Platz finden siehe 9 1 4 Au er bei neu angelegten Dateien OPEN OUTPUT hat die im Katalog eingetragene Blockgr e stets Vorrang gegen ber den Blockgr enangaben im Programm bzw im SET FILE LINK Kommando Die BLOCK CONTAINS Klausel ist optional Wird sie nicht angegeben nimmt der Compiler BLOCK CONTAINS 1 RECORD an d h die Datens tze werden nicht geblockt RECORD satzl ngenangabe legt fest ob S tze fester oder variabler L nge verarbeitet werden sollen und bestimmt bei S tzen variabler L nge einen Bereich f r die zul ssigen Satzgr en und falls im Format angegeben ein Datenfeld zur Aufnahme der jeweils aktuellen Satzl n geninformation Die satzl ngenangabe mu einem der drei Formate der RECORD Klausel entsprechen die COBOLB85 zur Verf gung stellt Sie darf nicht im Widerspruch zu den Satzl ngen ste hen die der Compiler aus den Angaben der dazugeh rigen Datensatzerkl rung en er rechnet Die RECORD Klausel ist optional Wird sie nicht angegeben nimmt der Compiler S tze va riabler L nge an 220 U3987 J 2125 8 Dateiverarbeitung Indizierte Dateien 01 datensatz nn feld 1 typ amp l nge nn prim rschl ssel typ amp l nge nn sekund rschl ssel typ amp l nge stellt eine Datensatzerkl rung f r die zugeh rige Datei dar Sie beschreibt den logischen Aufbau von Datens tzen F r jede Datei ist mindestens eine Datensatzerkl rung erforderlich Werden f r eine Datei mehre
345. rachmittel f r Testhilfezeilen 131 Testhilfezeilen 131 TEST SUPPORT Option 51 TEST WITH COLUMN1 Comopt 76 TFT Task File Table 162 TITLE Formatsteueranweisung 364 TSOSLNK 102 262 Autolink Verfahren 107 Binden eines segmentierten Programms 109 Gro modulbinden 262 statisches Binden mit 105 TSW 0 TSW 31 139 U berlagerungsstruktur 109 berlaufblock 167 berschriftszeile in bersetzungslisten 359 bersetzen einer Quellprogramm Folge 24 eines COBOL DML Programms 357 eines Quellprogramms 7 bersetzungslauf abbrechen 55 70 bersetzungsliste 270 bersetzungslisten Anforderung 48 bersetzungsmeldungen 311 UDS Datenbankbedienung 356 Umgebungsvariable 149 Universeller Transaktionsmonitor UTM 308 Unterprogrammaufruf CALL bezeichner 258 CALL literal 258 USE APOSTROPHE Comopt 76 USING BY VALUE 267 USW 0 USW 31 139 UTM Kurzbeschreibung 308 406 U3987 J Z125 8 Stichw rter V Verarbeitungsformen indizierte Dateien 224 relative Dateien 202 sequentielle Dateien 176 VERSION SDF Operand 36 43 Versionsangabe 43 71 Versionsnummer inkrementieren 43 71 Vorschubsteuerzeichen f r Druckdateien 181 Ww Wahlfreier Zugriff indizierte Dateien 223 relative Dateien 201 Wiederanlauf 255 f r Sortierprogramme 251 RESTART PROGRAM Kommando 255 WINDOW DEBUG SUPPORT SDF Operand 52 WITH DEBUGGING MODE Klausel 131 WITH NO REWIND Angabe 186 WRITE Anweisung indizierte Dateien 224 relative Dateien 202
346. rand 54 REDIRECT ACCEPT DISPLAY Comopt 72 REEL Angabe 186 REF MODIFICATION SDF Operand 54 Relative Dateien U3987 J 2125 8 399 Stichw rter ACCESS MODE Klausel 196 ASSIGN Klausel 196 BLOCK CONTAINS Klausel 197 CLOSE Anweisung 200 COBOL Sprachmittel 195 Datensatzerkl rung 198 DELETE Anweisung 205 dynamischer Zugriff 201 Ein Ausgabeanweisungen 199 Ein Ausgabezust nde 210 293 Er ffnungsarten 202 FILE STATUS Klausel 197 210 FILE STATUS Werte 212 Merkmale 193 OPEN Anweisung 199 OPTIONAL Angabe 196 ORGANIZATION Klausel 196 Programmskelett 195 READ Anweisung 203 RECORD Klausel 198 RELATIVE KEY Klausel 197 Satzformate 200 Schl sselvereinbarung 199 SELECT Klausel 196 sequentieller Zugriff 201 Simultanverarbeitung von ISAM Dateien 236 Simultanverarbeitung von PAM Dateien 244 START Anweisung 203 Verarbeitung 193 Verarbeitungsformen 202 wahlfreier Zugriff 201 wahlfreier Zugriff Beispiel 207 WRITE Anweisung 202 Zugriffsarten 201 Relative Dateiorganisation 193 RELATIVE KEY Klausel relative Dateien 197 REPLACE PSEUDOTEXT Comopt 72 REPORT WRITER SDF Operand 39 RERUN Klausel f r Sortierdateien 251 RESET PERFORM EXITS Comopt 72 RESTART PROGRAM Kommando 255 RETURN CODE SDF Operand 37 RETURN CODE Sonderregister 37 65 266 REVERSED Angabe f r Banddateien 186 400 U3987 J 2125 8 Stichw rter ROUND FLOAT RESULTS DECIMAL Comopt 72 R ckkehrcodes in Jobvariablen 117
347. rch das Programm Als Erweiterung zum COBOL Standard bietet COBOL85 die M glichkeit in diese Analyse auch die Schl ssel der POSIX Fehlermeldungen einzubeziehen Dadurch l t sich eine feinere Differenzierung der Fehlerursachen erreichen Die FILE STATUS Klausel wird im FILE CONTROL Paragraphen der ENVIRONMENT DIVISION angegeben ihr Format ist z B in Abschnitt 9 2 9 S 188f dargestellt Die beiden in der FILE STATUS Klausel definierbaren Datenfelder haben folgende Funk tion datenname 1 enth lt nach jeder Ein Ausgabeoperation auf die zugeordnete Datei einen zweistelligen numerischen Zustandscode datenname 2 ist unterteilt in datenname 2 1 und datenname 2 2 Es dient der Aufnahme des POSIX SIS Codes zum jeweiligen Ein Ausgabezustand und enth lt nach jedem Zugriff auf die zugeordnete Datei einen Wert der vom Inhalt des Feldes datenname 1 abh ngt und sich aus folgender Zusammenstellung ergibt Inhalt von SIS Code Wert von Wert von datenname 1 ungleich 0 datenname 2 1 datenname 2 2 ungleich 0 nein nicht relevant undefiniert undefiniert ja nein 0 undefiniert ja ja 96 SIS Code der zugeordneten Fehlermeldung Bei Programmablauf im BS2000 l t sich der Bedeutungstext des jeweiligen SIS Codes mit dem Kommando HELP MSG INFORMATION SIS lt datenname 2 2 gt ausgeben Der einfache und der erweiterte Ein Ausgabezustand sind in den beiden folgenden Tabel len beschrieben U3987 J 2125 8 293 V
348. rden dabei in der L nge der Sendefelder bzw Literale der DISPLAY Anweisung bertragen Ist die Gesamtzahl der zu bertragenden Zeichen gr er als die maximale Satzl n ge der Ausgabedatei siehe Tabelle 8 3 werden solange zus tzliche Datens tze ausgegeben bis alle Zeichen bertragen sind ist sie bei Dateien mit S tzen fester L nge kleiner als die Satzl nge werden die Datens tze am rechten Ende mit Leer zeichen aufgef llt DISPLAY ohne UPON Angabe schreibt standardm ig in die Systemausgabedatei SYSLST Mit COMOPT REDIRECT ACCEPT DISPLAY YES bzw ACCGEPT DISPLAY ASSGN TERMINAL in der SDF Option RUNTIME OPTIONS kann auf die Systemdatei SYSOUT umgewiesen werden STOP literal gibt ein maximal 122 Zeichen langes Literal auf dem Bedienplatz aus Beispiel 8 1 Zugriff auf eine Systemdatei ber einen vereinbarten Merknamen IDENTI ENVIRO CONFIG SY PROC ACCEPT STEUER FELD FROM SYS EINGABE 2 SPECIAL NAMES FICATION DIVISION MENT DIVISION URATION SECTION SIPT IS SYS EINGABE 1 EDURE DIVISION F r die Systemdatei SYSIPT wird der programminterne Merkname SYS EINGABE vereinbart ACCEPT liest ber den Merknamen SYS EINGABE aus SYSIPT einen Wert in das Feld STEUER FELD U3987 J 2125 8 135 Systemdateien Schnittstelle COBOL Programm BS2000 8 1 2 Systemdateien Prim rzuweisungen Umweisungen Satzformate Prim rzuweisungen Bei Taskbeg
349. re liste Anforderung 47 48 69 70 AID 124 299 Abk rzungen von COBOL Verben 128 Funktionsbeschreibung 300 Grundfunktionen 299 LSD Namen 127 SDF Operanden 51 Voraussetzungen f r das Testen 125 AID Dialogtesthilfe 273 ALL SEGMENTATION SDF Operand 39 U3987 J 2125 8 383 Stichw rter ALPHABET Klausel 185 alphanum name SDF Datentyp 31 ALTERNATE RECORD KEY Klausel indizierte Dateien 219 ar Kommando 271 ASA Vorschubsteuerzeichen 184 ASCII Code Dateien im 185 ASSIGN Klausel indizierte Dateien 218 relative Dateien 196 sequentielle Dateien 171 ASSIGN SYSDTA Kommando Steuern der Quelldateneingabe 13 Umweisung von SYSDTA 13 ASSIGN systemdatei Kommando Umweisungen von Systemdateien 137 Zuweisen von katalogisierten Dateien 161 Aufbau des COBOL85 Compilers 347 eines COBOL DML Programms 356 Aufruf des COBOL85 Compilers 22 eines permanenten Programms 115 eines tempor ren Programms 112 Aufrufhierarchie pr fen 54 65 Auftrag Begriffserkl rung 6 Auftragsschalter Abfrage in COBOL Programmen 140 Bedingungsnamen f r Schalterzust nde 139 Beispiel 141 COBOL Sprachmittel f r den Zugriff 139 Merknamen vereinbaren 139 Setzen in COBOL Programmen 140 Ausbaustufen des COBOL85 Systems 2 Ausgabedatei f r Sortieren und Mischen 250 Ausgaben des Compilers 19 Ausgabeprozedur f r Sortieren und Mischen 248 Ausgabeziele des Compilers 9 Autolink Verfahren TSOSLNK 107 384 U3987 J 2125 8 Stichw rt
350. re Datensatzerkl rungen angegeben ist das vereinbarte Satzformat zu beachten Bei S tzen fester L nge m ssen alle Satzerkl rungen die gleiche Gr e haben bei S tzen variabler L nge d rfen sie nicht im Widerspruch zur Satzl ngenangabe der RECORD Klausel stehen Dar berhinaus mu auch die Datensatzerkl rung mit der kleinsten Satzl nge den Satzschl ssel noch ganz enthalten Mindestens eine der Datensatzerkl rungen mu das Prim rschl sselfeld explizit als Teil feld von datensatz vereinbaren F r typ amp l nge sind die erforderlichen L ngen und Format vereinbarungen PICTURE und USAGE Klauseln etc einzusetzen prim rschl ssel darf bis zu 255 byte lang sein sekund rschl ssel ist der Datenname aus der entsprechenden ALTERNATE RECORD KEY Klausel Jedes Sekund rschl ssel Feld darf maximal 127 Byte lang sein berlappun gen mit dem Prim rschl ssel oder weiteren Sekund rschl sseln sind zul ssig sofern zwei Schl sselfelder nicht an derselben Stelle beginnen Der COBOL85 Compiler l t auch rein numerisch PIC 9 oder alphabetisch PIC A definierte Sekund rschl ssel zu F r alle anderen Datensatzerkl rungen zu dieser Datei ist die Unterteilung von datensatz in Teilfelder feld 1 feld 2 optional OPEN open modus interner dateiname er ffnet die Datei in der angegebenen Er ffnungsart open modus f r die Verarbeitung F r open modus sind folgende Angaben m glich INPUT er ffnet die Datei a
351. ren Programms zugreifen D PROC program id innen datenfeld Dies ist auch mit SD ohne Qualifikation m glich sofern das Datum in einem ru fenden Programm liegt U3987 J 2125 8 129 Dialogtesthilfe AID Testhilfen f r den Programmablauf e Sowohl beim Zugriff auf Testpunkte als auch auf Daten gilt da die PROC Qualifikation entsprechend der Programmverschachtelung mehrfach wiederholt werden kann e Das TRACE Kommando protokolliert alle durchlaufenen Anweisungen der aktuellen Csect d h auch Anweisungen der gerufenen inneren Programme werden protokolliert nicht aber die Anweisungen in getrennt bersetzten Programmen e Sofern beim Trace die Anweisungstypen angezeigt werden meldet AID wegen intern generierter Paragraphen gelegentlich zus tzliche LABEL Angaben 130 U3987 J 2125 8 Testhilfen f r den Programmablauf Testhilfezeilen 7 2 Testhilfezeilen Auf Quellprogrammebene bietet COBOL85 f r die Diagnose von logischen Fehlern Testhil fezeilen an Dabei handelt es sich um besonders gekennzeichnete Zeilen im Quellpro gramm die lediglich COBOL Anweisungen f r Testzwecke enthalten und bei der bersetzung nach Bedarf als Anweisungs oder als Kommentarzeilen behan delt werden k nnen COBOLB85 unterst tzt die Anwendung von Testhilfezeilen durch folgende Sprachmittel siehe 1 Die WITH DEBUGGING MODE Klausel im SOURCE COMPUTER Paragraphen der ENVIRONMENT DIVISION Sie legt fest wie die Test
352. renzer fett gedruckt BLOCK FRAMES EBCDIC CHARS Die Strukturblockrahmen werden mit folgenden EBCDIC Zeichen dargestellt moa X4F X60 _ X4E BLOCK FRAMES GRAPHIC Die Strukturblockrahmen werden mit Grafik Zeichen dargestellt Der f r den Druck verwendete Zeichensatz mu au er den Zeichen f r COBOL folgende Zeichen ent halten X22 f r die linke obere Ecke X41 f r den senkrechten Strich X 2E f r das Mittelst ck X28 f r die linke untere Ecke xX3D f r den waagrechten Strich X3A f r sich kreuzende Striche BLOCK FRAMES NONE Die Strukturblockrahmen werden nicht dargestellt d h durch Leerzeichen ersetzt LINES PER PAGE 64 lt integer 20 144 gt AS NEEDED Der angegebene Wert bestimmt die Anzahl der Zeilen pro Seite Bei Angabe von AS NEEDED wird der Seitenvorschub nicht durch einen Zeilenz hler sondern nur durch den Beginn von Kapitel SECTION oder das Zeichen in Spalte 7 ausge l st 94 U3987 J 2125 8 COBOLBS5 Strukturierer STRUCTURIZER ACTION Option LINE SIZE 132 92 lt integer 52 132 gt Dieser Wert bestimmt die Anzahl der Zeichen pro Zeile Voreingestellt ist f r Listen mit Querverweisen 132 ohne Querverweise 92 Bei Strukturlisten ohne Querver weise ist die Listenbreite auf 92 Zeichen begrenzt OUTPUT STD FILES Die Liste wird in eine katalogisierte SAM Datei mit dem Standardnamen STRLST COB85 program id name ausgegeben OUTPUT lt full filename 1
353. riebssystems SYSDTA und SYSIPT die logischen Ausgabedateien des Betriebssystems SYSOUT SYSLST SYSLSTnn nn 01 99 und SYSOPT 8 1 1 COBOL Sprachmittel COBOL Programme k nnen Systemdateien dazu verwenden kleine Datenmengen z B Steueranweisungen einzulesen oder auszugeben Den Zugriff auf Systemdateien und den Bedienplatz unterst tzt COBOL85 durch folgende Sprachnmiittel siehe 1 e Die Vereinbarung programminterner Merknamen f r Systemdateien im SPECIAL NAMES Paragraphen der ENVIRONMENT DIVISION ber diese Merknamen k nnen sich Anweisungen der PROCEDURE DIVISION auf die zugeordneten Systemdateien beziehen siehe unten Es k nnen unter anderem Merk namen vereinbart werden f r die Eingabedateien SYSDTA mit TERMINAL IS merkname SYSIPT mit SYSIPT IS merkname U3987 J 2125 8 133 Systemdateien Schnittstelle COBOL Programm BS2000 f r die Ausgabedateien SYSOUT mit TERMINAL IS merkname SYSLST mit PRINTER IS merkname SYSLSTnn mit PRINTERnn IS merkname nn 01 99 SYSOPT mit SYSOPT IS merkname e Die Anweisungen ACCEPT DISPLAY und STOP literal der PROCEDURE DIVISION Sie greifen auf Systemdateien bzw auf den Bedienplatz zu wobei im einzelnen gilt ACCEPT FROM merkname liest aus der im SPECIAL NAMES Paragraphen mit merkname verkn pften Eingabedatei Die Daten werden dabei linksb ndig in der L nge des Empfangsfeldes der ACCEPT Anweisung bertragen Ist das Feld l nger als der
354. rnen Namen PROG Der erzeugte LLM wird sp ter mit der Anwei sung SAVE LLM siehe 6 als Element vom Typ L in einer PLAM Bibliothek gespei chert 3 Mit dieser INCLUDE MODULES Anweisung wird der Name des Moduls angege ben der das Hauptprogramm enth lt MAIN Das Modul steht in der tempor ren EAM Datei OMF 4 Mit dieser INCLUDE MODULES Anweisung wird der Name des Moduls angege ben der das Unterprogramm enth lt SUB Das Modul steht in der PLAM Biblio thek PLAM BSP 110 U3987 J 2125 8 Binden Laden Starten Binden mit dem BINDER 5 Mit der Anweisung RESOLVE BY AUTOLINK wird der Name der Laufzeitbibliothek angegeben aus der Externverweise befriedigt werden sollen 6 Mit der Anweisung SAVE LLM wird der erzeugte LLM unter dem Namen TESTPROG als Element vom Typ L in der PLAM Bibliothek PLAM BSP abgespei chert Die BINDER Meldung SOME WEAK EXTERNS UNRESOLVED bezieht sich auf das ILCS Modul ITOINITS Dieses Modul enth lt WEAK EXTERN Verwei se auf alle potentiell f r ILCS vorgesehenen Sprachen Im Beispiel ist nur die Spra che COBOLSB85 beteiligt die anderen Verweise bleiben offen Mit der END Anweisung wird der Bindelauf beendet nn oo N lt Der LLM wird geladen und gestartet Bei den Anweisungen INCLUDE MODULES und RESOLVE BY AUTOLINK kann anstelle des Bibliotheksnamens LIB bibliothek auch LIB BLS LINK angegeben werden In die sem Fall m ssen die zu durchsuchenden Bibliotheken mit dem Linkna
355. rschalter auch von Auftr gen ver n dert werden die unter verschiedenen Benutzerkennungen ablaufen Bevor ein COBOL Programm auf eine Jobvariable zugreifen kann mu sie ihm hnlich wie eine Datei ber einen Linknamen zugewiesen werden Bei Jobvariablen dient dazu das Kommando SET JV LINK Sein Format ist in den Handb chern 3 und 8 beschrieben ein Beispiel dazu enth lt der folgende Abschnitt Der Linkname der dabei im Kommando anzugeben ist ergibt sich aus den Vereinbarungen im COBOL Programm siehe unten Den Zugriff auf Jobvariablen unterst tzt COBOL85 durch folgende Sprachmittel siehe 1 e Die Vereinbarung von Linknamen und programminternen Merknamen f r Jobvariablen im SPECIAL NAMES Paragraphen der ENVIRONMENT DIVISION ber die Linknamen k nnen Jobvariablen zugewiesen werden ber die Merknamen k nnen sich die Anweisungen der PROCEDURE DIVISON auf sie beziehen siehe un ten Link und Merknamen f r Jobvariablen lassen sich mit Angaben nach folgendem Format vereinbaren JV ivlink IS merkname jvlink legt dabei den Linknamen f r die Jobvariable fest Bei der Bildung des Linknamens wird vor jvlink als erstes Zeichen gesetzt er ergibt sich damit als jvlink Daher darf die Zeichenfolge jvlink h chstens 7 byte lang sein merkname vereinbart den programminternen Merknamen f r die Jobvariable U3987 J 2125 8 145 Jobvariablen Schnittstelle COBOL Programm BS2000 e Die Anweisungen ACCEPT u
356. rschiede zu COBOL85 im BS2000 13 5 1 Wegen der systemspezifischen Unterschiede zwischen POSIX und BS2000 sind bei der Entwicklung von COBOL Programmen die in POSIX ablaufen sollen einige Besonderhei ten hinsichtlich Sprachumfang und Ablaufverhalten zu beachten die im folgenden aufge f hrt sind Sprachfunktionale Einschr nkungen Die im folgenden aufgef hrten Sprachmittel des COBOL85 Compilers werden bei Pro grammablauf im POSIX Subsystem nicht unterst tzt Dynamischer Unterprogrammaufruf Der Aufruf eines Unterprogramms mit der COBOL Anweisung CALL bezeichner istin POSIX nicht m glich weil nur statisch gebunden werden kann Das Laufzeitsystem quittiert einen dynamischen Unterprogrammaufruf mit der Fehlermel dung COB9164 CALL nicht ausf hrbar ENTRY Anweisung Die ENTRY Anweisung ist bei Programmablauf unter POSIX nicht zul ssig da mit ihr nur Einsprungstellen auf Objektmodule definiert werden k nnen der Compiler unter POSIX aber grunds tzlich Bindelademodule LLMs erzeugt Segmentierung Da der Compiler unter POSIX grunds tzlich Bindelademodule LLMs erzeugt ist die Seg mentierung von COBOL Programmen in POSIX nicht m glich Dateiverarbeitung Die Kennsatzbehandlung bei der Verarbeitung von Magnetb ndern ist in POSIX nicht m glich Fixpunktausgabe f r Wiederanlauf von Magnetb ndern ist in POSIX nicht m glich Simultanverarbeitung von Dateien ist in POSIX nicht m glich 286 U3
357. rwalter berater verst ndigen C0B9214 CANNOT CREATE FILE AAA ERRNO NN C0B9214 DATEI AAA KANN NICHT ERZEUGT WERDEN ERRNO NN Typ Systemfehler Ma nahme aaa Dateiname nn Nummer des Fehlers der beim Versuch die Datei anzulegen aufgetreten ist Ma nahme Systemverwalter berater verst ndigen U3987 J Z125 8 343 Meldungen des COBOL85 Systems C0B9215 C0B9215 C0B9216 C0B9216 C0B9217 C0B9217 C0B9221 C0B9221 CANNOT REMOVE FILE AAA ERRNO NN DATEI AAA KANN NICHT GELOESCHT WERDEN ERRNO NN Typ Systemfehler Bedeutung aaa Dateiname nn Nummer des Fehlers der beim Versuch die Datei zu l schen aufgetreten ist Ma nahme Systemverwalter berater verst ndigen CANNOT SET ENVIRONMENT VARIABLE XXX UMGEBUNGSVARIABLE XXX KANN NICHT GESETZT WERDEN Typ Systemfehler Ma nahme Systemverwalter berater verst ndigen CANNOT GENERATE TEMPORARY FILENAME TEMPORAERER DATEINAME KANN NICHT ERZEUGT WERDEN Typ Systemfehler Ma nahme Systemverwalter berater verst ndigen INSUFFICIENT MEMORY SPEICHERMANGEL Typ Systemfehler Bedeutung Das Betriebssystem konnte keinen dynamischen Speicher mehr zur Verf gung stellen Ma nahme Systemverwalter berater verst ndigen 344 U3987 J Z125 8 Meldungen des COBOLB85 Systems C0B9231 C0B9231 C0B9232 C0B9232 C0B9233 C0B9233 C0B924 C0B924 m pan CCC TERMINATED BY SIGNAL NN CCC BEENDET DURCH SIGNAL NN Typ Hi
358. rwiegenden Fehler verlaufen ist wird automatisch ein Bindelauf gestartet Falls ein C Compiler vorhanden ist k nnen mit dem Kommando cobol neben COBOL Quellprogrammen gleichzeitig auch C Quellprogramme bersetzt und zu der COBOL Anwendung gebunden werden Die Optionen zur Steuerung des bersetzungs und Bindelaufs sind nachfolgend beschrie ben 276 U3987 J 2125 8 COBOLB85 und POSIX Steuerung des Compilers 13 3 1 Allgemeine Optionen C Der Compilerlauf wird beendet nachdem f r jede bersetzte Quelldatei ein LLM erzeugt und in eine Objektdatei basisname o abgelegt wurde basisname ist der Name der Quelldatei ohne die Dateiverzeichnisbestandteile und ohne das Suffix cb1 oder cob Die Objektda tei wird in das aktuelle Dateiverzeichnis geschrieben Wenn ein Quellprogramm ohne Angabe dieser Option bersetzt wird wird nach der ber setzung eine Bindelauf gestartet k dateiname Mit dieser Option kann eine COBOL Quelldatei angegeben werden deren Dateiname nicht mit dem Suffix cb1 oder cob endet Wenn der mit k angegebene Quelldateiname dennoch mit dem Suffix cb oder cob endet wird dieses Suffix bei der Bildung des Basisnamens f r die Objekt und Listenda teien mit dem Suffix o bzw 1st berschrieben V Bei Angabe dieser Option werden folgende Informationen auf dem Bildschirm ausgege ben Copyright und Versionsangabe des COBOL85 Compilers und des cobol Kommandos Meldungen des COBOL
359. s bestandteile basisname st Datei die alle bersetzungslisten enth lt basisname o vom Compiler erzeugte LLM Objektdatei die mit dem Binder weiterver arbeitet werden kann a out vom Binder erzeugte ausf hrbare Datei Bei der bersetzung von Quellprogramm Folgen werden die Namen der LLM Objekt dateien f r das zweite bis letzte Quellprogramm aus dem PROGRAM ID Namen und dem Suffix o gebildet 284 U3987 J 2125 8 COBOLB85 und POSIX Einf hrungsbeispiele 13 4 Einf hrungsbeispiele bersetzen und Binden mit dem cobol Kommando cobol M BSPPROG hugo cob bersetzt hugo cob und erzeugt eine ausf hrbare Datei a out Das Programm mit dem PROGRAM ID Namen BSPPROG wird zum Hauptprogramm cobol o hugo M BSPPROG hugo cob bersetzt hugo cob und erzeugt eine ausf hrbare Datei hugo Das Programm mit dem PROGRAM ID Namen BSPPROG wird zum Hauptprogramm cobol c P SOURCE DIAG hugo cob upro cob bersetzt hugo cob und upro cob erzeugt die Objektdateien hugo o und upro o sowie f r beide Programme je eine Quellprogramm und eine Fehlerliste Die Listen werden in den Listendateien hugo 1st bzw upro 1st abgelegt cobol M BSPPROG o hugo hugo o upro o bindet das Hauptprogramm hugo o und das Unterprogramm upro o zu einer ausf hr baren Datei hugo Das Programm mit dem PROGRAM ID Namen BSPPROG wird zum Hauptprogramm U3987 J 2125 8 285 Unterschiede zu COBOL85 im BS2000 COBOL85 und POSIX 13 5 Unte
360. s Typs ausgegeben Die Referenzen eines Typs werden in der Reihenfolge ausgegeben in der sie im Programm verwendet wer den also in aufsteigender Nummernfolge innerhalb des Quellprogramms und jedes COPY Aufrufs Sind mehrere Daten innerhalb einer Eingabezeile definiert so werden Verwendungen zu verschiedenen Daten in verschiedenen Zeilen ausgegeben Verweis von der Verwendung auf die Definition An jeder Stelle an der ein referenzierter Name verwendet wird ist die Nummer der Zeile angegeben in der der Name definiert wurde Bei mehreren Verwendungen in einer Zeile werden die Referenzen auf den Ort ihrer Defi nition in derselben Reihenfolge wie die Verwendungen innerhalb der Zeile ausgegeben Bei der Verwendung eines Namens mit Kennzeichnung z B C OF B OF A wird nur die Definition des hierarchisch untersten Namens im Beispiel C mit der entsprechenden Zei lennummer angegeben Ein Fragezeichen als Referenz kennzeichnet die Verwendung eines nicht definierten Namens Ein doppeltes Fragezeichen bezeichnet einen mehrdeutigen Namen d h es gibt mehrere Definitionen auf die sich der Name bezieht 86 U3987 J Z125 8 COBOLS55 Strukturierer Strukturlisten Erzeugung Beispiel 5 3 Strukturliste mit Querverweisangaben erzeugt mit INFORMATION Parameter SEQUENCE AREA NO IDENTIFICATION AREA NO sowie mit LAYOUT Parameter COBOL85 VO2 1B LINE ID PPP gt gt gt gt gt gt gt gt gt gt gt gt
361. s Zeichen sein 32 U3987 J 2125 8 Steuerung des Compilers ber SDF SDF Syntaxbeschreibung Tabelle 3 3 Zus tze zu Datentypen Zus tze zu Datentypen kennzeichnen weitere Eingabevorschriften f r Datentypen Die Zus tze schr nken den Wertevorrat ein oder erweitern ihn Im Handbuch werden fol gende Zus tze in gek rzter Form dargestellt generation gen cat id cat user id user version vers Die Beschreibung der Zus tze zu den Datentypen gilt f r alle Optionen und Operanden Deshalb werden bei den entsprechenden Operandenbeschreibungen nur noch Abwei chungen von Tabelle 3 3 erl utert Zusatz Bedeutung x y L ngenangabe x Mindestl nge f r den Operandenwert x ist eine ganze Zahl y Maximall nge f r den Operandenwert y ist eine ganze Zahl x y Der Operandenwert mu genau die L nge x haben with Iow Kleinbuchstaben zul ssig without Schr nkt die Angabem glichkeiten f r einen Datentyp ein gen Die Angabe einer Dateigeneration oder Dateigenerationsgruppe ist nicht erlaubt vers Die Angabe der Version siehe datei nr ist bei Banddateien nicht erlaubt cat Die Angabe einer Katalogkennung ist nicht erlaubt user Die Angabe einer Benutzerkennung ist nicht erlaubt U3987 J 2125 8 33 SDF Optionen zur Steuerung des bersetzungslaufs Steuerung des Compilers ber SDF 3 3 SDF Optionen zur Steuerung des bersetzungslaufs Name der Option Zweck SOUR
362. schen Eigenheiten der zeilensequentiellen Or ganisation siehe 9 2 5 ber cksichtigt werden U3987 J 2125 8 189 Sequentielle Dateien Dateiverarbeitung Tabelle 9 9 Ein Ausgabezust nde f r sequentielle Dateien Ein Ausgabe Zustand Bedeutung 00 04 05 07 Erfolgreiche Ausf hrung Die Ein Ausgabe Anweisung wurde erfolgreich ausgef hrt Es ist keine weitere Information bez glich der Ein Ausgabe Operation verf gbar Satzl ngenkonflikt Eine READ Anweisung wurde erfolg reich ausgef hrt Die L nge des gelesenen Datensatzes liegt jedoch nicht in den Grenzen die durch die Satzbeschreibungen der Datei festgelegt wurden Erfolgreicher OPEN INPUT I O EXTEND auf eine Datei mit OPTIONAL Angabe die zum Zeitpunkt der Ausf hrung der OPEN Anweisung nicht vorhanden war 1 Erfolgreiche OPEN Anweisung mit NO REWIND Klausel auf eine Datei auf UNIT RECORD Datentr ger 2 Erfolgreiche CLOSE Anweisung mit NO REWIND REEL UNIT oder FOR REMOVAL KIausel auf eine Datei auf UNIT RECORD Datentr ger 10 Erfolglose Ausf hrung Endebedingung 1 Es wurde versucht eine READ Anweisung auszuf hren Es war jedoch kein n chster logischer Datensatz vorhanden da das Dateiende erreicht war 2 Es wurde zum ersten Mal versucht eine READ Anweisung f r eine nicht vor handene Datei mit OPTIONAL Angabe auszuf hren 30 34 35 37 38 Erfolglose Ausf hrung Permanenter Fehler 1 Es ist
363. schub bei Ausgabe ins BS2000 ins POSIX Dateisystem PRINTER literal BS2000 Vorschubzeichen Vorschubzeichen und zeilen gem Tabelle 9 6 9 7 gem UNIX SINIX Konventionen PRINTER wie oben wie oben PRINTERO1 99 wie oben nicht unterst tzt literal wie oben BS2000 Vorschubzeichen gem Tabelle 9 6 9 7 In den folgenden Tabellen sind Siemens Nixdorf Vorschubzeichen zusammengestellt U3987 J 2125 8 181 Sequentielle Dateien Dateiverarbeitung Steuerzeichen f r Vorschub Vorschub um nn i vor dem Drucken Anzahl Zeilen sedezimal abgedruckt 1 01 40 Leerzeichen 2 02 41 nicht abdruckbar 3 03 42 nicht abdruckbar 11 0B 4A CENT 12 0C 4B Punkt 13 oD 4C kleiner 14 0E 4D Klammer 15 OF 4E Plus Tabelle 9 6 Siemens Nixdorf Steuerzeichen f r Zeilenvorschub Die Werte des zweiten Halbbytes sind wegen Hardwareeigenschaften um 1 kleiner als die ge w nschte Zeilenzahl Steuerzeichen f r Vorschub en Ks 2 vor dem Drucken sedezimal abgedruckt 1 81 C1 A 2 82 C2 B 3 83 c3 C 4 84 C4 D 5 85 C5 E 6 86 C6 F 7 87 C7 G 8 88 C8 H 10 8A CA nicht abdruckbar 11 8B CB nicht abdruckbar Tabelle 9 7 Siemens Nixdorf Steuerzeichen f r Vorschub nach Lochbandkan len Ein Vorschub nach Kanal 9 oder 12 ist nicht m glich da diese Kan le nur zur Formularende Bestimmung dienen 182 U3987 J 21
364. se sind in aufsteigender Reihenfolge ihrer Schl ssel logisch miteinander verkettet ihre physische Reihenfolge auf dem Datentr ger ist beliebig Datenbl cke k nnen eine L nge von einem PAM Block 2048 byte oder einem ganz zahligen Vielfachen davon bis zu 16 PAM Bl cken haben U3987 J 2125 8 215 Indizierte Dateien Dateiverarbeitung Die Indexbl cke dienen dem Auffinden der Datens tze ber die Satzschl ssel Sie las sen sich verschiedenen Indexstufen zuordnen Indexbl cke der niedrigsten Stufe enthalten Zeiger auf Datenbl cke die Indexbl cke h herer Stufe Zeiger auf die Indexbl cke der n chstniedrigeren Stufe Der Indexblock der h chsten Stufe wird immer in der Datei angelegt auch wenn sie kei ne Datens tze enth lt Neben den Zeigern enth lt er eine 36 byte lange ISAM Etikett information Die Eintr ge in den Indexbl cken sind physisch stets in der Reihenfolge aufsteigender Satzschl ssel angeordnet sie m ssen daher reorganisiert werden wenn in der darun terliegenden Stufe neue Index bzw Datenbl cke entstehen Indexbl cke haben eine feste L nge von einem PAM Block Blockteilung Beim Erweitern einer ISAM Datei wird jeder neue Datensatz in den Datenblock eingef gt zu dem er auf Grund seines Satzschl ssels geh rt Dabei kann es vorkommen da in diesem Block kein Platz zur Aufnahme eines weiteren Satzes zur Verf gung steht In diesem Fall kommt es zu Blockteilung Der alte Datenblock
365. sen werden Sequentielle Dateien k nnen sowohl auf Magnetb ndern als auch auf Ger ten mit direktem Zugriff Plattenspeichern eingerichtet werden U3987 J 2125 8 169 Sequentielle Dateien Dateiverarbeitung 9 2 2 COBOL Sprachmittel f r die Verarbeitung sequentieller Dateien Das folgende Programmskelett gibt einen berblick ber die wichtigsten Klauseln und An weisungen die COBOLB85 f r die Verarbeitung sequentieller Dateien zur Verf gung stellt Die wesentlichen Angaben werden im Anschlu daran kurz erl utert IDENTIFICATION DIVISON ENVIRONMENT DIVISION INPUT OUTPUT SECTION FILE CONTROL SELECT interner dateiname ASSIGN TO externer name ORGANIZATION IS SEQUENTIAL ACCESS MODE IS SEQUENTIAL FILE STATUS IS statusfelder DATA DIVISION FILE SECTION FD nterner dateiname LOCK CONTAINS blockl ngenangabe CORD satzl ngenangabe i B R RECORDING MODE IS satzformat 01 datensatz n feld 1 typ amp l nge n feld 2 typ amp l nge DVD PROCEDURE DIVISON PEN open modus interner dateinane w RITE datensatz READ interner dateiname REWRITE datensatz CLOSE interner dateiname STOP RUN 170 U3987 J 2125 8 Dateiverarbeitung Sequentielle Dateien SELECT interner dateiname legt den Namen fest unter dem die Datei im Quellprogramm angesprochen wird interner dateiname mu ein g ltiges Programmiererwort sein Das Format der SELECT Klausel erlaubt auch die
366. so z B 01 datenname 1 PIC X 2 enth lt nach jeder Ein Ausgabeoperation auf die zugeordnete Datei einen zweistelli gen numerischen Zustandscode dessen Bedeutung der Tabelle am Ende dieses Ab schnitts entnommen werden kann U3987 J 2125 8 231 Indizierte Dateien Dateiverarbeitung datenname 2 mu als sechs Byte langes Gruppenfeld der folgenden Struktur erkl rt werden 01 datenname 2 02 datenname 2 1 02 datenname 2 2 PIC 9 2 COMP PIC X 4 dient der Aufnahme des DVS Fehlerschl ssels DVS Codes zum jeweiligen Ein Aus gabezustand und enth lt nach jedem Zugriff auf die zugeordnete Datei einen Wert der vom Inhalt des Feldes datenname 1 abh ngt und sich aus folgender Zusammenstel lung ergibt Inhalt von DVS Code Wert von Wert von datenname 1 ungleich 0 datenname 2 1 datenname 2 2 ungleich 0 nein nicht relevant undefiniert undefiniert ja nein 0 undefiniert DVS Code der zugeord ja ja 64 neten Fehlermeldung Die DVS Codes und die zugeordneten Fehlermeldungen k nnen Handbuch 4 ent nommen werden 232 U3987 J 2125 8 Dateiverarbeitung Indizierte Dateien Tabelle 9 19 Ein Ausgabezust nde f r indizierte Dateien Ein Ausgabe Zustand Bedeutung 00 02 04 05 Erfolgreiche Ausf hrung Die Ein Ausgabe Anweisung wurde erfolgreich ausgef hrt Es ist keine weitere Information bez glich der Ein Ausgabe Operation verf gbar Ein S
367. ssen Das optionale Schl sselwort THEN wird ggf eingef gt Jede Anweisung wird gegen ber der nach der Schachtelung n chst h heren An weisung einger ckt Die Einr cktiefe kann mit dem INDENTATION AMOUNT Oper anden des LAYOUT Parameters festgelegt werden Die vom Strukturierer erg nzten Schl sselw rter werden wahlweise kleingeschrie ben Die Bedingung nach einer IF Anweisung wird stets um drei Stellen einger ckt Die folgenden Schl sselw rter und Ausnahmebedingungen stehen f r sich in einer Zeile THEN ELSE END IF WHEN OTHER END EVALUATE END PERFORM EXIT PERFORM NOT AT END NOT INVALID KEY NOT ON SIZE ERROR NOT ON OVERFLOW NOT AT END OF PAGE sowie alle expliziten Bereichsbegrenzer nach einer Ausnahmebedingung Paragraphen Namen stehen ebenfalls allein in einer Zeile Leerzeilen Kommentarzeilen Fortsetzungszeilen und DEBUG Zeilen werden un ver ndert bernommen U3987 J 2125 8 79 Quelltext Aufbereitung COBOLB85 Strukturierer Das Layout der Anweisungen bleibt erhalten berfl ssige Punkte werden entfernt Ein Punkt nach einer Ausnahmebedingung wird durch den entsprechenden explizi ten Bereichsbegrenzer der Anweisung z B END READ ersetzt Ist die letzte An weisung die von der Ausnahmebedingung abh ngt dieselbe wie die bedingende Anweisung so wird der Bereichsbegrenzer verdoppelt Beispiel Der Programmausschnitt ADD 1 TO Z ON SIZE ERROR MOVE X TO FLAG ADD 1 T
368. sungsliste Anforderung 46 69 70 Beschreibung 360 Steuerung des Compilers mit COMOPT Anweisungen 59 M glichkeiten 22 404 U3987 J 2125 8 Stichw rter ber SDF 25 STMT REFERENGE SDF Operand 51 Strukturierer 77 Strukturliste Funktion des Strukturierers 83 SUBSCHEMA EXPANSION SDF Operand 46 SUPPORT WINDOW DEBUGGING Comopt 73 SUPPRESS GENERATION SDF Operand 41 47 SUPPRESS LISTINGS Comopt 74 SUPPRESS MODULE Comopt 74 SYMBOLIC CHARACTERS Klausel 181 SYMTEST Comopt 75 TSOSLNK Operand 107 Syntaxbeschreibung SDF 30 Syntaxpr fung des Quellprogramms 40 75 SYSDTA Umweisung 137 Zuweisung des Quellprogramms ber 13 SYSLIST Comopt 75 SYSLNK CRTE PARTIAL BIND 272 Systemdateien 133 COBOL Sprachmittel f r den Zugriff 133 Ein Ausgabe ber 133 Prim rzuweisungen 136 Umweisungen mit dem ASSIGN systemdatei Kommando 137 T Tabellengrenzen pr fen 53 66 TABLE SUBSCRIPTS SDF Operand 53 Task File Table 162 Eintrag erzeugen Beispiel 164 Task Begriffserkl rung 6 Task Information 150 TCBENTRY Comopt 75 TERMINAL Herstellername 133 TERMINAL INFO 150 TERMINATE AFTER SEMANTIC Comopt 75 TERMINATE AFTER SYNTAX Comopt 75 Testen 125 mit Testhilfezeilen 131 symbolisch mit AID 127 von geschachtelten Programmen 129 Voraussetzungen f r Testen mit AID 125 Testhilfe AID U3987 J 2125 8 405 Stichw rter bei COMOPT Steuerung 75 bei SDF Steuerung 51 Testhilfen 124 Dialogtesthilfe AID 124 Sp
369. t da der Bindelader alle Module aus der EAM Bindemoduldatei holt Ist dies ge w nscht er brigt sich die Angabe da dieser Wert voreingestellt ist LIBRARY bibliothek gibt den Namen der PLAM Bibliothek an in der sich das Modul als Element befindet Mit LINK LINK NAME linkname kann auch ein vereinbarter Dateikettungsname f r die Bi bliothek angegeben werden ELEMENT element gibt den Namen des Moduls an der als Element vom Typ R oder L in der angegebenen PLAM Bibliothek steht Sind mehrere Elemente gleichen Namens in der Bibliothek ge speichert wird das Element mit der alphabetisch h chsten Versionsbezeichnung ge nommen RUN MODE STD In diesem Modus mu das Laufzeitsystem CRTE vor Aufruf des Binders mittels SET TASKLIB Kommando als TASKLIB zugewiesen werden Au er der TASKLIB und ggf der Bibliothek die die Module enth lt k nnen keine weiteren Bibliotheken beim Binden ber cksichtigt werden RUN MODE ADVANCED ALTERNATE LIBRARIES YES In diesem Modus durchsucht der Binder zur Befriedigung von Externverweisen bis zu 100 verschiedene Bibliotheken die vor Aufruf des Binders mit dem Linknamen BLSLIBnn 00 lt nn lt 99 zugewiesen wurden Dynamisches Nachladen Objektmodule mit externen Unterprogrammen die ausschlie lich mit CALL bezeichner aufgerufen werden werden vom DBL zur Ablaufzeit dynamisch nachgeladen Dazu mu vor Aufruf des DBL die Bibliothek die die nachzuladenden Objektmodule enth lt mit dem Lin
370. t des Programms und die Zahl der Blockzwischenr ume auf dem Speichermedium und damit den physischen Platzbedarf der Datei Andererseits wird bei Zugriffen mit Sperrmechanismus im Verlauf einer Simultanverarbei tung siehe 9 5 stets der gesamte Block gesperrt in dem sich der aktuelle Satz befindet Ein gro er Blockungsfaktor f hrt in diesem Fall daher zu Einbu en an Verarbeitungsge schwindigkeit U3987 J 2125 8 197 Relative Dateien Dateiverarbeitung Der Compiler errechnet bei der bersetzung aus den Angaben im Quellprogramm ber Block und Satzl nge einen Wert f r die Puffergr e der vom Laufzeitsystem f r das DVS auf das n chstgr ere Vielfache eines PAM Blocks 2048 byte aufgerundet wird Diese Voreinstellung kann bei der Dateizuweisung durch die Angabe des BUFFER LENGTH Operanden im SET FILE LINK Kommando ver ndert werden wobei darauf zu achten ist da der Puffer mindestens so gro sein mu wie der l ngste Datensatz und bei Verarbeitung im keylosen Format BLKCTRL DATA die Verwaltungsinformatio nen Pamkey im Puffer Platz finden siehe 9 1 4 Au er bei neu angelegten Dateien OPEN OUTPUT hat die im Katalog eingetragene Blockgr e stets Vorrang gegen ber den Blockgr enangaben im Programm bzw im SET FILE LINK Kommando Die BLOCK CONTAINS Klausel ist optional Wird sie nicht angegeben nimmt der Compiler als Blockgr e die Satzl nge der Datei an RECORD satzl ngena
371. t die angeforderte POSIX Datei wenn sie im Home Verzeichnis des POSIX Dateisystems steht relativer pfadname ist der Dateiname mit den Dateiverzeichnisbestandteile ab einschlie lich dem Home Verzeichnis absoluter pfadname ist der Dateiname mit allen Dateiverzeichnisbestandteilen einschlie lich Root Verzeichnis Beginn mit Beispiel f r gemischte Dateiverarbeitung COBOL Quellprogramm FILE CONTROL SELECT POSFILE ASSIGN TO CUSTI SELECT BS2FILE ASSIGN TO CUST2 Zuweisung der POSIX Datei vor Aufruf des Programms ESET VAR SYSIOL CUST1 POSIXC USERIDXY customers custl Zuweisung der BS2000 Datei vor Aufruf des Programms SET FILE LINK CUST2 CUST FILE U3987 J 2125 8 291 Verarbeiten von POSIX Dateien COBOL85 und POSIX 13 6 2 Programmablauf in der POSIX Shell Ein COBOL Programm das in der POSIX Shell entwickelt und zum Ablauf gebracht wird kann POSIX Dateien ohne besondere Ma nahmen beim bersetzen und Binden vgl Pro grammablauf im BS2000 verarbeiten Die Verarbeitung von BS2000 Dateien aus der POSIX Shell ist nicht m glich Bei der Verarbeitung von POSIX Dateien gelten sprachfunktionale Einschr nkungen gegen ber der Dateiverarbeitung im BS2000 siehe S 286 Zuweisen einer POSIX Datei Die Zuweisung einer POSIX Datei erfolgt mit einer Shell Umgebungsvariablen namens externer name externer name ist der Dateiname aus der ASSIGN Klausel im Programm Er dar
372. te die ber die minimale Sprachmenge des ANS85 subset minimum hinausgehen d h zur mittleren oder hohen Sprachmenge subset intermediate oder high geh ren 38 U3987 J 2125 8 SDF Steuerung des Compilers ACTIVATE FLAGGING Option ABOVEINTERMED SUBSET NO YES Kennzeichnung aller Sprachelemente die ber die mittlere Sprachmenge des ANS85 subset intermediate hinausgehen d h zur hohen Sprachmenge subset high geh ren REPORT WRITER NO YES Kennzeichnung aller Sprachelemente des Listensteuerprogramms Report Writer ALL SEGMENTATION NO YES Kennzeichnung aller Sprachelemente bez glich Segmentierung SEGMENTATION ABOVE1 NO YES Kennzeichnung aller Sprachelemente bez glich Segmentierung auf Level 2 INTRINSIC FUNCTIONS NO YES Kennzeichnung aller Sprachelemente f r interne Standardfunktionen In den Meldungstexten werden folgende Bezeichnungen verwendet obsolete f r die veralteten Sprachelemente nonconforming nonstandard f r alle Spracherweiterungen gegen ber ANS85 nonconforming standard f r alle Sprachelemente des ANS85 die ber die einge stellte Sprachmenge subset hinausgehen U3987 J 2125 8 39 COMPILER ACTION Option SDF Steuerung des Compilers 3 3 4 COMPILER ACTION Option Diese Option legt fest nach welchem bersetzungschritt der Compilerlauf beendet werden soll und falls ein Modul erzeugt wird welches Format und welche Eigenschaften der Mo dul erhalten s
373. tehen sowie SET FILE LINK BLSLIBnn laufzeitbibliothek f r das Common Run Time Environment CRTE das das COBOL Laufzeitsystem enth lt 258 U3987 J 2125 8 Programmverkn pfungen Binden und Laden von Unterprogrammen Dabei ist zu beachten da die Verwendung des Linknamens BLSLIBnn nur m glich ist wenn im Aufrufkommando f r den DBL RUN MODE ADVANCED CALTERNATE LIBRARIES YES angegeben wird siehe Abschnitt 6 4 Hinweis In Bindelademodulen LLMs k nnen in CALL bezeichner bzw CANCEL bezeichner Anweisungen Programmnamen angegeben werden die bis zu 30 Zeichen lang sind In Objektmodulen d rfen die Programmnamen nicht l nger als acht Zeichen lang sein U3987 J 2125 8 259 Binden und Laden von Unterprogrammen Programmverkn pfungen Beispiel 12 1 Binde und Ladetechniken f r Programmsysteme mit dynamisch nachzuladenden Unterprogrammen Programmkonstellation und Art der Aufrufe MAINPROG v UPROG2 UPROG1 v v UPROG2 MAINPROG CALL UPROG1 USING MOVE UPROG2 TO bezeichner 1 MOVE UPROG3 TO bezeichner 2 CALL bezeichner 1 USING bezeichner 2 imr UPROG2 PROCEDURE DIVISION USING bezeichner 2 CALL bezeichner 2 CALL UPROG3 UPROG1 wird ausschlie lich in der Form CALL literal aufgerufen UPROG2 wird ausschlie lich in der Form CALL bezeichner aufgerufen UPROGS3 wird auf beide Arten aufgerufen Das
374. thek BIB2 mit dem Linknamen BIBLIO abgespeichert ist 3 SYSDTA wird der Datei BEISPIEL 1 zugewiesen Von dort erh lt der Compiler das Quellprogramm in dem zwei COPY Anweisungen stehen 4 Das erste SET FILE LINK Kommando weist die PLAM Bibliothek BIB1 zu und verkn pft sie mit dem Standard Linknamen COBLIB 5 Das zweite SET FILE LINK Kommando weist die PLAM Bibliothek BIB2 zu und verkn pft sie mit dem in der COPY Anweisung angegebenen Linknamen BIBLIO 16 U3987 J 2125 8 berblick Quelldaten Eingabe Beispiel 2 5 Eingabe mehrerer COPY Elemente aus verschiedenen Bibliotheken IDENTIFICATION DIVISION PROGRAM ID PROGI COPY Al COPY Bl COPY D1 Zuweisung und Verkn pfung ASSIGN SYSDTA BEISPIEL2 2 SET FILE LINK COBLIB A SET FILE LINK COBLIB1 B 3 SET FILE LINK COBLIB3 D Compileraufruf 4 1 Das Quellprogramm BEISPIEL2 enth lt folgende COPY Anweisungen 1 A1 B1 D1 sind die Namen der COPY Elemente unter denen sie in den katalogi sierten Bibliotheken A B D gespeichert sind SYSDTA wird der katalogisierten Datei BEISPIEL2 zugewiesen Von dort erh lt der Compiler das Quellprogramm in dem drei COPY Anweisungen stehen Die Bibliotheken A B und D werden zugewiesen und mit den Standard Linknamen verkn pft Dabei mu der Standard Linkname COBLIB stets zugewiesen werden w hrend die Verkn pfung mit COBLIB1 bis COBLIB9 in Anzahl und Reihenfolge beliebig
375. tz schreiben bzw einen Satz l schen Welche dieser Anweisungen f r die Datei zul ssig sind h ngt von der Er ffnungsart ab die in der OPEN Anweisung vereinbart wird Dieser Zusammenhang wird in 9 3 4 beschrieben U3987 J 2125 8 199 Relative Dateien Dateiverarbeitung 9 3 3 CLOSE interner dateiname beendet die Verarbeitung der Datei Durch die zus tzliche Angabe WITH LOCK kann ein erneutes Er ffnen der Datei im selben Programmlauf verhindert werden Zul ssige Satzformate und Zugriffsarten Satzformate Relative Dateien k nnen S tze fester L nge RECFORMS F oder variabler L nge REC FORM V enthalten In beiden F llen k nnen die S tze geblockt oder ungeblockt vorlie gen Im COBOL Qellprogramm kann das Format der zu verarbeitenden S tze in der RECORD Klausel vereinbart werden Welche Angaben dabei dem jeweiligen Satzformat zugeordnet sind ist in der folgenden Tabelle zusammengestellt Satzformat Angabe in der RECORD Klausel S tze fester L nge RECORD CONTAINS CHARACTERS Format 1 RECORD IS VARYING IN SIZE Format 2 S tze variabler L nge oder RECORD CONTAINS TO Format 3 Tabelle 9 10 Satzformat und RECORD Klausel 200 U3987 J 2125 8 Dateiverarbeitung Relative Dateien Zugriffsarten Auf S tze einer relativen Datei kann sequenitiell wahlfrei oder dynamisch zugegriffen wer den Im COBOL Quellprogramm wird die Zugriffsart durch die ACCESS
376. u dazu vor jeder READ Anweisung mit dem Schl ssel des Satzes versorgt werden der gelesen werden soll Wird der Schl ssel eines nicht existierenden Satzes angegeben tritt eine INVALID KEY Bedingung auf und READ verzweigt zur INVALID KEY Anweisung bzw zur verein barten USE Prozedur ACCESS MODE IS DYNAMIC gestattet es die Datei sowohl sequentiell als auch wahlfrei zu lesen Die jeweilige Zugriffsart wird dabei ber das Format der READ Anweisung gew hlt sie he Tabelle 9 16 Eine START Anweisung ist nur f r sequentielles Lesen sinnvoll OPEN I 0 Welche Ein Ausgabeanweisungen bzw Anweisungsformate erlaubt sind h ngt von der Angabe in der ACCESS MODE Klausel ab In diesem Modus k nnen in einer indizierten Datei S tze gelesen hinzugef gt durch das Programm aktualisiert und berschrieben oder gel scht werden Die folgende Tabelle stellt die M glichkeiten f r OPEN I O zusammen 226 U3987 J 2125 8 Dateiverarbeitung Indizierte Dateien Eintrag in der ACCESS MODE Klausel Anweisung SEQUENTIAL RANDOM DYNAMIC START START Anweisung nicht zul ssig START KEY IS KEY IS INVALID KEY INVALID KEY NOT INVALID KEY NOT INVALID KEY END START END START READ READ NEXT READ F r sequentiellen Zugriff INTO INTO nl READ NEXT AT END KEY IS INTO NOT AT END INVALID KEY AT E
377. u sel etc einzusetzen Das in der RELATIVE KEY Angabe vereinbarte Schl sseldatenfeld darf datensatz nicht un tergeordnet sein nn schl ssel typ amp l nge vereinbart das in der RELATIVE KEY Angabe angegebene Schl sseldatenfeld Bei der Festlegung von typ amp l nge ist zu beachten da schl ssel ein ganzzahliges Daten feld ohne Vorzeichen sein mu Bei wahfreiem Zugriff mu schl ssel vor jeder Ein Ausgabeanweisung mit der relativen Satznummer des zu bearbeitenden Satzes versorgt werden OPEN open modus interner dateiname er ffnet die Datei in der angegebenen Er ffnungsart open modus f r die Verarbeitung F r open modus sind folgende Angaben m glich INPUT er ffnet die Datei als Eingabedatei sie kann nur gelesen werden OUTPUT er ffnet die Datei als Ausgabedatei sie kann nur neu geschrieben werden EXTEND er ffnet die Datei als Ausgabedatei sie kann erweitert werden I O er ffnet die Datei als Ein Ausgabedatei sie kann Satz f r Satz gelesen aktualisiert und zur ckgeschrieben werden Die Angabe f r open modus legt fest mit welchen Ein Ausgabeanweisungen auf die Datei zugegriffen werden darf siehe 9 3 4 START interner dateiname READ interner dateiname REWRITE datensatz WRITE datensatz DELETE interner dateiname sind Ein Ausgabeanweisungen f r die Datei die jeweils in der Datei auf einen Satz positionieren bzw einen Satz lesen bzw einen Satz zur ckschreiben bzw einen Sa
378. ubschema Man unterscheidet Linked in DBH Er wird in das Anwenderprogramm eingebunden eignet sich also f r den Fall da nur ein Anwenderprogramm mit der Datenbank arbeiten soll Independent DBH Er wird nicht mit in das Anwenderprogramm eingebunden d h er kann mehr als ein Anwenderprogramm steuern eigener Proze Aufbau eines COBOL DML Programms DATA DIVISION SUB SCHEMA SECTION DB subschema name WITHIN schema name PROCEDURE DIVISION Folge von COBOL DML Anweisungen Die Formate der COBOL DML Anweisungen sind in 16 beschrieben schema name subschema name werden bei der Schema bzw Subschema Generierung festgelegt 356 U3987 J 2125 8 Anhang Datenbankbedienung UDS bersetzen eines COBOL DML Programms Der COBOL85 Compiler erzeugt aus einem COBOL DML Programm ein Programm Modul und ein Subschema Modul Mittels eines SET FILE LINK Kommandos mit LINK DATABASE wird dem Compiler der Name der Datenbank dbname mitgeteilt Dieser Name wurde schon bei der Datenbank Generierung verwendet Mit seiner Hilfe erkennt der Compiler die Datei doname COSSD aus der er das Subschema kopiert Sie wurde bei der Subschema Generierung von UDS erzeugt Beispiel f r eine Kommandofolge SET FILE LINK DATABASE dbname START PROGRAM COBOL85 COMOPT MODULE modulbibliothek END que Iprogrammdatei Binden eines COBOL DML Programms Das Binden von COBOL Programmen ist im Kapitel Erze
379. uerverweisliste Fehlermeldungsliste In den einzelnen Datens tzen einer Liste sind aus Gr nden der Platzersparnis die Leerzei chen nach dem letzten gedruckten Zeichen entfernt berschriftszeile Jede Seite einer Liste wird von einer berschriftszeile siehe unten eingeleitet die unab h ngig von der Listenart folgende Informationen enth lt 1 Name und Versionsbezeichnung des Compilers PROGRAM ID Name Listenart Uhrzeit der bersetzung Datum der bersetzung Seitennummer 1 COBOL85 V02 2A00 2 3 4 5 6 KOPIEREN LIBRARY LISTING 14 46 36 1995 09 14 PAGE 0003 U3987 J 2125 8 359 Steueranweisungsliste Anhang Steueranweisungsliste Hier protokolliert COBOL85 1 die Umgebung des bersetzungsprozesses 2 die ausgew hlten Compiler Optionen COMOPTSs 3 die durch Voreinstellung in Kraft befindlichen Compiler Optionen COMOPTSs zum Zeitpunkt der bersetzung und 4 Informationen f r Wartungs und Diagnosezwecke COBOL85 V02 2A00 KOPIEREN COMOPT LISTING 14 46 36 1995 09 14 PAGE 0001 ENVIRONMENT 1 PROCESSOR 7 500 H90 T2 OPERATING SYSTEM BS2000 V11 2 COMPILER COBOL85 V02 2A00 TASK SEQUENCE NO 2A5K USER ID H2610491 OPTIONS IN EFFECT OPTIONS BY DEFAULT Copyright C Siemens Nixdorf Informationssysteme AG 1996 A11 Rights Reserved 2 SYMTEST ALL SYSLIST OPTIONS DIAG MAP SOURCE XREF FLAG OBSOLETE YES LINES PER PAGE 070 FLAG NONSTANDA
380. ugriff auf Systemdateien 133 COBOL Verben Abk rzungen f r AID 128 CODE SET Klausel 185 Common Run Time Environment CRTE 258 COMOPT Anweisungen 59 COMOPT Operanden Tabelle der 64 Compiler und Betriebssysteminformationen 150 COMPILER ACTION Option 40 COMPILER INFO 150 Compilerinformation 150 COBOL Sprachmittel f r den Zugriff 150 Datenstruktur 153 Compilerlisten Beschreibung 359 Compileroptionen Tabelle der COMOPT Operanden 64 Compilersteuerung M glichkeiten 22 COMPILER TERMINATION Option 55 composed name SDF Datentyp 31 CONTINUE AFTER MESSAGE Comopt 66 COPY Elemente Eingabe 14 U3987 J 2125 8 387 Stichw rter in POSIX Dateisystem 274 Linknamen f r Bibliotheken 14 COPY EXPANSION SDF Operand 46 COPY STATEMENTS Option Strukturierer 98 CPU TIME 150 CPU Zeit Information 150 CROSS REFERENCE SDF Operand 47 CRTE gemeinsame Laufzeitumgebung 258 351 D Database Handler DBH 356 Dateien 155 Datenbl cke 156 Datens tze 156 Datensatzl nge 156 Festlegen von Dateimerkmalen 162 geblockte Datens tze 156 Grundbegriffe 155 Linknamen vereinbaren 158 Organisationsformen 155 Puffer 156 relative Dateiorganisation 193 Satzformate 156 sequentielle Dateiorganisation 169 Simultanverarbeitung 236 Sortieren und Mischen 247 Verarbeitung 155 Zugriffsmethoden des DVS 155 Zuweisen mit ASSIGN systemdatei Kommando 161 Zuweisen mit SET FILE LINK Kommando 158 Zuweisung ndern 160 Zuweisungen 157 Dateikettungsname
381. ugriffsmethode des DVS Die Zuordnung kann der folgenden Tabelle entnommen werden Organisationsform der Datei Zugriffsmethode des DVS sequentiell SAM relativ ISAM UPAM indiziert ISAM Tabelle 9 1 Dateiorganisation und DVS Zugriffsmethode U3987 J 2125 8 155 Grundlagen Dateiverarbeitung Datens tze und Satzformate Ein logischer Datensatz ist die Einheit einer Datei auf die das COBOL Programm mit ei ner Ein Ausgabeanweisung zugreifen kann Jede Leseoperation stellt dem Programm ei nen Datensatz zur Verf gung jede Schreibanweisung erzeugt einen Datensatz in der Da tei Die S tze einer Datei lassen sich hinsichtlich ihres Satzformates klassifizieren F r COBOL sind abh ngig von der Organisationsform der Datei folgende Formate erlaubt S tze fester L nge RECFORMS F Alle S tze einer Datei haben die gleiche L nge sie enthalten keine Satzl ngeninforma tion S tze variabler L nge RECFORM V Die S tze einer Datei k nnen verschieden lang sein Jeder Satz enth lt die Angabe sei ner L nge in seinem ersten Wort dem sog Satzl ngenfeld Im COBOL Programm ist dieses Satzl ngenfeld nicht Bestandteil der Datensatzbe schreibung und auf seinen Inhalt kann nur dann explizit zugegriffen werden wenn f r die Datei eine RECORD Klausel mit DEPENDING ON Angabe vereinbart wird siehe 1 S tze undefinierter L nge RECFORM U Die S tze einer Datei k nnen verschieden la
382. ugt lediglich ESD Testhilfeinforma tionen vom Typ bersetzungseinheit Dabei wird dem Modul bei segmentierten Program men allen Modulen ein symbolischer Name zugeordnet der aus den ersten 8 Zeichen des Namens im PROGRAM ID Paragraphen besteht Beim Testen mit AID kann dieser Name zur Qualifikation des Quellprogramms verwendet werden TEST SUPPORT AID Dieser Parameter mu angegeben werden wenn das Programm mit AID symbolisch ber wacht werden soll Der Compiler erzeugt dann sowohl LSD als auch ESD Testhilfeinfor mationen so da beim Testen mit AID symbolische Namen aus dem Quellprogramm wie in Handbuch 9 beschrieben verwendet werden k nnen Bei segmentierten Programmen ist die Erzeugung von LSD Informationen und damit sym bolisches Testen mit AID nur dann m glich wenn das Objektmodul in eine PLAM Biblio thek ausgegeben wird STMT REFERENCE LINE NUMBER Die AID Source Referenzen werden mit Hilfe der vom Compiler erzeugten Zeilennum mern gebildet STMT REFERENCE COLUMN 1 TO 6 Die AID Source Referenzen werden mit Hilfe der vom Anwender vergebenen Folge nummern des Quellprogramms Spalte 1 6 gebildet Das Testen mit AID ist hier nur dann sinnvoll wenn die vergebenen Folgenummern numerisch aufsteigend sortiert sind U3987 J 2125 8 51 TEST SUPPORT Option SDF Steuerung des Compilers PREPARE FOR JUMPS NO YES YES mu angegeben werden wenn beim Testen mit AID das AlD Kommando JUMP angew
383. ugung und Aufruf ablauff higer Programme ausf hrlich beschrieben Bei COBOL DML Programmen ist jedoch zus tzlich zu beachten da je nach Wahl der DBH Variante Database Handler ein entsprechendes UDS Connection Modul mit einzu binden ist siehe hierzu 16 Beispiel eines Binderlaufs START PROGRAM TSOSLNK PROG programmnamel FILENAM dateiname INCLUDE cobol dml programm modulbibliothek INCLUDE uds connection modul udsmodulbibliothek L RESOLVE SYSLNK CRTE U3987 J 2125 8 357 Datenbankbedienung UDS Anhang Ablauf eines UDS Anwenderprogramms Der Ablauf eines UDS Anwenderprogramms setzt bei Einsatz des independent DBH eine UDS Session voraus Die Verbindung zu dieser Session bzw zur Datenbank stellt das SET FILE LINK Kommando her Ablauf mit linked in DBH SET FILE LINK DATABASE dbname START PROGRAM dateiname LDBH Parameter PP END Anwenderprogramm Parameter Ablauf mit independent DBH START PROGRAM dateiname L Anwenderprogramm Parameter bersetzen Binden und Ablauf von COBOL SQL Programmen ist im Handbuch ESQL COBOL 17 beschrieben 358 U3987 J 2125 8 Anhang Beschreibung der Listen 16 3 Beschreibung der Listen In diesem Abschnitt werden anhand eines Programmbeispiels die Formate folgender Li sten kurz erl utert die COBOL85 im Verlauf einer bersetzung ausgibt Steueranweisungsliste Quellprogrammliste Adre Q
384. und POSIX 13 3 7 13 3 8 Eingabedateien Der Compiler schlie t aus der Endung des Dateinamens auf den Inhalt und f hrt die jeweils erforderlichen bersetzungsschritte aus Der Dateiname mu daher das Suffix enthalten das gem den POSIX Konventionen zum Datei Inhalt pa t Folgende Konventionen gibt es suffix Bedeutung cob cbl COBOL Quelldatei o Objektdatei erzeugt bei einer fr heren bersetzung a Bibliothek mit Objektdateien erzeugt mit dem Dienstprogramm ar c C i C Quelldatei siehe Handbuch POSIX Kommandos des C und des C Compilers Die Dateien mit dem Suffix cob oder cbl sind die Eingabequellen f r den COBOL85 Com piler Der COBOL85 Compiler erkennt auch COBOL Quelldateien deren Namen nicht mit einem dieser Standard Suffixe enden Hierzu sind die Namen der Quelldateien nicht als Operanden sondern mit der Option k dateiname anzugeben siehe S 277 Die Dateien mit dem Suffix o und a sind die Eingabequellen f r den Binder Die Dateinamen mit anderen Suffixen werden an das c89 Kommando f r den C Compiler weitergereicht Ausgabedateien Folgende Dateien werden mit Standardnamen erzeugt und im aktuellen Dateiverzeichnis abgelegt F r die Ausgabe des Binders a out k nnen mit der Option o siehe S 281 ein anderer Dateiname und ein anderes Dateiverzeichnis gew hlt werden basisname ist der Name der Quelldatei ohne das Standard Suffix und die Dateiverzeichni
385. und damit den Ausgangspunkt f r nachfolgende se quentielle Leseoperationen fest Kann die Vergleichsbedingung von keiner relativen Satznummer der Datei erf llt wer den tritt eine INVALID KEY Bedingung auf und START verzweigt zur INVALID KEY An weisung bzw zur vereinbarten USE Prozedur ACCESS MODE IS RANDOM erm glicht es die S tze der Datei wahlfrei zu lesen READ stellt dabei die Datens tze in beliebiger Reihenfolge zur Verf gung der Zugriff auf jeden Satz erfolgt ber seine relative Satznummer Das RELATIVE KEY Schl sselfeld mu dazu vor jeder READ Anweisung mit der rela tiven Nummer des Satzes versorgt werden der gelesen werden soll Wird dabei die Nummer eines nicht existierenden Satzes z B eines Leersatzes angegeben tritt eine INVALID KEY Bedingung auf und READ verzweigt zur INVALID KEY Anweisung bzw zur vereinbarten USE Prozedur ACCESS MODE IS DYNAMIC gestattet es die Datei sowohl sequenitiell als auch wahlfrei zu lesen Die jeweilige Zugriffsart wird dabei ber das Format der READ Anweisung gew hlt sie he Tabelle 9 12 Eine START Anweisung ist nur f r sequentielles Lesen sinnvoll 204 U3987 J 2125 8 Dateiverarbeitung Relative Dateien OPEN I 0 Welche Ein Ausgabeanweisungen bzw Anweisungsformate erlaubt sind h ngt von der Angabe in der ACCESS MODE Klausel ab Die folgende Tabelle stellt die M glichkeiten f r OPEN l O zusammen Anweisung Eintrag in der ACCESS MODE Klausel
386. ung bezieht sich auf satzsequentiell organi sierte Dateien Die Abweichungen und Einschr nkungen der zeilensequentiellen Organisation gegen ber der satzsequentiellen Organisation sind in Abschnitt 9 2 5 beschrieben Merkmale sequenitieller Dateiorganisation Die S tze einer sequentiell organisierten Datei sind logisch stets in der Reihenfolge ange ordnet in der sie in die Datei geschrieben worden sind Jeder Satz au er dem letzten hat einen eindeutigen Nachfolger und jeder Satz au er dem ersten hat einen eindeutigen Vorg nger Diese Vorg nger Nachfolger Beziehung kann w hrend der Lebensdauer der Datei nicht ge ndert werden Es ist deshalb nicht m glich in einer sequentiellen Datei S tze einzuf gen S tze zu l schen oder die Position eines Satzes innerhalb der festgelegten Reihenfolge zu ver ndern Sequentielle Dateiorganisation erlaubt es jedoch bereits existierende S tze zu aktualisieren sofern ihre L ngen dabei nicht ver ndert werden und es sich um eine Plattenspeicher datei handelt und neue S tze am Dateiende hinzuzuf gen Es gibt keine M glichkeit direkt wahlfrei auf jeden einzelnen Satz einer Datei zuzugreifen Die S tze k nnen nur in der gleichen Reihenfolge verarbeitet werden in der sie in der Datei stehen F r die Bearbeitung sequentieller Dateien verwenden COBOL Programme die Zugriffsme thode SAM des DVS Einzelheiten dar ber k nnen im Handbuch 4 nachgele
387. us tzlich zu den M glichkeiten der sequentiellen Dateiorganiation gestattet dies in einer relativen Datei beider Erstellung die Datens tze wahlfrei d h in beliebiger Reihenfolge abzuspei chern bei der Bearbeitung die Datens tze wahlfrei zu lesen und zu aktualisieren nachtr glich S tze einzuf gen sofern die daf r vorgesehene Position relative Satz nummer noch nicht belegt ist und bereits vorhandene Datens tze logisch zu l schen F r die Bearbeitung relativer Dateien verwenden COBOL Programme die Zugriffsmetho den ISAM und UPAM des DVS siehe 4 Sie gestatten es mehreren Anwendern gleich zeitig die Datei zu aktualisieren siehe Abschnitt 9 5 Bestehende Dateien haben einen festgelegten FCBTYPE F r neu zu erstellende Dateien wird stets der FCBTYPE ISAM ein gesetzt wenn nicht mit dem ACCESS METHOD Operanden des SET FILE LINK Kom mandos der FCBTYPE PAM SAM wird mit Fehler abgewiesen festgelegt wurde Bei ex pliziter RECORD Klausel variabler Satzl nge und oder OPEN EXTEND ist nur der FCBTYPE ISAM zul ssig Bei der Abbildung einer relativ organisierten Datei auf ISAM wird vor den Satzanfang der 8 Byte lange Satzschl ssel sedezimal eingeschoben Der relative Satzschl ssel wird auf den Schl ssel der indizierten Datei abgebildet Relative Dateien k nnen ausschlie lich auf Plattenspeichern eingerichtet werden Dateistruktur Die Beschreibung der Dateistruktur einer ISAM Datei findet sich in
388. usgel st bei OPEN I O oder OPEN EXTEND eine Datei mit dem Namen FILE COB85 linkname angelegt ASSIGN TO externer name gibt die Systemdatei an die der Datei zugewiesen wird oder legt den Linknamen fest ber den eine katalogisierte Datei zugeordnet werden kann externer name mu entweder ein zul ssiges Literal ein in der DATA DIVISION definierter zul ssiger Datenname oder ein g ltiger Herstellername aus dem Format der ASSIGN Klausel sein siehe 1 ORGANIZATION IS RELATIVE legt fest da die Datei relativ organisiert ist ACCESS MODE IS zugriffsart bestimmt die Art in der auf die S tze der Datei zugegriffen werden kann F r zugriffsart sind folgende Angaben m glich siehe auch 9 3 4 SEQUENTIAL legt fest da die S tze nur sequentiell verarbeitet werden RANDOM vereinbart da auf die S tze nur wahlfrei zugegriffen wird DYNAMIC gestattet da auf die S tze wahlweise sequentiell oder wahlfrei zugegriffen wird Die ACCESS MODE Klausel ist optional Wird sie nicht angegeben nimmt der Compiler ACCESS MODE IS SEQUENTIAL an 196 U3987 J 2125 8 Dateiverarbeitung Relative Dateien RELATIVE KEY IS schl ssel gibt das Schl sseldatenfeld zur Aufnahme der relativen Satznummern bei wahlfreiem Zu griff auf die Datens tze an schl ssel mu als ganzzahliges Datenfeld ohne Vorzeichen vereinbart werden Es darf nicht Bestandteil der zugeh rigen Datensatzerkl rung sein Bei wa
389. w rter Gestaltung des Listen Layouts Zeilenanzahl und l nge Mit Ausnahme der Aufbereitung des Quelltexts k nnen alle Strukturierungsma nahmen ein bzw ausgeschaltet werden U3987 J 2125 8 83 Strukturlisten Erzeugung COBOLB85 Strukturierer 5 2 1 Strukturliste ohne Querverweise Beispiel 5 2 erzeugt mit CROSS REFERENCE NO INFORMATION Parameter SEQUENCE AREA NO IDENTIFICATION AREA NO sowie LAYOUT Parameter LINE SIZE 80 COBOL85 V02 1B00 PRETTY PRINTING DATE 1994 03 03 TIME 10 21 08 PAGE 1 LINE ID SOURCE TRIANGLE 14 PROCEDURE DIVISION 15 MAIN 16 DISPLAY PLEASE GIVE TRIANGLE SIDES EACH ONE DIGIT 17 UPON T 18 PERFORM 4 TIMES 18 19 CALL EINGABE USING I J K 20 IF I J NOT GREATER K OR 21 J K NOT GREATER I OR 22 I NOT GREATER J 23 THE 24 DISPLAY NOT A TRIANGLE UPON T 25 ELSE 26 OVE ZERO TO MATCH 27 IF I J 28 THE 29 ADD O MATCH 30 END 31 IFJ K 32 THE 33 ADD O MATCH 34 END I F 35 IFK 1 36 THE 37 ADD O MATCH 38 END IF 39 EVALUATE TRUE 40 WHE ATCH ZERO 41 DISPLAY SCALENE TRIANGLE UPON T 42 WHEN MATCH 1 43 DISPLAY ISOSCELES TRIANGLE UPON T 44 WHEN OTHER 45 DISPLAY EQUILATERAL TRIANGLE UPON T 46 END EVALUATE 47 END IF 48 END PERFORM 49 lt STOP RUN 84 U3987
390. welche bersetzungsprotokolle erzeugt und in die Systemdatei SYSLST ausgegeben werden sollen listenangabe ist dabei eine der folgenden Angaben NOJOPTIONS ALL NOJSOURCE NO NO MAP NOJDIAG NOJOBJECT NO XREF SDF Option LISTING PARAMETERS OUTPUT SYSLST TCBENTRY name In COBOL85 BC nicht verf gbar vereinbart den Namen der Verbindungstabelle zu UTM die COBOL85 erzeugt Diese Tabelle enth lt Zeiger zu inter nen Arbeitsbereichen die bei Wiederdurchlauf eines UTM Teilprogrammes von UTM erneut initialisiert werden m s sen name ist dabei der Name der Verbindungstabelle Er kenn zeichnet den Anfang dieser Zeigertabellen name darf h chstens 8 Zeichen lang sein SDF Option TERMINATE AFTER SEMANTIC YES NO TERM A SEM erm glicht es das Quellprogramm nur auf syntaktische und semantische Fehler berpr fen zu lassen ohne da ein Modul erzeugt wird Dabei k nnen nur die Quellpro gramm und die Fehlerliste ausgegeben werden SDF Option COMPILER ACTION SEMANTIC CHECK TERMINATE AFTER SYNTAX YES NO TERM A SYN erm glicht es das Quellprogramm nur auf syntaktische Fehler berpr fen zulassen ohne da ein Modul erzeugt wird Dabei k nnen nur die Quellprogramm und die Feh lerliste ausgegeben werden SDF Option COMPILER ACTION SYNTAX CHECK U3987 J 2125 8 75 COMOPT Operanden COMOPT Steuerung Operandenformat Funktion TEST WITH C
391. wertes aus einem C Unterprogramm dienen U3987 J 2125 8 37 ACTIVATE FLAGGING Option SDF Steuerung des Compilers 3 3 3 ACTIVATE FLAGGING Option Diese Option veranla t den Compiler bestimmte Sprachelemente gem ANS85 oder ge m Federal Information Processing Standard FIPS in der Fehlerliste mit einer Meldung der Klasse F zu kennzeichnen Format ACTIVATE FLAGGING NO ANS85 FIPS FIPS OBSOLETE FEATURES NO YES NONSTANDARD LANGUAGE NO YES ABOVEMIN SUBSET NO YES ABOVEINTERMED SUBSET NO YES REPORT WRITER NO YES ALL SEGMENTATION NO YES SEGMENTATION ABOVE1 NO YES INTRINSIC FUNCTIONS NO YES ACTIVATE FLAGGING NO Es werden keine Sprachelemente in der Fehlermeldungsliste gekennzeichnet ACTIVATE FLAGGING ANS85 Mit dieser Angabe werden sowohl veraltete Sprachelemente als auch nicht standardm Bige Spracherweiterungen in der Fehlerliste durch eine Meldung der Klasse F Severity Code F gekennzeichnet ACTIVATE FLAGGING FIPS Mit dieser Angabe k nnen Sprachelemente gem Federal Information Processing Stan dard in der Fehlerliste durch eine Meldung der Klasse F Severity Code F gekennzeichnet werden OBSOLETE FEATURES NO YES Kennzeichnung veralteter Sprachelemente NONSTANDARD LANGUAGE NO YES Kennzeichnung von Spracherweiterungen gegen ber dem ANS85 ABOVEMIN SUBSET NO YES Kennzeichnung aller Sprachelemen
392. wird geteilt die entstandenen H lften werden in neue leere Bl cke bertragen Der alte Datenblock bleibt der Datei zugeordnet und wird als freier Datenblock gekennzeichnet siehe DVS Benutzerhandbuch 4 H ufige Blockteilungen verlangsamen die Verarbeitung Ihre Zahl kann aber vermindert werden wenn bereits bei der Dateierstellung in den Datenbl cken Platz f r k nftige Erwei terungen reserviert wird Bei der Zuweisung der Ausgabedatei kann man durch die Angabe des Operanden PADDING FACTOR im ACCESS METHOD ISAM Parameter des SET FILE LINK Kommandos ereichen da der darin vereinbarte Prozentsatz eines Datenblok kes beim Laden der Datei f r sp tere Erweiterung freibleibt Beispiel 9 10 PADDING FACTOR Operand bei der Zuweisung einer ISAM Datei Beim Neuerstellen der Datei ISAM AUSGABE steht nur etwa jeder vierte Datensatz zur Verf gung 75 eines jeden Datenblockes sollen daher f r k nftige Erweiterungen reser viert werden Dies wird ber das folgende SET FILE LINK Kommando vereinbart SET FILE LINK AUSDAT ISAM AUSGABE ACCESS METHOD ISAM PADDING FACTOR 75 216 U3987 J 2125 8 Dateiverarbeitung Indizierte Dateien 9 4 2 COBOL Sprachmittel f r die Verarbeitung indizierter Dateien Das folgende Programmskelett gibt einen berblick ber die wichtigsten Klauseln und An weisungen die COBOL85 f r die Verarbeitung indizierter Dateien zur Verf gung stellt Die wesentlichen Angaben werden im Anschlu
393. xpunktausgabe kann der Anwender nicht selbst bestimmen Bei normaler Beendigung des Sortiervorgangs wird die Fixpunktdatei geschlossen freige geben und gel scht so da der Benutzer keinen Zugriff auf sie hat Wird ein Sortierprogramm fehlerhaft abgebrochen so kann man den Lauf beim zuletzt geschriebenen Fixpunkt wieder starten Mit Hilfe der auf SYSOUT protokollierten Informa tionen gibt man dazu das RESTART PROGRAM Kommando siehe Kap 11 und 3 U3987 J 2125 8 251 Sortieren von Tabellen Sortieren und Mischen 10 4 Sortieren von Tabellen Die BS2000 Sortierfunktion SORT l t sich auch f r das Sortieren von Tabellen verwen den Als COBOL Sprachmittel steht die SORT Anweisung zur Verf gung siehe COBOL85 Sprachbeschreibung 1 252 U3987 J 2125 8 11 Fixpunktausgabe und Wiederanlauf Fixpunkte werden von COBOL85 Objekten in eine externe Fixpunktdatei ausgegeben ggf zwei Fixpunktdateien siehe unten Ein Fixpunkt umfa t Kennungsinformationen Pro grammzustand dazu bezogenen Systemzustand und virtuelle Speicherinhalte Dies wird f r einen m glichen sp teren Wiederanlauf ben tigt Durch Ausgabe solcher Fixpunkte kann ein absichtlich oder wegen Anlagenst rung abge brochenes Programm zu beliebiger Zeit an der Stelle fortgesetzt werden an der ein Fix punkt ausgegeben wurde Die Ausgabe von Fixpunkten empfiehlt sich vor allem bei Pro grammen mit langer Laufzeit sie ist jedoch nur dann sinnvoll wenn die
394. z dessen Schl ssel Prim r oder Sekund rschl ssel im AL TERNATE RECORD KEY Feld zur Verf gung gestellt werden DYNAMIC Dynamischer Zugriff Auf die Datens tze kann sowohl sequentiell als auch wahlfrei zugegriffen werden Die jeweilige Zugriffsart wird dabei ber das Format der Ein Aus gabeanweisung gew hlt Tabelle 9 16 ACCESS MODE Klausel und Zugriffsart U3987 J 2125 8 223 Indizierte Dateien Dateiverarbeitung 9 4 4 Er ffnungsarten und Verarbeitungsformen Mit den Sprachmitteln eines COBOL Programms lassen sich indizierte Dateien erstellen lesen durch Hinzuf gen neuer Datens tze erweitern und durch Ab ndern oder L schen vorhandener Datens tze aktualisieren Welche Ein Ausgabeanweisungen im Programm jeweils f r eine Datei zul ssig sind wird dabei durch ihren Er ffnungsmodus bestimmt der in der OPEN Anweisung angegeben wird OPEN OUTPUT Als Ein Ausgabeanweisung ist unabh ngig von der Angabe in der ACCESS MODE Klau sel WRITE mit folgendem Format erlaubt WRITE EFROM CINVALID KEY CNOT INVALID KEY LEND WRITE In diesem Modus k nnen indizierte Dateien ausschlie lich neu erstellt geladen werden ACCESS MODE IS SEQUENTIAL erlaubt es eine indizierte Datei sequentiell zu erstellen Dabei m ssen die Datens tze der WRITE Anweisung aufsteigend nach ihren Satzschl sseln sortiert zur Verf gung gestellt werden Das RECORD KEY Feld mu vor jeder
395. zeugt ein Dialogauftrag A zwei Stapelauftr ge B und C Im Auf trag B wird eine ISAM Datei aktualisiert Erst danach kann Auftrag C ablaufen Benutzer schalter 21 wird in drei verschiedenen Auftr gen verwendet Auf Programm Ebene wird er gesetzt auf Betriebssystem Ebene wird er ausgewertet und r ckgesetzt Auftrag A 1 MODIFY USER SWITCHES OFF 21 ENTER JOB B STAPEL 2 ENTER JOB C STAPEL BE AuftragB Ausschnitt aus der Datei B STAPEL 6 Auftrag C LOGON START PROGRAM COB ISAM 3 Ausschnitt aus der Datei C STAPEL Ausschnitt aus COB ISAM LOGON WAIT EVENT UNTIL USER SWITCHES ON 21 7 SPECIAL NAMES START PROGRAM FOLGE PR 8 USW 21 IS B SCHALTER MODIFY USER SWITCHES OFF 21 9 PROCEDURE DIVISION LOGOFF OPEN I O ISAM DATEI REWRITE 4 CLOSE ISAM DATEI SET B SCHALTER TO ON 5 STOP RUN LOGOFF U3987 J Z125 8 143 Auftrags und Benuizerschalter Schnittstelle COBOL Programm BS2000 Der Benutzerschalter 21 wird mit OFF initialisiert Die ENTER Prozedur B STAPEL wird aufgerufen sie erzeugt den Stapelauftrag B Stapelauftrag B ruft das COBOL Programm COB ISAM auf COB ISAM aktualisiert die Datei ISAM DATEI Am Ende der Aktualisierung setzt COB ISAM den Benutzerschalter 21 auf ON Die ENTER Prozedur C STAPEL wird aufgerufen sie erzeugt den Stapelauftrag C
396. zt werden Eine Dateizuweisung bleibt so lange bestehen bis sie entweder explizit durch ein REMOVE FILE LINK Kommando oder implizit durch das Task Ende gel scht oder durch ein nachfolgendes SET FILE LINK Kommando ge ndert wird Darauf ist vor allem dann zu achten wenn in einer Task einem programminternen Dateina men nacheinander mehrere Dateien zugeordnet werden sollen ber die jeweils aktuell zugewiesenen katalogisierten Dateien informiert das SHOW FILE LINK Kommando siehe dazu 3 U3987 J 2125 8 159 Grundlagen Dateiverarbeitung Beispiel 9 2 nderung von Dateizuweisungen SET FILE LINK INOUTFIL FILE UPDATE 1 1 START PROGRAM AKTUELL SET FILE LINK INOUTFIL FILE UPDATE 2 2 START PROGRAM AKTUELL REMOVE FILE LINK INOUTFIL 3 Das COBOL Programm AKTUELL vereinbart f r eine Ein Ausgabedatei den Linknamen INOUTFIL Es soll nacheinander die katalogisierten Dateien FILE UPDATE 1 und FILE UPDATE 2 aktualisieren 1 F r die nachfolgende Verarbeitung wird dem Programm AKTUELL ber den Link namen INOUTFIL die Datei FILE UPDATE 1 zugewiesen 2 Nach der Verarbeitung l st ein weiteres SET FILE LINK Kommando f r den Link namen INOUTFIL die bisher g ltige Dateizuordnung auf und weist als neue Datei FILE UPDATE 2 zu 3 REMOVE FILE LINK hebt die Dateizuweisung f r den Linknamen INOUTFIL auf 160 U3987 J 2125 8 Dateiverarbeitung Grundlagen Zuweisung
397. zung erzeugter Linkname STAMMLNK Zuweisung der Datei LAGER BESTAND SET FILE LINK LINK NAME STAMMLNK und Programmaufruf FILE NAME LAGER BESTAND START PROGRAM LINKLIT 158 U3987 J Z125 8 Dateiverarbeitung Grundlagen Bei COBOL Programmen mit SORT siehe Kap 10 sind folgende Linknamen f r das Dienstprogramm SORT reserviert und stehen f r andere Dateien nicht zur Verf gung MERGEnn nn 01 99 SORTIN SORTINnn nn 01 99 SORTOUT SORTWK SORTWKNn n 1 9 SORTWKnn nn 01 99 SORTCKPT Ist einem internen Dateinamen mit dem Linknamen linkname zum Programmablauf expli zit keine katalogisierte Datei zugeordnet werden die folgenden Voreinstellungen wirksam Bei einer Ausgabedatei schreibt das Programm in eine Datei mit dem Namen FILE COBS35 linkname die es vorher angelegt hat Bei einer Eingabedatei deren SELECT Klausel die Angabe OPTIONAL enth lt siehe auch 9 2 2 verursacht der erste Lesezugriff eine AT END Bedingung und verzweigt zu den Prozeduren die im Programm f r diesen Fall vereinbart sind Bei einer Eingabedatei ohne OPTIONAL Angabe in der SELECT Klausel oder einer Ein Ausgabedatei versucht das Programm auf eine katalogisierte Datei mit dem Na men aus der SELECT Klausel zuzugreifen Findet sich unter diesem Namen kein Ka talogeintrag wird der Ablauf mit der Fehlermeldung COB9117 unterbrochen und kann nach einer korrekten Dateizuweisung mit dem RESUME PROGRAM Kommando fort geset
Download Pdf Manuals
Related Search
Related Contents
Rockbox User Manual Samsung 22'' UE22D5000NW Series 5 Full HD LED TV Kullanıcı Klavuzu Samsung SR562AT User Manual Sikagard® EWL Bonding Agent Product User`s Manual INSTRUCTIONS MANUAL Eaton CSEZ-01/05 Kobo Vox eReader User Guide 7.8 percent change in time (pcnt) - PPS Dicota MultiSmart Copyright © All rights reserved.
Failed to retrieve file