1 Allgemeines
Inhalt dieses Handbuches ist die Beschreibung der Einsatzmöglichkeiten weiterer Dienstprogramme. Dabei werden die evtl. erforderlichen Angaben in den Vorlaufkarten ausführlich erläutert.
JOB-CONTROL
Ein Beispiel für Job-Control ist für jedes Utility im entsprechenden PDS (IBM) bzw. in der entsprechenden FMS-Bibliothek (Siemens) für Job-Control enthalten. Auf die Beschreibung der Job-Control wird in den folgenden Abschnitten daher verzichtet.
VORLAUFKARTEN
Es können mehrere Vorlaufkarten verarbeitet werden. Angaben nach einem Semikolon gelten als Kommentar. Teilweise kennen Dienstprogramme (z. B. PCL1045) eine Unterscheidung zwischen der Behandlung der ersten Vorlaufkarte (prinzipielle Optionen) und Folgekarten (z. B. zu verarbeitende Anforderungsintervalle). Ein abschließendes Komma in einer ersten Vorlaufkarte kündigt eine Fortsetzung der ersten Vorlaufkarte in der Folgekarte an. Reine Kommentarzeilen innerhalb der prinzipiellen Optionen müssen mit einem , vor dem ; fortgesetzt werden. Unter Windows/Linux entspricht die erste Vorlaufkarte der ersten Zeile in der Datei Tnnnn.VLK
VORLAUFKARTEN VIA TEXT-DATENBANK
Vorlaufkarten aus den Vorlaufkartendateien können durch
entsprechende Angaben in der Text-Datenbank übersteuert
werden.
In der Vorlaufkartendatei ist hierfür die Angabe
TEXTDB = n oder TEXTDB = STD erforderlich.
Es werden dann in der Text-Datenbank unter der Sprache 'D'
und der Textart 'V' die entsprechenden Sätze als
Vorlaufkarten interpretiert. Die Textnummer wird hierbei
entweder explizit vorgegeben (TEXTDB = n) oder
automatisch ermittelt (TEXTDB = STD).
Die Textnummer muss größer 0 und kleiner 99999999 sein.
Bei der automatischen Ermittlung gilt die Formel:
n = 10000 * Arbeitsgebietsnummer + Programmnummer
Beispiel:
Es soll mit PCL1004 das Arbeitsgebiet 5 abgezogen werden.
Dann gilt: n = 10000 * 5 + 1004 = 51004
(oder als Eselsbrücke: Arbeitsgebietsnummer konkateniert
mit der Programmnummer, also 5 konk. mit 1004 -> 51004).
Wird mit TEXTDB = STD gearbeitet, so muss bei Programmen, die arbeitsgebietsspezifisch sind (z.B. PCL1004) in der Vorlaufkartendatei eine Arbeitsgebietsnummer angegeben werden. Diese Arbeitsgebietsnummer kann dann nicht mehr überschrieben werden.
Bei Programmen, die nicht arbeitsgebietsspezifisch
sind (z.B. PCL1000 oder PCL1044), wird als Arbeitsgebietsnummer
0 angenommen. Bei z.B. PCL1000 ergibt sich dann:
n = 10000 * 0 + 1000 = 1000.
Bei Programmen, die in einem Programmlauf mehrere Arbeitsgebiete verarbeiten können (z.B. PCL1006), kann mit TEXTDB = STD nur dann gearbeitet werden, wenn man sich auf ein Arbeitsgebiet einschränkt.
Werden Vorlaufkarten via Text-Datenbank überschrieben,
so werden alle Angaben aus der Vorlaufkartendatei (ev.
außer Arbeitsgebietsnummer) übersteuert. Mischkonstellationen
(ein Teil aus der Vorlaufkartendatei, ein Teil
aus der Text-Datenbank) sind nicht möglich.
Eine Sonderrolle spielt die Option PROGRAMM = ... :
Bei Programmen, die diese Option verlangen, muss diese
mindestens in der Vorlaufkartendatei angegeben werden.
Auch bei Angabe von TEXTDB = ... wird i.a. verlangt, dass
die übrigen Angaben in der Vorlaufkartendatei korrekt sind.
Besonderheiten:
- PCL1002:
Die Option CHKP_PRIVAT kann nur in der Vorlaufkartendatei angegeben werden und kann nicht übersteuert werden, weil bereits vor dem ersten DB-Zugriff i.a. ein Checkpoint-Zugriff erfolgt. - PCL1013:
Die Option CP kann nur in der Vorlaufkartendatei angegeben werden (siehe PCL1002). - PCL1050:
Für dieses Programm steht die Option TEXTDB nicht zur Verfügung, weil dieses Programm Datenbanken initialisiert und nicht selber auf die Text-DB zugreifen soll. - PCL1087:
PCL1087 existiert nur in einer Windows-/UNIX-Umgebung. Für dieses Programm steht die Option TEXTDB nicht zur Verfügung, weil dieses Programm Datenbanken reorganisiert und nicht selber auf die Text-DB zugreifen soll. - PCL1128:
PCL1128 existiert nur in einer Windows-/UNIX-Umgebung. Für dieses Programm steht die Option TEXTDB nicht zur Verfügung, weil PCL1128 keine Datenbank-Umgebung enthält und nur die Vorlaufkarten-Option WAIT = ... angegeben werden kann. Die Ergänzung einer Datenbank-Umgebung in PCL1128 hätte JCL-Anpassungen in bestehenden Job-Abläufen zur Folge. - PCL1203:
Für dieses Programm steht die Option TEXTDB nicht zur Verfügung, weil PCL1203 keine Datenbank-Umgebung enthält und nur die Vorlaufkarten-Option PCFORMAT oder KURZ angegeben werden kann. Die Ergänzung einer Datenbank-Umgebung in PCL1203 hätte JCL-Anpassungen in bestehenden Job-Abläufen zur Folge. - PCL1218:
PCL1218 existiert nur in einer Windows-/UNIX-Umgebung. Für dieses Programm steht die Option TEXTDB nicht zur Verfügung, weil PCL1218 keine Datenbank-Umgebung enthält und nur die Vorlaufkarten-Option TRANSLATE angegeben werden kann. Die Ergänzung einer Datenbank-Umgebung in PCL1218 hätte JCL-Anpassungen in bestehenden Job-Abläufen zur Folge.
2 Dokumentationshilfen
2.1 Benutzerhandbücher
2.1.1 Ausdruck der ASS-Benutzerhandbücher PCL1022
FUNKTIONSBESCHREIBUNG
Das PCL1022 ist seit dem Release 8.10 veraltet, da die Dokumentation nur noch im HTML-Format ausgeliefert wird. Mit dem Programm PCL1022 konnten die alten im Textformat vorliegenden ASS-Benutzerhandbücher ausgedruckt werden.
2.1.2 Stichwortverzeichnis PCL1080
FUNKTIONSBESCHREIBUNG
Dieses Programm ist seit dem Release 8.10 veraltet. Damit konnte ein Stichwortverzeichnis für die Handbücher ausgedruckt werden.
2.2 Ausdruck der ASS-Bildschirmmasken PCL1023
FUNKTIONSBESCHREIBUNG
Dieses Programm ist veraltet.
2.3 Dokumentation der Schlüssel-, Werte- und Steuerungs-Datenbank - arbeitsgebietsunabhängig PCL1000
FUNKTIONSBESCHREIBUNG
Mit Hilfe des Programms PCL1000 können die Inhalte der Werte-, der Schlüssel- und/oder der Steuerungs-DB gedruckt werden. Dieses Programm ist vorwiegend als Analysehilfe gedacht, weil die Informationen so gedruckt werden, wie sie tatsächlich in den Datenbanken stehen. Für die Fachabteilung ist die Dokumentation der Arbeitsgebiete mit PCL1006 wesentlich informativer.
Im Protokoll wird bei jedem DB-Segment unter "Personalnummer" und "Änderungsdatum" der letzte ändernde Nutzer und das Datum der Änderung angegeben. Bei Änderungen, die mit ASS 8.70 oder höher getätigt wurden, wird auch die Uhrzeit (auf 10 Minuten genau) ausgegeben. Ist außerdem die Log-DB installiert, wird bei jedem mit ST06 bzw. ST09 geänderten Segment statt des Nutzers die Transaktions-ID der letzten Änderung eingetragen ("S. T-ID ..."). Über die Log-DB können erhält unter dieser Nummer detailliertere Informationen zur ändernden Transaktion.
ABLAUF
1 = WERTE-DB DST001 DST011/DST012/DST013 (nur DLI) $ASSDB/DST001 (PC) 2 = SCHLUESSEL-DB DST002 DST021/DST022/DST023 (nur DLI) $ASSDB/DST002 (PC) 3 = STEUERUNGS-DB DST003 DST031/DST032/DST033 (nur DLI) $ASSDB/DST003 (PC) 4 = VORLAUFKARTE SYSIN $ASSVLK/T1000.VLK (PC) 5 = VERARBEITUNGSPROTOKOLL PROTO $ASSPTK/PCL1000.PTK (PC) |
VORLAUFKARTE
Aufbau der Vorlaufkarte (allgemein)
PARAMETER | INHALT |
---|---|
PROGRAMM= | Standardtext (obligatorisch) |
DBAUSW= | DB-Auswahl-Parameter (obligatorisch) |
APRLIM= | Parameter zur Überschreibung des Drucklimits für Schlüsselausprägungen (optional) |
Konkrete Vorlaufkarteninhalte
- Standardtext:
- PROGRAMM=PCL1000,
- DB-AUSWAHL-Parameter:
- DBAUSW=WERT,SCHL,STEU oder
- DBAUSW=WERT oder
- DBAUSW=SCHL oder
- DBAUSW=STEU
Die gewünschten Datenbanken werden über den Parameter DBAUSW= bestimmt. Mehrere, in einem Lauf gewünschte Datenbanken werden zusammen, durch Kommata getrennt, angegeben. In dieser vorgegebenen Reihenfolge werden die Datenbanken vom Programm PCL1000 abgearbeitet.
- DRUCKLIMIT-Parameter:
- APRLIM=NO : Alle Ausprägungen drucken
- APRLIM=000 : Keine Ausprägungen drucken
- APRLIM=nnn : Maximal nnn Ausprägungen pro Schlüssel drucken (nnn = 3-stellige Zahl)
Den Umfang des Druckoutputs kann man reduzieren, indem man in der Vorlaufkarte ein Drucklimit für die Anzahl der Ausprägungen angibt, die pro Schlüssel gedruckt werden sollen. Nach Erreichen des Drucklimits wird keine weitere Ausprägung mehr ausgedruckt. Ein entsprechender Hinweis erfolgt im Ausgabeprotokoll. Falls keine Ausprägungen gedruckt werden sollen, ist das Drucklimit auf 0 zu setzen.
BEISPIELE:
Alle drei Parameterdatenbanken sollen dokumentiert werden. Pro Schlüssel sollen höchstens 100 Ausprägungen gedruckt werden:
PROGRAMM=PCL1000,APRLIM=100,DBAUSW=WERT,SCHL,STEU
Die Schlüsseldatenbank soll dokumentiert werden. Es sollen keine Schlüsselausprägungen gedruckt werden:
PROGRAMM=PCL1000,APRLIM=000,DBAUSW=SCHL
2.4 Dokumentation der Schlüssel-, Werte- und Steuerungs-Datenbank - arbeitsgebietsbezogen PCL1006
FUNKTIONSBESCHREIBUNG
Mit Hilfe des Programms PCL1006 kann ein Arbeitsgebiet dokumentiert werden, d.h. alle relevanten Informationen, die zu einem Arbeitsgebiet gehören, können gedruckt werden. Die Ausgabe erfolgt als Liste bzw. als Datei(en) für den Import in Fremdsysteme, z.B. EXCEL. In der Liste wird u.a. die Länge des Schlüssels der entsprechenden Summendatenbank angegeben. Mit Parametern in der Vorlaufkarte kann der Umfang der Dokumentation, die Art der Ausgabe und der Verteiler modifiziert werden.
Erklärungen zum Datenflussplan
LFD.-NR. | DD-NAME/PGM | Dateiname ASS-PC | BESCHREIBUNG |
---|---|---|---|
10 |
//DST001 //DST011 //DST012 //DST013 | $ASSDB/DST001 |
Werte-DB Primär-Index (nur DLI) Sekundär-Index 1 (nur DLI) Sekundär-Index 2 (nur DLI) |
20 |
//DST002 //DST021 //DST022 //DST023 |
$ASSDB/DST002 |
Schlüssel-DB Primär-Index (nur DLI) Sekundär-Index 1 (nur DLI) Sekundär-Index 2 (nur DLI) |
30 |
//DST003 //DST031 //DST032 //DST033 | $ASSDB/DST003 |
Arbeitsgebiets-DB Primär-Index (nur DLI) Sekundär-Index 1 (nur DLI) Sekundär-Index 2 (nur DLI) |
40 | //SYSIN | $ASSVLK/T1006.VLK | Vorlaufkarte |
50 | PCL1006 | Dokumentieren Arbeitsgebiet(e) | |
60 | //AGDOK //AGDOKT | $ASSPTK/PCL1006.PTK $ASSPTK/PCL1006T.PTK | Protokoll Protokoll (nur bei AUSGABE=TERMINAL, s.u.) |
Ausgabedateien für die Dokumentation | |||
70 | //AGDAT | $ASSPTK/PCL1006.DAT | (LRECL=80 FB) |
//FBSEM | $ASS/FBSEM.DAT | (LRECL=80 FB, alle DB-Segmente) | |
//FB01WE | $ASS/FB01WE.DAT | ( " , nur SST01WE) | |
//FB02WA | $ASS/FB02WA.DAT | ( " , nur SST02WA) | |
//FB11KY | $ASS/FB11KY.DAT | ( " , nur SST11KY) | |
//FB12GR | $ASS/FB12GR.DAT | ( " , nur SST12GR) | |
//FB13SA | $ASS/FB13SA.DAT | ( " , nur SST13SA) | |
//FB14GZ | $ASS/FB14GZ.DAT | ( " , nur SST14GZ) | |
//FB21CO | $ASS/FB21CO.DAT | ( " , nur SST21CO) | |
//FB22VS | $ASS/FB22VS.DAT | ( " , nur SST22VS) | |
//FB23CV | $ASS/FB23CV.DAT | ( " , nur SST23CV) | |
//FB25VW | $ASS/FB25VW.DAT | ( " , nur SST25VW) | |
//FBVDST | $ASS/FBVERDST.DAT | ( " , nur Verd.-St.-Tabelle) | |
//FBWE | $ASS/FBWERTE.DAT | ( " , nur Werte im AG) | |
//FBSKY | $ASS/FBSCHLUESSEL.DAT | ( " , nur Schlüssel im AG) | |
//FBVWE | $ASS/FBVERDST-WE.DAT | ( " , nur Werte in Verd.St.) | |
//FBVKY | $ASS/FBVERDST-SCHL.DAT | ( " , nur Schl. in Verd.St.) | |
//FBVKO | $ASS/FBVERDST-KO.DAT | ( " , nur Komm. zu Verd.St.) | |
//FBVMA | $ASS/FBVERDST-MA.DAT | ( " , nur Verd.St.-Matrix ) | |
//FBALLG | $ASS/FBALLG.DAT | ( " , allg. Info zum AG ) | |
//AGSEM | $ASS/AGSEM.DAT | (LRECL=3004 VB, alle DB-Segmente) | |
//AG01WE | $ASS/AG01WE.DAT | ( " , nur SST01WE) | |
//AG02WA | $ASS/AG02WA.DAT | ( " , nur SST02WA) | |
//AG11KY | $ASS/AG11KY.DAT | ( " , nur SST11KY) | |
//AG12GR | $ASS/AG12GR.DAT | ( " , nur SST12GR) | |
//AG13SA | $ASS/AG13SA.DAT | ( " , nur SST13SA) | |
//AG14GZ | $ASS/AG14GZ.DAT | ( " , nur SST14GZ) | |
//AG21CO | $ASS/AG21CO.DAT | ( " , nur SST21CO) | |
//AG22VS | $ASS/AG22VS.DAT | ( " , nur SST22VS) | |
//AG23CV | $ASS/AG23CV.DAT | ( " , nur SST23CV) | |
//AG25VW | $ASS/AG25VW.DAT | ( " , nur SST25VW) | |
//AGVDST | $ASS/VERDST.DAT | ( " , nur Verd.-St.-Tabelle) | |
//AGWE | $ASS/WERTE.DAT | ( " , nur Werte im AG) | |
//AGSKY | $ASS/SCHLUESSEL.DAT | ( " , nur Schlüssel im AG) | |
//AGVWE | $ASS/VERDST-WE.DAT | ( " , nur Werte in Verd.St.) | |
//AGVKY | $ASS/VERDST-SCHL.DAT | ( " , nur Schl. in Verd.St.) | |
//AGVKO | $ASS/VERDST-KO.DAT | ( " , nur Komm. zu Verd.St.) | |
//AGVMA | $ASS/VERDST-MA.DAT | ( " , nur Verd.St.-Matrix ) | |
//AGALLG | $ASS/AGALLG.DAT | ( " , allg. Info zum AG ) |
Datenflussplan
VORLAUFKARTE
Satzaufbau der Datei AGDAT
01 AGDATEI, 05 SATZART PIC '99', /* 01: AG */ /* 02: SCHLUESSEL */ /* 03: WERTE */ 05 NR PIC '99999', /* Nummer entspr. Satzart */ 05 BEZ CHAR (20), /* Bezeichnung entspr. Satzart */ 05 ABK CHAR (06), /* Abkürzung entspr. Satzart */ 05 SUDBKEYL PIC '999'; /* Länge des Summendatenbank- */ /* keys, nur bei SATZART 01 */ /* besetzt */
Besonderheiten
Die Dateiausgaben, die durch die Option DATEIAUSGABE = JA und DATEIFORMAT = B (bzw. C bzw. D) angefordert werden, sind als Alternative zum Protokoll eines Arbeitsgebiets gedacht. Wenn also die genannten Dateiausgaben angefordert werden, wird nur ein minimales Ablaufprotokoll erstellt, die eigentliche Arbeitsgebietsdokumentation wird unterdrückt.
Bemerkungen zur Verdichtungsstufenübersicht
Bei dieser Übersicht wird zwischen stillgelegten und aktiven
Verdichtungsstufen unterschieden. Bei den aktiven
Verdichtungsstufen wird eine Verdichtungsstufenmengebildung bzgl. der
aktiven Verdichtungsstufen durchgeführt. Darüber hinaus
wird bei den ermittelten Mengen festgestellt, ob es sich um
Basen (BASIS) handelt. Gibt es mehr als eine Basis, so wird
eine dieser Basen als Basis (BASIS) ausgewiesen, die anderen
als generierbare Basen (G-BASIS).
Bei den restlichen aktiven Verdichtungsstufen wird geprüft,
ob sie generierbar sind und woraus.
Generierbare Verdichtungsstufen werden als level-1-generierbar
(LEV-1-G) dargestellt. Verdichtungsstufen, die aus bereits
generierbaren Verdichtungsstufen generierbar sind, werden
als level-2-generierbar (LEV-2-G) ausgewiesen.
Nicht generierbare Verdichtungsstufen werden mit NICHT-G
gekennzeichnet.
PCL1006 orientiert sich nur an den ausgeprägten Schlüsseln
und den verwendeten Werten. Es kann daher vorkommen, dass
bei einer Folgeeinspeicherung PCL1001 andere Generierungen
durchführt. Dies passiert insbesondere dann, wenn durch
Vorlaufkartenangaben (z.B. NOVSTGENER) oder durch
Größenordnungen von Verdichtungsstufen andere Entscheidungen
hervorgerufen werden.
BEISPIELE:
Im Folgenden werden zunächst die drei Dateiformate anhand dreier Vorlaufkarten zur Protokollierung von Arbeitsgebiet 2 und entsprechender Ausgabedateien in aus darstellungstechnischen Gründen stark gekürzter Form (nur jeweils wenige Zeilen ab Spalte 1 bis max. Spalte 72 von den bis zu 3000 Spalten pro Zeile) demonstriert:
a) Beispiel für das Dateiformat B:
dateiausgabe=ja dateiformat=b auspr_limit=nein schluesselinhalt=110(1000-9999) sst001we=ja sst002wa=ja sst011ky=ja sst012gr=ja sst013sa=ja sst014gz=ja sst021co=ja sst022vs=ja sst023cv=ja sst025vw=ja cstunr=ja agnr=2
Auszug aus der Ausgabedatei AGSEM.DAT:
SST021CO;AGNR;2;AGBEZ;AG2;AGABK;AG2;DATERST;9501;DATLETZT;9513;... SST022VS;AGNR;2;KENR;100;HIERNR;3;HIERST;1;KEPOS;5;KEUEB;Gebiet;... SST022VS;AGNR;2;KENR;105;HIERNR;2;HIERST;1;KEPOS;4;KEUEB;Bezirk;... SST022VS;AGNR;2;KENR;110;HIERNR;1;HIERST;1;KEPOS;2;KEUEB;Inspektorat;... SST022VS;AGNR;2;KENR;130;HIERNR;4;HIERST;1;KEPOS;6;KEUEB;Sparte;... SST023CV;AGNR;2;VDSTNR;1;ANZSAETZE;333;VDSTART;-;VDSTORT;-;K00110;A;... SST025VW;AGNR;2;VDSTNR;1;WENR;105;WENRAG;2;DATERST;9501;DATLETZT;9513;... ...
b) Beispiel für das Dateiformat C:
dateiausgabe=ja dateiformat=c auspr_limit=nein schluesselinhalt=110(1000-9999) sst001we=ja sst002wa=ja sst011ky=ja sst012gr=ja sst013sa=ja sst014gz=ja sst021co=ja sst022vs=ja sst023cv=ja sst025vw=ja cstunr=ja agnr=2
Auszug aus der Ausgabedatei AG21CO.DAT:
AGNR;2;AGBEZ;AG2;AGABK;AG2;DATERST;9501;DATLETZT;9513;ANZHIER;4;...
Auszug aus der Ausgabedatei AG22VS.DAT:
AGNR;2;KENR;100;HIERNR;3;HIERST;1;KEPOS;5;KEUEB;Gebiet;KEANAU;0;... AGNR;2;KENR;105;HIERNR;2;HIERST;1;KEPOS;4;KEUEB;Bezirk;KEANAU;0;... ...
Auszug aus der Ausgabedatei AG23CV.DAT:
AGNR;2;VDSTNR;1;ANZSAETZE;333;VDSTART;-;VDSTORT;-;K00110;A;K00105;A;... AGNR;2;VDSTNR;2;ANZSAETZE;62;VDSTART;-;VDSTORT;-;K00110;A;K00105;V;... ...
Auszug aus der Ausgabedatei AG25VW.DAT:
AGNR;2;VDSTNR;1;WENR;105;WENRAG;2;DATERST;9501;DATLETZT;9513;WEART;-;... AGNR;2;VDSTNR;2;WENR;100;WENRAG;1;DATERST;9501;DATLETZT;9513;WEART;-;... ...
Auszug aus der Ausgabedatei AG11KY.DAT:
KENR;100;KEBEZ;GEBIET;KEABK;GEB;KEEXL;2;KEINL;1;KEANAU;12;KENXNR;19;... KENR;105;KEBEZ;BEZIRKSDIREKTION;KEABK;BD;KEEXL;2;KEINL;1;KEANAU;13;... ...
Auszug aus der Ausgabedatei AG12GR.DAT:
KENR;100;GRNR;1;GRBEZ;TEST1 KENR;100;GRNR;2;GRBEZ;TEST2 ...
Auszug aus der Ausgabedatei AG13SA.DAT:
KENR;100;KEINH;01;KEVINH;1;KEINHBEZ;NORD;KEINHABK;NORD;KEGAB;010101;... KENR;100;KEINH;02;KEVINH;5;KEINHBEZ;NORDOST;KEINHABK;N-OST;KEGAB;010101;... ...
Auszug aus der Ausgabedatei AG14GZ.DAT:
KENR;100;GRNR;1;KEINH;01 KENR;100;GRNR;1;KEINH;02 ...
Auszug aus der Ausgabedatei AG01WE.DAT:
WENR;100;WEBEZ;NEUBEITRAG;WEABK;NEUBTR;WEKST;2;WEEXL;12;WESKST;2;WEUEB;... WENR;105;WEBEZ;NEUANZAHL;WEABK;NEUANZ;WEKST;0;WEEXL;8;WESKST;0;WEUEB;... ...
Auszug aus der Ausgabedatei AG02WA.DAT:
WENR;100;AGNR;1;WENRAG;23;WEAGCNT;5 WENR;100;AGNR;2;WENRAG;1;WEAGCNT;2 ...
c) Beispiel für das Dateiformat D:
dateiausgabe=ja dateiformat=d auspr_limit=nein schluesselinhalt=110(1000-9999) sst001we=ja sst002wa=ja sst011ky=ja sst012gr=ja sst013sa=ja sst014gz=ja sst021co=ja sst022vs=ja sst023cv=ja sst025vw=ja cstunr=ja agnr=2
Auszug aus der Ausgabedatei AG21CO.DAT:
AGNR;AGBEZ;AGABK;DATERST;DATLETZT;ANZHIER;NEXTWENR;NEXTVDST;KENNGEPR;... 2;AG2;AG2;9501;9513;4;3;6;JA;...
Auszug aus der Ausgabedatei AG22VS.DAT:
AGNR;KENR;HIERNR;HIERST;KEPOS;KEUEB;KEANAU 2;100;3;1;5;Gebiet;0 2;105;2;1;4;Bezirk;0 2;110;1;1;2;Inspektorat;0 2;130;4;1;6;Sparte;0
Auszug aus der Ausgabedatei AG23CV.DAT:
AGNR;VDSTNR;ANZSAETZE;VDSTART;VDSTORT;K00110;K00105;K00100;K00130 2;1;333;-;-;A;A;A;A 2;2;62;-;-;A;V;V;V 2;3;333;-;-;A;V;A;A 2;4;0;-;-;A;A;A;A 2;4;0;DREH.;-;A/4;A/3;A/2;A/1 2;5;0;REL.;-;A/2;V;V;A/1
Auszug aus der Ausgabedatei AG25VW.DAT:
AGNR;VDSTNR;WENR;WENRAG;DATERST;DATLETZT;WEART;BIKENR;EURODAT 2;1;105;2;9501;9513;-;0;- 2;2;100;1;9501;9513;-;0;- 2;2;105;2;9501;9513;-;0;- 2;3;100;1;9501;9513;-;0;- 2;3;105;2;9501;9513;-;0;- 2;4;105;2;-;-;-;0;-
Auszug aus der Ausgabedatei AG11KY.DAT:
KENR;KEBEZ;KEABK;KEEXL;KEINL;KEANAU;KENXNR;KEINHVON;KEINHBIS;KECACHE 100;GEBIET;GEB;2;1;12;19;0;0;- 105;BEZIRKSDIREKTION;BD;2;1;13;14;0;0;A 110;INSPEKTORAT;INSP;4;2;78;78;0;0;A 130;SPARTE;SPRT;2;1;10;11;0;0;-
Auszug aus der Ausgabedatei AG12GR.DAT:
KENR;GRNR;GRBEZ 100;1;TEST1 100;2;TEST2 100;3;VOTEST 100;4;ST06100 100;5;GRHB 100;100;GR100 105;1;TEST1 105;2;TEST2 110;1;TEST_1 110;2;ST06_GRUPPIERUNG 130;1;R1 130;2;GS2
Auszug aus der Ausgabedatei AG13SA.DAT:
KENR;KEINH;KEVINH;KEINHBEZ;KEINHABK;KEGAB;KEGBIS 100;01;1;NORD;NORD;010101;- 100;02;5;NORDOST;N-OST;010101;- ...
Auszug aus der Ausgabedatei AG14GZ.DAT:
KENR;GRNR;KEINH 100;1;01 100;1;02 100;1;03 100;1;* ...
Auszug aus der Ausgabedatei AG01WE.DAT:
WENR;WEBEZ;WEABK;WEKST;WEEXL;WESKST;WEUEB;WEART;WEDIM;WEANL;... 100;NEUBEITRAG;NEUBTR;2;12;2;Neubeitrag;1;DM;1;... 105;NEUANZAHL;NEUANZ;0;8;0;NEUGESCHAEFT;1;STCK;1;... ...
Auszug aus der Ausgabedatei AG02WA.DAT:
WENR;AGNR;WENRAG;WEAGCNT 100;1;23;5 100;2;1;2 100;3;1;1 ...
Weitere Beispiele (ohne Kurzauszüge der Ausgabedateien):
Dokumentation von Arbeitsgebiet 2 in Form eines Protokolls gemäß den Voreinstellungen:
AGNR=2 oder ARBEITSGEBIET=2
Dokumentation der Arbeitsgebiete 9, 5, 22 in einem Programmlauf (nur bei DATEIAUSGABE=NEIN oder DATEIFORMAT=A):
- AGNR=09
- AGNR=05
- AGNR=22
Angaben für zu lesende DB-Segmente (wie z.B. SST021CO=JA) sind hier nicht notwendig.
Dokumentation von Arbeitsgebiet 17, wobei Verdichtungsstufen nicht aufgelistet werden sollen und das voreingestellte Drucklimit (30) für Ausprägungen aufgehoben werden soll. Die Ausgabe soll auf die Datei AGSEM erfolgen, wobei alle DB-Segmente gelesen werden sollen:
- AGNR=17
- AUSPR_LIMIT=NEIN
- DATEIAUSGABE=JA
- DATEIFORMAT=B
- SST001WE=JA
- SST002WA=JA
- SST011KY=JA
- SST012GR=JA
- SST013SA=JA
- SST014GZ=JA
- SST021CO=JA
- SST022VS=JA
- SST023CV=JA
- SST025VW=JA
Dokumentation von Arbeitsgebiet 13, wobei CSTUNR in SST023CV aufgelistet werden soll und für Schlüssel mit Nummer 110 nur Ausprägungen im Bereich von 2600 bis 3000 berücksichtigt werden sollen. Das Ausprägungslimit soll aufgehoben werden. Die Ausgabe soll in verschiedenen Dateien (pro DB-Segment eine Datei) mit Überschriftzeile erfolgen:
- AGNR=13
- AUSPR_LIMIT=NEIN
- DATEIAUSGABE=JA
- DATEIFORMAT=D
- SST001WE=JA
- SST002WA=JA
- SST011KY=JA
- SST012GR=JA
- SST013SA=JA
- SST014GZ=JA
- SST021CO=JA
- SST022VS=JA
- SST023CV=JA
- SST025VW=JA
- CSTUNR=JA
- SCHLUESSELINHALT=110(2600-3000)
2.5 Dokumentation der Anforderungdatenbank
2.5.1 Dokumentation von Anforderungen PCL1035
FUNKTIONSBESCHREIBUNG
Mit Hilfe des Programms PCL1035 können die Inhalte der Anforderungs-DB oder Teile daraus gedruckt werden. Die Liste ist vorwiegend als Übersicht über existierende Listanforderungen und Formeln der Fachabteilung gedacht. Je nach Wunsch können über einen Parameter einzelne oder mehrere Teile von
BIBAUSW | |
- sichergestellten Anforderungen der Musterbib. | B |
- einmaligen Anforderungen | E |
- periodischen Anforderungen | P |
- Gruppierungen von Schlüsselinhalten | U |
- Gruppierungen von Schlüsselrelationen | V |
- Wertegruppierungen | R |
- Filter für Parameterinhalte | Q |
- Umbuchungselemente | W |
- Formeln | X |
- Anwendungen | Y |
in Kurz- oder Langform gedruckt werden. Die Anforderungen der Bibliotheksarten B, E und P können zusätzlich in einer mittellangen Form dokumentiert werden. Dazu ist etwa für ein Element aus der Bibliothek für einmalig auszuführende Anforderungen (E) die gewünschte Form über den Parameter EFORM= K bzw. M bzw. L zuzuweisen, für eine Anforderung der Bibliothek P über PFORM= ... .
ABLAUF
1 Anforderungs - Datenbank DST004 DST041 (DLI) $ASSDB/DST004 (PC) 2 Vorlaufkarte SYSIN $ASSVLK/T1035.VLK (PC) 3 Protokoll u. Fehlermeldungen PROTO $ASSPTK/PCL1035.PTK |
VORLAUFKARTE
Aufbau der Vorlaufkarte
Inhalt | Bedeutung |
---|---|
PROGRAMM=PCL1035, | Muss vorhanden sein als Bestandteil der Vorlaufkartenprüfung. |
INTERVALL = | Die Verarbeitung kann auf Namensintervalle eingeschränkt werden (s.u.) |
Anschließend je nach BIBAUSW ( optional ): | |
BFORM=L,M,K, EFORM=L,M,K, PFORM=L,M,K, QFORM=L,K RFORM=L,K UFORM=L,K WFORM=L,K XFORM=L,K YFORM=L,K |
Angabe der(des) Formparameter(s)
hintereinander durch ',' getrennt
(1 Angabe je Parameter möglich) L = Langform M = Mittellange Form K = Kurzform Defaultwert für alle Parameter ist "K". |
Über den Form-Parameter kann der Umfang der aufgelisteten Informationen bestimmt werden. Die folgenden Beispiele verdeutlichen, welche Angaben bei Wahl von Lang-, Mittel- oder Kurzform protokolliert werden.
BEISPIELE:
Langform L: Auflistung aller Informationen zur Anforderung
PROGRAMM=PCL1035,BIBAUSW=B,X,BFORM=L,XFORM=L
Protokoll:
AG20DM01 ERSTELLDATUM : 11.12.1989 AG: 00020; /* LEISTUNGS_STATISTIK */ KS: 1902; /* GESELLSCHAFT */ ZS: 1901; /* ORGANISATIONSDIREKTION */ SS: WERTE = ( 01901( 0186 ) , /* ANZAHL_VERTRAEGE */ 01902( 0186 ) ) ; /* STAT_VERS_SUMME */ OPT:NULLDRUCK; FORMEL01 ERSTELLDATUM : 28.10.1989 = 100 * ( PRODUKTION - PROD_SOLL ) / PROD_SOLL ,(10,2,%)
Mittellange Form M: Auflistung von ausgewählten Informationen
- Anforderungsnamen mit Erstelldatum
- Arbeitsgebietsbezeichnung
- Überschriften in der Anforderung
PROGRAMM=PCL1035,BIBAUSW=E,EFORM=M
Protokoll:
AG19DM01 ERSTELLDATUM : 28.10.1989 AG: 00019; /* BEITRAGSSTATISTIK */ AG20DM01 ERSTELLDATUM : 11.12.1989 AG: 00020; /* LEISTUNGS_STATISTIK */
Kurzform K: Auflistung von Name und Erstelldatum der Anforderung
PROGRAMM=PCL1035,BIBAUSW=B,X,BFORM=K,XFORM=K
Protokoll:
AG19DM01 ERSTELLDATUM : 28.10.1989 AG20DM01 ERSTELLDATUM : 11.12.1989 FORMEL01 ERSTELLDATUM : 01.01.1988 FORMEL02 ERSTELLDATUM : 01.01.1989
Namensintervalle für Bibliotheksmember
Beim PCL1035 kann die Dokumentation der ausgewählten Bibliotheken auch auf Namensintervalle eingeschränkt werden. Bis zu 50 Intervalle können dabei in folgender Form vorgegeben werden:
INTERVALL = ******** - ******** ! ! ! NAME-BIS (um das letzte zu dokumentierende ! Element festzulegen) ! NAME-VON (um das erste zu dokumentierende Element festzulegen)
Beispiele
- Es sollen alle Anforderungen gedruckt werden, deren Name
mit 'UTA' beginnt. Dabei soll für die Member der
- Bibliothek B die Langform,
- aus der Bibliothek E die Kurzform,
- für periodische Anforderungen die mittlere Form
- und für Formeln die Kurzform
- EBECDIC-Zeichensatz (IBM/Siemens-Host):
PROGRAMM=PCL1035,BIBAUSW=B,E,P,X,BFORM=L,EFORM=K,PFORM=M,XFORM=K
INTERVALL = UTA - UTA99999 - ASCII -Zeichensatz (Windows/Unix):
PROGRAMM=PCL1035,BIBAUSW=B,E,P,X,BFORM=L,EFORM=K,PFORM=M,XFORM=K
INTERVALL = UTA - UTA_____
- Hier sollen sichergestellte und einmal auszuführende
Anforderungen in Langform gedruckt werden, die im Intervall
RPAAAAAA bis RPZZZZZZ liegen:
- PROGRAMM=PCL1035,BIBAUSW=B,E,BFORM=L,EFORM=L
- INTERVALL = RPAAAAAA - RPZZZZZZ
2.5.2 Dokumentation von Teilen der Anforderungs-DB nach Sortierungskriterien PCL1139
FUNKTIONSBESCHREIBUNG
Mit Hilfe des Programms PCL1139 können die Inhalte der
Anforderungs-DB oder Teile daraus gedruckt werden.
Die Bibliothekselemente erscheinen im Protokoll wahlweise nach
Name des Bibliothekselements, nach Bearbeiter, Erstelldatum
oder Ausführungsdatum sortiert.
Außerdem wird bei Anforderungen angezeigt, ob dort Excel- und/oder HTML-Formatierungen vorliegen, durch Einträge in den entsprechenden Spalten im Protokoll bzw. der Ausgabedatei. Bei Excelformatierungen wird dabei unterschieden, in welchem Format diese vorliegen, d.h. im älteren xls-Format (Eintrag "XLS" oder "XLS V") oder im neueren xlsx-Format ("XLSX").
ABLAUF
1 Anforderungs - Datenbank DST004 DST041 (DLI) $ASSDB/DST004 2 Vorlaufkarte ASSCO $ASSVLK/T1139.VLK 3 Protokoll u. Fehlermeldungen PROTO $ASSPTK/PCL1139.PTK |
VORLAUFKARTE
Aufbau der Vorlaufkarte
ANF = Intervall , ANF = Intervall , ANF = Intervall , . . . ANF = Intervall , ANF = Intervall , SORT = Name , -> Name der Bibliothekselements SORT = Bearbeiter , -> Name des letzten Bearbeiters SORT = Datum , -> Datum der Erstellung SORT = Ausführungsdatum , -> Datum letzte (Batch-)Ausführung CSV -> Statt ins Protokoll erfolgt Ausgabe auf csv-Datei ASSCSV
Es können bis zu 30 Intervallangaben gemacht werden,
die durch Kommata voneinander getrennt werden müssen.
Ein Intervall hat prinzipiell folgenden Aufbau:
ANF = BibArt: Namensanfang - BibArt: Namensanfang
BEISPIELE für Intervallangaben
- ANF
dokumentiert die gesamte Anforderungsdatenbank nach dem nachfolgend angegebenen Sortierkriterium -
ANF= B:
dokumentiert B:AAAAAAAA - B:ZZZZZZZZ -
ANF= B:R#_1_
dokumentiert B:R#_1_AAA - B:R#_1ZZZZ -
ANF= B:R#_1_ - B:UA_
dokumentiert B:R#_1_AAA - B:UA_ZZZZZ -
ANF= B:R#_1_ - E:UA_
dokumentiert B:R#_1_AAA - B:UA_ZZZZZ und E:R#_1_AAA - E:UA_ZZZZZ -
ANF= R#_1_
dokumentiert die Intervalle R#_1_AAA - ZZZZZZZZ in allen Bibliotheken -
ANF= R#_1_ - UA_
dokumentiert die Intervalle R#_1_AAA - UA_ZZZZZ in allen Bibliotheken
2.6 Crossreferenz für die Anforderungs-DB
2.6.1 Crossreferenz Anforderungsdatenbank: Verwendung Arbeitsgebiet, Schlüssel, Werte etc. PCL1049
FUNKTIONSBESCHREIBUNG
Mit Hilfe des Programms PCL1049 kann aus Inhalten der Anforderungs-DB eine Liste erstellt werden, aus der man ersehen kann, in welchen Anforderungen Arbeitsgebiete, Werte, Wertegruppierungen, Schlüssel, Schlüsselgruppierungen, Schlüsselrelationen, Relationsgruppierungen, Parameter-Filter und Formeln verwendet werden. Eine Sonderrolle spielen die Anforderungen: Auch hier kann eine Liste erstellt werden, aus der man ersehen kann, in welchen anderen Anforderungen eine bestimmte Anforderung verwendet wird (z.B. in Join-Anforderungen). Hierbei gibt es verschiedene Möglichkeiten: Alle Anforderungen analysieren, nur verkettete Anforderungen analysieren, nur Join-Anforderungen analysieren oder nur Mehrfach-Anforderungen analysieren.
Mit einer Option kann die Ermittlung der Transitivität
der Verwendungsnachweise aktiviert werden.
Was dies bedeutet, lässt sich am einfachsten an einem
einfachen Beispiel erläutern:
Die Anforderung ANF01 verwende das Arbeitsgebiet 1,
die Anforderung ANF01 werde in der Join-Anforderung ANF02
verwendet. Damit wird das Arbeitsgebiet 1 auch in ANF02
verwendet.
Dies Verfahren berücksichtigt auch tiefere Verschachtelungen.
Anforderungen, die z.B in verketteten Anforderungen verwendet
werden, die wiederum in Join-Anforderungen verwendet
werden, werden damit auch in der betreffenden
Join-Anforderung verwendet (die verkettete Anforderung ANF02
verwende z.B. die Anforderung ANF01, die Join-Anforderung
ANF03 verwende die verkettete Anforderung ANF02, damit
verwendet ANF03 auch ANF01).
Aus den genannten Verwendungsnachweisen kann demnach ersehen werden. welche Auswirkungen Änderungen von Arbeitsgebieten, Werten, Schlüsseln etc. haben.
Die unterschiedlichen Verwendungsnachweise erfordern eine unterschiedlich genaue Analyse der Anforderungen. Zur Analyse werden Teile der ASS-Auswertungsprogramme benutzt.
- Die Verwendungsnachweise für
- Arbeitsgebiete
- Werte
- Schlüssel
- Schlüsselrelationen
- Die Verwendungsnachweise für
- Wertegruppierungen
- Schlüsselgruppierungen
- Relations-Gruppierungen
- Die Verwendungsnachweise für die restlichen Übersichten müssen nur korrekt aus der Anforderungs-DB gelesen werden können.
Es ergeben sich hieraus also drei Kategorien von
Verwendungsnachweisen.
Es werden stets die Anforderungen protokolliert, die
nicht vollständig bzw. korrekt analysiert werden
konnten. Zu diesen Anforderungen konnten also keine
vollständigen oder korrekten Aussagen getroffen werden.
Die genannten Anforderungen sind i.a. fehlerhaft.
Es sollte daher angestrebt werden, diese Anforderungen zu
korrigieren, damit keine Anforderungen protokolliert
werden, die unvollständig analysiert wurden.
Es empfiehlt sich in einem Lauf nur die Verwendungsnachweise
einer Kategorie anzufordern. Die als fehlerhaft ausgewiesenen
Anforderungen werden dann minimiert.
Wird in einem Lauf nur der Verwendungsnachweis von z.B.
Parameterfiltern angefordert, so werden nur die Anforderungen
als unvollständig analysiert ausgewiesen, die nicht
korrekt von der Anforderungs-DB gelesen werden konnten.
Besonderheiten zu den einzelnen Verwendungsnachweisen:
Schlüsselrelationen:
Hier werden alle Relationen aufgeführt, die explizit
angefordert wurden. Alle Relationen, die aufgrund
von Schlüsselinhaltsangaben (bei Schlüsseln und bei
Schlüsselbedingungen zum Wert), die länger sind als
die externe Länge des betreffende Schlüssels, heuristisch
ermittelt werden, werden ausgegeben.
Eine Sonderstellung nehmen Schlüssel ein, die erst bei der
Präsentation zusammengesetzt werden. Beispiel:
Beim Zeilenschlüssel seien folgende Schlüssel
angefordert:
ZS: S1, S2, S3, S4, S5, S6;
Es existieren folgende Relationen:
- R1: S1, S2, S3
- R2: S2, S3
- R3: S3, S2
- R4: S5, S6
Es wird dann zunächst R1 als verwendet angenommen. R1 "verbraucht" die Schlüssel S1, S2 und S3. Damit kann R2 nicht mehr benutzt werden. R3 passt nicht zu den angeforderten Schlüsseln (falsche Reihenfolge). Weiterhin wird R4 als verwendet angenommen. Diese Aussagen sind korrekt, solange die Auswahl nicht vom User-Exits MCL0097 beeinflusst wird. PCl1049 benutzt den User-Exit MCl0097 nicht. Besteht Unsicherheit, so kann durch eine Option das "Verbrauchen" von Schlüsseln ausgeschaltet werden. In diesem Fall werden alle Relationen, die zu den angeforderten Schlüsseln passen, ausgegeben. Im obigen Beispiel sind dies R1, R2 und R4. Hierdurch wird eine Obermenge der in Frage kommenden Relationen erzeugt.
Verkettete Anforderungen, Join-Anforderungen, Mehrfachanforderungen (TABAUSW = V, J , M s.u.): Hier wird bei den Bibliothekselementen nur der betreffende Anforderungstyp ausgewiesen. Es kann hier also z.B. die Frage beantwortet werden, welche Anforderungen werden in welchen Join-Anforderungen verwendet.
Das Protokoll von PCL1049 listet folgende Übersichten auf:
- Übersicht über die gelesenen und verarbeiteten
Anforderungen.
Aus dieser Übersicht kann ersehen werden, wie die
einzelnen Anforderungen analysiert werden konnten.
UEBERSICHT GELESENER BIBLIOTHEKSELEMENTE TEIL XXXXX BIBLIOTHEKS- ELEMENT ART I NAME I ZUSTAND ------I--------------------I------------------------------- B I AG20TEST I VOLLST.ANAL. B I AG21TEST I FEHLERHAFT
Hierbei bedeuten:- VOLLST.ANAL. :
Die genannte Anforderung konnte vollständig analysiert werden. Konnte eine Anforderung vollständig analysiert werden, so folgt daraus nicht, dass sie auch ausführbar ist (z.B. werden Zeiträume oder Verdichtungsstufen nicht näher betrachtet). - FEHLERHAFT :
Die geannte Anforderung konnte nicht vollständig anaylisiert werden. Sie enthält z.B. Syntaxfehler oder angeforderte Arbeitsgebiete sind nicht mehr vorhanden oder ... . Daher ist es u.U. nicht mehr möglich, korrekt von einer Schlüsselbezeichnung auf eine Schlüssel-Nummer zu schließen. In fehlerhaften Anforderungen ist es i.a. nicht möglich, die verwendeten Elemente sicher zu ermitteln. Es sollte angestrebt werden, dass keine Anforderungen als fehlerhaft protokolliert werden, um vollständige Verwendungsnachweise zu erhalten.
- VOLLST.ANAL. :
- Verwendungnachweise
Alle Verwendungsnachweise haben den gleichen
prinzipiellen Aufbau. Als Beispiel soll der
Verwendungsnachweis der Arbeitsgebiete dienen:
ARBEITSGEBIETS-UEBERSICHT TEIL XXXXX ARBEITS- I BIBLIOTHEKS- GEBIET I ELEMENT NR./BEZ. I ART/NAME ---------------------------I------------------------------- 20 LEISTUNGS_STATISTIK I B AG20TEST
- Fehlerhafte Anforderungen Analog zu den Verwendungsnachweisen gibt es eine sortierte Übersicht über die Anforderungen, die nicht vollständig analysiert werden konnten.
ABLAUF
Datenflussplan
Erklärungen zum Datenflussplan
LFD.-NR. | DD-NAME/PGM | Dateiname ASS-PC | BEZEICHNUNG |
---|---|---|---|
110 | //DST001 //DST011 //DST012 //DST013 |
$ASSDB/DST001 | Werte-DB Primär-Index (nur DLI) Sekundär-Index 1 (nur DLI) Sekundär-Index 2 (nur DLI) |
120 | //DST002 //DST021 //DST022 //DST023 |
$ASSDB/DST002 | Schlüssel-DB Primär-Index (nur DLI) Sekundär-Index 1 (nur DLI) Sekundär-Index 2 (nur DLI) |
130 | //DST003 //DST031 //DST032 //DST033 |
$ASSDB/DST003 | Steuerungs-DB Primär-Index (nur DLI) Sekundär-Index 1 (nur DLI) Sekundär-Index 2 (nur DLI) |
140 | //DST004 //DST041 | $ASSDB/DST004 | Anforderungsdatenbank Primär-Index(nur DLI) |
150 | //ASSCO | $ASSVLK/T1049.VLK | Vorlaufkarte |
160 | PCL1049 | Anforderungsdatenbank analysieren | |
170 | //ANFWK //SORTIN //SORTOUT //SORTWK01 //SORTWK02 //SORTWK1 //SORTWK2 |
$ASSWK/ANFWK $ASSWK/SORTnn | Temporäre Workdatei (Ausgabe und Eingabe) Sortdatei (Eingabe) -"- (Ausgabe) (Format: VB, LRECL=1000) Sortwork-Bereich01 und Sortwork-Bereich02 -> IBM Sortwork-Bereich1 und Sortwork-Bereich2 -> SIEMENS |
180 | //LISTE //ASSCSV |
$ASSPTK/LISTE.PTK $ASS/ASSCSV |
Protokoll und Fehlermeldungen Netto-Daten (Falls Option CSV oder NUR_CSV gesetzt) |
VORLAUFKARTE
Aufbau der Vorlaufkarte
Inhalt | Bedeutung |
---|---|
PROGRAMM = PCL1049 | Muss vorhanden sein als Bestandteil der Vorlaufkartenprüfung |
BIBAUSW = B,E,P,G,H,I,J | Auswahl der Bibliotheksart
(obligatorisch) B = Sichergestellte Anforderungen E = Einmalige Anforderungen P = Periodische Anforderungen G,H,I,J = installationsabhängige Sonderbibliotheken |
TABAUSW = A,W,S,F,V,WG, SG,J,M,RE,RG,PF,ANF,VZ |
Auswahl der Verwendungsnachweise
(obligatorisch)A : Arbeitsgebiete W : Werte S : Schlüssel F : Formeln V : verkettete Anforderungen WG : Wertegruppierungen SG : Schlüsselgruppierungen SGNR: Schlüsselgruppierungen(ST06) J : Join-Anfordererungen M : Mehrfach-Anforderungen RE : Relationen RG : Relations-Gruppierungen PF : Parameter-Filter ANF : Anforderungen (verkettete, Join- und Mehrfach-Anforderungen) VZ : Verzeichnisse |
LST = n | Pro Protokollseite werden maximal n Zeilen gedruckt (49 < n < 251) |
NO_ANF_PROTO | nur fehlerhafte Anforderungen werden protokolliert |
NO_ANF_FEHLER | sortierte Übersicht über fehlerhafte Anforderungen nicht ausgeben |
VERKETTUNG_AUFLOESEN oder kurz VKA |
Transitivität der Anforderungen berücksichtigen (s.o.) |
ALLE_RELATIONEN | Alle Schlüsselrelationen, die zu den angeforderten Schlüsseln passen, berücksichtigen (s.o.) |
CSV | Die Cross-Referenz des Ablaufprotokolls wird zusätzlich semikolonsepariert auf ASSCSV ausgegeben |
NUR_CSV | Wie CSV, jedoch wird im Ablaufprotokoll die Cross-Referenz unterdrückt |
Die bei TABAUSW angeforderten Elemente können durch zusätzliche Angaben eingeschränkt werden.
Dies lässt sich am einfachsten durch Beispiele erläutern:
TABAUSW = A: 1, 10-15, 30
Es werden nur die Arbeitsgebiete 1, 10, 11, 12, 13, 14, 15 und
30 ausgegeben.
Analog kann man die Ausgabe bei Schlüsseln, Werten und Relationen einschränken.
Die anderen Elemente werden nicht durch Nummern identifiziert. Die Einschränkung kann dann zusätzlich durch Maskierungen beschrieben werden.
TABAUSW = WG: HUGO, ANTON01- ANTON99, B?C?????
Es wird die Wertegruppierung HUGO ausgeben. Weiterhin werden
alle Wertegruppierungen die im Intervall ANTON01 - ANTON99
enthalten sind und alle Wertegruppierungen, deren Name
an der ersten Stelle ein 'B' und an der dritten Stelle
ein 'C' enthält, ausgegeben.
Besonderheiten:
Durch TABAUSW = SG : ... werden Schlüsselgruppierungen,
die durch Bezeichnungen identifiziert werden,
durch TABAUSW = SGNR : ... werden Schlüsselgruppierungen,
die durch Nummern (ST06-Schlüsselgruppierungen)
identifiziert werden, ausgewählt.
TABAUSW = SG oder TABAUSW = SGNR wählt alle
Schlüsselgruppierungen aus. Wird bei SG oder bei SGNR eine Auswahl
getroffen, so werden nur die ausgewählten Elemente
behandelt.
Bei TABAUSW = SG : ... bzw. TABAUSW = WG : ... dürfen die zwei führenden '<<' Symbole nicht mit angegeben werden.
Bei TABAUSW = VZ bezieht sich die BIBAUSW-Angabe nicht wie
bei den anderen Optionen auf die durchsuchten Elemente,
sondern auf die zu suchenden. In diesem Fall können auch
Nicht-Anforderungs-Bibliotheken (A,R,V...) angegeben werden.
Bsp.
TABAUSW = VZ: HUGO????, BIBAUSW=A
Es werden füer alles Anwendungen, die mit HUGO beginnen, die
Verzeichnisse angezeigt, in denen sie enthalten sind
Die bei den Elementen von TABAUSW aufgezählten Einzelangaben, Intervalle, Masken müssen durch Kommata getrennt werden. Nach dem letzen Element einer Aufzählung darf kein Komma mehr stehen. Bei Intervallen darf die linke Seite nicht größer als die rechte Seite sein. Bei nicht-numerischen Aufzählungen (nicht A und nicht W und nicht S ) sind Maskierungen zulässig. Maskierungen in Intervallen sind nicht zulässig.
Hinweis zur Formel-Crossreferenz
Die Formel-Crossreferenz erzeugt zwei Übersichten.
In der ersten Übersicht (direkte Verwendung) werden
die Formeln aus der Formelbiliothek aufgelistet, die direkt
in der betreffenden Anforderung verwendet werden (durch
die Angabe <<Formelname).
In der zweiten Übersicht (indirekte Verwendung) werden
die Formeln aus der Formelbiliothek aufgelistet, die einer
explizit in der Anforderung hingeschriebenen Formel
ähnlich sind. Hierdurch erhält man einen Hinweis, ob
die explizit angegebene Formel durch einen Verweis auf
die Formelbibliothek ersetzt werden sollte, um bei
Formeländerungen Wartungsaufwand zu sparen.
Formeln von Anforderungen und aus der Formelbibliothek werden
bei der Crossreferenz als ähnlich angesehen (und somit in der
indirekten Formelverwendung aufglistet), wenn sie,
abgesehen von Kommentaren und Leerzeichen, hinsichtlich
der Reihenfolge der Symbole übereinstimmen.
Insbesondere werden zwei Formeln als NICHT gleich angesehen, wenn sie sich in der Art der Klammerung unterscheiden oder wenn sie unterschiedliche Angaben zur Aufbereitung besitzen. Sie werden ebenso als NICHT gleich angesehen, wenn die Reihenfolge von Operanden vertauscht wird.
Alles hier über Formeln Gesagte gilt natürlich auch für Funktionen.
Hinweis zur CSV-Ausgabe (Datei ASSCSV)
Die CSV-Ausgabe besteht folgenden Spalten:
- SA : Satzart (Art der Cross-Referenz)
- NR : Nummer (Schlüsselnummer, Wertenummer etc.)
- BEZ : Bezeichnung (z. B. Schlüsselbezeichnung)
- SELEKTIERT : Kennzeichen, ob zum betreffenden Schlüssel Selektionen existieren
- BIART : Bibliotheksart der Anforderung
- BINAME : Name der Anforderung
Für TABAUSW=VZ unterscheidet sich der Aufbau:
- SA : Satzart
- BIART : Bibliothek
- BINAME : Anforderungsname
- ANWNR : Anwendungsnr.
- NN : Bibliotheksart der Anforderung
- VERZ : Verzeichnisname
Zusätzlich zu den beschreibenden Daten eines Elements (z. B. Schlüsselnummer, Schlüsselbezeichnung) wird eine Spalte 'SELEKTIERT' ausgegeben. Diese ist nur für Schlüssel gefüllt. In dieser Spalte werden die Schlüssel markiert, zu denen eine Ausprägungsauswahl in der betreffenden Anforderung existiert. Wird der betreffende Schlüssel als Schlüsselbedingung zum Wert verwendet, so gilt er auch als selektiert.
Folgende Satzarten werden ausgegeben:
- SCHL : Schlüssel
- WERT : Werte
- AG : Arbeitsgebiete
- REL : Schlüsselrelationen
- WG : Wertegruppierungen
- SG31 : Schlüsselgruppierungen aus der betreffenden Bibliothek
- SG06 : Schlüsselgruppierungen, die mit der ST06 erfasst sind
- RGR : Gruppierungen von Schlüsselrelationen
- PF : Parameterfilter
- FO : Formeln, direkte Verwendung
- FOFO : Formeln, indirekte Verwendung
- FANF : fehlerhafte Anforderungen
- VKTA : verkettete Anforderungen
- JOIN : Join-Anforderungen
- MEHR : Mehrfach-Anforderungen
- ANF : Anforderungen
Bei Elementen ohne Nummer (z.B. Wertegruppierungen) bleibt die Spalte NR leer. Sind die Elemente Anforderungen, so steht in der Spalte NR die Bibliotheksart.
BEISPIELE
Alle Anforderungen sollen für die Crossreference ausgewertet und auf die Verwendung von Arbeitsgebieten, Schlüsseln, Werten, Formeln bzw. Funktionen sowie die Verwendung in verketteten Anforderungen analysiert werden.
PROGRAMM=PCL1049,BIBAUSW=B,E,P,TABAUSW=A,W,S,F,V
Es sollen einmal- und periodisch auszuführende Anforderungen auf ihre Verwendung von Schlüsseln mit Nummern zwischen 10 und 90 und von Formeln mit Namen gemäß der Maske FOR????C analysiert werden. Auf die Übersichten Nr. 1 (gelesene Bibliothekselemente) und Nr. 10 (fehlerhafte Anforderungen soll verzichtet werden:
BIBAUSW=E,P NO_ANF_PROTO PROGRAMM=PCL1049 NO_ANF_FEHLER
TABAUSW=S:10-90
F:FOR????C
Es sollen nun sichergestellte Anforderungen hinsichtlich ihrer Verwendung von Werten mit Nummern zwischen 23 und 86, sowie mit den Nummern 105, 110 und 115 untersucht werden. Zudem sollen diese Anforderungen auf ihre Verwendung von Arbeitsgebieten mit den Nummern 2 und 5, auf ihre Verwendung von Schlüsselgruppierungen vom Typ ST31 zwischen <<00100A und <<00500Z sowie auf die Verwendung von Schlüsselgruppierungen vom Typ ST06 zwischen 100 und 480 analysiert werden.
BIBAUSW=B PROGRAMM=PCL1049
TABAUSW=W:23-86,105,110,115 A:2,5
SG:00100A-00500Z
SGNR:100-480
Bei Wertegruppierungen (WG) und Schlüsselgruppierungen vom Typ ST31 (SG) und Relations-Gruppierungen gehören die führenden '<<' nicht zum Namen.
2.6.2 Crossreferenz für Parameternamen PCL1164
FUNKTIONSBESCHREIBUNG
Mit Hilfe des Programms PCL1164 kann aus Inhalten der Anforderungs-DB eine Liste erstellt werden, aus der man ersehen kann, welche Parameternamen in den Bibliothekslementen verwendet werden. Diese Crossreferenz kann insbesondere zur Kontrolle der Standard-Parameter aus der Schlüssel-DB verwendet werden (KENR-PARAM-ONLINE und -BATCH).
DATENFLUSSPLAN
Vorlaufkarte:
- IBM: ASSCO FB 80
- Siemens: ASSCO variabel 80
- Unix/Windows: $ASSVLK/T1164.VLK
Protokoll:
- IBM/Siemens: LISTE FB 133
- Unix/Windows: $ASSPTK/LISTE.PTK (wird ggf. erzeugt)
Arbeitsdatei:
- IBM: ANFWK FB 53
- Siemens: ANFWK (STD,1)
- Unix/Windows: $ASSWK/ANFWK (wird ggf. erzeugt)
Arbeitsdatei:
- IBM: SORTWK FB 53
- Siemens: SORTWK (STD,1)
- Unix/Windows: $ASSWK/SORTNN (wird ggf. erzeugt)
VORLAUFKARTE
Als erste Angabe der Vorlaufkarte wird "Programm=PCL1164" erwartet. Die nachfolgenden Angaben schränken die gewünschte Übersicht ggf. via Bibliotheks-Selektion und/oder Parameter-Auswahl ein. Paramter werden über Namensauswahl oder -Maskierung festgelegt.
WICHTIG: Parameternamen werden case-sensitiv behandelt.
Beispiele:
- Verwendung der Parameter &&Par und &&PAR in Bibliothek B:
PROGRAMM=PCL1164 BIBAUSW=B PARAMETER=&&Par, &&PAR - Verwendung der Parameter, deren Namen mit &&PAR... beginnen
in allen Bibliotheken:
PROGRAMM=PCL1164 PARAMETER=&&PAR????? - Verwendung von Parametern in Bibliotheken G und H:
PROGRAMM=PCL1164 BIBAUSW=G BIBAUSW=H - Verwendung der Parameter, deren Namen mit &&PAR... beginnen
und des Parameters &&BarOmetr in Bibliothek X:
PROGRAMM=PCL1164 PARAMETER=&&PAR?????
BIBAUSW=X PARAMETER=&&BarOmetr
2.7 Dokumentation der Security-DB PCL1096
FUNKTIONSBESCHREIBUNG
Mit Hilfe des Programms PCL1096 kann die Security-Datenbank dokumentiert werden. Es werden zunächst zu jedem Benutzer die zugehörigen Berechtigungen angelistet. Am Ende der Liste stehen die Zugriffszahlen, die tageszeitabhängig jedem Benutzer zugeordnet sind. PCL1096 bietet zusätzlich detailliertere vorlaufkartenabhängige Übersichten über die Berechtigung der DST009 (s.u. Kap. 2.7.1 und Kap. 2.7.2) an.
ABLAUF
Erklärungen zum Datenflussplan
LFD.-NR. | DD-NAME/PGM | Dateiname ASS-PC | BESCHREIBUNG |
---|---|---|---|
10 | //DST009 //DST091 | $ASSDB/DST009 | Security-DB Primär-Index (nur DLI) |
20 | PCL1096 | Dokumentieren Security-DB | |
30 | //PROTO | $ASSPTK/PCL1096.PTK | Ausgabe PCL1096 |
40 | //ASSOSC | $ASS/ASSOSC.DAT | Ausgabe PCL1096 für installabh. Reorganisation der Security-DB |
Datenflussplan
2.7.1 Einfache Dokumentation der Security-DB PCL1096
PCL1096 bietet vorlaufkartenabhängige Übersichten zu den Berechtigungseinträgen der DST009. Die Erzeugung weiterer, detaillierter Crossreferenzen wird im Kap. 2.7.2 (s.u.) beschrieben.
Dieses Kapitel behandelt einfache
vorlaufkartenabhängige Übersichten über die
Berechtigungsprofile (ST06: 'BERECHTIGUNGEN'),
Benutzer (ST06: 'BENUTZER'),
Verweise (ST06: Verweis bei 'BERECHTIGUNGEN')
der DST009.
Datenflussplan
VORLAUFKARTE
Folgende Optionen sind möglich:
- AL: Alle
- PR: Dokumentation eines ausgewählten Berechtigungsprofils
- KO: Crossreferenz Berechtigungen -- Verwendung Profil
- BN: Crossreferenz Benutzer -- Verwendung Berechtigungsprofil
- AN: Crossreferenz Berechtigungen -- Anforderungsbibliotheken
- VW: Crossreferenz Berechtigungen -- Verweise
- AL Beispiel: Programm=PCL1096,AL
Die gesamte Security wird wie im PCL1096 dokumentiert (s.u.). - PR Beispiel: Programm=PCL1096,PR ASS_USER
Das Benutzerprofil ASS_USER wird dokumentiert. Dabei wird also ein einziges Benutzerprofil wie bei AL ausgegeben. - KO Beispiel: Programm=PCL1096,KO ASS_USER
Alle Berechtigungen werden auf die Verwendung des Profils ASS_USER untersucht. Dabei wird also eine Liste der Berechtigungen ausgegeben, in die die Berechtigung ASS_USER als Profil dynamisch eingebunden ist (ST06, Berechtigungen, Kommando 'PR'). - BN Beispiel: Programm=PCL1096,BN ASS_USER
Alle Benutzer werden auf die Verwendung der Berechtigung ASS_USER untersucht. Dabei wird also eine Liste der Benutzer ausgegeben, die die Berechtigung ASS_USER auswählen können. - AN Beispiel: Programm=PCL1096,AN=E
Alle Benutzer werden auf die Verwendung der Anforderungsbibliothek E überprüft. Ohne Rücksicht auf Ausschluss oder Berechtigung für diese Bibliothek wird lediglich auf Verwendung dieser Bibliothek in Maske VS302: ANFORDERUNGEN gefiltert. Das Ergebnis ist eine Liste der Berechtigungen, die mindestens einen Eintrag zur Bibliothek E besitzen. Diese Funktion bietet sich zur Berechtigungsprüfung auf Batch-Bibliotheken an. - VW Beispiel: Programm=PCL1096,VW=ASS_VERW
Alle Berechtigungen, die auf die Berechtigung ASS_VERW verweisen, werden ausgegeben. Dabei sind die Verweise in VS301 gemeint, die mit dem Kommando 'V' bei einer bestehenden Berechtigung angelegt werden. Diese Funktion bietet sich zur Berechtigungsprüfung auf Batch-Bibliotheken an. - EE Beispiel: Programm=PCL1096,EE=L???????
Alle E-mail-Empfänger, deren Namen 8-stellig sind und mit 'L' beginnen, werden ausgegeben. - EV Beispiel: Programm=PCL1096,EV=TESTVERT
Der E-mail-Verteiler TESTVERT wird aufgelöst, d.h., alle in ihm selbst und in allen Unterverteilern enthaltenen E-mail-Empfänger werden angelistet. Dabei wird eine eventuell vorhandene Verteilerhierarchie bis auf die unterste Ebene in einzelne E-mail-Empfänger aufgelöst. - VNEE Beispiel: Programm=PCL1096,VNEE=MUELLER
Alle E-mail-Verteiler, die den E-mail-Empfänger MUELLER enthalten, werden angelistet. - VNEV Beispiel: Programm=PCL1096,VNEV=UVERT?
Alle E-mail-Verteiler, die einen Verteiler mit zur Maske UVERT? passenden Verteilernamen enthalten, werden angelistet. Es handelt sich hierbei also um einen Verwendungsnachweis für jeden Verteiler mit zur Maske passenden Namen.
2.7.2 Detailierte Dokumentation der Security-DB PCL1096
PCL1096 bietet detaillierte, vorlaufkartenabhängige Crossreferenzen über die Berechtigungen der DST009 zu ASS-Objekten an.
Datenflussplan
Vorlaufkarte:
- IBM: ASSCO FB 80
- Siemens: ASSCO variabel 80
- Unix/Windows: $ASSVLK/T1096.VLK
Protokoll:
- IBM/Siemens: PROTO FB 133
- Unix/Windows: $ASSPTK/PCL1096.PTK (wird ggf. erzeugt)
Arbeitsdatei:
- IBM: ANFWK FB 15
- Siemens: ANFWK (STD,1)
- Unix/Windows: $ASSWK/ANFWK (wird ggf. erzeugt)
Arbeitsdatei:
- IBM: SORTWK FB 15
- Siemens: SORTWK (STD,1)
- Unix/Windows: $ASSWK/SORTNN (wird ggf. erzeugt)
Systemsort
Datenbanken DST007 (Texte) und DST009 (Security) werden nur gelesen
VORLAUFKARTE
Die erste Vorlaufkarte ist:
Programm=PCL1096,CROSS
In den nachfolgenden Vorlaufkarten werden die gewünschten Übersichten spezifiziert. Dabei können auch mehrere Crossreferenzen in einem Programmlauf von PCL1096 erzeugt werden.
Jedes der folgenden Einleitungskürzel steht für eine weitere Crossreferenz:
- AG: Arbeitsgebiete zu Berechtigungsprofilen
- ANF: Anforderungen zu Berechtigungsprofilen
- KY: Schlüssel und Schlüsselausprägungen zu Berechtigungsprofilen
- RE: Schlüsselrelationen
- SO: Einträge Sonstiges zu Berechtigungsprofilen
- WE: Werte
- ZE: Zeiträume zu Berechtigungsprofilen
- PROFIL: Berechtigungsprofile zu Berechtigungsprofilen
Im einfachsten Fall werden Einzeleinträge durch Nennung oder durch Intervallangabe hintereinander angegeben und mit Komma getrennt.
Beispiel:
PROGRAMM=PCL1096,CROSS AG: 1 - 10, 25, 31 - 35, 44 - 46, 49
In den Security-Einträgen werden Benutzerprofile angelistet, die die Berechtigung für die genannten Arbeitsgebiete besitzen.
Dabei wird zu jedem Eintrag, also
- Arbeitsgebiete 1 bis 10,
- Arbeitsgebiet 25,
- Arbeitsgebiete 31 bis 35,
- Arbeitsgebiete 44 bis 46 und
- Arbeitsgebiet 49
eine Verbindung zu den Berechtigungsprofilen hergestellt. Ist "ERNIE" für die Arbeitsgebiete 1, 30 bis 45 berechtigt und "BERT" für die Arbeitsgebiete 44 bis 50, dann sieht die Crossreferenz zu den Arbeitsgebieten wie folgt aus:
PCL1096 VERSION: 7.00, GELAUFEN AM 01.10.03 UM 13.06 UHR. ----------------------------------------------------------- AG-VON - AG-BIS I PROFIL SECURITY STATUS ----------------------------------------------- 1 - 10 I ERNIE TEILWEISE 31 - 35 I ERNIE VOLLSTAENDIG 44 - 46 I BERT VOLLSTAENDIG 44 - 46 I ERNIE TEILWEISE 49 I BERT VOLLSTAENDIG
Wo für den genannten Eintrag die
volle Berechtigung des Benutzerprofils vorliegt,
wird der Text "VOLLSTAENDIG" gesetzt
(z.B. "ERNIE" zu 31 - 35, denn "ERNIE" darf
die Arbeitsgebiete 30 bis 45),
bei teilweiser Übereinstimmung "TEILWEISE".
(z.B. "ERNIE" zu 44 - 46, denn "ERNIE" darf
die Arbeitsgebiete 30 bis 45,
aber nicht Arbeitsgebiet 46).
In weiterem Verlauf gibt es noch die Textvariante
"NICHT EINDEUTIG", wenn die Untersuchung z.B.
bei Existenz ?-Maskierungen und/oder Intervall-Angaben
nicht ohne weiteres oder nur sehr aufwendig
programmtechnisch entscheidbar ist.
"NICHT EINDEUTIG" bedeutet also: mindestens "TEILWEISE",
möglicherweise sogar "VOLLSTAENDIG".
Die einfache Variante der Vorlaufkartenoptionen gilt für
- AG: Arbeitsgebiete
- WE: Werte
- ZE: Zeiträume
- SO: Sonstiges
Die anderen Crossreferenzen lassen sogar eine noch detailliertere Eingrenzung der gewünschten Crossreferenz zu, z.B. durch Ausprägungsmaskierungen bzw. -intervalle. Die jeweiligen Unterobjekte werden eingeleitet durch "INH=".
Beispiel:
PROGRAMM=PCL1096,CROSS KY: 21, 22 - 23, 24: INH=A, 25: INH=A?, 26: INH=??V?, 27: INH=A - 30: INH=R
Die Einträge haben folgende Bedeutung
- KY:
Crossreferenz für Schlüssel(-auspägungen) - 21,
Schlüssel 21 - 22 - 23,
Schlüssel 22 bis 23 - 24: INH=A,
Schlüssel 24, Inhalt A - 25: INH=A?,
Schlüssel 25, Inhalte, die in der Maskierung A? liegen, z.B. AB, AW, nicht aber ART - 26: INH=??V?,
Schlüssel 26, Inhalte, die in der Maskierung ??V? liegen - 27: INH=A - 30: INH=R
Schlüsselinhalte, die im Intervall Schlüssel 27, Ausprägung A bis Schlüssel 30, Ausprägung R liegen (einschließlich)
Diese Art der Vorlaufkartenspezifikation gilt für
- KY: Schlüssel und Schlüsselausprägungen
- RE: Schlüsselrelationen
- ANF: Anforderungen
Bei Anforderungen können auch Maskierungen auf Anforderungsnamen verwendet werden. Eine Maskierung auf die Bibliotheksart ist nicht zulässig. - PROFIL: Profile
Bei Profilen kann analog zu Anforderungen auch mit Maskierungen gearbeitet werden. Ein Berechtigungsprofil kann auf andere Berechtigungsprofile verweisen, die wiederum auf weitere Berechtigungsprofile verweisen können (Baumstruktur). Bei der Profil-Übersicht wird daher zusätzlich ein Level ausgegeben, aus dem ersichtlich ist, auf welcher Ebene das genannte Berechtigungsprofil verwendet wird.
Abschließendes Beispiel
PROGRAMM=PCL1096, CROSS AG: 19, 1 - 33 ANF: B: ????????, E: A?, P: A001 - A999 KY: 21, 22 - 23, 24: INH=A, 25: INH=A?, 26: INH=??V?, 27: INH=A - 30: INH=R RE: 1, 14: INH=G, 15: INH=T - 15: INH=V, 27: INH=F? WE: 17, 23 - 55 ZE: 0101 - 0203, 0602 - 1502, 0501, 1001 SO: AZ - SO, X0 - X3, X3 PROFIL: PR0005, A?B
2.7.3 Reorganisation der Security-DB PCL1096
Es steht ein USER-Exit (MCL0657) zur Verfügung, mit dem die Sätze der Security-Datenbank modifiziert werden können (vgl. Dokumentation im Prototyp). Es wird eine Datei erzeugt, die mit PCL1195 geladen werden muss.
Datenflussplan
VORLAUFKARTE
PROGRAMM=PCL1096, REORG2.8 Analyse externer Schnittstellendateien PCL1056
FUNKTIONSBESCHREIBUNG
Gegenüber den ASS-Datenbeständen weisen ASS-Schnittstellendateien in der Regel als Reserve für etwaige Erweiterungen zusätzliche Schlüssel- und Wertmerkmale auf, die bei der Übernahme in die ASS-Datenbestände wegverdichtet werden. Die Sätze liegen gewöhnlich als Einzelsätze entsprechend dem Einzelsatzkriterium der operativen Ebene vor, z.B. Vertragsnummer bzw. Positionsnumer. Diese Einzelsatzinformationen sowie die zusätzlichen Schnittstellenschlüssel und -werte können über die normale ASS-Auswertung aus den ASS-Datenbeständen infolge der vorgenommenen Verdichtung nicht mehr abgeleitet werden.
Daher wurde mit dem Programm PCL1056 ein Auswertungsinstrument geschaffen, dass derartige Einzelsatzinformationen aus archivierten Schnittstellendateien liefert.
Über eine Reihe von Selektionsmöglichkeiten, die neben den Mitteln der BATCH-Anforderungssprache noch zusätzliche Auswahlkriterien für spezielle Schnittstellenmerkmale berücksichtigen, können gezielt Sätze aus den betreffenden Schnittstellendateien ausgewählt werden.
Da bei Angabe der Option DATEI die selektierten Sätze zusätzlich in eine Datei geschrieben werden (siehe unten), ist es möglich, aus einer vorhandenen Schnittstelle durch gezielte Selektion eine weitere Schnittstellendatei zu erzeugen. In diesem Zusammenhang sei auch auf die Option NODRUCK hingewiesen. Es sollte bei der Selektion der Sätze jedoch auf den Einsatz der Option SATZBIS verzichtet werden (siehe unten).
ABLAUF
Nummer | DD-Name/PGM | Dateiname ASS-PC | Beschreibung |
---|---|---|---|
1 | KARTE | $ASSVLK/KARTE.VLK | Eingabe der Anforderung |
2 | ASSIN01 | $ASS/ASSIN01 | Externe Schnittstelle (Format: analog zu PCL1001) |
3 | ASSCO | $ASSVLK/T1056.VLK | Vorlaufkartendatei |
4 | LISTE | $ASSPTK/LISTE.PTK | Verarbeitungsprotokoll (Format: LRECL=133 FB CTLASA) |
5 | ASSIN02 | $ASS/ASSIN02 | Selektierte Sätze aus ASSIN01 im Format der Externen Schnittstelle |
Selektionsmöglichkeiten
Für die Selektion der Schnittstellensätze stehen zunächst
Vorlaufkartenparameter zur Verfügung, die spezielle
Schnittstellensatzelemente wie Ordnungsbegriff oder
Satznummer ansprechen.
Daneben können aber noch zusätzlich die von den normalen
ASS-Anforderungen her bekannten Selektionsmöglichkeiten der
Anforderungssprache ausgenützt werden.
Dazu wird in einer BATCH-Anforderungsdatei eine normale
ASS-BATCH-Anforderung definiert.
Bei der Selektion von Schnittstellensätzen können also alle
Kriterien, die auch in den betreffenden ASS-Arbeitsgebieten
vorkommen, über die BATCH-Anforderungsdatei selektiert
werden.
Dagegen müssen Selektionen nach speziellen
Schnittstellenfeldern, die ja nicht in den ASS-Datenbeständen
vorkommen und der BATCH-Anforderungssprache daher fremd sind,
über Vorlaufkarten vorgenommen werden.
Beschreibung der Vorlaufkartenoptionen
Die erste Angabe ist beginnend in der ersten Spalte auf jeden Fall erforderlich:
PROGRAMM=PCL1056
Weitere Angaben können, auf eine oder mehrere Vorlaufkarten verteilt, angegeben werden und sind mit Komma(ta) zu trennen.
Folgende optionale Angaben sind zulässig:
BEGRIFF=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Mit der Angabe BEGRIFF werden Sätze nach dem Ordnungsbegriff selektiert, wobei hier (analog zu den Schlüsselausprägungen) eine Angabe durch Maskierung mit ? oder ! möglich ist. Die Wirkung von ? und ! ist identisch.
Enthält die Ordnungsbegriffsangabe der Vorlaufkarten keine Fragezeichen (?) oder Ausrufezeichen, so werden nur die Summensätze angezeigt, die diesen Ordnungsbegriff aufweisen. Ansonsten werden genau die Stellen beim Ordnungsbegriff im Summensatz mit der Angabe in der Vorlaufkarte verglichen, bei denen in der Angabe kein Frage- oder Ausrufezeichen steht.
Nach BEGRIFF= werden die nächsten 30 Buchstaben als Ordnungsbegriff interpretiert. Wird diese Angabe in den Vorlaufkarten nicht verwendet, werden die Summensätze nicht nach dem Ordnungsbegriff selektiert, sondern es gelten lediglich die anderen Selektionskriterien.
EXIT=xxxxxxxx
Diese Angabe entspricht der im Programm PCL1001 (vgl. Dokumentation von PCL1001 im Handbuch 'BETRIEB I'). Durch diese Angabe wird erreicht, dass auch bei der Analyse von externen Schnittstellen analog zur Folgeeinspeicherung die gleichen User-Exits unterstützt werden.
SATZVON=nnnnnnnnnn
Wird dieser Parameter angegeben, werden die Sätze der Externen Schnittstellen-Datei zusätzlich nach diesem Kriterium selektiert. Summensätze werden nur gedruckt, wenn ihre Satznummer (s.o.) größer oder gleich der Angabe unter SATZVON ist.
SATZBIS=nnnnnnnnnn
Wird dieser Parameter angegeben, werden die Sätze der Externen Schnittstellen-Datei zusätzlich nach diesem Kriterium selektiert. Summensätze werden nur gedruckt, wenn ihre Satznummer (s.o.) kleiner oder gleich der Angabe unter SATZBIS ist.
ACHTUNG: Ist SATZBIS kleiner als die Anzahl der Summensätze und ist zusätzlich die Option DATEI angegeben, so wird nach ASSIN02 kein Endesatz geschrieben. Diese Datei ist also in diesem Fall nicht unmittelbar für eine Einspeicherung brauchbar.
ZEILEN=nnnnnnnnnn
Durch diesen Parameter kann der Druckoutput begrenzt werden. Die Protokollierung der Sätze wird abgebrochen, wenn die Anzahl der gedruckten Zeilen in der Protokoll-Datei die Angabe beim Parameter ZEILEN übersteigt. Lediglich das End-Protokoll wird noch ausgegeben. Standardannahme für ZEILEN ist ZEILEN=10000.
DATEI
Mit der Angabe der Option DATEI werden Sätze gemäß den angegebenen Selektionskriterien auf die Datei ASSIN02 geschrieben. D.h. die Sätze von ASSIN01, die im Protokoll erscheinen, werden gleichzeitig (so wie sie eingelesen wurden) in die Datei ASSIN02 geschrieben. Lediglich in den Endesätzen von ASSIN02 wird die Anzahl der Summensätze entsprechend der neuen Anzahl abgeändert.
NODRUCK
Bei Angabe der Option NODRUCK reduziert sich das Protokoll auf die Ausgabe der Statistik der verarbeiteten Sätze. Insbesondere unterbleibt die Anlistung der selektierten Summensätze. Diese Option ist insbesondere bei großen Schnittstellendateien bei gleichzeitiger Angabe von DATEI zu empfehlen.
TRANSLATE
Wenn diese Option in einer PC-Installation angegeben wird, werden im EBCDIC-Format vorliegende Schnittstellen nach ANSI konvertiert. In einer Großrechnerumgebung wird entsprechend von ANSI nach EBCDIC umgewandelt.
FB
Die Eingabedaatei ASIN01 wird im festgeblockten Format erwartet.
Aufbau der BATCH-Anforderungsdatei (KARTE)
In der BATCH-Anforderungsdatei mit dem logischen Namen KARTE kann nach folgenden Kriterien selektiert werden:
- Zeitraum (Wertedatum)
- Werte
- Schlüssel (und Schlüsselausprägungen)
Werden zu den einzelnen Kriterien keine Angaben gemacht, erfolgt die Ausgabe über alle vorhandenen Informationen. Die Selektion der Sätze in der Datei "KARTE" erfolgt im Format der ASS-BATCH-Anforderungssprache.
Folgende Sprachelemente sind zulässig:
- Zeitraum
Die Angabe von Zeiträumen ist optional. Die Angabe erfolgt unter "KS:" bzw "KOPFSCHLUESSEL:". Anforderungen mit Zeitraumangaben zum Wert oder relativen Zeitraumangaben sind unzulässig. Zeitraumangaben werden chronologisch betrachtet. Hierbei gilt es jedoch folgendes zu beachten: Kommen Zeitraumangaben mit und ohne Tagesangaben vor (z.b. 0198 bzw. 150198), so erfolgt bezüglich des Tages ein alphanumerischer Vergleich. D.h. z.B. 150198 ist immer später als 0198. Um Missverständnisse zu vermeiden, sollte daher bei der Analyse von externen Schnittstellen mit Tag bei der ASS-Zeit stets der Tag mit angegeben werden, sonst nicht.
- Werte
Die Angabe der Werte ist optional. Die Angabe erfolgt unter "SS:" bzw "SPALTENSCHLUESSEL:" mittels Wertenummer. Anforderungen mit Schlüsselbedingungen oder Zeitraumangaben zum Wert, sowie Anforderungen von Werten über Wertebezeichnung oder Werteformeln sind nicht zulässig.
- Schlüssel
Die Angabe von Schlüsseln ist optional. Die Angabe erfolgt unter "ZS:" bzw. "ZEILENSCHLUESSEL:" mittels Schlüsselnummer. Die Anforderung über Schlüsselbezeichnung ist unzulässig. Wahlweise ist die Angabe von Schlüsselausprägungen möglich (Einzelausprägungen, VON-BIS-Intervalle und Fragezeichenmaskierungen !). Nicht erlaubt sind Negativselektion, Maskierungen mit ?, Ausprägungsformeln, Leerzeilen, Gruppierungen etc..
Sonstige Sprachelemente werden nicht benötigt und werden beim
Programmlauf entweder ignoriert (z.B. Optionen) oder führen
zur Ausgabe einer Fehlermeldung und der Beendigung des
Programms (z.B. falls mit AG: Arbeitsgebiete angegeben werden).
Die Wirkungsweise der obigen Angaben wird am Ende dieser
Programmbeschreibung anhand eines Beispiels erläutert.
Aufbau des Ausgabeprotokolls
Die selektierten Sätze werden mit einer Satzlänge von 133 Zeichen angezeigt. Neben den zugehörenden Kopf- und Endesätzen der betreffenden Schnittstellendatei erscheinen die selektierten Summensätze.
In den Kopf- und Summensätzen werden neben einer vom Programm PCL1056 vergebenen Satznummer noch Ordnungsbegriff und Satzart ausgegeben. Über die Anforderungsdatei angeforderte Schlüssel werden in Summensätzen mit ihrer ASS-Nummer und dem jeweiligen Schlüsselinhalt angezeigt. Selektierte Werte treten in den Summensätzen mit dem jeweiligen Werteinhalt und zugehörigem Wertedatum auf.
Entsprechend den ASS-Schnittstellenkonventionen erscheinen in Kopfsätzen die Schlüsselinhalte als Leerfelder, die Werteinhalte tragen den Wert 1 oder 0 bei Bewegungs- oder Bestandsanlieferung. Kopf- und Summensätze erscheinen also nur dann komplett mit allen Schlüsseln und Werten, wenn entweder alle Schlüssel und Werte explizit angefordert werden oder überhaupt keine Schlüssel und Werte selektiert werden.
BEISPIEL
Vorlaufkartendatei ASSCO:
PROGRAMM=PCL1056 SATZVON=1 SATZBIS=15 ZEILEN=400 BEGRIFF=ASS-EXT??????????????????????? DATEI
Datei KARTE:
ASS; KS: ZEITRAUM=(1188-1288,0289); ZS: 1901=(11,22,3!), <-- !-Maskierung (bei IBM ggf. 3Ü) 1902; SS: WERTE=(1912,1913); END;
Ergebnis:
Bei dieser Anforderung werden neben den Kopf- und Endesätzen die Summensätze protokolliert, die folgende Selektionsbedingungen erfüllen:
- ASSCO:
- Es werden nur die Sätze 1-15 aus der Schnittstellendatei ASSIN01 verarbeitet.
- Die Verarbeitung wird nach 400 Druckzeilen abgebrochen.
- Es werden nur Sätze verarbeitet, die als Ordnungsbegriff "ASS-EXT" enthalten.
- Alle verarbeiteten Sätze werden in eine Datei ASSIN02 geschrieben.
KARTE: - den Schlüssel mit Nummer 1901 und eine der genannten Schlüsselausprägungen (11 oder 22 oder eine, die unter die Ausrufezeichen-Maskierung 3! bzw. 3Ü fällt) enthalten und den Schlüssel mit Nummer 1902 enthalten (Schlüsselausprägung beliebig)
- einen Wert mit der Nummer 1912 oder 1913 enthalten
- ein Wertedatum zum betreffenden Wert im Zeitraum November 1988 bis Dezember 1988 oder im Februar 1989 besitzt.
Es werden nur Summensätze verarbeitet, die gleichzeitig
Listbild:
Kopfsatz:
ORDNUNGSBEGRIFF: ASS-EXT 1 DEZ 1988 SATZNUMMER: 1 SCHLUESSEL: 01901= , 01902= WERTE: 01912(8812)=+000000000000001, 01913(8812)=+000000000000001, --------------------------------------------------------------
Summensätze:
ORDNUNGSBEGRIFF: ASS-EXT 1 DEZ 1988 SATZNUMMER: 2 SCHLUESSEL: 01901=11 , 01902=1 , WERTE: 01912(8812)=+000000000045681, 01913(8812)=+000000000047690, -------------------------------------------------------------- ORDNUNGSBEGRIFF: ASS-EXT 1 DEZ 1988 SATZNUMMER: 15 SCHLUESSEL: 01901=33 , 01902=4 , WERTE: 01901(8812)=+000000000062610, 01901(8812)=+000000000064500, .
3 Datensicherung
Neben den allgemeinen DB-Utilities, die dem Systemverwalter zum Handling der Datenbanken zur Verfügung stehen, bietet ASS eine Reihe von Programmen, um gezielte Sicherungen von ASS-Arbeitsgebieten und ASS-Anforderungen vorzunehmen.
3.1 Sichern Arbeitsgebiet mit Parameter-DB's PCL1004
FUNKTIONSBESCHREIBUNG
Mit dem Programm PCL1004 kann eine logische Sicherung eines Arbeitsgebietes vorgenommen werden. Sämtliche Informationen aus Werte-, Schlüssel- und Steuerungs-DB, die ein Arbeitsgebiet beschreiben, werden dabei in eine sequentielle Datei geschrieben.
Ein solcher Abzug eines Arbeitsgebietes wird u.a. für folgende Maßnahmen benötigt:
- Erst- und Folgeeinspeicherung (PCL1001, PCL1002)
- Laden eines Arbeitsgebietes (PCL1005, PCL1015)
- Reorganisation eines Arbeitsgebietes (PCL1011)
ABLAUF
1 Werte-DB DST001 DST011/DST012/DST013 (DLI) $ASSDB/DST001 (PC) 2 Schlüssel-DB DST002 DST021/DST022/DST023 (DLI) $ASSDB/DST002 (PC) 3 Steuerungs-DB DST003 DST031/DST032/DST033 (DLI) $ASSDB/DST003 (PC) 4 Vorlaufkarte SYSIN $ASSVLK/T1004.VLK (PC) 5 Protokoll PROTO $ASSPTK/PCL1004.PTK (PC) 6 Ausgabedatei DATEI oder DATEIFB $ASS/AG.EBC (PC) |
VORLAUFKARTE
Für den Programmlauf ist eine Vorlaufkarte mit folgendem Aufbau anzugeben:
Inhalt | Bemerkung |
---|---|
PROGRAMM PCL1004 | Muss vorhanden sein als Bestandteil der Vorlaufkartenprüfung. |
AGNR=nn | Muss vorhanden sein als Bestandteil
der Vorlaufkartenprüfung. nn = Zahl zwischen 01 und 300 |
OA | Option: Schlüsselausprägungen werden nicht mit abgezogen |
TRANSLATE | Option: Umsetzung von EBCDIC nach ANSI bzw. umgekehrt wird nicht empfohlen, da PCL1005 das Format automatisch erkennt |
Die Vorlaufkartenoption OA bewirkt, dass nicht alle Segmente der Schlüsseldatenbank auf den Abzug geschrieben werden. Insbesondere fehlen Segmente SST013SA, in denen die Schlüsselinhalte gespeichert sind. Ein Anwendungsfall ist die Einspeicherung in Arbeitsgebieten, die Massenschlüssel enthalten. Achtung: Ein derartiger Abzug ist nicht für die Datensicherung geeignet.
BEISPIEL:
ARBEITSGEBIET 1 SOLL GESICHERT WERDEN.
PROGRAMM PCL1004,AGNR=01
3.2 Sichern Arbeitsgebiet ohne Parameter-DB's PCL1014
Dieses Programm wird in der Cobol-Version von ASS nicht mehr unterstützt.
3.3 Laden / Kopieren Arbeitsgebiet mit Parameter-DB's PCL1005
FUNKTIONSBESCHREIBUNG
Mit dem Programm PCL1005 kann ein mit PCL1004 erstellter Abzug eines Arbeitsgebietes in die Werte-, Schlüssel- und Steuerungs-DB zurückgeladen werden. Gibt es diese Datenbanken mehrfach (z.B. Test und Produktion), so kann auf diese Weise ein Bridgen von Arbeitsgebieten durchgeführt werden.
Ein additives Auffüllen der Schlüssel-Datenbank kann durch die Option ERGAENZ (s.u.) erreicht werden. Durch einen Parameter in der Vorlaufkarte (LOESCHEN) kann man die Steuerungs-DB initialisieren. Durch dieses Löschen der Konsistenzfelder wird ein Zustand hergestellt, als wäre noch keine Einspeicherung zu diesem Arbeitsgebiet erfolgt.
Ferner lassen sich Arbeitsgebiete kopieren. Gibt man in der Vorlaufkarte AG_NEU=nn an, so wird der mit PCL1004 erstellte Abzug eines Arbeitsgebietes auf das neue Arbeitsgebiet mit der Nummer nn kopiert. Es ist darauf zu achten, dass die Nummer nn bislang noch für kein anderes Arbeitsgebiet vergeben ist.
Durch die Angabe AG_NEU_ERST=nn kann analog zu AG_NEU ein Arbeitsgebiet kopiert werden. Im Gegensatz zu AG_NEU wird jedoch das Ziel-Arbeitsgebiet, falls es schon existiert, überschrieben. Bei AG_NEU_ERST wird davon ausgegangen, dass das Ziel-Arbeitsgebiet für eine Ersteinspeicherung vorgesehen ist. Daher sind bei AG_NEU_ERST folgende Besonderheiten zu beachten:
- stillgelegte Verdichtungsstufen werden nicht mitkopiert.
- das Prüfkennzeichen des Quell-Arbeitsgebiets wird i.a. unverändert übernommen. Bei Gesperrt (S) oder Reserviert (R) wird es auf Geprüft (J) gesetzt.
- enthält das Ziel-Arbeitsgebiet aktive sequentielle Verdichtungsstufen oder aktive Verdichtungsstufen, die auf einer sekundären Summen-Datenbank (verteilte Summendaten) gespeichert werden sollen, so ist beim Kopieren der neue Ort nicht bekannt. Das Programm wird in diesem Fall mit einer Fehlermeldung abgebrochen.
- Es wird implizit die Option LOESCHEN angenommen.
Durch die Angabe AG_NEU_ERST_DBST=nn kann analog zu AG_NEU_ERST ein Arbeitsgebiet kopiert werden. AG_NEU_ERST_DBST arbeitet wie AG_NEU_ERST. Es werden in diesem Fall auch stillgelegte Datenbank-Verdichtungsstufen kopiert.
Mit Hilfe der Vorlaufkarten 2 bis n können Schlüsselinhalt,
Schlüsselbezeichnung und Schlüsselabkürzung umgesetzt
werden. Im standardmäßig ausgelieferten ASS können
Datumsanangaben um das Jahrhundert ergänzt werden. Des Weiteren ist es
möglich, Schlüsselinhalte um eine führende Null zu ergänzen.
Dies ist vor allem dann interessant, wenn die externe
Länge eines Schlüssels vergrößert werden soll. Außerdem
können im Programm MST0529/MCL0529 eigene Umsetzroutinen
programmiert werden.
Werden die Vorlaufkarten 2 bis n angegeben, so wird nur die
Schlüsseldatenbank zurückgeladen (mit gem. den Vorlaufkarten
geänderten Schlüsselausprägungen, -bezeichnungen und -abkürzungen).
ABLAUF
1 Werte-DB DST001 DST011/DST012/DST013 (DLI) $ASSDB/DST001 (PC) Schlüssel-DB DST002 DST021/DST022/DST023 (DLI) $ASSDB/DST002 (PC) Steuerungs-DB DST003 DST031/DST032/DST033 (DLI) $ASSDB/DST003 (PC) 2 Ladebestand DATEI $ASS/AG.EBC (PC) 3 Vorlaufkarte SYSIN $ASSVLK/T1005.VLK 4 Protokoll PROTO $ASSPTK/PCL1005.PTK 5 Steuerungs-DB |
VORLAUFKARTE
Für den Programmlauf ist eine Vorlaufkarte mit folgendem Aufbau anzugeben:
Inhalt | Bemerkung |
---|---|
PROGRAMM PCL1005 | Muss vorhanden sein als Bestandteil der Vorlaufkartenprüfung. |
AGNR=nn | Muss vorhanden sein als Bestandteil
der Vorlaufkartenprüfung. nn = Arbeitsgebietsnummer. |
DATUM=XXXX | Muss vorhanden sein. Erwartet in der Form JJMM bzw. JJMMTT das Datum der letzten Einspeicherung (siehe ST06). Muss identisch mit dem Datum im abgezogenen Arbeitsgebiet (PCL1004) sein, das als Datum der letzten Einspeicherung ausgewiesen ist. Wurde noch keine Einspeicherung durchgeführt, lautet der Parameter XXXX. |
,LOESCHEN | Nur bei Bedarf anzugeben. Beim Laden werden sämtliche Konsistenzfelder gelöscht. Das Arbeitsgebiet wird zurückgesetzt. Nach Löschen der zugehörigen Summen-DB kann eine neue Ersteinspeicherung erfolgen. |
,KY_INIT |
Standdardmäßig (ohne ERSETZ/ERGAENZ) bleiben bestehende Werte und
Schlüssel im Ziel unverändert und sonst werden sie aus der Quelle
übernommen.
Bei KY_INIT gibt es zwei Unterschiede: Bei neuen Schlüsseln werden weder Ausprägungen noch Gruppierungen übernommen und ab 8.40 können auch PCL1004-Abzüge mit der Option OA eingespielt werden. |
,ERSETZ | Nur bei Bedarf anzugeben. Alle Schlüssel und Werte des betreffenden Arbeitsgebietsabzugs sollen in der Schlüssel- bzw. Werte-DB vollständig durch die Inhalte des Arbeitsgebietsabzugs ersetzt werden (s.u.). |
,ERGAENZ | Nur bei Bedarf anzugeben. Diese Option beeinflusst die Behandlung von Schlüsselausprägungen. Sie ist für das Bridgen von Arbeitsgebieten gedacht. Hierbei ist zu beachten, dass die Quelle über das Ziel dominiert, d.h. im Ziel sollten insbesondere keine neuen Schlüsselausprägungen via ST06 oder Batch-Programme ergänzt werden. Nicht existierende Schlüssel werden vollständig übernommen. Bei existierenden Schlüsseln werden fehlende Ausprägungen ergänzt und bestehende angepasst. Existierende ST06-Schlüsselgruppierungen werden nicht verändert. Wird ein Schlüssel in mehreren Arbeitsgebieten verwendet oder es soll ein Arbeitsgebiet mehrfach übernommen werden, so wird durch diese Option erreicht, dass das Ziel additiv aufgefüllt wird. Wichtig ist, dass in der Quelle und im Ziel verdichtete Schlüsselinhalte synchron gehalten werden. Diese Option synchronisiert verdichtete Schlüsselinhalte nicht. Diese Option ist mit anderen Schlüssel-Optionen nicht verträglich. |
,BS2000_ANSI | Übersetzen von BS2000-EBCDIC nach ANSI. Nur sinnvoll beim Bridgen von BS2000 nach Unix. |
,MVS_ANSI | Übersetzen von MVS-EBCDIC nach ANSI. Nur sinnvoll beim Bridgen von MVS nach Unix. |
,OS2_ANSI | Übersetzen von Windows (OS2) nach ANSI. Nur sinnvoll beim Bridgen von Windows nach Unix. |
,ANSI_OS2 | Übersetzen von ANSI nach Windows (OS2). Nur sinnvoll beim Bridgen von Unix nach Windows. |
,BS2000_MVS | Übersetzen von BS2000-EBCDIC nach MVS-EBCDIC. Nur sinnvoll beim Bridgen von BS2000 nach MVS. |
,MVS_BS2000 | Übersetzen von MVS-EBCDIC nach BS2000-EBCDIC. Nur sinnvoll beim Bridgen von MVS nach BS2000. |
,AG_NEU=nn | Nur bei Bedarf anzugeben. Der Arbeitsgebietsabzug wird auf das neue Arbeitsgebiet mit der Nummer nn kopiert. |
,KY_COPY | Nur bei Bedarf anzugeben. Aus dem Arbeitsgebietsabzug sollen Schlüssel kopiert werden. Die zu kopierenden Schlüssel werden in den Karten 2 bis n angegeben (s.u.). |
,KY_COPY_L | analog KY_COPY (s.u.). |
,KY_COPY_LOGISCH | analog KY_COPY (s.u.). |
,AG_NEU_ERST=nn | Nur bei Bedarf anzugeben. Der Arbeitsgebietsabzug wird auf das neue Arbeitsgebiet mit der Nummer nn kopiert. Einzelheiten siehe oben. |
,AG_NEU_ERST_DBST=nn | siehe AG_NEU_ERST. |
Beim Einlesen eines am Großrechner ersellten Abzugs in einer PC-Umgebung geschieht automatisch eine Umsetzung vom EBCDIC nach ASCII, auch wenn keine Umsetzungsoption angegeben ist. Wenn eine der Optionen KY_COPY, KY_COPY_L oder KY_COPY_LOGISCH angegeben ist, werden ab der zweiten Vorlaufkarte die zu kopierenden Schlüssel angegeben.
Die Vorlaufkarten 2 bis n haben alle folgenden Aufbau:
KENR: Quell-Schlüsselnummer -> Ziel-Schlüsselnummer
Beispiel:
KENR: 4711 -> 5000
Im obigen Beispiel wird der Schlüssel 4711 aus dem Arbeitsgebietsabzug auf die Schlüssel-Datenbank auf den Schlüssel 5000 kopiert.
Bei KY_COPY_L kann auch mit SUBSTR gearbeitet werden.
KENR: SUBSTR(Quell-Schlüssel-Nr,n,m) -> Ziel-Schlüssel-Nr wobei n den Offset und m die Länge des Substrings angeben.
Beispiel:
KENR: SUBSTR(4711,3,4) -> 5000
Bei KY_COPY_L kann der Quellschlüssel unabhängig von SUBSTR nur einmal angegeben werden.
Besonderheiten bei KY_COPY, KY_COPY_L, KY_COPY_LOGISCH:
KY_COPY_L und KY_COPY_LOGISCH sind Synonyme, bewirken also das gleiche.
Die Quell-Schlüssel müssen im aktuellen Arbeitsgebietsabzug enthalten sein.
Bei KY_COPY werden die Ziel-Schlüssel vor dem Kopiervorgang
vollständig gelöscht (einschl. der ST06-Gruppierungen).
Es werden alle Ausprägungen der Quell-Schlüssel
auf die Schlüssel-Datenbank unter der Schlüsselnummer
der Ziel-Schlüssel kopiert.
ST06-Gruppierungen werden nicht mitkopiert.
Bei KY_COPY ist insbesondere die Zuordnung verdichteter
Schlüsselinhalt zum Schlüsselinhalt bei Quell- und
Ziel-Schlüsseln gleich.
Bei KY_COPY_L bzw. KY_COPY_LOGISCH werden bei den
Ziel-Schlüsseln nur die Ausprägungen aus dem AG-Abzug
ergänzt, die sich bei den Ziel-Schlüsseln noch nicht auf
der Schlüssel-DB befinden, wobei bei ergänzten
Schlüsselinhalten die verdichteten Inhalte analog zur
ST06 neu vergeben werden.
In diesem Fall kann ein Ziel-Schlüssel also mehr Ausprägungen
enthalten als ein Quell-Schlüssel und insbesondere
können gleiche Schlüsselinhalte von Quell- bzw.
Ziel-Schlüsseln unterschiedliche verdichtete Schlüsselinhalte
haben.
Bei SUBSTR gilt als Ziel-Schlüsselausprägung nur der durch
SUBSTR abgegriffene Schlüsselinhalt der
Quell-Schlüsselausprägung (z.B. SUBSTR('12345678',3,4) = '3456').
Entstehen bei SUBSTR Ausprägungen, die nur aus Blanks
bestehen, so werden diese ignoriert.
Es werden nur die angegebenen Schlüssel kopiert, darüberhinaus werden keinerlei Änderungen auf den Parameter-Datenbanken vorgenommen. Ein Quell-Schlüssel kann nur einmal kopiert werden. Soll ein bestimmter Quell-Schlüssel auf mehrere Schlüssel kopiert werden, so sind mehrere Programmläufe erforderlich.
Wenn keine der Optionen KY_COPY, KY_COPY_L bzw. KY_COPY_LOGISCH angegeben ist, können ab der zweiten Vorlaufkarte Schlüsselnummern und Modi angegeben werden, um Schlüsselinhalte, -bezeichnungen oder -abkürzungen umzusetzen. Die Vorlaufkarten 2 bis n haben alle folgenden Aufbau:
Inhalt | Bemerkung |
---|---|
KENR=n | Der Inhalt zum Schlüssel mit der Nummer n wird gemäß dem nachfolgenden Modus (s. u.) geändert. (n max. 5-stellig) |
MODUS=m | Modus, gem. dem umgeschlüsselt wird (s. u.). (m max. 5-stellig) |
Es sind folgende Modi standardmäßig erlaubt:
(Der Punkt '.' steht für ein beliebiges Trennzeichen in der
Datumsangabe, welches nicht verändert wird, z. B. 12.01.71,
12-01-71 etc.)
Modus | Umschlüsselungsart | Umschlüsselungsort |
---|---|---|
1 | JJ -> 19JJ | Inhalt |
2 | JJMM -> 19JJMM | Inhalt |
3 | JJMMTT -> 19JJMMTT | Inhalt |
4 | MMJJ -> MM19JJ | Inhalt |
5 | TTMMJJ -> TTMM19JJ | Inhalt |
6 | JJ.MM -> 19JJ.MM | Inhalt |
7 | JJ.MM.TT -> 19JJ.MM.TT | Inhalt |
8 | MM.JJ -> MM.19JJ | Inhalt |
9 | TT.MM.JJ -> TT.MM.19JJ | Inhalt |
11-19 | wie 1-9, jedoch wird bei JJ < JT_SCHWELLE 20, bei JJ >= JT_SCHWELLE 19 für das Jahrhundert ergänzt (JT_SCHWELLE steht in SST1179, z. Z. = 50) | Inhalt |
31-79 | eine führende Null wird eingefügt | Inhalt |
80 | über Datei ASSINKY | Inhalt |
82 | 2 führende Blanks einfügen | Inhalt |
Haupteinsatzgebiet der Einfügung einer führenden Null ist die Erweiterung der externen Länge eines Schlüssels um eine Stelle. Die um 30 vergrößerte alte externe Länge ergibt den zu benutzenden Modus. Es werden dabei aber nur Ausprägungen um die führende 0 erweitert deren Länge ≤ Modus - 30 ist.
Will man die Schlüsselbezeichnung verändern, so ist zum
jeweiligen Modus 100, bei der Schlüsselkurzbezeichnung 200 zu
addieren (siehe auch Beispiel unten).
Soll der Schlüsselinhalt umgesetzt in die Bezeichnung übernommen
werden, so ist zum jeweiligen Modus 500 zu addieren. In
diesem Fall wird der Inhalt selbst nicht umgesetzt. Soll der
Inhalt umgesetzt in die Abkürzung übernommen werden, so ist
600 zum jeweiligen Modus zu addieren. Auch hier wird der Inhalt
selbst nicht umgesetzt.
Kann eine Umsetzung nach dem angegebenen Modus nicht vorgenommen
werden (z. B. weil die neue Länge bei einem Modus zw. 300
und 400 größer als 6 wird), wird auf der Datenbank keine
Umsetzung durchgeführt.
Will man mit den Modi 500 - 700 den Schlüsselinhalt in die
Bezeichnung bzw. Abkürzung übernehmen, so sollte man beachten,
dass im gleichen Lauf von PCL1005 der Schlüsselinhalt selbst
nicht umgesetzt werden sollte, da sonst ungewünschte Effekte
entstehen. Intern wird nämlich immer zuerst der Schlüsselinhalt
nach einem evtl. angegebenen Modus umgesetzt und danach
dieser umgesetzte Inhalt (evtl. nochmal umgesetzt) in die
Bezeichnung übernommen.
Will man dennoch einerseits den Inhalt umsetzen als auch den
Inhalt umgesetzt in die Bezeichnung übernehmen, so sind zwei
Läufe von PCL1005 erforderlich. Man sollte sich aber über die
Reihenfolge (erst Inhalt umsetzen, dann diesen in die Bezeichnung
übernehmen oder umgekehrt) im Klaren sein.
Zu den standardmäßig vorhandenen Modi 1-19 sei noch folgendes
gesagt:
In TT, MM, JJ dürfen auch Maskierungen vorkommen. In diesem
Fall werden TT bzw. MM nicht geprüft. In JJ ist die
Maskierung nur bei den Modi 1-9, 101-109, 201-209 erlaubt, da sonst
der Vergleich JJ < JT_SCHWELLE nicht durchgeführt werden kann.
Wird ein unzulässiger Modus angegeben oder ist die Länge
nach dem Umschlüsseln der Kurzbezeichnung größer als 6,
so wird für diesen Modus keine Änderung durchgeführt. Wird
ein ungültiges Format festgestellt (z. B. MM > 16, MM < 0,
TT > 35, TT < 0, falsche Länge, Maskierungen in JJ bei den
Modi 11-19, keine numerischen Zeichen und keine
Maskierungszeichen), so werden ebenfalls keine Änderungen vorgenommen.
Modus 80, Umschlüsselung über Datei ASSINKY In der Datei ASSINKY ist alter und neuer Schlüsselinhalt anzugeben und wird durch ein ; getrennt. Führende Leerzeichen gehöhren zum Schlüsselinhalt und nachfolgende Leerzeichen sind optional. Pro Satz ist immer genau ein Eintrag anzugeben.
- MVS und BS2000:
DD/Link-Name ASSINKY feste Satzlänge 80 - UNIX und Windows:
Datei KEY.TXT im Verzeichnis $ASS (siehe ASS.AIN) im Text-Format
Standardmäßig können bis zu 1000 Schlüsselinhalte umgeschlüsselt werden. Zur Zeit ist eine Vergrößerung nur über das Copy SST1769 möglich.
BEISPIELE
Arbeitsgebiet 1, in das im September 2013 zum letzten Mal eingespeichert wurde, soll zurückgeladen werden. Alle Schlüssel- und Werteangaben in Schlüssel- und Werte-DB sollen wieder mit diesen Angaben überschrieben werden.
PROGRAMM PCL1005,AGNR=01,DATUM=1309,ERSETZ
Arbeitsgebiet 2, in das im September 2013 zum letzten Mal eingespeichert wurde, soll zurückgesetzt werden. Alle Schlüssel- und Werteangaben in Schlüssel- und Werte-DB sollen wieder mit diesen Angaben überschrieben werden.
PROGRAMM PCL1005,AGNR=02,DATUM=1309,ERSETZ,LOESCHEN
Arbeitsgebiet 3, in das im September 2013 zum letzten Mal eingespeichert wurde, soll zurückgeladen werden. Da einige der im AG verwendeten Schlüssel und Werte auch in anderen Arbeitsgebieten verwendet werden, sollen nur solche Schlüssel und Werte in Schlüssel- und Werte-DB aktualisiert werden, die ausschließlich in diesem AG verwendet werden. (siehe auch BESONDERHEITEN: Verwendung PCL1015).
PROGRAMM PCL1005,AGNR=03,DATUM=1309
Arbeitsgebiet 4, in das im September 2013 zum letzten Mal eingespeichert wurde, soll auf das Arbeitsgebiet 5 kopiert werden, das noch nicht existiert.
PROGRAMM PCL1005,AGNR=04,DATUM=1309,AG_NEU=05,LOESCHEN
Es sollen die Schlüsselinhalte der Schlüssel 10 und 11 um das Jahrhundert ergänzt werden. Im Schlüssel 10 steht das Datum im Inhalt im Format JJMM, und es soll immer 19 für das Jahrhundert gesetzt werden. Im Schlüssel 11 steht das Datum in der Bezeichnung im Format TT.MM.JJ, und es soll in Abhängigkeit von JJ und JT_SCHWELLE (s. o.) 19 oder 20 für das Jahrhundert gesetzt werden. Beide Schlüssel kommen im Arbeitsgebiet 01 vor.
PROGRAMM PCL1005,AGNR=01,DATUM=1309,ERSETZ KENR=10, MODUS=2 KENR=11, MODUS=119
Für Schlüssel 120 in Arbeitsgebiet 01 wird die externe Länge von 4 auf 5 vergrößert. Den bereits existierenden Schlüsselinhalten soll jeweils eine Null voraus gestellt werden. Die alte externe Länge plus 30 ergibt den Modus, also 34.
PROGRAMM PCL1005,AGNR=01,DATUM=1309,ERSETZ KENR=120, MODUS=34
Falls nicht alle Schlüssel, die umgeschlüsselt werden sollen, in einem Arbeitsgebiet vorkommen, so kann man auch ein temporäres Arbeitsgebiet einrichten, alle gewünschten Schlüssel darin aufnehmen, einen PCL1004-Abzug erstellen und PCL1005 mit den gewünschten Vorlaufkarten laufen lassen.
BESONDERHEITEN
- Ein evtl. noch vorhandenes Arbeitsgebiet mit derselben Nummer wird vollständig überschrieben.
- Ohne die Option ERSETZ werden Schlüssel, die bereits in der Schlüssel-DB vorhanden sind, nicht geändert. Ebenso werden keinerlei Änderungen bei den Schlüsselausprägungen bzw. Gruppierungen dieser Schlüssel in der Schlüssel-DB vorgenommen. Schlüssel, die nicht in der Schlüssel-DB existieren, werden mit ihren Ausprägungen und Gruppierungen in die Schlüssel-DB eingefügt. Analog wird bei der Werte-DB verfahren.
Alle im abgezogenen AG verwendeten Schlüssel und Werte werden mit der Option ERSETZ zunächst vollständig (d.h. mit allen Ausprägungen, Gruppierungen und sonstigen Definitionen) aus Schlüssel- und Werte-DB gelöscht und anschließend von der Ladedatei zurückgeladen. Hierdurch können Erfassungsarbeiten, die zwischen Abzug und Neuladung durchgeführt wurden, verloren gehen.
Will man einen solchen Eingriff nicht bewusst in Kauf nehmen, um z.B. nach einer missglückten Einspeicherung mit neu aufgenommenen Ausprägungen den ursprünglichen Zustand der Schlüssel-DB wiederherzustellen, so sollte die Option ERSETZ nicht benutzt werden oder das Programm PCL1015 vorgezogen werden. (siehe Beschreibung PCL1015).
Jede Schlüsselausprägung erhält beim Speichern in die Schlüssel-DB eine interne Nummer, bezogen auf den jeweiligen Schlüssel. Mit dieser internen Nummer werden Informationen in Summendatenbanken abgelegt. Die Zuordnung Schlüsselausprägung <-> interne Nummer darf sich nicht ändern, da sonst Summendatenbanken inkonsistent werden.
Es ist also, insbesondere beim Bridgen von Arbeitsgebieten, darauf zu achten, dass sich die internen Nummern der Schlüsselausprägungen von Schlüsseln, zu denen bereits Daten in Summendatenbanken gespeichert sind, nicht ändern. D.h. die Option ERSETZ darf nur mit äußerster Sorgfalt benutzt werden.
Beim Kopieren eines Arbeitsgebietes ist darauf zu achten, dass die in der Vorlaufkarte angegebene Nummer nn des neuen Arbeitsgebiets noch nicht vergeben ist. Anderenfalls bricht PCL1005 mit einem entsprechenden Vermerk im Ablaufprotokoll ab.
Die Bezeichnung der Arbeitsgebietskopie wird von PCL1005 mit AG_KOPIEnn vorbelegt, die zugehörige Abkürzung mit AKOPnn.
3.4 Laden Arbeitsgebiet ohne Parameter-DB's PCL1015
FUNKTIONSBESCHREIBUNG
Mit dem Programm PCL1015 kann ein mit PCL1004 erstellter Abzug eines Arbeitsgebietes in die Steuerungs-DB zurückgeladen werden. Im Gegensatz zu PCL1005 nimmt PCL1015 dabei keine Veränderungen in Schlüssel- und Werte-DB vor.
Durch einen Parameter in der Vorlaufkarte (LOESCHEN) kann man die Steuerungs-DB initialisieren. Durch dieses Löschen der Konsistenzfelder wird ein Zustand hergestellt, als wäre noch keine Einspeicherung zu diesem Arbeitsgebiet erfolgt.
Soll ein Arbeitsgebiet zurückgesetzt werden, um eine Erst- oder Folgeeinspeicherung nochmals durchzuführen, so sollte das Programm PCL1015 dem Programm PCL1005 auf jeden Fall vorgezogen werden, wenn nicht bewusst korrigierende Änderungen in Schlüssel- oder Wertedatenbank vorgenommen werden sollen. (siehe Beschreibung PCL1005).
ABLAUF
1 Steuerungs-DB DST003 DST031/DST032/DST033 (DLI) $ASSDB/DST003 (PC) 2 Ladebestand DATEI $ASS/AG.EBC (PC) 3 Vorlaufkarte SYSIN $ASSVLK/T1015.VLK (PC) 5 Protokoll PROTO $ASSPTK/PCL1015.PTK (PC) 6 Steuerungs-DB |
VORLAUFKARTE
Für den Programmlauf ist eine Vorlaufkarte mit folgendem Aufbau anzugeben:
Inhalt | Bemerkung |
---|---|
PROGRAMM PCL1015 | Muss vorhanden sein als Bestandteil der Vorlaufkartenprüfung. |
AGNR=nn | Muss vorhanden sein als Bestandteil
der Vorlaufkartenprüfung. nn = Zahl zwischen 01 und 300 |
DATUM=???? | Muss vorhanden sein. Erwartet in der Form JJMM bzw. JJMMTT das Datum der letzten Einspeicherung (siehe ST06). Muss identisch mit dem Datum im abgezogenen Arbeitsgebiet (PCL1004) sein, das als Datum der letzten Einspeicherung ausgewiesen ist. Die Angabe von XXXX ist ebenso möglich. Falls noch keine Daten eingespeichert wurden, muss diese Angabe gemacht werden. |
,LOESCHEN | Nur bei Bedarf anzugeben. Beim Laden werden sämtliche Konsistenzfelder gelöscht. Das Arbeitsgebiet wird zurückgesetzt. Nach Löschen der zugehörigen Summen-DB kann eine neue Ersteinspeicherung erfolgen. |
BESONDERHEITEN
Normalerweise wird die Datumsangabe der Vorlaufkarte gegen das Datum der letzen Einspeicherung im Arbeitsgebietsabzug geprüft. Damit soll verhindert werden, dass falsche Abzüge zurückgeladen werden. Wird in der Vorlaufkarte DATUM=XXXX angegeben, so entfällt diese Prüfung.
BEISPIELE
Arbeitsgebiet 1, in das im September 2013 zum letzten Mal eingespeichert wurde, soll zurückgeladen werden.
PROGRAMM PCL1015,AGNR=01,DATUM=1309
Arbeitsgebiet 2, in das im September 2013 zum letzten Mal eingespeichert wurde, soll zurückgesetzt werden.
PROGRAMM PCL1015,AGNR=02,DATUM=1309,LOESCHEN
Wie PCL1005 setzt auch PCL1015 einen im EBCDIC-FOrmat vorliegenden Abzug nach ASCII um und umgekehrt.
3.5 Sichern Anforderungsdatenbank PCL1044
FUNKTIONSBESCHREIBUNG
Mit dem Programm PCL1044 kann eine logische Sicherung der Anforderungs-DB vorgenommen werden. Die Anforderungs-DB wird dabei in eine sequentielle Datei geschrieben.
Bei Bedarf kann über Vorlaufkarten der Abzug auf Teile der Anforderungs-DB beschränkt werden. Diese Aufteilung ist nach Bibliotheksarten und Namensintervallen möglich. Gleichzeitig ist es möglich während des Abzugs Arbeitsgebietsnummern innerhalb von Bibliothekselementen umzusetzen. Dieses geschieht ebenfalls über Angaben in der Vorlaufkarte.
PCL1044 kann außerdem dazu benutzt werden, die Anforderungs-Datenbank nach einem bestimmten Begriff zu durchsuchen.
ABLAUF
1 Anforderungs-DB //DST004 //DST041 (DLI) $ASSDB/DST004 (PC) 2 Vorlaufkarte //ASSCO $ASSVLK/T1044.VLK (PC) 3 Ablauf- und Fehlerprotokoll //ASSLST $ASSPTK/PCL1044.PTK (PC) 4 Ausgabedatei //ASSLIA $ASS/ASSLIA.EBC (PC) fixe Satzlänge 96 Ladedatei für PCL1045 |
VORLAUFKARTE: ASSCO
In der ersten Karte können Selektionskriterien und Optionen angegeben werden oder sie muss leer bleiben.
Selektionskriterien beziehen sich auf das Erstelldatum
von Anforderderungen, Gruppierungen, Formeln und
Parameterfilter.
Folgende Angaben sind zulässig:
- ERSTELLDATUM < ttmmjj
- ERSTELLDATUM > ttmmjj
Es werden nur die Elemente abgezogen, deren Erstelldatum größer oder kleiner oder größer und kleiner als das bei ERSTELLDATUM angegebene Datum ist (je nach Angaben). Größer bzw. kleiner wird hier chronologisch verstanden. Bei Änderungen gilt das Änderungsdatum als Erstelldatum.
ERSTELLDATUM wirkt zusätzlich zu den Angaben in den Folgekarten (s.u.).
In den folgenden Karten können bis zu 50 optionale Namensintervalle, auch getrennt nach den Bibliotheksarten, angegeben werden.
Eine Vorlaufkarte kann wie folgt aufgebaut sein:
Eine gültige Vorlaufkarte muss auf jeden Fall eine VON-Angabe enthalten. Wird keine Bibliotheksart spezifiziert, so nimmt ASS als Standard alle Bibliotheksarten in der Reihenfolge B, E, G, H, I, J, P, U, V, W, X, Y, R.
Wird keine BIS-Angabe präzisiert, so werden alle Anforderungen und Anwendungen der Bibliothek(en) abgearbeitet, deren Namen, vom Anfang her gesehen, die in NAME-VON angegebene Zeichenkette enthalten, falls NAME-VON keine Fragezeichen enthält. Wird eine Maskierungsangabe gemacht, so werden alle Anforderungen und Anwendungen bearbeitet, die mit NAME-VON übereinstimmen, wobei ein Fragezeichen in NAME-VON für ein beliebiges Zeichen steht.
Die Namensintervalle dürfen sich nicht überlappen. Des weiteren darf auf einer Karte höchstens ein Intervall angegeben werden.
Die Auswahl der Elemente der Anforderungsdatenbank erfolgt dergestalt, dass die Anfangszeichen des Namens in ein Namensintervall passen müssen, unter Berücksichtigung der Bibliotheksart. Damit eine Listanforderung bearbeitet wird, muss also für ihren Namen gelten:
NAME-VON <= Anforderungsname <= NAME-BIS
bzw. NAME-VON <= Anwendungsname <= NAME-BIS
BEISPIEL:
- Maskierungen
Es sollen alle periodisch auszuführenden Anforderungen abgezogen werden, deren Name mit 'AG' beginnt und mit 'ANF' endet.1. Vorlaufkarte: 2. Vorlaufkarte: E: AG???ANF
Steht in der 2. Vorlaufkarte 'E: AG???', so werden alle Anforderungen der Bibliothek E abgezogen, deren Name maximal fünfstellig ist und mit AG beginnt. - Intervalle
Es sollen sämtliche Elemente der Anforderungsdatenbank
abgezogen werden, deren Name mit 'ASSPC' beginnt,
außerdem die einmalig oder periodisch ausführbaren
Elemente, deren Namen im Intervall 'AG01' bis 'AG50'
liegen und schließlich noch sämtliche Formeln:
1. Vorlaufkarte: 2. Vorlaufkarte: ASSPC 3. Vorlaufkarte: E: AG01 - AG50 4. Vorlaufkarte: P: AG01 - AG50 5. Vorlaufkarte: X:
Außerdem können in den Vorlaufkarten 2 - n Angaben der Form
AGNR: AGNR_ALT > AGNR_NEU
also z.B.:
AGNR: 2 > 24
gemacht werden. Hierdurch wird in allen abgezogenen Elementen die Arbeitsgebietsnummer 2 nach 24 umgesetzt.
SUCHFUNKTION
Die Anforderungsdatenbank (bzw. die durch die obigen Einschränkungen definierten Elemente) kann außerdem mit PCL1044 nach einem beliebigen Begriff durchsucht werden. Dies geschieht mit der Vorlaufkartenoption SUCHE, gefolgt vom zu suchenden Begriff. Die Suche ist nicht case-sensitiv. Enthält der Suchbegriff Leer- oder sonstige Trennzeichen, muss er in Hochkommata gesetzt werden. Bei Anforderungen wird nicht der Teil durchsucht, welcher Aufbereitungsangaben für ASS-Excel enthält, da diese kein lesbares Format haben.
Bei der Suchfunktion wird kein Datenbankabzug erstellt, die Treffer werden im Protokoll ausgegeben.
BESONDERHEITEN
Eine Weiterverarbeitung der Ausgabedatei mit den Programmen PCL1003 (BATCH-Auswertung) und PCL1012 (Abzug von Anforderungen auf sequentielle Datei) ist nicht möglich. Mit den Programmen PCL1044/PCL1045 können Anforderungen und Anwendungen aus der Testumgebung in die Produktion übernommen werden (Bridgen von Anforderungen/Anwendungen).
3.6 Laden Anforderungsdatenbank PCL1045
FUNKTIONSBESCHREIBUNG
Mit dem Programm PCL1045 kann der mit dem Programm PCL1044 erstellte sequentielle Abzug der Anforderungsdatenbank auf diese zurückgeladen werden.
Dabei werden nur die Elemente der Anforderungsdatenbank ausgetauscht oder optional hinzugefügt, die auf dem sequentiellen Abzug enthalten sind. Der Rest der Anforderungsdatenbank bleibt also unverändert erhalten.
Die Elemente werden so zurückgeschrieben, wie sie mit PCL1044 gesichert worden sind. Bei einmal und periodisch auszuführenden Listanforderungen wird also das Ausführungsdatum stets durch das Datum aus dem sequentiellen Abzug überschrieben.
Mit dem Programm PCL1045 können Anwendungen von der
Anforderungsdatenbank gelöscht werden, sowie Anwendungen kopiert
werden. Zum Löschen und Kopieren muss der vom Programm PCL1044
erstellte Datenbankabzug vorhanden sein (notfalls eine leere
Datei). Das PCL1045 führt zuerst alle Löschungen der
Anwendungen mit den dazugehörigen Regelsätzen durch.
Die Anwendungsnummern sind in den Vorlaufkarten des PCL1045
mit der Zusatzangabe LOESCHEN anzugeben.
Anwendungen auf dem Datenbankabzug können einschließlich
ihrer Regelsätze durch entspr. Angabe in den Vorlaufkarten
unter einer anderen Nummer und einem anderen Namens
auf die Anforderungsdatenbank geladen werden.
Eine Anwendung kann in einem PCL1045-Lauf nicht mehrfach
kopiert werden. Ist schon eine Anwendung mit der neu zu
vergebenden Nummer auf der Datenbank vorhanden, wird das
Kopieren nicht ausgeführt, d. h. der alte Datenbankeintrag
bleibt erhalten. Gegebenenfalls muss die alte Anwendung
mit der Angabe LOESCHEN von der Datenbank zunächst gelöscht
werden.
Sollen Anforderungen von einem Betriebssystem auf ein anderes übertragen werden (Migration), so kann durch entsprechende Vorlaufkarten-Optionen eine Code-Anpassung (Translation) erreicht werden (s.u.).
ABLAUF
1 Eingabedatei //ASSLIA $ASS/ASSLIA.EBC (PC) (siehe Anmerkung) 2 Vorlaufkarte //ASSCO $ASSVLK/T1045.VLK (PC) 3 Ablauf- und Fehlerprotokoll //ASSLST $ASSPTK/PCL1045.PTK (PC) 4 Anforderungs-DB //DST004 //DST041 (DLI) $ASSDB/DST004 (PC) |
Anmerkung: ASSLIA wird bei folgenden Optionen nicht gebraucht:
- ANF_CACHE
- BEARBEITE_HIERARCHIE
- DEL_EXCEL_FORM
- DEL_HTML_FORM
- REPARIERE_HIERARCHIE
VORLAUFKARTE: ASSCO
ACHTUNG: In der Vorlaufkarte werden nur die ersten 72 Spalten berücksichtigt.
Auf der ersten Vorlaufkarte ist folgende Option möglich:
ERGAENZEN
Bei der Option ERGAENZEN werden nur die Elemente von ASSLIA (Datei mit gesicherten Anforderungen) auf die Anforderungsdatenbank geladen, die noch nicht auf dieser vorhanden sind. Ohne diese Option werden alle Elemente von ASSLIA übertragen, auch wenn es dabei zu Überschreibungen kommt.
Analog zum PCL1044 können auf den folgenden Vorlaufkarten bis zu 50 optionale Namensintervalle, auch getrennt nach Bibliotheksarten angegeben werden. In diesem Fall werden nur diejenigen Elemente in der Datei ASSLIA auf die Anforderungsdatenbank zurückgeladen, die in einem der angegebenen Intervalle liegen. Erfolgt keine Angabe, so wird die gesamte Datei ASSLIA zurückgeladen.
Auf der ersten Vorlaufkarte ist folgende Option möglich:
MOVE > Bib
wobei für Bib die Bibliotheken von ASS-Anforderungen
zulässig sind (B, E, P, G, H, I, J).
Bei der Option MOVE werden alle ASS-Anforderungen (Bib =
B, E, P, G, H, I oder J), die im PCL1044-Abzug enthalten
sind, in die bei MOVE genannte Bibliothek gespeichert
und aus der ursprünglichen Bibliothek gelöscht.
Ist die Option ERGAENZEN gesetzt, so erfolgt ein Speichern
und Löschen nur, wenn das Zielelement noch nicht
existiert.
Gibt es Anforderungen mit gleichem Namen, jedoch
unterschiedlicher Bibliothek im PCL1044-Abzug, so ist
folgendes zu beachten:
- Option ERGAENZEN gesetzt:
Das erste Element der Elemente mit gleichem Namen aus der Abzugsdatei gewinnt (falls in der Ziel-Bibliothek überhaupt noch kein Element dieses Namens existiert). - Option ERGAENZEN nicht gesetzt:
Das letzte Element der Elemente mit gleichem Namen aus der Abzugsdatei gewinnt.
Ein Programmlauf mit der Option MOVE gilt als Sonderlauf, d.h. zusätzlich zur MOVE-Angabe ist nur die Option ERGAENZEN zulässig (keine sonstigen Angaben in der/den Vorlaufkarten).
Eine der Vorlaufkarten 2 - 51 kann wie folgt aufgebaut sein:
Eine gültige Vorlaufkarte muss auf jeden Fall eine VON-Angabe
enthalten. Wird keine Bibliotheksart spezifiziert, so nimmt
ASS als Standard alle Bibliotheksarten in der Reihenfolge
B, E, G, H, I, J, P, U, V, W, X, Y, R.
Mit dem Zusatz ,LOESCHEN wird der ganze Bereich gelöscht.
Wird keine BIS-Angabe präzisiert, so werden alle Anforderungen und Anwendungen der Bibliothek(en) abgearbeitet, deren Namen, vom Anfang her gesehen, die in NAME-VON angegebene Zeichenkette enthalten.
Die Namensintervalle dürfen sich nicht überlappen. Des weiteren darf auf einer Karte höchstens ein Intervall angegeben werden.
Die Auswahl der Elemente der Anforderungsdatenbank erfolgt dergestalt, dass die Anfangszeichen des Namens in ein Namensintervall passen müssen, unter Berücksichtigung der Bibliotheksart. Damit eine Listanforderung bearbeitet wird, muss also für ihren Namen gelten:
NAME-VON <= Anforderungsname <= NAME-BIS
bzw. NAME-VON <= Anwendungsname <= NAME-BIS
Will man ohne diese Vorlaufkartenoption arbeiten, so ist ASSCO
auf Dummy zu setzen (Job-Control).
Löschen von Anwendungen
anw: nnnnn, LOESCHEN- nnnnn :
Nummer der Anwendung, die von der Datenbank gelöscht werden soll; - LOESCHEN :
muss als Option angegeben werden
Kopieren von Anwendungen
anw: nnnnn > mmmmm, name- nnnnn :
Nummer der Anwendung, die kopiert werden soll; - mmmmm :
neue Nummer, die die Anwendung erhalten soll; - name :
neuer Name der Anwendung, Angabe optional (fehlt name, darf das Komma nicht angegeben werden)
Es besteht des Weiteren die Möglichkeit DEL_EXCEL_FORM oder DEL_HTML_FORM anzugeben. Steht in der ersten Vorlaufkarte einer der obigen Texte, so werden bei den in den Folgekarten spezifizierten Anforderungen die zugehörigen Excel- bzw. HTML-Formate gelöscht. Die beiden Lösch-Optionen können gleichzeitig gesetzt werden. Die Optionen DEL_EXCEL_FORM bzw. DEL_HTML_FORM können nicht gleichzeitig mit anderen Verarbeitungsoptionen kombiniert werden. Bei beiden Optionen wird der PCL1044-Abzug ASSLIA nicht gebraucht.
Die Anforderungen, bei denen die Formatteile für Excel bzw. HTML gelöscht werden sollen, können in den Folgekarten wie folgt spezifiziert werden.
Die Angabe von Bibliotheksart und Name-von ist obligatorisch. In Name-von dürfen auch Masken stehen. Die Angabe von Name-bis ist optional und nur zulässig, falls in Name-von keine Maske steht. Zudem muss Name-bis alphanumerisch größer oder gleich Name-von sein und darf selbst keine Maske sein. Die Angaben für Name-von und Name-bis dürfen nur maximal 8 Zeichen lang sein.
BEISPIELE für Folgekarten zu DEL_EXCEL_FORM:
- B:ANF1
Der Excel-Formatteil zur Anforderung ANF1 in Bibliothek B wird gelöscht. - E:VERTR1-VERTR9
Der Excel-Formatteil zu den Anforderungen aus Bibliothek E, deren Name alphanumerisch zwischen VERTR1 und VERTR9 liegt, wird gelöscht. - P:?BILANZ?
Bei den Anforderungen aus Bibliothek P, deren Name zur Maske ?BILANZ? passt (z.B. DBILANZ3, 5BILANZU, etc.), wird der Formatteil für das Excel-Format gelöscht.
ANF_CACHE:
Soll der Anforderungscache initialisiert werden, so kann dies mit einem Sonderlauf von PCL1045 durchgeführt werden. Hierzu ist in der 1. Vorlaufkarte ANF_CACHE anzugeben. Es wird dann die Anforderungs-Datenbank durchgelesen und alle Elemente der Anforderungs-Datenbank, die in den Anforderungs-Cache gehören, werden in diesen gespeichert. Achtung: Dieser Lauf setzt einen gelöschen bzw. initialisierten Anforderungs-Cache voraus. Siehe auch Handbuch HINSTALL.
BESONDERHEITEN
PCL1045 kann nur Abzüge des Programmes PCL1044 verarbeiten.
Mit den Programmen PCL1044/PCL1045 können Anforderungen und Anwendungen aus der Testumgebung in die Produktion übernommen werden (Bridgen von Anforderungen/Anwendungen). Die für Auswertungen im Batch ebenfalls in sequentieller Form vorliegenden Anforderungen - via Editor erstellt bzw. mittels PCL1012 aus der Anforderungsdatenbank angeleitet - können auf diese Weise nicht in die Anforderungsdatenbank geladen werden.
ACHTUNG:
In einer IMS-Umgebung darf kein Lade-PSB benutzt werden.
MIGRATION
Für Migrationen können in der Vorlaufkarte Optionen angegeben werden, mit denen Anforderungen in andere Code's übersetzt werden können. Folgende Angaben sind möglich:
BS2000_MVS : BS2000-EBCDIC -> MVS-EBCDIC BS2000_ANSI : BS2000-EBCDIC -> ANSI (Unix) MVS_BS2000 : MVS-EBCDIC -> BS2000-EBCDIC MVS_ANSI : MVS-EBCDIC -> ANSI (Unix) OS2_ANSI : Windows -> ANSI (Unix) ANSI_OS2 : ANSI (Unix) -> Windows
In einer PC-Umgebung wird ein am Großrechner erstellter Abzug auch ohnen Angabe einer Option automatisch von EBCDIC an ASCII übertragen.
3.6.1 Verzeichnisse auf der AnforderungsDB einpflegen PCL1045
Mit dem PCL1045 können auf der Anforderungsdatenbank Hierarchien eingepflegt werden. Dabei werden unter der Bibliotheksart S gesonderte Informationen abgelegt. Die Anforderungen und Anwendungen auf die Bezug genommen wird, werden durch die Anlage von Hierarchien nicht geändert.
AUFBAU DER ERSTEN VORLAUFKARTE
BEARBEITE_HIERARCHIE
oder
BEARBEITE_HIERARCHIE ANSI
Steht in der ersten Vorlaufkarte der Text BEARBEITE_HIERARCHIE,
so kann gemäß den Angaben in den Vorlaufkarten 2 bis 51 eine
Hierarchie aus Bäumen für Verzeichnispfade zu den Anwendungen
bzw. Anforderungen bearbeitet werden.
Unter Windows arbeitet ASS intern und bezüglich der Vorlaufkarte im OS/2-Zeichensatz, während Windows standardmäßig mit ANSI arbeitet. Damit keine Probleme mit den deutschen Umlauten auftreten, kann man mittels der Option ANSI angeben, dass die Verzeichnispfade im ANSI-Zeichensatz behandelt werden. Unter IBM und Siemens sollte man diese Option nicht benutzen, da ASS dann im EBCDIC-Zeichensatz arbeitet. Ebenso sollte diese Option unter Unix nicht benutzt werden.
AUFBAU DER VORLAUFKARTEN 2 BIS 51
Eine der Vorlaufkarten 2 - 51 kann wie folgt aufgebaut sein:
Eine gültige Vorlaufkarte muss auf jeden Fall die Bibliotheksart und eine VON-Angabe enthalten. Diese VON-Angabe muss für Anwendungen eine Zahl zwischen 1 und 32767 sein, ansonsten eine alphanumerische Zeichenkette mit maximal 8 Zeichen. In dieser Zeichenkette können an beliebiger Position ? als Platzhalter für ein beliebiges Zeichen stehen, sodass eine Maske entsteht.
Wird keine BIS-Angabe präzisiert, so werden alle Anforderungen
der Bibliothek abgearbeitet, deren Namen mit NAME-VON
übereinstimmen bzw. zur in der VON-Angabe spezifizierten Maske
passen.
Bei Anwendungen wird genau die Anwendung mit der angegebenen
Nummer behandelt.
Werden VON- und BIS-Angabe spezifiziert, so müssen bei
Anwendungen Intervallunter- und Intervallobergrenze als
Anwendungsnummer und bei Anforderungen konkrete maximal 8-stell.
Zeichenketten (also keine Masken) angegeben werden.
Hinter dem Pfeil ('->') folgt die Angabe des Verzeichnispfades,
in welchem die Anforderung(en) bzw. Anwendung(en) eingefügt
bzw. gelöscht werden soll(en).
Für den Verzeichnispfad gelten folgende Beschränkungen:
- der Verzeichnispfad darf maximal 2000 Zeichen lang sein;
- ein Verzeichnisname darf maximal 256 Zeichen lang sein;
- der Verzeichnispfad darf maximal die Tiefe 10 haben;
- die Gesamtlänge der Verzeichnispfad-Angaben in den Vorlaufkarten 2 bis 51 darf 32000 Zeichen nicht überschreiten;
- die Verzeichnisnamen im Pfad sind durch '/' zu trennen;
Erlaubte Zeichen in einer Verzeichnispfadangabe sind
- Ziffern
- Buchstaben (Klein- und Großbuchstaben) incl. deutscher Umlaute, außer 'ß' (unter Unix und Windows siehe auch Option ANSI bzgl. Umlaute)
- Sonderzeichen:
- '.' (Punkt)
- ':' (Doppelpunkt)
- '_' (Unterstrich)
- '#' (Doppelkreuz/Raute)
- '-' (Minus/Bindestrich)
- '+' (Plus)
- '*' (Stern)
- '@' (Klammeraffe/At-Symbol)
- '$' (Dollar)
- '%' (Prozent)
- ')' (schließende Klammer)
- '(' (öffnende Klammer)
- '=' (Gleichheitszeichen)
- '&' (Kaufmännisches Und)
- '"' (doppeltes Anführungszeichen)
- Nicht erlaubt sind insbesondere Leerzeichen.
Eine Verzeichnispfadangabe darf sich über mehrere Zeilen erstrecken, wobei die maximal 72 Zeichen lange Zeile mit ' >'-Zeichen fortgesetzt werden kann.
Beim Löschen bzw. Einfügen in Verzeichnissen finden stets die folgenden beiden Aktionen synchronisiert statt:
- Einfügen bzw. Löschen eines zur Anforderung/Anwendung gehörenden Verzeichnisses als Attribut der Anforderung/ Anwendung bei der Anforderung/Anwendung selbst
- Einfügen bzw. Löschen einer Anforderung/Anwendung in einer Baumhierarchie in der Bibliothek S auf der Anforderungs-DB
Zudem kann noch ein leeres Verzeichnis in der Baumhierarchie
mit einem Vorlaufkarteneintrag nach folgendem Muster
gelöscht werden:
-> Verzeichnispfad (,LOESCHEN)
Ein Vorlaufkarteneintrag nach z.B. folgendem Muster
*: ******** - ******** ,LOESCHEN
veranlasst das Löschen der spezifizierten Anforderungen
bzw. Anwendungen aus allen Verzeichnissen.
Da bei Anforderungen bzw. Anwendungen gespeichert ist, in welchen Verzeichnissen sie enthalten sind, kann mit REPARIERE_HIERARCHIE die Baumhierarchie neu aufgebaut werden. REPARIERE_HIERARCHIE wird in der ersten Vorlaufkarte angegeben, die folgenden Vorlaufkarten bleiben leer.
BEISPIELE für Folgekarte zu BEARBEITE_HIERARCHIE:
- B:ANF1 -> /Vertrieb/Anforderungen/
Die Anforderung 'ANF1' aus Bibliothek B wird in das Verzeichnis 'Anforderungen' gemäß dem Pfad '/Vertrieb/Anforderungen/' eingefügt. Die Anforderung 'ANF1' wird dort als 'B:ANF1' gelistet. Bei der Verzeichnispfadangabe sind der führende und der abschließende Schräger ('/') optional.
Die Angabe in NAME-VON (hier 'ANF1') ist nicht case-sensitiv, d.h., Groß- und Kleinschreibung werden nicht unterschieden (hier also: 'Anf1'='anf1'='aNF1'= ... ). Gleiches gilt auch für die Verzeichnispfadangabe. Die noch nicht vorhandenen Verzeichnisse werden bei einer Einfügung neu angelegt. - E:LE?? -> /Rechnungswesen/Einmalig
Alle zur Maskierung 'LE??' (='Le??'='lE??'='le??') passenden Anforderungen aus der Bibliothek E werden gemäß dem Pfad '/Rechnungswesen/Einmalig' in das Verzeichnis 'Einmalig' eingefügt. - Y:1 - 100 -> /BTO/Anwendungen/
Alle Anwendungen mit Nummern zwischen 1 und 100 werden in das angegebene Verzeichnis eingefügt. - B:C??A????,LOESCHEN
Alle Anforderungen aus Bibliothek B, deren Name mit 'C' beginnt und an 4. Stelle ein 'A' aufweist, werden in allen vorhandenen Verzeichnissen gelöscht. Das Schlüsselwort 'LOESCHEN' nach dem Komma muss vollständig groß geschrieben werden. - -> BTO/Anwendungen/unwichtig,LOESCHEN
Das Verzeichnis 'unwichtig' wird gelöscht, sofern das Verzeichnis bereits leer ist.
3.6.2 Füllen des Anforderungscache PCL1045
Installationsabhängig kann für die Elemente der Anforderungsdatenbank ein Cache eingerichtet werden. Neben Verwaltungsinformationen zu jedem Element werden die Kommentare mit abgelegt. Das Nutzen des Caches führt zu Performance-Gewinnen in den Masken / Bildern, in denen Anforderungen, Gruppierungen, Formeln usw. in Übersichten dargestellt werden, insbesondere bei Anforderungsdatenbanken, die viele Elemente enthalten.
Die Angabe ANF_CACHE baut den Anforderungscache auf. Diese Angabe kann auch für einen Neuaufbau des Caches verwendet werden, da zunächst alte Elemente aus dem Cache gelöscht werden.
3.6.3 Option ERSTELL_KORR
Seit ASS 8.10 wird in der Bibliotheksübersicht bei jedem
Element dessen Ersteller angezeigt. Dabei handelt es sich um
den ASS-Benutzer im Sinne der ST09, der das Element zuletzt
abgespeichert hat. Ist der Ersteller nicht als Benutzer,
sondern direkt über sein Berechtigungsprofil angemeldet, gilt
als Ersteller der Name des Profils. Seit ASS 8.50 wird im ersten
Fall auch das zum Speicherzeitpunkt vom Benutzer ausgewählten
Profil angezeigt (s. Handbuch ASS-Excel, Kap. 1.1.1).
Dasselbe gilt für die Übersichten, die mit PCL1139 erstellt
werden.
Problem: Das Profil kann nur bei Elementen angezeigt werden,
die mit einer ASS-Version 8.50 oder höher abgespeichert wurden.
Außerdem werden beim Ersteller aufgrund eines veralteten Features
nur die ersten 6 Zeichen angezeigt, wenn das Element mit ASS 8.00
oder älter gespeichert wurde.
Das Profil und die beiden letzten Zeichen des Erstellers können
deshalb durch einen „Korrekturlauf“ von PCL1045 ergänzt werden.
ACHTUNG: Dies ist jedoch nur für die Bibliotheken B, E, P, G, H, I
und J möglich!
Hierfür ist in der Vorlaufkarte die Option „ERSTELL_KORR“ anzugeben
(ohne weitere Optionen). Es können keine Einschränkungen auf bestimmte
Elemente angegeben werden, PCL1045 durchläuft immer alle oben genannten
Bibliotheken und braucht daher auch keinen PCL1044-Abzug der
Anforderungsdatenbank.
Dieser Korrekturlauf muss nur einmal ausgeführt werden.
3.7 Sichern Textdatenbank PCL1104
FUNKTIONSBESCHREIBUNG
Mit dem Programm PCL1104 kann eine logische Sicherung der Textdatenbank oder Teilen davon vorgenommen werden. Die Textdatenbank wird dabei in eine sequentielle Datei geschrieben.
ABLAUF
1 Textdatenbank //DST007 //DST071 (DLI) //$ASS/DST007 (PC) (lesen und ändern) 2 Eingabedatei //ASSTEIN $ASSVLK/T1104.VLK (PC) Von der Textdatenbank abzuziehende Texte. optional 3 Ablauf- und Fehlerprotokoll //Liste $ASSPTK/PCL1104.PTK (PC) 4 Ausgabedatei //ASSTE $ASS/ASSTE.EBC (PC) Ladedatei für PCL1105 |
EINGABEDATEI ASSTEIN
Die Datei ASSTEIN ist im Format FB 80 anzulegen. In dieser Datei
können die von der Textdatenbank sicherzustellenden Sätze
angegeben werden. Fehlt die Dateiangabe, so wird die gesamte
Textdatenbank gesichert. Jeder einzelne Satz in ASSTEIN hat den
folgenden Aufbau: SPRACHE TEXTART TEXTNUMMER
Beispiel: D H 270
Die Angaben dürfen nur in den ersten 72 Spalten der Datei erfolgen. Auch in einer PC-Umgebung wird die Ausgabedatei im EBSDIC-Zeichensatz erzeugt.
3.8 Laden Textdatenbank PCL1105
FUNKTIONSBESCHREIBUNG
Mit dem Programm PCL1105 kann der mit dem Programm PCL1104 erstellte sequentielle Abzug der Textdatenbank auf diese zurückgeladen werden. Dabei werden nur die Elemente der Textdatenbank ausgetauscht oder hinzugefügt, die auf dem sequentiellen Abzug enthalten sind. Der Rest der Textdatenbank bleibt also unverändert erhalten.
ABLAUF
1 Eingabedatei //ASSTE $ASS/ASSTE.EBC (PC) 2 Ablauf- und Fehlerprotokoll //LISTE $ASSPTK/PCL1105.PTK (PC) 3 Textdatenbank //DST007 //DST071 (DLI) $ASSDB/DST007 (PC) |
3.9 Sichern der Security-DB PCL1194
FUNKTIONSBESCHREIBUNG
Mit Hilfe des Programms PCL1194 kann die Security-Datenbank gesichert werden. Der Inhalt der Security-Datenbank wird auf eine binäre sequentielle Datei geschrieben. Ab Version 7.90 besteht auch die Möglichkeit, die Einträge der Datenbank auf eine semikolonseparierte Textdatei auszugeben. Diese kann dann ggf. editiert und mit PCL1195 zurückgeladen werden.
ABLAUF
Dateibeschreibung
DD-Name / Link-Name |
Format/Recl | Dateiname ASS-PC | Beschreibung |
---|---|---|---|
ASSCO | FB 80 | $ASSVLK/T1194.VLK | Vorlaufkarte |
ASSLST | FB | $ASSPTK/PCL1194.PTK | Protokoll, 80-spaltig in den Spalten 7 bis 86 |
ASSOSC | VB 20000 | $ASS/ASSOSC.DAT | binärer Abzug der Security-DB (nicht bei Option EXIT_TEXT) |
ASSSC | FB 400 | $ASS/ASSSC.CSV | Abzug der Security-DB im Text-Format (nur bei Option EXIT_TEXT) |
VORLAUFKARTE
Option | Bedeutung |
---|---|
EXIT_TEXT (CSV) |
Die Inhalte der Security-Datenbank werden in eine Textdatei ausgegeben.
Wird diese Option nicht angegeben, werden alle folgenden Optionen ignoriert. |
OHNE_HOCHKOMMA | Standardmäßig werden die Einträge in der Security-DB in doppelten Hochkommas eingeschlossen ausgegeben. Mit dieser Option kann dies unterdrückt werden. |
SPITZKLAMMERN | Alle Einträge für Schlüsselinhalte und Anforderungen werden in spitze Klammern <> gesetzt. Damit wird erreicht, dass führende Nullen beim Laden in Excel erhalten bleiben. |
DUMSP | Es werden in jeder Zeile bei Bedarf so viele Semikolons angefügt, dass alle Zeilen die gleiche Spaltenanzahl haben. |
PROFILE_AUFLOESEN (AUFLOESEN) |
Gibt es zu einer Berechtigung Einträge bei Profilen (PR), so werden intern diese Profile eingelesen und aufgelöst, so dass man bei diesem Benutzer die tatsächlichen Berechtigungen sehen kann. Falls das Auflösen nicht möglich ist erscheint ein Fehler im Protokoll. |
BE | Nur Berechtigungen werden ausgegeben. |
ZU | Nur die Informationen über Summen-DB-Zugriffe werden ausgegeben. |
PR | Nur die angelegten Benutzer werden ausgegeben |
ME | Nur die angelegten Mail-Empfänger werden ausgegeben. |
MV | Nur die angelegten Mail-Verteiler werden ausgegeben. |
PW | Falls ein ST09-Passwort angelegt ist, wird ein Satz ausgegeben, bei dem das Passwort durch Sterne ersetzt wird. |
Die Optionen BE, ZU, PR, ME, MV und PW können miteinander kombiniert werden.
3.10 Laden der Security-DB PCL1195
FUNKTIONSBESCHREIBUNG
Mit Hilfe des Programms PCL1195 kann eine mit dem Programm
PCL1194 erstellte Sicherung der Security-Datenbank auf diese
zurückgeladen werden. Es werden nur Elemente der Security-DB
ausgetauscht oder hinzugefügt, die in der Eingabedatei
enthalten sind, der Rest der Security-DB bleibt also unverändert.
Zusätzlich zu dieser Funktion, ist es möglich, über eine
Schnittstellendatei Berechtigungen, PC-Empfänger,
E-mail-Empfänger und E-mail-Verteiler auf die Security-DB zu laden.
ABLAUF
DD-Name / Link-Name |
Format/Recl | Dateiname ASS-PC | Beschreibung |
---|---|---|---|
ASSCO | FB 80 | $ASSVLK/T1195.VLK | Vorlaufkarte |
ASSLST | FB 133 | $ASSPTK/PCL1195.PTK | Protokoll, 80-spaltig in den Spalten 7 bis 86 |
ASSISC | VB 20000 | $ASS/ASSOSC.DAT | binärer Abzug der Security-DB (nicht bei Option EXIT_TEXT) |
ASSIN01 | FB/VB | $ASS/ASSSC.CSV | Abzug der Security-DB im Text-Format (nur bei Option EXIT_TEXT) |
VORLAUFKARTE
- EXIT_TEXT(CSV)
Die Inhalte der Security-Datenbank werden von einer Textdatei (semikolonsepariert) eingelesen. - PRUEFEN
Die Eingabedatei wird lediglich auf fehlerhafte Angaben überprüft, es erfolgt kein Zugriff auf die Datenbank (nur bei Option EXIT_TEXT)
Für Migrationen können in der Vorlaufkarte folgende Optionen angegeben werden, mit denen Security-Angaben in andere Code's übersetzt werden können. Folgende Angaben sind möglich:
- BS2000_MVS : BS2000-EBCDIC -> MVS-EBCDIC
- BS2000_ANSI : BS2000-EBCDIC -> ANSI (Unix)
- MVS_BS2000 : MVS-EBCDIC -> BS2000-EBCDIC
- MVS_ANSI : MVS-EBCDIC -> ANSI (Unix)
- OS2_ANSI : Windows -> ANSI (Unix)
Die Vorlaufkartendatei darf auch leer sein.
SCHNITTSTELLENBESCHREIBUNG
Mit Hilfe des Programms PCL1195 können Berechtigungen und PC-Empfänger auf die Security-DB geladen werden. Die Sätze der Schnittstellendatei müssen das im folgenden beschriebene Format haben.
Dateiformat
- Variable Satzlänge geblockt
- Maximale Satzlänge 20000 Byte
Allgemeiner Satzaufbau
Das Programm PCL1195 kennt zwei verschiedene Satzformate für Benutzerschnittstellen:
SATZART | Bedeutung |
---|---|
'BR' | Laden von Berechtigungen für Arbeitsgebiete Schlüssel Relationen Werte Zeiten Anforderungen Sonstige Regeln |
'XX' | Laden von PC-Empfängern |
'EE' | Laden von E-Mail-Empfängern |
'EV' | Laden von E-Mail-Verteilern |
Satzbeschreibung für Satzart "BR" (Berechtigungen)
01 SC-DB-SATZ-BER. 05 SATZART PIC X(02) VALUE 'BR'. 05 USER PIC X(08). 05 KOMMENTAR PIC X(30). 05 TAB-ART PIC X(02). 'AG' - Berechtigung Arbeitsgebiet 'KY' - Berechtigung Schlüssel 'KL' - Berechtigung Schlüssel lang 'KF' - Berechtigung Schlüssel lang Forts. 'RE' - Berechtigung Relation 'WE' - Berechtigung Werte 'ZE' - Berechtigung Zeiten 'AN' - Berechtigung Anforderungen 'AB' - Berechtigung Anforderungen mit Bibliothek 'SO' - Berechtigung Sonstige 'DR' - Druckereinstellung 05 ANZ-EL PIC 9(05). Anzahl folgende Tabellenelemente 05 MODUS PIC X. '+' - Berechtigt '-' - nicht Berechtigt 05 TABELLE PIC X(9952). Je nach TAB-ART die entsprechende TABELLE: 05 AG-TAB REDEFINES TABELLE. 10 EL OCCURS 20. 15 AG-VON PIC 9(05). 15 AG-BIS PIC 9(05). 05 KY-TAB REDEFINES TABELLE. 10 EL OCCURS 100. 15 KENR-VON PIC 9(05). 15 INH-VON PIC X(12). 15 KENR-BIS PIC 9(05). 15 INH-BIS PIC X(12). 05 KY-TAB-LANG REDEFINES TABELLE. 10 EL OCCURS 70. 15 KENR-VON-LANG PIC 9(05). 15 INH-VON-LANG PIC X(60). 15 KENR-BIS-LANG PIC 9(05). 15 INH-BIS-LANG PIC X(60). 05 RE-TAB REDEFINES TABELLE. 10 EL OCCURS 70. 15 RENR PIC 9(05). 15 INH-VON PIC X(60). 15 INH-BIS PIC X(60). 05 WE-TAB REDEFINES TABELLE. 10 EL OCCURS 20. 15 WENR-VON PIC 9(05). 15 WENR-BIS PIC 9(05). 05 ZE-TAB REDEFINES TABELLE. 10 EL OCCURS 20. 15 ZE-VON PIC X(04). 15 ZE-BIS PIC X(04). 05 AN-TAB REDEFINES TABELLE. 10 EL OCCURS 20. 15 AN-VON PIC X(08). 15 AN-BIS PIC X(08). 05 AN-BIB-TAB REDEFINES TABELLE. 10 EL OCCURS 20. 15 AN-BIB PIC X(01). 15 FILLER PIC X(01). 15 AN-VON PIC X(08). 15 AN-BIS PIC X(08). 05 SO-TAB REDEFINES TABELLE. 10 EL OCCURS 20. 15 SO-VON PIC X(08). 15 SO-BIS PIC X(08). 05 DR-TAB REDEFINES TABELLE. 10 EL OCCURS 20. 15 DR PIC X(08).
Die Schnittstellensätze für Berechtigungen werden beim Laden in die Security-DB geprüft, fehlerhafte Schnittstellensätze werden nicht übernommen.
Die Tabelleninhalte müssen analog zur ST09 gefüllt sein:
- AG-VON, AG-BIS :
gültige Arbeitsgebietsnummern - KY-VON, KY-BIS :
gültige Schlüsselnummern - KY-VON-LANG,
KY-BIS-LANG :
gültige Schlüsselnummern - INH-VON, INH-BIS :
Inhalte, Maskierungen - INH-VON-LANG,
INH-BIS-LANG :
Inhalte, Maskierungen für KEEXL > 12 - RENR :
gültige Relationnummer - INH-VON
INH-BIS :
Inhalte, Maskierungen für KEEXL > 12 - WE-VON, WE-BIS :
gültige Wertenummern - ZE-VON, ZE-BIS :
Zeitangaben im Format JJMM - AN-VON, AN-BIS :
Anforderungsnamen - AN-BIB :
Bibliothek, ' ' --> alle Bibliotheken - SO-VON, SO-BIS :
Sonstige Regeln, MUSSSCHL - DR :
Druckername
Bei der Angabe von '+' beim MODUS ist der Anwender dieser
Berechtigung für alle Einträge der angegebenen Tabelle
berechtigt, bei der Angabe von '-' nicht.
Bei Neuanlage einer Berechtigung werden alle Tabellentypen
mit '+' und ANZ-EL = 0 initialisiert, d.h. keine
Berechtigung. Mit den angelieferten Sätzen werden die
angesprochenen Tabellen ausgetauscht.
Im allgemeinen ersetzt eine Berechtigungszeile die gesamte
entsprechende TABART (z.B. AG) auf der Datenbank. Eine
Ausnahme bildet die TABART KF. Berechtigungen für Schlüssel
werden in diesem Fall ergänzt. Für die Angabe von
Schlüsselberechtigungen mit Inhaltslängen größer 12 ist daher
folgendermaßen vorzugehen: Angabe einer Zeile mit TABART KL,
eventuell Angabe von (Folge-)Zeilen mit TABART KF.
Satzbeschreibung für Satzart "XX" (PC-Empfänger)
01 SC-DB-SATZ-PC. 05 SATZART PIC X(02) VALUE 'XX'. 05 USER PIC X(08). 05 KOMMENTAR PIC X(30). 05 ADRESSE PIC X(30). 05 UEBERTRAGUNGSART PIC X(10). 05 TELEFONNUMMER PIC X(20). 05 ANZ-EL PIC 9(05). * Anzahl folgende Tabellenelemente 05 PC-TABELLE. 10 EL OCCURS 20. 15 HOST-AG PIC 9(05). 15 PC-AG PIC 9(05). 15 DEF-AG PIC 9(05). 15 FILTERNAME PIC X(08). 15 TURNUS PIC X(02). 15 VDATUM PIC X(06).
Auch die Schnittstellensätze für PC-Empfänger werden geprüft bevor sie in die Datenbank gelangen, fehlerhafte Schnittstellensätze werden nicht übernommen. Bei der Anlieferung eines bereits bestehenden PC-Empfängers bleiben die Felder VERSION-PC, VERSION-ZW und ADATUM in der Security-DB erhalten, wenn sich im angelieferten Schnittstellensatz die Felder FILTER, TURNUS und VDATUM geändert haben sollten. Bei Änderungen in den Feldern HOST-AG, PC-AG und DEF-AG gegenüber dem Datenbankeintrag werden die Versionsfelder und das Ausführdatum der letzten Versorgung gelöscht.
Die Tabelleninhalte müssen analog zur ST09 gefüllt sein:
- HOST-AG, PC-AG, DEF-AG : Arbeitsgebietsnummern
- FILTERNAME : Name einer Berechtigung
- TURNUS : gültige Turnusangabe
- VDATUM : Zeitangabe TTMMJJ
BEISPIEL
Für den PC des KAM Huber sollen nur die Sätze geliefert werden, wenn der Inhalt des Schlüssels 2201 mit 4711 beginnt oder der Inhalt des Schlüssels 2201 gleich 50010 ist. Die Bereitstellung soll täglich erfolgen.
Es sind nun folgende Schritte auszuführen:
- Am PC sollen andere bzw. zusätzliche Verdichtungsstufen entstehen. Daher wird am Großrechner ein Definitionsarbeitsgebiet als Kopie des Ausgangsarbeitsgebietes Nummer 1 "VERTRIEB" benötigt, in dem die gewünschten Verdichtungsstufen entsprechend definiert werden müssen. Dieses Arbeitsgebiet soll in diesem Beispiel die Nummer 21 führen.
- Im neu zu erstellenden Schnittstellenprogramm müssen
Sätze zur Definition eines Empfänger Filters,
im Beispiel der Filter "PC000001", erzeugt werden.
01 SC-DB-SATZ-BER. 05 SATZART PIC X(02) VALUE 'BR'. 05 USER PIC X(08) VALUE 'PC000001'. 05 KOMMENTAR PIC X(30) VALUE 'FILTER KAM HUBER'.
Für Arbeitsgebiet, Zeit, Werte, Anforderungen und Sonstige Regeln sollen keine Tabellen angeliefert werden, das heißt, es sollen keine Einschränkungen bestehen.
Es müssen also fünf Sätze mit der entsprechenden TAB-ART angeliefert werden, in denen der MODUS mit '-' gekennzeichnet ist und in denen die TABELLE leer ist (ANZ-EL ist mit 0 belegt), d.h. es ist nichts verboten bzw. alles erlaubt.05 TAB-ART PIC X(02). * 'AG', 'ZE', 'WE', 'SO', 'AN' 05 ANZ-EL PIC 9(5). * 0 05 MODUS PIC X. * '-' 05 TABELLE PIC X.
Für die Filterung der Schlüssel wird folgender Satz benötigt:01 SC-DB-SATZ-BER. 05 SATZART PIC X(02) VALUE 'BR'. 05 USER PIC X(08) VALUE 'PC000001'. 05 KOMMENTAR PIC X(30) VALUE 'FILTER KAM HUBER'. 05 TAB-ART PIC X(02) VALUE 'KY'. 05 ANZ-EL PIC 9(5) VALUE 4. 05 MODUS PIC X VALUE '+'. 05 TABELLE PIC X(3500).
Tabelle für Schlüssel05 KY-TAB REDEFINES TABELLE. 10 EL OCCURS 100. 15 KENR-VON PIC 9(5). 15 INH-VON PIC X(12). 15 KENR-BIS PIC 9(5). 15 INH-BIS PIC X(12).
1. Tabelleneintrag:- KENR-VON = 1 niedrigste Schlüsselnummer
- INH-VON = LOW-VALUES kleinster zul. Inhalt
- KENR-BIS = 2200 höchste Schlüsselnummer
- INH-BIS = HIGH-VALUES größter zul. Inhalt
Damit sind zunächst alle Schlüssel und -inhalte zugelassen mit Schlüsselnummern kleiner 2201. In den folgenden Tabelleneinträgen erfolgt nun die Einschränkung des Schlüssels 2201:
2. Tabelleneintrag:
- KENR-VON = 2201 Nummer des Schlüssels
- INH-VON = 4711???????? Feld muss mit Fragezeichen aufgefüllt werden
Restliche Felder gelöscht (0 bzw. Spaces).
3. Tabelleneintrag:
- KENR-VON = 2201 Nummer des Schlüssels
- INH-VON = 50010 kleinster zul. Inhalt
- KENR-BIS = 2201 Nummer des Schlüssels
- INH-BIS = 50010 größter zul. Inhalt
- KENR-VON = 2202 niedrigste Schlüsselnummer
- INH-VON = LOW-VALUES kleinster zul. Inhalt
- KENR-BIS = 32000 höchste Schlüsselnummer
- INH-BIS = HIGH-VALUES größter zul. Inhalt
- Im neu zu erstellenden Schnittstellenprogramm muss
schließlich noch 1 Satz zur Definition des
PC-Empfängers erzeugt werden:
01 SC-DB-SATZ-PC. 05 SATZART PIC X(02) VALUE 'XX'. 05 USER PIC X(08) VALUE 'PC HUBER'. 05 KOMMENTAR PIC X(30) VALUE 'KAM HUBER'. 05 ADRESSE PIC X(30). 05 UEBERTRAGUNGSART PIC X(10). 05 TEL PIC X(20). 05 ANZ-EL PIC 9(05) VALUE 1. 05 PC-TAB. 10 EL OCCURS 20. 15 HOST-AG PIC 9(05) VALUE 1. 15 PC-AG PIC 9(05) VALUE 1. 15 DEF-AG PIC 9(05) VALUE 21. 15 FNAME PIC X(08) VALUE 'PC000001'. 15 TURNUS PIC X(02) VALUE 'TA'. 15 VDATUM PIC X(06) VALUE SPACES.
Satzbeschreibung für Satzart "EE" (E-Mail-Empfänger)
01 SC-DB-SATZ-PC. 05 SATZART PIC X(02) VALUE 'EE'. 05 EMAIL-EMP-USER PIC X(08). 05 EMAIL-EMP-KOMM PIC X(30). 05 E-MAIL-ADRESSE PIC X(64).
Die Schnittstellensätze für E-Mail-Empfänger werden geprüft bevor sie in die Datenbank gelangen, fehlerhafte Schnittstellensätze werden nicht übernommen. Die Tabelleninhalte müssen analog zur ST09 gefüllt sein.
Satzbeschreibung für Satzart "EV" (E-Mail-Verteiler)
01 EMAIL-VERTEILER REDEFINES ASSISC-BUF. 05 FILLER PIC X(02). 05 EMAIL-VER-USER PIC X(08). 05 EMAIL-VER-KOMM PIC X(30). 05 EMAIL-VERT-ANZ-EL PIC X(05). 05 VERTEILER-EL OCCURS 200. 10 VERT-KZ PIC X. 10 VERT-VON PIC X(08). 10 VERT-BIS PIC X(08).
Die Schnittstellensätze für E-Mail-Verteiler werden geprüft bevor sie in die Datenbank gelangen, fehlerhafte Schnittstellensätze werden nicht übernommen. Die Tabelleninhalte müssen analog zur ST09 gefüllt sein.
Aufbau der Eingabedatei für die Option EXIT_TEXT
Die Eingabedatei muss im Line-Sequential-Format vorliegen. Jeder Satz besteht aus mehreren Feldern, welche durch Semikolons getrennt werden. Führende und abschließende Blanks werden in der Regel überlesen, ebenso wie einschließende Anführungszeichen oder spitze Klammern (<>).
Im ersten Feld ist stets die Satzart angegeben.
Satzart 'BE' (Berechtigungen):
- Feld:
Benutzer - Feld:
Art der Berechtigung: AG KY WE ZE AN SO RE - Feld:
POSITIV oder NEGATIV bzw. ALLES oder NICHTS In weiteren Sätzen werden die einzelnen Einträge aufgeführt, im 4. Feld die Von-Angabe und im 5. Feld ggf. die Bis-Angabe. Bei 'AN' steht auf Feld 4 die Bibliothek, Von und Bis auf Feld 5 und 6.
Beispiel:
"BE";"ASSUSER ";AG;NEGATIV "BE";"ASSUSER ",AG;50;200 "BE";"ASSUSER ";KY;ALLES "BE";"ASSUSER ";WE;ALLES "BE";"ASSUSER ";ZE;ALLES "BE";"ASSUSER ";AN;POSITIV "BE";"ASSUSER ";AN;ALLE_BIB;"UBA?????" "BE";"ASSUSER ";AN;B;"EXT00001";"EXT00099" "BE";"ASSUSER ";SO;POSITIV "BE";"ASSUSER ";SO;BC;BC "BE";"ASSUSER ";SO;YA;YA
Weitere Untersatzarten für BE sind:
- KO - Kommentar
- DR - Drucker
- PR - Drucker
Die zugehörigen Einträge stehen dann jeweils auf dem 4. Feld.
Satzart ZU (Zugriffe)
2. Feld - Benutzer
3. Feld - Untersatzart KO oder ZU
Bei ZU steht dann in Feld 4 die Uhrzeit und in Feld 5 die
Anzahl der Zugriffe, bei KO in Feld 4 der Kommentar.
ZU;"ASSUSER ";ZU;"07:30"; 1000
Satzart PR (Benutzer)
2. Feld - Benutzer
3. Feld - Untersatzart KO oder PR
Bei KO steht im 3. Feld der Kommentar, bei PR das zugehörige
Profil.
Satzart MV (Mail-Verteiler)
2. Feld - Verteiler-Name
3. Feld - Untersatzart KO oder ME
Bei ME steht im 4.Feld der Typ - "E" für Email-Empfänger, "V"
für Verweis auf einen anderen Verteiler.
In Feld 5 steht nun die VON- und in Feld 6 ggf. die BIS-Angabe.
Bei der Untersatzart KO steht in Feld 4 der Kommentar.
MV;"VERTHUGO";ME;"E";"HUGO1 ";"HUGO999 "
Satzart ME (Email-Empfänger)
2. Feld - Empfängername (intern, beim Verteiler festgelegt)
3. Feld - Untersatzart KO oder EM
Bei der Untersatzart EM steht nun auf Feld 4 der (reale) Name
des Empfängers, auf Feld 5 die Email-Adresse.
ME;"HUGO1 ";EM;"Hugo Muster";"hugo.muster@mail.com"
Satzart PW (Passwort)
Mit diesem Satz kann das ST09-Passwort geändert werden.
Auf dem 2. Feld wird das Passwort angegeben. Stehen dort Sterne,
bleibt das Passwort unverändert, mit "DEL" wird es auf den
Standard zurückgesetzt.
4 ASS-Ausgabeschnittstellen
4.1 Extraktion aus ASS-Datenbeständen im Format einer externen Schnittstelle PCL1019
ALLGEMEINE FUNKTIONSBESCHREIBUNG
Es gibt Anwendungsfälle, für die es erforderlich ist, Daten aus einer Summendatenbank bzw. sequentiellen Verdichtungsstufe zu selektieren und in eine Datei im Format einer externen Schnittstelle zu überführen.
Diese Daten sollen dann evtl. in ein anderes Arbeitsgebiet oder nach gezielter Manipulation durch individuelle Programme ( z.B. Fehlerkorrektur, Umschlüsselung ) neu eingespeichert werden.
Auf diese Weise können rückwirkend Reorganisationsmaßnahmen durchgeführt werden, die mit den üblichen ASS-Utilities allein nicht lösbar sind.
Über eine in der ASS-BATCH-Sprache formulierte Anforderung in einer Anforderungsdatei ( KARTE ) sowie gegebenenfalls einer zusätzlichen Selektion über einen temporär zusammengefassten Schlüssel in einer speziellen Schlüsselanforderungsdatei (ASSKY) können die gewünschten ASS-Datensätze selektiert werden. (Es muss dann auch die Option WSTR angegeben werden.) Die Externen Schnittstellen können wahlweise entweder im kurzen Format oder im langen Format erstellt werden. Die Festlegung erfolgt dadurch, dass in den Anforderungen (Datei KARTE) OPT:KURZ; angegeben wird (kurzes Format) oder die Angabe OPT:KURZ; unterbleibt (langes format).
Die so erzeugten Schnittstellendateien können als Input für das Programm PCL1001 verwendet werden.
PCL1019 unterscheidet zwei Verarbeitungsvarianten, die in den folgenden Abschnitten im Einzelnen beschrieben werden:
- Extraktion von selektierten Summensätzen
- Generierung von Umbuchungsanweisungen für selektierte Summensätze
Die zunächst folgende Beschreibung des Programmablaufs und der zu beachtenden Restriktionen gilt für beide Verarbeitungsvarianten.
ABLAUF
Datenflussplan
Datei - Beschreibung
LFD.-NR. | DD-NAME/PGM | Dateiname ASS-PC | BESCHREIBUNG |
---|---|---|---|
110 | //DST001 //DST011 //DST012 //DST013 | $ASSDB/DST001 | Werte-DB Primär-Index (nur DLI) Sekundär-Index 1 (nur DLI) Sekundär-Index 2 (nur DLI) |
120 | //DST002 //DST021 //DST022 //DST023 | $ASSDB/DST002 | Schlüssel-DB Primär-Index (nur DLI) Sekundär-Index 1 (nur DLI) Sekundär-Index 2 (nur DLI) |
130 | //DST003 //DST031 //DST032 //DST033 | $ASSDB/DST003 | Steuerungs-DB Primär-Index (nur DLI) Sekundär-Index 1 (nur DLI) Sekundär-Index 2 (nur DLI) |
140 | //DST100 //DST101 BIS //DST600 //DST601 | $ASSDB/DSTnnn | Summen-DB (Für Arbeitsgebiet 1) Index-DB (Für Arbeitsgebiet 1) (DLI) Bis Summen-DB (Für Arbeitsgebiet 50) Index-DB (Für Arbeitsgebiet 50)(DLI) |
145 | //ASSCV01 BIS //ASSCV50 | $ASSDB/ASSCVnn | Externe Verdichtungsstufe(n), auf DUMMY setzen und bei Bedarf aktivieren |
150 | //KARTE | $ASSVLK/KARTE.VLK | Anforderung für Schnittstelle |
160 | //ASSKY | $ASS/ASSKY | Datei der zu selektierenden Schlüsselausprägungen |
170 | PCL1019 | Externe Schnittstelle ziehen | |
180 | //LISTE | $ASSPTK/LISTE.PTK | Ablaufprotokoll |
190 | //ASSIN01 //ASSIN02 //ASSIN03 bis //ASSIN50 | $ASS/ASSINnn | nicht Option SIMULTAN_DIREKT: Externe Schnittstellendatei Option SIMULTAN_DIREKT: Arbeitsdatei (VB 10004) Externe Schnittstellendatei Externe Schnittstellendatei Externe Schnittstellendatei |
220 | //WORK | $ASSWK/WORK.DTA | Arbeitsdatei (MCL0015), Format VB, Satzlänge 400 |
Statistik über Statistik
Für PCL1019 kann Statistik über Statistik aktiviert werden. Hierzu ist der Schalter STAT-STAT-PCL1019 auf "J" zu setzen (siehe Handbuch HINSTALL). PCL1019 erzeugt dann analog zu PCL1016 eine Datei PWORK, die ebenfalls analog zu PCL1016 zu verarbeiten ist (PCL1054 etc.). Wird Statistik über Statistik für PCL1019 aktiviert, so ist die betreffende JCL um die Datei PWORK (siehe PCL1016) zu erweitern.
RESTRIKTIONEN bezüglich der Anforderungssprache:
Eine Anforderung, die als Eingabe für PCL1019 verwendet werden soll, unterliegt folgenden Restriktionen:
- AG
- Es wird nur ein Arbeitsgebiet bearbeitet
- SCHLUESSEL
- Mindestens ein echter Schlüssel muss angefordert werden
- Im Zeilenschlüssel sind nur echte Schlüssel zulässig
- Echte Schlüssel sind in der Zeile anzufordern
- WERTE
- Nur echte Werte dürfen angefordert werden
- Schlüsselangaben beim Wert sind unzulässig
- Ein Wert darf nur einmal angefordert werden
- Im Spaltenschlüssel ist nur WERTE zulässig
- ZEITRAUM
- ZEITRAUM muss explizit angefordert werden
- Im Kopfschlüssel ist nur ZEITRAUM zulässig
- Maximal können in einer Anforderung 50 Zeitpunkte bzw. Zeitintervalle angegeben werden
- Der erste Zeitpunkt wird auf ASSIN01, der zweite auf ASSIN02 usw. ausgegeben
- Zeitintervalle dürfen bei Bestandswerten nur zusammen mit den Optionen AENDERN und BEWEGUNG_BESTAND in Verbindung mit NOZEITPRUEF angefordert werden (NOZEITPRUEF ohne AENDERN oder BEWEGUNG_BESTAND ist nicht möglich)
- Die Zeitangaben in folgenden Formaten sind unzulässig:
- Quartalsangaben (z.B. Q106 oder Q1M0)
- Halbjahresangaben (z.B. H1M1)
- Jahresangaben (z.B. JG06)
- Bei Tagesarbeitsgebieten müssen die Tage exakt abgegrenzt werden: z.B. 010106-320106 oder 01BM01, unzulässig wäre z.B. BM01
Man kann mehrere Anforderungen hintereinanderhängen.
Die Ergebnisse werden dann in den Ausgabedateien in der
entsprechenden Reihenfolge hintereinandergefügt.
Die Extraktion von ASS-Datenbeständen kann je Programmlauf
nur entweder im langen Format einer externen
Schnittstellendatei oder im kurzen Format einer externen
Schnittstellendatei erfolgen. Damit wird verhindert, dass sich
auf einer Datei (ASSIN01, ASSIN02, ...) verschiedene Formate
vermischen und die erzeugten Dateien als Eingabe für das
Programm PCL1001 unbrauchbar sind. Werden mehrere
Anforderungen aneinandergehängt, ist also
OPT:KURZ; entweder in jeder oder in keiner Anforderung
zu verwenden.
Hinweis: Die Option KURZ wird synonym zu NOWEDIM benutzt.
ASS2166 DER SCHLUESSELINHALT ... IST UNZULAESSIG
Standardmäßig ist dies bei SIMULTAN_DIREKT und ALLES_ABZIEHEN ein Fehler und für die linke Kante (Schlüssel oder erster Schlüssel einer Relation) eine Information. Mit der Angabe AU_FEHL_MAX = n (0 <= n <= 1000) gilt dies auch für alle Schlüssel einer Relation und für die ersten n bleibt es auch eine Information und danach ist es ein Fehler.
4.1.1 Extraktion von selektierten Summensätzen PCL1019
ABLAUF
1. Schritt:
Für eine einfache Selektion ist lediglich eine Anforderung zu erstellen, die dem Programm unter dem Link-/DD-Namen "KARTE" zugewiesen wird. Es sind hier alle Möglichkeiten der BATCH-Anforderungssprache zugelassen, mit Ausnahme der als Restriktionen im vorhergehenden Kapitel aufgeführten Punkte. Die Eingabe muss in den Spalten 1 - 72 erfolgen.
Wird eine externe Schnittstelle erzeugt, so kann der dort
ausgegebene Standard-Ordnungsbegriff (PCL1019 bzw.
PCL1019 KURZ) durch die Angabe
ORD: 'Text' ;
durch den bei ORD angegebenen Text überschrieben werden.
Ist die Option "KEVINH" angegeben, so wird eine externe Schnittstelle erzeugt, die bei bestimmten Schlüsseln als Schlüsselinhalt bereits den verdichteten Schlüsselinhalt und bei den restlichen Schlüsseln den Klartext des Schlüsselinhalts enthält. Es entsteht also eine Mischkonstellation. Sie wird durch eigene Satzarten dem Programm PCL1001 bekanntgemacht (Satzart 6 für Kopfsätze, Satzart 7 für Summensätze).
Bei der Option "KEVINH" werden die Schlüsselinhalte der Schlüssel im Klartext ausgegeben, deren Inhalte explizit angefordert wurden. Bei den anderen wird der verdichtete Schlüsselinhalt aus dem betreffenden Summensatz ohne irgendwelche Prüfungen ausgegeben.
Mit der Option "KEVINH" erzeugte Schnittstellen eignen sich nicht dafür, um Daten von verschiedenen ASS-Umgebungen zu transportieren (z.B. von Test nach Produktion oder umgekehrt). Es werden in verschiedenen ASS-Umgebungen i.a. die verdichteten Schlüsselinhalte nicht synchron vergeben. Werden diese Schnittstellen von PCL1001 verarbeitet, so werden verdichtete Schlüsselinhalte ohne Prüfungen übernommen.
Die Optionen ABO_WENN_EINE_LEER bzw. ABO_WENN_ALLE_LEER: PCL1019 erzeugt so viele Ausgabedateien ASSINnn, wie bei ZEITRAUM Zeitpunkte bzw. Zeitintervalle angefordert sind.
Beispiel für ein Monatsarbeitsgebiet:
KS: ZEITRAUM = ( 0199, 0299-0399, 0499);
==> es werden die Dateien ASSIN01, ASSIN02 und ASSIN03 erzeugt
Beispiel für ein Tagesarbeitsgebiet:
KS: ZEITRAUM = ( 3101M0 - 3201M0, 3101M0 % 3201M0);
==> es werden die Dateien ASSIN01, ASSIN02 und ASSIN03 erzeugt
Durch die Optionen ABO_WENN_EINE_LEER bzw. ABO_WENN_ALLE_LEER soll ein gezielter Programmabbruch erzeugt werden, wenn eine erzeugte Ausgabedatei leer ist bzw. wenn alle erzeugten Ausgabedateien leer sind. Eine Ausgabedatei gilt als leer, wenn sie keine von Null verschiedenen Werteinhalte enthält.
2. Schritt:
Programmlauf PCL1019
BEISPIEL:
Aus dem eingespeicherten Arbeitsgebiet 19 sollen für den
Zeitraum
0186 und 0286,
selektiert nach den Schlüsseln mit den Nummern
1901, 1902, 1903, 1904, 1905, 1906, 1907 und 1908
die Daten zu den Werten mit den Wertenummern
1901, 1902, 1903 und 1904
in eine externe Schnittstellendatei gebracht werden.
Für den Schlüssel 1907 werden nur die Inhalte 07A und
07B, für den Schlüssel 1908 nur die Inhalte 08A und 08B
gewünscht.
Dies kann über folgende Anforderung erreicht werden:
ASS ; AG: 19; KS: ZEITRAUM = (0186,0286); ZS: 1902,1901,1903,1904,1905,1906,1907 = ('07A',07B'), 1908 = ('08A',08B'); SS: WERTE = (1901,1902,1903,1904); END ;
Variation der selektierten Schlüsselinhalte
In diesem Fall entstehen zwei Ausgabedateien: eine mit den Daten für den Zeitraum 0186 und eine für 0286. Will man beide Zeiträume zusammen in einer Ausgabedatei haben, so muss man pro Zeitangabe einen eigenen Anforderungsblock definieren. Diese Anforderungsblöcke können dann in einem Lauf von PCL1019 ausgewertet werden.
Die Anforderungen
ASS ; AG: 19; KS: ZEITRAUM = (0186); ZS: 1902,1901,1903,1904,1905,1906,1907 = ('07A',07B'), 1908 = ('08A',08B'); SS: WERTE = (1901,1902,1903,1904); END ; ASS ; AG: 19; KS: ZEITRAUM = (0286,0386); ZS: 1902,1901,1903,1904,1905,1906,1907 = ('07A',07B'), 1908 = ('08A',08B'); SS: WERTE = (1901,1902,1903,1904); END ;
bewirken, dass auf ASSIN01 die Zeiträume 0186 und 0286 hintereinander stehen und auf ASSIN02 der Zeitraum 0386 ausgegeben wird.
In den oben gezeigten Beispielanforderungen werden alle ASS-Datensätze selektiert, die bezüglich der Schlüssel 1907 und 1908 die Inhaltskombinationen 07A-08A, 07A-08B, 07B-08A und 07B-08B aufweisen. Interessiert man sich aber nur für bestimmte Kombinationen, wie 07A-08B und 07B-08A, so ist auf diesem Weg eine Unterdrückung der nicht gewünschten, sich aus der Variation der angeforderten Schlüsselinhalte ergebenden zusätzlichen Selektionen und Satzausgaben nicht zu erreichen. Für derartige Fälle ist eine optionale Zusammenfassung von ASS-Schlüsseln vorgesehen, die im folgenden Kapitel beschrieben wird.
Schließlich ist es noch möglich, Schlüsselausprägungen mit Hilfe von Maskierungen zu selektieren (Ausrufezeichen-Maskierung).
Anmerkung zu NMAXDAT
Mit NMAXDAT können wie allgemein nicht eingespeicherte Zeiträume angefordert werden. Diese bekommen dann den Inhalt 0. Nach einer Einspeicherung gelten dann diese Zeiten als eingespeichert und liefern in einer Auswertung auch ohne NMAXDAT den Inhalt 0.
Folgeeinspeicherungen von Bestandswerten sind dann für diese Zeiten in Bestandsform nur nach einer Annulierung mit PCL1051 möglich und in Bewegungsform gelten die Änderungen bis zum Einspeicherungsende der entsprechenden Werte. Daher ist dies mit ASS 8.30 in Verbindung mit ALLES_ABZIEHEN geändert worden. ALLES_ABZIEHEN und NMAXDAT verhalten sich unverändert. ALLES_ABZIEHEN ohne NMAXDAT gilt bis ASS 8.20 nur für eingespeicherte Zeiten und ab ASS 8.30 können auch nicht eingespeicherte Zeiten angefordert werden, die aber auf die Einspeicherungszeit verkleinert werden.
4.1.2 Gezielte Satzauswahl über temporär zusammengefasste ASS-Schlüssel PCL1019
FUNKTIONSBESCHREIBUNG
In vielen Anwendungsfällen besteht der Wunsch, nur Sätze mit bestimmten Schlüsselinhaltskombinationen anzusprechen. Diese Forderung tritt vor allem dann auf, wenn mehrere ASS-Schlüssel zusammen einen tatsächlichen, im Bereich des Unternehmens als Einheit definierten Schlüsselbegriff darstellen. Derartige Fälle repräsentieren zum Beispiel häufig anzutreffende Organisationsschlüssel, deren Inhalte stellenweise interpretiert und auf die einzelnen Organisationseinheiten bezogen werden. Im ASS werden diese Einheiten in der Regel als unabhängige Schlüssel definiert. Will man nun einen bestimmten Inhalt des gesamten Organisationsschlüssels einstellen, so müssen die betreffenden Inhalte der ASS-Schlüssel selektiert werden. Allerdings führt nun ASS eine Variation aller selektierten Schlüsselinhalte durch. Das hat zur Folge, dass z.B. nicht nur die Sätze für die Geschäftsstelle 04 und den Vertreter Meier, sowie die Geschäftsstelle 08 und den Vertreter Huber angesprochen werden. Vielmehr werden, evtl. auch tatsächlich vorhandene Sätze für die Kombinationen Geschäftsstelle 04 und Vertreter Huber sowie Geschäftsstelle 08 und Vertreter Meier gesucht.
Solch ein nach außen hin als einzelner in Erscheinung tretender Schlüssel könnte z.B. auch der Schlüssel VERSICHERUNGSNUMMER (VSNR) sein, der sich vereinfacht aus folgenden Schlüsseln zusammensetzt:
Mögliche konkrete Nummern sind z.B.
1111 0, 1122 0, 1133 1, 1121 0, 331110, 332120, 333131 usw.
Die Zahl der Datenbankzugriffe wird in diesen Fällen durch die Variationsversuche unnötig erhöht. Zudem umfasst der Ausgabebestand unter Umständen weit mehr Daten als eigentlich gewünscht. Für derartige Probleme bietet nun das Programm PCL1019 eine wesentlich effizientere und damit zeitsparende Zugriffsmethode, bei der der Anwender das jeweilige Suchkriterium als einen aus mehreren Schlüsselinhalten zusammengefassten logischen Schlüssel vorgibt. So könnten zum Beispiel die Geschäftsstelle 04 und der Vertreter Meier zu einer solchen übergeordneten Ausprägung zusammengefasst werden.
Ausgehend vom linkesten ausgeprägten Schlüssel einer Verdichtungsstufe werden der Reihenfolge nach alle das Suchkriterium bildenden Einzelschlüssel zu einem Gesamtschlüssel zusammengefasst, um die Summendaten mit diesem Schlüssel direkt lesen zu können.
Voraussetzung ist allerdings, dass die Reihenfolge der den Gesamtschlüssel bildenden eigenständigen Schlüssel mit der Reihenfolge der ausgeprägten Schlüssel im ASS-Arbeitsgebiet übereinstimmt. Wird zusätzlich die Option WSTR angegeben, so muss die Reihenfolge der Schlüssel mit der Reihenfolge in der Verdichtungsstufe übereinstimmen (gedrehte Verdichtungsstufen). Andernfalls werden keine Summensätze im externen Schnittstellenformat erzeugt.
Die Anweisungen zur Zusammenfassung von Schlüsseln müssen in einer eigenen Schlüsselanforderungsdatei, die den logischen Namen ASSKY trägt, vorgegeben werden. Dabei müssen die gewünschten Schlüsselinhalte in der richtigen Reihenfolge (Reihenfolge der Schlüssel im Arbeitsgebiet) jeweils in der Länge von KEEXL (größtmögliche Länge des Schlüsselinhalts) angegeben werden.
Die Eingabe der Schlüsselinhalte in die Datei erfolgt linksbündig. Die Information über KEEXL erhält man z.B. über die Schlüsselanzeige der Transaktion ST06. Bei der Angabe der Schlüsselausprägungen in der Datei ASSKY ist zu beachten, dass bei Ausprägungen, die kürzer als die Längenangaben von KEEXL sind, die jeweils verbleibende Differenz zur größtmöglichen Länge mit Leerzeichen aufgefüllt werden muss.
Bei Weglassen konkreter Schlüsselinhalte bzw. bei falscher Längenangabe der Ausprägung werden keine Summensätze im externen Schnittstellenformat erstellt. Die Ausgabedatei enthält dann lediglich Kopf- und Endesatz.
ABLAUF
1. Schritt:
Zunächst ist eine Anforderung zu erstellen, die dem Programm unter dem Link-/DD-Namen "KARTE" zugewiesen wird.
In dieser Anforderung sind unter "OPT:" folgende Angaben erforderlich:
- PRKLASSE=10,LIKLASSE=10
Damit wird dem Programm mitgeteilt, dass die Schlüsselausprägungen zu den ausgewählten Schlüsseln des Suchkriteriums in der Datei mit dem logischen Namen "ASSKY" stehen. (Es kann noch die Option WSTR angegeben werden.)
Unter "OPT2:" ist anzugeben:
- KEBEZI(Schl.-Nr.1),KEBEZI(Schl.-Nr.2),.............
Hier müssen die den Gesamtschlüssel des Suchbegriffes bildenden, einzeln in einer Verdichtungsstufe ausgeprägten Schlüssel in der richtigen Reihenfolge angegeben werden.
2. Schritt:
Die gewünschten Schlüsselausprägungen werden in die Datei "ASSKY" geschrieben. Diese wird sequentiell abgearbeitet. Jeder Satz von "ASSKY" führt entsprechend der aktuellen Anforderung zu 0 bis n externen Schnittstellensätzen, da zu einem Suchbegriff aufgrund der Auffächerung nach nicht selektierten Schlüsseln auch mehrere Sätze vorhanden sein können. Enthält "ASSKY" eine Ausprägungskombination mehrfach, so werden hierzu auch entsprechend der Anzahl des Auftretens Schnittstellensätze erzeugt.
3. Schritt:
Programmlauf PCL1019
BEISPIEL:
Eine Anforderung der Datei "KARTE" könnte folgendes Aussehen haben:
ASS; AG: 19; KS: ZEITRAUM=(0188); ZS: 1905, 1904, 1907, 1903, 1902, 1901; SS: WERTE =(1901, 1902, 1903, 1904); OPT: PRKLASSE=10,LIKLASSE=10; OPT2: KEBEZI(1901),KEBEZI(1902),KEBEZI(1903),KEBEZI(1904); END;
Datei "ASSKY"
Zum Schlüssel VSNR, bestehend aus der Schlüsselkombination der ausgeprägten Schlüssel GKZ/OD/TG/DYN einer Verdichtungsstufe, sollen zu folgenden konkreten Ausprägungskombinationen
1. Spalte der Datei ASSKY
! ! V 1111 0 1122 0 111111 3311 0 3322 0 333111
Summensätze in das Format einer externen Schnittstelle transformiert werden, damit an ihnen Änderungen vorgenommen werden können.
4.1.3 Umbuchen von Werten unter andere Schlüsselinhaltskombinationen PCL1019
FUNKTIONSBESCHREIBUNG
Das Programm PCL1019 erfüllt zusätzlich die Funktion, eingespeicherte Werte hinsichtlich der Schlüsselinhalte umzubuchen (Funktion der Umschlüsselung).
Ändern sich zum Beispiel im Bereich der Organisationsschlüssel eines Unternehmens die Zuordnungen, weil ein Vertreter in die Zuständigkeit einer anderen Geschäftsstelle fällt, so will man sehr oft solche Änderungen rückwirkend für bereits eingespeicherte Werte wie Anzahl_Verträge etc. nachholen.
Die Werteinhalte, die umgebucht werden sollen, müssen über eine normale, wie in 4.1.1 gezeigte Anforderung aus den Summendaten herausgefiltert werden.
Über die Option "AENDERN" und Angabe des Änderungszeichens ">" bei den betreffenden Schlüsselausprägungen wird dem Programm eine Umschlüsselung angezeigt. Einem Schlüsselinhalt, der geändert werden soll, muss, durch das Zeichen ">" getrennt, der gewünschte Zielinhalt gegenübergestellt werden. Auf diese Weise wird dem System ein Ausgangs- und ein Zielzustand mitgeteilt.
Statt einem Schlüssel kann auch eine Schlüsselrelation verwendet werden, dann werden nur die angegebenen Schlüsselinhalts-Kombinationen umgebucht. Die Umbuchungsanweisungen in der Ausgabeschnittstelle werden dann natürlich für die Teilschlüssel der Relation erzeugt. Dasselbe Ergebnis erhält man, wenn man die Umsetzungen für die Teilschlüssel der Relation definiert und die Option SIMULTAN verwendet (s.u.). Die Variante mit Relation ist jedoch übersichtlicher. Werden außerdem mehrere Relationen auf einmal angegeben und die Option SIMULTAN nicht gesetzt, können Schlüsselinhaltskombinationen unabhängig voneinander umgebucht werden.
PCL1019 entnimmt nun entsprechend der Anforderung für den Ausgangszustand Summendaten und bucht sie auf die Belange des ebenfalls in der Anforderung ausgedrückten Zielzustandes um, d.h. die so erzeugte Schnittstellendatei enthält sowohl Daten für das Herausbuchen der alten Wertinhalte als auch für das Verbuchen unter den neuen Schlüsselkombinationen.
Vom Umschlüsseln sind also nur solche Wertinhalte betroffen, die die in der Anforderung angesprochenen Schlüssel-, Zeit- und Wertbedingungen erfüllen.
Wurden auf diese Weise von PCL1019 Werte ermittelt, so wird nun im nächsten Schritt überprüft, für welche Inhalte, nach denen zuvor selektiert wurde, eine Umschlüsselung gewünscht wird. Je nach Tiefe der Selektion durch die Anforderung entsteht so eine mehr oder weniger große Schnittstellendatei. Es können mehrere Schlüssel gleichzeitig umgeschlüsselt werden. Die Quellausprägungen der Umschlüsselung wirken selektierend wie normal angegebene Ausprägungen.
Implizite Schlüsselannahme
Bei der Einspeicherung in ein Arbeitsgebiet müssen die
Werteinhalte nach allen im Arbeitsgebiet ausgeprägten Schlüsseln
aufgefächert angeliefert werden, damit alle Verdichtungsstufen
korrekt versorgt werden können.
Besteht für ein Arbeitsgebiet eine Basisverdichtungsstufe,
so wird dieser Anspruch durch die Berücksichtigung der
Schlüssel dieser Verdichtungsstufe abgedeckt.
Um eine Schnittstelle zu erzeugen, die vom Schlüsselaspekt
her die Versorgung aller im Arbeitsgebiet existierenden
Verdichtungsstufen garantiert, nimmt PCL1019 zusätzlich
zu den explizit angeforderten Schlüsseln noch alle übrigen,
im Arbeitsgebiet ausgeprägten Schlüssel implizit mit in die
Schnittstelle auf.
Existiert für das Arbeitsgebiet eine Basisverdichtungsstufe,
so spiegeln die entnommenen Schnittstellensätze den
Schlüsselaspekt dieser Verdichtungstufe wider.
Bei fehlender Basisverdichtungsstufe ist eine Umschlüsselung
nur dann möglich, wenn die behandelten Werte nicht in
mehreren Verdichtungsstufen mit unterschiedlich ausgeprägten
Schlüsseln auftreten.
Diese automatische implizite Ergänzung von Schlüsseln wird
durch Verwendung der Option AENDERNOS anstatt AENDERN
unterdrückt. Der Benutzer ist somit selbst verantwortlich, dass
alle Schlüssel der umzubuchenden Basis in der Karte angegeben
werden. Die Vorgehensweise ist dann erforderlich, wenn z.B.
in der Historie der Schlüsselhaushalt ein anderer ist, als
zum aktuellen Zeitaspekt.
Implizite Werteannahme
Wird der Schlüssel WERTE ohne Nennung konkreter Werte - also WERTE; - angefordert, so berücksichtigt PCL1019 alle Werte des Arbeitsgebietes bei den Optionem AENDERN, SIMULTAN_DIREKT und ALLES_ABZIEHEN. Bei ALLES_ABZIEHEN gilt dies auch ohne die Angabe von Werten.
Die Behandlung der Wertearten
PCL1019 erzeugt beim Einsatz der Option AENDERN grundsätzlich Schnittstellensätze mit Werten der Anlieferungsart BEWEGUNG. Für Werte der Werteart Bewegung bedeutet das, dass der umzubuchende Werteinhalt auf einen eventuell schon vorhandenen Betrag aufaddiert wird. Bei Bestandswerten wird ebenfalls aufaddiert.
Um aber zu vermeiden, dass ASS den neu angelieferten Werteinhalt als vergessene Bewegung interpretiert und auf die nachfolgenden Zeiträume nachholt, liefert PCL1019 zusätzliche Werte, der die vergessene Bewegung wieder aus dem nachfolgenden Zeitraum herausbucht. Zusätzliche Werte werden bei Bestandswerten nicht erzeugt, wenn der Zeitaspekt sich auf den letzten eingespeicherten Monat bezieht. Es ist daher darauf zu achten, dass zwischen dem Erzeugen der Umbuchungssätze und dem Einspeichern der Umbuchungen keine Folgeeinspeicherungen für das betreffende Arbeitsgebiet durchgeführt werden.
ABLAUF
1. Schritt:
Zunächst ist eine Anforderung zu erstellen, die dem Programm unter dem Link-/DD-Namen "KARTE" zugewiesen wird.
In dieser Anforderung sind unter "OPT:" folgende Angaben erforderlich:
- AENDERN bzw. AENDERNOS
- ZS: Schl.-Nr. = ('Ausprägung alt' > 'Ausprägung neu');
Für den umzuschlüsselnden Schlüssel müssen ursprünglicher und gewünschter Inhalt, durch ">" getrennt, angegeben werden. Es können auch hier die Schlüsselausprägungen mit Hilfe von Ausrufezeichen-Maskierungen angegeben werden. Wenn bei der neuen Auspreagung an einer Stelle die !-Maskierung (bei IBM ggf. Ü) steht, so muss bei der alten diese an derselben Stelle stehen, also:
ZS: 1901 = ( '1!2' > '5!3' ); ,
aber nicht
ZS: 1901 = ( '182' > '5!3' );.
Außerdem kann statt eines fixen (ggf. maskierten) Zielinhalts auch eine Konkatenation aus fixen Zeichenfolgen und Substring-Angaben, die sich auf beliebige Schlüssel der Anforderung beziehen können, angegeben werden (s.u. "Dynamische Umbuchung").
2. Schritt:
Programmlauf PCL1019
3. Schritt:
Verarbeitung der erzeugten Schnittstelle durch das Programm PCL1001
4. Schritt:
Weiterverarbeitung durch PCL1002 und Einspeicherung der Daten in die Summendatenbank. In den meisten Fällen wird eine Einspeicherung direkt durch PCL1002 erfolgen. Dabei kann von der Vorlaufkartenoption DIREKTSP Gebrauch gemacht werden. Es ist aber natürlich auch möglich, die Daten ganz normal mit PCL1002 ohne DIREKTSP folgeeinzuspeichern oder aber mit PCL1002 einen Ladebestand zu erzeugen und das Laden anschließend mit dem Programm PCL1013 nachzuholen.
BEISPIEL:
Im Arbeitsgebiet 22 sollen für den Dezember 1986 hinsichtlich der Werte mit den Nummern 4540 und 4543 Umbuchungen vorgenommen werden. Für alle Sätze, in denen
- die Ausprägung 4544B des Schlüssels 4544,
- die Ausprägung 4547B des Schlüssels 4547 sowie
- die Ausprägungen 4549A oder 4549E des Schlüssels 4549
Um diese Umbuchungen erreichen zu können, muss folgende Anforderung erstellt werden:
ASS ; AG : 22; KS : ZEITRAUM = (1286); ZS : 4544 = ('4544B'>'4544D'), 4547 = ('4547B'), 4549 = ('4549A','4549E'); SS : WERTE=(4540,4543); OPT: AENDERN; END;
Soll die obige Umbuchung sowohl für November 1986 als auch für Dezember 1986 durchgeführt werden, so wird dies durch die Anforderung
ASS ; AG : 22; KS : ZEITRAUM = (1186,1286); ZS : 4544 = ('4544B'>'4544D'), 4547 = ('4547B'), 4549 = ('4549A','4549E'); SS : WERTE=(4540,4543); OPT: AENDERN; END;
erreicht. In diesem Fall werden zwei externe Schnittstellen ausgegeben und zwar auf ASSIN01 die Daten für 1186 und auf ASSIN02 die Daten für 1286. Das gleiche Ergebnis könnte allerdings wirtschaftlicher über eine Zeitintervallanforderung 1186-1286 erreicht werden, die im folgenden Beispiel beschrieben wird.
BEISPIEL:
Im Arbeitsgebiet 22 sollen für den Januar bis Dezember 1986 Umbuchungen wie im obigen Beispiel vorgenommen werden.
Um diese Umbuchungen erreichen zu können, kann folgende Anforderung erstellt werden:
ASS ; AG : 22; KS : ZEITRAUM = (0186-1286); ZS : 4544 = ('4544B'>'4544D'), 4547 = ('4547B'), 4549 = ('4549A','4549E'); SS : WERTE=(4540,4543); OPT: AENDERN; END;
erreicht. In diesem Fall werden alle Umbuchungsanweisungen auf ASSIN01 ausgegeben.
Dynamische Umbuchung
In einer Umbuchungsanweisung kann der Zielinhalt auch aus fixen Zeichenfolgen und Substringangaben, die sich auf andere Schlüssel beziehen und dynamisch aus den Ausprägungen des jeweiligen Summensatzes bestimmt werden, zusammengesetzt werden.
Dies sei an folgendem Beispiel einer dynamischen Anweisung erklärt:
ZS: 100 = ('ABCDEF'>('XYZ' + SUBSTR(200,4,3)))
Dadurch wird beim Schlüssel 100 der Inhalt 'ABCDEF' auf den
Inhalt 'XYZnnn' umgebucht, wobei nnn dynamisch aus jeweiligen
Summensatz bestimmt wird. Hierfür werden vom dortigen Inhalt
des Schlüssels 200 ab der 4. Stelle 3 Zeichen kopiert und an
'XYZ' angefügt. Voraussetzung ist natürlich, dass der Schlüssel
200 auch im Summensatz vorhanden (also auch angefordert oder
implizit ergänzt) ist.
Ein Summensatz, in dem die Schlüssel 100 und 200 die Inhalte
'ABCDEF' bzw. 'GHIJKL' haben, wird also auf den Inhalt
'XYZJKL' des Schlüssels 100 umgebucht.
Obiges Beispiel ist einfach gehalten, es können aber beliebig viele fixe Strings und Substrings konkateniert werden. Jedoch darf die Gesamtlänge des Ausdrucks die externe Länge des umzubuchenden Schlüssels nicht übersteigen.
Die Syntax ist wie folgt:
- Die Klammer nach > enthält die erweiterte Umbuchung
- Substrings und fixe Strings werden mit "+" konkateniert
- Ein fixer String kann in Hochkommata eingeschlossen werden, um syntaxkritische Zeichen wie + oder ) verwenden zu können
- fixe Strings können mit ! maskiert werden, analog zu der "normalen" Umbuchungsangabe
- SUBSTR definiert einen Substring, in der Klammer stehen 4
Parameter:
- Die Nummer des Quellschlüssels, welcher auch angefordert sein muss (ggf. implizit, wenn mit AENDERN statt AENDERNOS gearbeitet wird). Fehlt die Nummer (siehe 2. Substring im Beispiel unten), dann wird die Nummer des umzubuchenden Schlüssels genommen. Handelt es sich bei diesem um eine Relation (auch dort ist die dynamische Umbuchung erlaubt), kommt es zum Fehler, da in SUBSTR nur echte Schlüssel verwendet werden dürfen.
- Die Position, ab der der Substring im Inhalt des Quellschlüssels beginnt
- Die Länge des Substrings. Greift der Substring über die externe Länge des Quellschlüssels hinaus, kommt eine Fehlermeldung!
- Optional: Hier kann ein Füllbegriff definiert werden, der den Substring ersetzt, wenn dieser im konkreten Fall leer ist.
BEISPIEL:
ZS: 100 = ('ABCDEFGHI' > SUBSTR(200,4,3,'ZZZ') + '(+)' + SUBSTR(,2,3)
Ein Summensatz, in dem die Schlüssel 100 und 200 die Inhalte 'ABCDEFGHI' bzw. '123456' haben, wird also auf den Inhalt '456(+)BCD' des Schlüssels 100 umgebucht, ein Summensatz mit den Inhalten 'ABCDEFGHI' bzw. '123' auf den Inhalt 'ZZZ(+)BCD', da die Substringangabe für 200 einen leeren String ergibt.
4.1.4 Die Optionen BEWEGUNG und INVERS PCL1019
Die Optionen BEWEGUNG und INVERS können in der Anforderung unter 'OPT:' angegeben werden. Bei Angabe der Option BEWEGUNG erzeugt das Programm PCL1019 grundsätzlich Schnittstellensätze mit der Anlieferungsart BEWEGUNG, unabhängig von der Werteart der Werte.
Wird die Option INVERS angegeben, so unterscheiden sich alle Werteinhalte der erzeugten Schnittstellensätze im Vorzeichen gegenüber denjenigen Schnittstellensätzen, die bei gleicher Anforderung ohne Angabe der Option INVERS erzeugt werden. Die Werteinhalte werden also beim Generieren der Datei(en) ASSINxx mit -1 multipliziert.
Mit den obigen Optionen kann z.B. folgender Anwendungsfall einfacher gelöst werden: Bestimmte Summensätze sind in einer Folgeeinspeicherung fehlerhaft in die Summendaten gestellt worden (z.B. die Daten einer Bezirksdirektion). Die korrigierten Daten liegen mittlerweile in Form einer externen Schnittstelle vor. Erzeugt man hierzu zusätzlich eine externe Schnittstelle mit den betreffenden Sätzen und der Option INVERS beim PCL1019-Lauf, so kann im Rahmen einer einzigen Folgeeinspeicherung die Korrektur erfolgen. Hierzu muss man dann beim PCL1001-Lauf die externen Schnittstellen verketten.
Die Optionen BEWEGUNG und BEWEGUNG_BESTAND schließen einander aus.
4.1.5 Die Option BEWEGUNG_BESTAND PCL1019
Die Option BEWEGUNG_BESTAND kann in der Anforderung ebenfalls unter 'OPT:' angegeben werden. Wie oben erwähnt, schließen die Optionen BEWEGUNG_BESTAND und BEWEGUNG einander aus. BEWEGUNG_BESTAND ist gedacht für die Übernahme von Summensätzen mit Bestandswerten in ein neu zu ladendes Arbeitsgebiet mit Hilfe einer einzigen externen Schnittstelle, die durch PCL1019 erzeugt wird.
Bei der Zeitraum-Angabe wird ein Zeitraumintervall angegeben (BIS '-' nicht PROZENT '%'). Dann wird bei der Erzeugung der Schnittstellensätze wie folgt verfahren: Für den ersten Zeitraum des Zeitintervalls wird in den Schnittstellensätzen der Werteinhalt jedes Bestandswertes mit Anlieferungsart BEWEGUNG übernommen. Für alle anderen Zeitpunkte erfolgt nur bei echten Bestandsänderungen ein Eintrag mit der Anlieferungsart BEWEGUNG.
Auf Bewegungswerte hat diese Option keinen Einfluss.
Wichtig ist dabei, dass auch die Option NOZEITPRUEF angegeben wird, da andernfalls die Angabe von Zeitraumintervallen nicht zulässig ist (siehe oben).
Beispiel:
Eine Auswertung des Arbeitsgebietes 10 liefere für den Schlüssel 1901 mit Inhalt 11 zum Bestandswert 1000 und den folgenden Zeitpunkten die Werteinhalte:
- 0193 --> 1000
- 0293 --> 1000
- 0393 --> 1000
- 0493 --> 1500
- 0593 --> 1500
Angenommen der Schlüssel 1901 befindet sich nur in einer Verdichtungsstufe des Arbeitsgebietes. Ferner sei unter KARTE die folgende Anforderung abgelegt:
ASS; AG: 18; KS: ZEITRAUM=(0293-0493); ZS: 1901 = ('11'); SS: WERTE = (1000); OPT: NOZEITPRUEF,BEWEGUNG_BESTAND; END;
Dann wird außer Kopf- und Endesatz ein Schnittstellensatz erzeugt. Im Kopfsatz wird der Wert als Bewegungswert angekündigt und im Schnittstellensatz finden sich zum Zeitpunkt 0293 der Inhalt 1000 und zum Zeitpunkt 0493 der Inhalt 500.
Die so erzeugte Schnittstellendatei kann nur für die Ersteinspeicherung (Urladen) in ein neues Arbeitsgebiet verwandt werden. Bei Existenz von Einspeicherungsrhythmen ist diese Option nicht zulässig.
4.1.6 Die Option SIMULTAN PCL1019
Die Option SIMULTAN dient dazu, ganze Schlüsselkombinationen
zu selektieren und ggf. umzubuchen. Dabei bilden die
Schlüsselinhalte der selektierten Schlüssel eine gültige
Schlüsselkombination genau dann, wenn sie alle an derselben
Position angefordert werden.
Die 1.Ausprägung des 1.selektierten Schlüssels gehört also
zur 1.Ausprägung des 2.selektierten Schlüssels ... und zur
1.Ausprägung des n.ten selektierten Schlüssels. Entsprechendes
gilt für die 2.Ausprägung usw..
Schlüssel, die angefordert sind, aber zu denen keine
Ausprägungen selektiert wurden, werden hierbei nicht betrachtet.
Ausprägungen dürfen bei den einzelnen Schlüsseln mehrfach
angefordert werden.
Zu jedem selektierten Schlüssel müssen genauso viele
Ausprägungen angefordert werden.
Die Option SIMULTAN wird innerhalb des Statements 'OPT:' in der ASS-Anforderung angegeben.
Beispiel:
ASS; AG: 18; KS: ZEITRAUM=(0293-0493); ZS: 1901 = ('11'>'A','12'>'B') ,1903 = ('0'>'X','1'>'Y') ; SS: WERTE = (1902); OPT: AENDERN,SIMULTAN; END;
In diesem Beispiel wird die Kombination 1901='11', 1903='0' auf 1901='A', 1903='X' und die Kombination 1901='12', 1903='1' auf 1901='B', 1903='Y' umgebucht, es werden jedoch nicht die Kombinationen 1901='11', 1903='1' und 1901='12', 1903='0' umgebucht.
4.1.7 Die Option SIMULTAN_DIREKT PCL1019
Mit der Option SIMULTAN_DIREKT werden Umbuchungen von
Schlüsselausprägungen direkt auf der Summendatenbank vorgenommen.
Zur Selektion der umzubuchenden Sätze werden in Form der
Batch-Anforderungssprache Ausprägungskombinationen
von 'Bedingungsschlüsseln' vorgegeben. In den
betroffene Sätzen werden die Ausprägungen der
'Zielschlüssel' durch die in der Anforderung angegebenen
Ausprägungen ersetzt.
Zu jedem Bedingungs- und Zielschlüssel müssen genau gleich
viele Ausprägungen angegeben werden. Dabei bildet die
n-te Ausprägung aller Bedingungsschlüssel eine gültige
Kombination zur Umbuchung der n-ten Ausprägung in den
Zielschlüsseln.
Kommt in einem Summensatz einer Verdichtungsstufe ein
Zielschlüssel vor, müssen alle weiteren Ziel- und
Bedingungsschlüssel vorkommen. Es dürfen keine sequentiellen
Verdichtungsstufen von Umbuchungen betroffen sein.
Ein Schlüssel darf nur einmal als Bedingungs- bzw.
Zielschlüssel angegeben werden.
Die Bedingungsschlüssel werden unter 'KS:' und die Zielschlüssel unter 'ZS:' angegeben. Die Option SIMULTAN_DIREKT wird innerhalb der Anweisung 'OPT:' der ASS-Anforderung angegeben.
Bei Verwendung der Option SIMULTAN_DIREKT werden die Arbeitsdateien ASSWKO und ASSWKI benötigt, die physikalisch dieselbe Datei darstellen.
Beispiel
ASS; AG: 7; KS: 100=(1, 3, 5), 200=(A, B, C); ZS: 300=(01, 02, 03); OPT: SIMULTAN_DIREKT; END;
In diesem Beispiel wird der Inhalt des Schlüssel 300
auf '01' gesetzt, wenn der Inhalt des Schlüssels 100
gleich '1' und der des Schlüssels 200 gleich 'A' ist.
Entsprechend gilt:
300 = '02' für 100 = '3' und 200 = 'B',
300 = '03' für 100 = '5' und 200 = 'C'.
Hinweis: In einer DLI-Umgebung wird hierzu ein PSB benötigt, der Updates auf Summendatenbanken und die Steuerungsdatenbank zulässt.
4.1.8 Euro-Optionen PCL1019
Analog zur Auswertung ist unter OPT: bzw. OPTION: die Angabe einer Euro-Option möglich (vergleiche Handbuch HAUSWERT). Zulässig sind dabei:
ORG_WAEHRUNG, EURO, MIT_REF_WERTE
Entsprechend der Definition auf Werte- bzw. Steuerungsdatenbank, der angegebenen Option und der Angaben im Euro-Copy SST1502 (vergleiche Handbuch HINSTALL) werden die angeforderten Werte umgerechnet auf der externen Schnittstellendatei ausgegeben. Achtung: wegen unterschiedlicher Verarbeitung der Summensätze im Vergleich zur Auswertung kann es auf Grund von Rundungsfehlern zu geringfügigen Abweichungen kommen.
Diese Form der Umrechnung kann dazu verwendet werden, um alte Datenbestände nach Euro umzurechnen, beispielsweise bei der Verwendung von Referenzwerten. Bezüglich der Nachkommastellen von Eurowerten ist KST-EURO-MIN (D A 10, SST1549) zu beachten.
4.1.9 Optionen VSTNR und BASIS PCL1019
Die Optionen werden unter 'OPT:' angegeben.
VSTNR=nnnnn bedeutet, dass für die
Schnittstelle genau die Verdichtungsstufenmenge ausgewertet
wird, die die Verdichtungsstufe nnnnn enthält (nicht etwa
eine für die Auswertung günstigere). Existiert die VST nnnnn
nicht, wird abgebrochen.
Bei BASIS wird für jeden Wert der Anforderung eine
Basis-Verdichtungsstufe gesucht. Ist dies für einen Wert der
Anforderung nicht möglich, wird abgebrochen. Gibt es mehrere
Basis-Verdichtungsstufen (auch in verschiedenen Mengen), wird
die für die Auswertung günstigste ausgewählt.
4.1.10 Optionen FIX_N_MIT /-_OHNE, FIX_U_MIT /-_OHNE PCL1019
- FIX_U_MIT :
fixes Ausgabeformat mit Kopf-/Endesatz, Zeiten untereinander - FIX_U_OHNE:
fixes Ausgabeformat ohne Kopf-/Endesatz Zeiten untereinander - FIX_N_MIT :
fixes Ausgabeformat mit Kopf-/Endesatz, Zeiten nebeneinander - FIX_N_OHNE:
fixes Ausgabeformat ohne Kopf-/Endesatz Zeiten nebeneinander
Die Optionen FIX_U_MIT, FIX_U_OHNE, FIX_N_MIT und FIX_N_OHNE
werden unter OPT: angegeben.
Die genannten Optionen bewirken, dass externe
Schnittstellensätze ausgegeben werden, die einen festen
Aufbau haben (konstante Satzlänge, im Werteteil werden
Nullen ergänzt).
Für jeden angeforderten Zeitpunkt bzw. für jedes angeforderte
Zeitintervall aus ZEITRAUM = ( ... ) wird eine eigene
Ausgabedatei erzeugt.
Bei den Optionen FIX_U_OHNE und FIX_N_OHNE werden keine
keine Kopf- und Endesätze ausgegeben. So erzeugte Dateien
sind damit für eine ASS-Erst- bzw. Folgeeinspeicherung nicht
geeignet.
Bei den Optionen FIX_N_MIT und FIX_N_OHNE werden alle
Wert-Zeitkombinationen in einem Satz chronologisch
aufsteigend nebeneinander ausgegeben. Jeder angeforderte
Zeitaspekt aus ZEITRAUM = (t1-t2), der zum
Einspeicherungsrhythmus passt, macht eine Wert-Zeitkombination auf.
Ist die Option AENDERN angegeben und handelt es sich um
einen Bestandswert, so wird eine zusätzliche Spalte für
Gegenbuchungen erzeugt, damit die Änderungsanweisungen
sich nur auf die angeforderten Zeiten auswirken.
Ist der angeforderte Zeitaspekt t2 größer oder gleich
dem Datum der letzten Einspeicherung, so wird keine
Gegenbuchung erzeugt. Um einen festen Aufbau zu erhalten,
wird für diesen Fall ein DUMMY-Eintrag erzeugt, wobei
Wertenummer und Werteinhalt auf Null gesetzt werden.
Die Summe aus auszugebenden Schlüsseln plus Anzahl
Wert-Zeitkombinationen darf 700 nicht übersteigen
(maximale Satzlängenproblematik).
Bei den Optionen FIX_U_MIT und FIX_U_OHNE macht jeder
angeforderte Wert eine Wertespalte im Ausgabesatz auf.
Die erforderlichen Zeiten werden chronologisch aufsteigend in
Folgesätzen ausgegeben. Sätze zu Zeitaspekten,
bei denen alle Werteinhalte Null sind, werden i.a. nicht
ausgegeben.
4.1.11 Erzeugung von PC-Schnittstellen PCL1019
Analog zur Auswertung (PCL1016, PCL1038) können die Ausgaben von PCL1019 auch im PC-Format angefordert werden. Das gewünschte PC-Format wird unter OPT: PC-Format ; angefordert.
Folgende Formate stehen zur Verfügung:
- SYMPHONY
- FOCUS
- FOCUS2
- DBASE
- LOTUSD
- EXCEL
- EXCELOK (Excel ohne Kopf)
- SIPLAN
- OA (Open Access)
- ALPHA
- COBOL
- DB2
- PARADOX
Die PC-Dateien werden analog zu externen Schnittstellen auf Dateien ASSINnn ausgegeben. In Host-Umgebungen haben die Ausgabedateien das Format VB 10004, in Window's bzw. Unix-Umgebungen werden Line-Sequential-Dateien erzeugt. Zu jeder erzeugten Ausgabedatei ASSINnn wird eine Beschreibungsdatei ASSDSnn erzeugt. In Host-Umgebungen haben die Ausgabedateien das Format VB 84, in Window's bzw. Unix-Umgebungen werden Line-Sequential-Dateien erzeugt. Der Satzaufbau ist analog zu den von PCL1038 erzeugten Sätzen und ist dort beschrieben (siehe 4.3).
Die Erzeugung der Beschreibungsdateien kann mit OPT: NO_ASSDS ; unterdrückt werden.
Es werden dieselben Daten wie bei der Erzeugung von externen Schnittstellen ausgegeben. D.h. es stehen alle in den vorangegangenen Abschnitten beschriebenen Möglichkeiten von PCL1019 zur Verfügung, mit Ausnahme der Option SIMULTAN_DIREKT. Die ASS-Zeit wird als 1. Spalte unter dem Bezeichner ZEITRAUM in der Form JHJJMM ausgeben. Da i.a. ein externer Schnittstellensatz mehrere Zeitaspekte enthalten kann, kann es vorkommen, dass eine derartige Situation auf mehrere PC-Schnittstellensätze abgebildet wird.
Umbuchungen bei Bestandswerten können zu Missverständnissen führen: Bei Bestandswerten sollen sich die Umbuchungen nur auf die angeforderten Zeiten beziehen. Da die erzeugten externen Schnittstellen dann Bewegungswerte enthalten, wird für den Folgemonat eine Gegenbuchung erzeugt. Diese Gegenbuchung unterbleibt, wenn es sich um den letzten Einspeicherungsmonat des betreffenden Wertes handelt.
Die Option PC_KY_FIX:
Standardmäßig werden in den Formaten mit einem Trennzeichen
zwischen den Feldern Leerzeichen am Ende von Schlüesselinhalten
nicht ausgegeben. Mit der Option PC_KY_FIX werden die
Leerzeichen mit ausgegeben, also wird jedes Feld in der externen
Länge des Schlüssels ausgegeben.
Die Option MIT_SL:
Diese Option steht nur in Host-Umgebungen (MVS, BS2000)
zur Verfügung. Wird OPT: MIT_SL; angegeben,
so wird in den Ausgabesätzen als erstes ein Halbwort
ausgegeben, das die aktuelle Satzlänge enthält.
Hierdurch wird es erleichert, die Ausgabedateien auf
FB80-Format umzublocken, mit einem File-Transfer auf
z.B. PC zu übertragen und dort dann in Line-Sequential-Dateien
umzuwandeln.
Das Blocken kann am Host mit PCL1203 und Vorlaufkarte
PCL1019 durchgeführt werden, das Entblocken am PC
mit PCL1218 und Vorlaufkarte TRANSLATE.
Die Optionen COBOL bzw. DB2 sollten in einer PC-Umgebung (Window's, Unix) nicht eingesetzt werden, da gepackte Zahlen in Line-Sequential-Dateien keinen Sinn machen.
Beispiel:
ASS; AG: 18; KS: ZEITRAUM=(0293-0493); ZS: 1901 = ('11'); SS: WERTE = (1000); OPT: EXCEL, NO_ASSDS; END;
4.1.12 Werteinhaltsbedingungen PCL1019
Bei der Erzeugung von externen Schnittstellen können auch Werteinhaltsbedingungen gesetzt werden.
Beispiel:
ASS; AG: 18; KS: ZEITRAUM=(0293-0493); ZS: 1901, 1902, 1903; SS: WERTE = (100(,>1000,<10000), 101, 102, 103(,>5000), 104); END;
Es sollen nur die Summensätze ausgegeben werden, in
denen ( der Werteinhalt des Wertes 100 > 1000
und der Werteinhalt des Wertes 100 < 10000 )
oder
der Werteinhalt des Wertes 103 > 5000
ist.
PCL1019 verarbeitet Summensätze von Verdichtungsstufen.
Die oben genannten Bedingungen werden auf jeden zu
verarbeiteten Summensatz angewendet, satzübergreifende
Betrachtungen werden nicht durchgeführt.
Die Prüfungen werden für jeden angeforderten Zeitaspekt
durchgeführt. Sind die angeforderten Bedingungen
für einen Zeitaspekt wahr, so werden alle angeforderten
Werte zu diesem Zeitaspekt ausgegeben.
Beispiel: In einem Summensatz sei folgende Situation gegeben
Wert Datum Inhalt Werteinhaltsbedingung -------------------------------------------- 100 0293 1500 wahr 101 0293 10 - 103 0293 500 falsch 100 0393 20 falsch 101 0393 10 - 103 0393 400 falsch 100 0493 20 falsch 101 0493 10 - 103 0493 10000 wahr 104 0493 80 -
Beim Zeitaspekt 0293 ist eine Bedingung eines Wertes wahr, d.h. 0293 wird ausgegeben, d.h. es werden die drei oben zu 0293 genannten Werte mit ihrem Inhalt ausgegeben. Beim Zeitaspekt 0393 ist keine Bedingung wahr, es wird nichts zu 0393 ausgegeben. Beim Zeitaspekt 0493 ist eine Bedingung eines Wertes wahr, d.h. 0493 wird ausgegeben, d.h. es werden die vier oben zu 0493 genannten Werte mit ihrem Inhalt ausgegeben.
Besonderheiten:
Da die Prüfungen satzweise durchgeführt werden, hängt das Verarbeitungsergebnis von den ausgewählten Verdichtungsstufen ab (hoch verdichtete Verdichtungsstufen haben i.a. größere Werteinhalte als Basisverdichtungsstufen). U.u. müssen die Verdichtungsstufen, die ausgewertet werden sollen, explizit vorgegeben werden (siehe 4.1.9). Fehlen Werte im aktuellen Verdichtungsstufensatz oder ev. sogar ganz in der aktuellen Verdichtungsstufe, so wird ihr Werteinhalt als 0 angenommen.
Sind EURO-Optionen angefordert, so werden die gelesenen Werteinhalte erst umgerechnet und dann geprüft.
Alle Prüfungen beziehen sich auf einen gelesenen Summensatz, nicht auf die letztendlich ausgegebenen Werte. Bei der Option INVERS z.B. wird erst geprüft und dann das Vorzeichen vertauscht.
4.1.13 Die Option ALLES_ABZIEHEN PCL1019
Die Grundidee dieser Option besteht darin, alle Daten eines Arbeitsgebiets abzuziehen, ohne alle verwendeten Schlüssel bzw. Werte dieses Arbeitsgebiets in der aktuellen Anforderung vollständig aufzählen zu müssen (es wird leicht der ein oder andere Schlüssel bzw. Wert vergessen). Darüber hinaus ist es mühsam, alle Schlüssel bzw. Werte des angeforderten Arbeitsgebiets aufzuzählen.
Die Option ALLES_ABZIEHEN soll sicherstellen, dass keine Information verlorengeht. Diese Forderung hat sofort einige wesentliche Konsequenzen: Zu jedem Wert, der eingespeichert ist, gibt es i.a. mehrere Zeitintervalle, zu denen Daten eingespeichert sind (es können z.B. zeitliche Einspeicherungslücken vorliegen). Zu jedem dieser Zeitintervalle muss es Basisverdichtungsstufen geben, da sonst nicht alle Schlüssel, zu denen Daten vorliegen, bedient werden können. Es muss also zu jedem Wert über seine gesamte Einspeicherungshistorie mindestens eine Basisverdichtungsstufe existieren. Damit ist sichergestellt, dass beim Abziehen immer vollständige Informationen geliefert werden.
Ein einfaches (typisches) Beispiel für Basen pro Wert liefern Rechenwerte. Rechenwerte sind i.a. nach sehr wenig Schlüsseln ausgeprägt (z.B. ein Steuersatz nur nach Tarif), wogegen die anderen Werte nach vielen Schlüsseln ausgeprägt sind.
Eine Basis kann als Menge von Schlüssel betrachtet werden, nach denen ein Wert ausgeprägt ist. Wenn ein Arbeitsgebiet für die Option ALLES_ABZIEHEN geeignet ist, hat man eine bestimmte Anzahl von Schlüsselmengen (die verschiedenen Basen), die zusätzlich noch nach Zeitintervallen, zu denen sie existieren, unterschieden werden müssen. Es gibt dann also mehrere verschiedene Schlüsselmengen/Zeitintervall-Kombinationen. Zu jeder dieser Kombinationen gibt es Werte, die dazu passen. Zu jeder dieser Kombinationen wird die aktuelle Anforderung einmal ausgeführt, wobei nur die Daten selektiert werden, die zu der jeweiligen Kombination passen.
In einfachen Fällen (Arbeitsgebiet ohne Rechenwerte, eine Basisverdichtungsstufe für alle Werte mit überall gleicher zeitlicher Einspeicherung) ergibt sich nur eine Schlüsselmengen/Zeitintervall-Kombination und die aktuelle Anforderung braucht nur einmal ausgeführt zu werden.
Die Betrachtung einzelner Verdichtungsstufen im Zusammenhang mit Basisverdichtungsstufen ist nicht ganz korrekt. Es geht immer um Verdichtungsstufenmengen.
Die Option ALLES_ABZIEHEN verträgt sich nicht mit den Optionen SIMULTAN_DIREKT, VSTNR = ... und BASIS. Es ist zulässig, in der aktuellen Anforderung die üblichen Einschränkungen anzugeben. Im Kopfschlüssel kann bei ZEITRAUM = ... ein Zeitintervall angegeben werden. ALLES_ABZIEHEN bezieht sich dann nur noch auf das angeforderte Zeitintervall (es werden dann natürlich nicht mehr alle Daten des angeforderten Arbeitsgebiets abgezogen). Ebenso kann man im Spaltenschlüssel bei WERTE = ... das ganze Verfahren auf bestimmte Werte einschränken. Im Zeilenschlüsselbereich können Schlüssel mit Ausprägungsauswahl angegeben werden. Diese Angaben wirken dann selektiv. Nicht aufgeführte Schlüssel werden so ergänzt, wie es die jeweiligen Basisverdichtungsstufen verlangen.
Die zusätzlichen Selektionsangaben bei ZEITRAUM, bei Schlüsseln bzw. bei Werte sind unabhängig voneinander. Die fehlenden Angaben werden automatisch ergänzt.
Im einfachsten Fall sollte die Angabe des angeforderten Arbeitsgebiets und der erforderlichen Optionen ausreichen:
ASS; AG: 7; OPT: ALLES_ABZIEHEN; END;
4.1.14 Die Option CSV PCL1019
Die Option CSV bewirkt, dass die von PCL1019 ausgegebenen Daten Textformat haben. Siehe hierzu HSYSDOK, Textformat mit Line-Sequentiell. Bei Host-Installationen werden Dateien variabler Satzlänge erzeugt, unter Windows/Unix Line-Sequentielle Dateien. Die Option CSV ist vorwiegend für Windows/Unix-Umgebungen gedacht. Die erzeugten Daten sind im Prinzip externe Schnittstellen, die auch mit nicht ASS-Programmen verarbeitet werden können.
Sollen diese Daten nach Excel importiert werden, so ist darauf zu achten, dass alle Spalten als Textspalten behandelt werden (Excel schneidet u.U. führende Nullen oder führende Blanks weg). Dies führt beim Wertedatum und bei Schlüsselinhalten evtl. zu Problemen.
Standardmäßig sind die Felder der erzeugten Schnittstelle durch Semikolon getrennt. Soll stattdessen der Tabulator verwendet werden, so ist in der Vorlaufkarte die Option TAB anzugeben. Die Option CSV kann i.A. ergänzend angegeben werden.
Die Option CSV ist nicht zulässig bei
- SIMULTAN_DIREKT
- Erzeugung von PC-Schnittstellen (siehe 4.1.11)
In der CSV-Variante (und nur in dieser Variante) kann die Option REL_IN_AUSGABE gesetzt werden. Diese bewirkt, dass angeforderte Schlüsselrelationen auch als solche in die Ausgabeschnittstelle geschrieben werden, d.h. statt die Relationsinhalte auf die Teilschlüssel verteilt auszugeben, bleiben diese zusammengesetzt und der Kopfsatz enthält die Relationsnummer mit führendem "R" (z.B. R345).
Ebenfalls nur in der CSV-Variante möglich (bzw. relevant)
ist die Option "KEIN_INDEX_TEXT": Standardmäßig werden im
CSV-Format bei Indexschlüsseln und -relationen die Langtexte
in die Schnittstelle geschrieben (bei Relationen allerdings
nur, wenn diese auch zusammengesetzt ausgegeben werden, also
die obige Option "REL_IN_AUSGABE" gesetzt ist).
Ist dieses Standardverhalten nicht gewünscht
(z.B. weil beim folgenden PCL1001-Lauf ein i.d.R. überflüssiges
Abfragen der Indexdatenbank verhindert werden soll), so bewirkt
"KEIN_INDEX_TEXT", dass statt der Texte die Indizes (also die
eigentlichen Schlüsselinhalte) ausgegeben werden. Im Kopfsatz
erhält ein Indexschlüssel entsprechend das Präfix "I", eine
Indexrelation das Präfix "J".
In Windows/Unix-Umgebungen ist die Größe der erzeugten Dateien beschränkt (ca. 2 Giga-Byte). Es werden daher u. U. Folgedateien erzeugt, auf ASSIN01 folgt dann ASSIN011, ASSIN012, ... , ASSIN019, ASSIN01A, ... . In diesem Fall muss der ASS-Anwender selbst auf die korrekte Behandlung der Folgedateien achten.
4.1.15 Die Optionen MCL0169 und MCL0169_PLATZ
Analog zu PCL1001 gibt es nun auch in PCL1019 die Möglichkeit,
Schlüsselausprägungen über MCL0169 und die Datei „ASSMANI“
umzuschlüsseln. Die Verwendung eines eigenen User-Exits ist hier
jedoch nicht vorgesehen. Ein eventuell bereits bestehender
User-Exit MCL0169, der für PCL1001 programmiert wurde, würde
hier i.Allg. zum Fehler führen, da andere Satzarten verwendet
werden.
Die Regeln für den Aufbau der „ASSMANI“ sind dieselben wie für
PCL1001. Es werden jedoch eventuelle Zeitumsetzungen ignoriert.
Das Verfahren wird auch hier über die Option „MCL0169“ (oder
„MST0169“) aktiviert, welche in der Vorlaufkarte unter "OPT:"
eingetragen werden muss. Auch hier kann der bereitzustellende
Speicherplatz über die Angabe „MCL0169_PLATZ = …“ gesteuert
werden.
In Verbindung mit der Option „CSV“ (Ausgabe als leserliches
Textformat) ergibt sich hier im Gegensatz zu PCL1001 der
Vorteil, dass die ausgegebene externe Schnittstelle vom
Anwender leichter noch einmal überprüft werden kann.
4.1.16 Die Option #AUS_DATEI
Das Pflegen der Vorlaufkarte ist bei vielen Umbuchungs- oder
Selektionsanweisungen aufwändig und fehleranfällig. Deswegen kann
der Schlüsselteil auch aus einer csv-Datei (PC: ASSZS19.CSV im
$ASS-Verzeichnis; Host: DD-Name ASSZS19, außerdem wird eine
weitere Datei ASSZS19# als Work-Datei benötigt) gelesen werden,
die ggf. maschinell erzeugt werden kann. In der Vorlaufkarte ist
hierfür als ZS-Anweisung
ZS: #AUS_DATEI;
anzugeben.
Die Datei muss folgenden Aufbau haben:
- Die 1. Zeile enthält die Schlüsselnummern, die zugehörigen Spalten ab der 2. Zeile die zu selektierenden Inhalte
- Jede Schlüsselnummer darf nur einmal vorkommen, erlaubt ist aber eine 2. Spalte mit dem Suffix "_UMB", wodurch Umbuchungen definiert werden können
Beispiel:
100 | 100_UMB | 200 | 300 |
---|---|---|---|
ABC | 123 | ||
DEF | GHI | 456 | |
JKL | MNO |
Diese Eingabe entspricht folgender ZS-Anweisung:
ZS: 100 = ('ABC','DEF'>'GHI', 'JKL'>'MNO'), 200, 300 = ('123', '456');
Im PCL1019-Protokoll wird hinter der ZS-Anweisung dann der Inhalt der Eingabedatei ausgegeben, mit den diesbezüglichen Zeilennummern. Insbesondere bei der Vorlaufkartenoption SIMULTAN ist die Eingabedatei deutlich übersichtlicher, da die zueinander gehörenden Inhalte jeweils in derselben Zeile stehen.
Außerdem bietet #AUS_DATEI in Verbindung mit SIMULTAN einen weiteren Vorteil: Normalerweise dürfen in ASS-Anforderungen (also auch in PCL1019) bei jedem Schlüssel nicht mehr als 65.000 Inhalte angefordert werden. ASSZS19 dürfte also nur max. 65.000 Selektionssätze enthalten. Ist allerdings SIMULTAN (nicht: SIMULTAN_DIREKT) aktiv, kann ASSZS19 praktisch beliebig viele Sätze enthalten: Sie wird dann in mehreren Schritten zu jeweils 65.000 Sätzen verarbeitet. Im Protokoll wird bei jedem Schritt die Anforderung neu angelistet.
4.2 Ergebnisse einer BATCH-Auswertung auf Datei ausgeben (LDAT) PCL1016
Das Programm PCL1016 wertet die Bibliotheken E und P der Anforderungsdatenbank aus, und führt BATCH-Auswertungen zu allen fälligen Anforderungen durch.
Wurde in einigen Anforderungen die Option "DATEI" angekreuzt, werden von PCL1016 gegebenenfalls zusätzlich zur Listausgabe alle Ergebnisse der Auswertungen nacheinander in die Datei "LDAT" geschrieben.
Diese Datei kann weiteren Dienstprogrammen (PCL1034, PCL1038) als Eingabedatei zur Verfügung gestellt werden.
Die "LDAT"-Datei kann auch vom Programm PCL1003 erstellt
werden. Standardmäßig wird dabei jedoch der Eintrag für den
Anforderungsnamen in dieser Datei auf Blank gesetzt, was für
die Weiterverarbeitung via PCL1038 und PCL1034 hinderlich ist.
Dies kann verhindert werden, in dem man in der entsprechenden
Anforderung, die das PCL1003 ausführen soll, die Variable
&&NAME mit dem gewünschten Anforderungsnamen besetzt.
Dieser wird dann in die "LDAT" geschrieben.
Bei der Erzeugung der LDAT sollte unbedingt auf die
Einstellungen in den Includes SST1253 (LDAT-ERWEITERT), SST1285
(LDAT-ERWEITERT-V620) und SST1398 (LDAT-ERWEITERT-V640) geachtet
werden. Wenn z. B. in einer Anforderung der Schlüsselinhalt und
die Schlüsselbezeichnung angefordert werden, so
sollten die Schalter LDAT-ERWEITERT alle auf 'J' gesetzt sein.
4.2.1 Selektion aus der Datei LDAT PCL1034
FUNKTIONSBESCHREIBUNG
Wird während einer Auswertung (Programmlauf von PCL1016) eine Ausgabedatei LDAT erzeugt, so stehen in dieser Datei die Daten aller Anforderungen, bei denen eine Ausgabe auf Datei angefordert wurde, hintereinander. Dies kann bei der Weiterverarbeitung dieser Daten außerhalb von ASS störend sein. Mit dem Programm PCL1034 können daher Daten einzelner Anforderungen aus LDAT herausselektiert werden.
ABLAUF
Datenflussplan
1 Eingabe //LDAT $ASS/LDAT (PC) 2 Vorlaufkarte //ASSCO $ASSVLK/T1034.VLK (PC) 3 Liste f. Protokoll //LISTE $ASSPTK/PCL1034.PTK (PC) 4 Ausgabe von PCL1034 //LDATOUT $ASS/LDATOUT (PC) |
VORLAUKARTE
In der Vorlaufkarte muss der vollständige Name der zu selektierenden Anforderung aus LDAT angegeben werden.
BEISPIEL
Die Anforderung "AG03S17" soll aus der Datei "LDAT" selektiert werden:
AG03S17
4.3 PC-Schnittstelle PCL1038
FUNKTIONSBESCHREIBUNG
Als Einführung zur PC-Schnittstelle sollte das Kapitel über die PC-Schnittstelle in der Systemdokumentation gelesen werden.
In diesem Handbuch werden nur die technischen Eigenschaften des Schnittstellenerzeugers PCL1038 beschrieben.
PCL1038 verarbeitet die Datei LDAT, die bei Angabe der Option
'DATEI' in der Anforderung von PCL1003 bzw. PCL1016 erzeugt
wird, und erstellt daraus Dateien, die von anderen Programmen
weiterverarbeitet oder auf PC transferiert werden können.
Namensintervalle von Listanforderungen werden über Vorlaufkarten
definiert.
Pro Namensintervall wird die Datei LDAT sequentiell durchgelesen
und jede Anforderung, die im aktuellen Namensintervall
enthalten ist, in eine Datei ASSPCnn geschrieben.
In ASSPCnn wird aufsteigend von nn=01 bis nn=99 geschrieben.
Jede "ursprüngliche" Listzeile ergibt einen Satz in der
aktuellen PC-Datei. Zusätzlich wird in die entsprechende Datei
ASSDSnn eine Formatbeschreibung für ASSPCnn geschrieben. Der
Aufbau der PC- und der Formatdatei ist abhängig von dem in der
ersten Vorlaufkarte angegebenen PC-Format.
ABLAUF
Datenflussplan
Dateibeschreibung
:Nummer | DD/Linkname | Dateiname ASS-PC | Beschreibung |
---|---|---|---|
1 | ASSCO | $ASSVLK/T1038.VLK | Vorlaufkarte(n) |
2 | LDAT | $ASS/LDAT | Datei mit den von PCL1016 erzeugten Auswertungsergebnissen |
3 | DST001 DST002 DST003 | $ASSDB/DST001 $ASSDB/DST002 $ASSDB/DST003 | Wertedatenbank Schlüsseldatenbank Steuerungsdatenbank |
4 | LISTE | $ASSPTK/LISTE.PTK | Ablauf- und Fehlerprotokoll |
5 | ASSPCnn | $ASS/ASSPCnn | Ausgabedateien für transferierte
Auswertungen. nn kann Werte zwischen 1 und 99 annehmen. Pro Auswertung, die in LDAT enthalten ist und über die in den Vorlaufkarten enthaltenen Namensbereiche angesprochen wird, muss eine Datei zugewiesen werden. |
6 | ASSDSnn | $ASS/ASSDSnn | Ausgabedateien für Strukturbeschreibungen
der Anforderungen. Bei FOCUS und FOCUS2 ist dies die MASTER FILE DESCRIPTION, bei den übrigen PC-Formaten ist dies eine Tabelle der Feldbeschreibungen (s.u). nn kann Werte zwischen 1 und 99 annehmen. Die Datei wird pro Auswertung, die in LDAT enthalten ist und über die in den Vorlaufkarten angegebenen enthaltenen Namensbereiche selektiert wird, benötigt. Bei den Formaten FOCUS und FOCUS2 muss sie zugewiesen werden, bei den anderen Formaten ist dies nicht zwingend erforderlich. |
7 | ASSVT | $ASS/MAILFB.EBC | Ausgabedatei im Falle der Option EMAIL. |
VORLAUFKARTE
1. Vorlaufkarte: Format der PC-Datei
Alles nach dem Strichpunkt ';' ist Kommentar. Zur Zeit können folgende Formate angefordert werden:
- SYMPHONY
- FOCUS
- FOCUS2
- DBASE
- LOTUSD
- EXCEL
- EXCELOK (Excel ohne Kopf)
- SIPLAN
- OA (Open Access)
- ALPHA
- COBOL
- PARADOX
- DB2 (DB2-Ladeformat - impliziert COBOL-Format)
Das Ausgabeformat kann auch über eine Option bei der Anforderung bestimmt werden. Angaben bei der Anforderung übersteuern Angaben in der Vorlaufkarte.
Das PC-Format wird standardmäßig über die optionale PC-Anweisung der Anforderung und falls diese nicht existiert über die obigen Optionen bestimmt. Mittels der zusätzlichen Option IGNORE_ANF wird die optionale PC-Anweisung ignoriert.
Option NOSTOP
In der 1. Vorlaufkarte kann wahlweise die Option NOSTOP ( mit Komma getrennt ) an die Format-Angabe angehängt werden.
Beispiel: FOCUS,NOSTOP
Die Angabe der Option NOSTOP bewirkt eine andere Behandlung des Fehlers 'ASS7106 ANFORDERUNG NICHT BEARBEITBAR: ZAHLENUEBERLAUF', sofern dieser im Programmlauf auftritt.
Für diese Fehlermeldung gibt es 2 Ursachen:
- In einer Listauswertung ist ein Zahlenüberlauf (nicht mehr intern darstellbare Zahl) aufgetreten (z.B. Division durch Null). Im Listbild der ASS-Statistikauswertung wird diese Position mit einem Strich gekennzeichnet.
- In einer Listauswertung enthält der Inhalt eines Wertes mehr signifikante Stellen als die entsprechende externe Länge des Wertes in der Wertedatenbank. Im Listbild der ASS-Statistikauswertung wird diese Position mit Sternen gekennzeichnet.
Bei der Option NOSTOP wird nach Auftreten dieser Fehlermeldung mit der weiteren Verarbeitung der nachfolgenden Anforderung fortgefahren, wogegen sonst ein Programmabbruch erfolgt. Die betreffenden Felder in den Ausgabedateien werden je nach Fehlerursache mit Strichen oder Sternen gefüllt.
Sollte ein solcher Fehler auftreten, ist für eine Weiterverwendung ein Editieren der betreffenden Datei erforderlich. Die Option NOSTOP wird beim Cobol-Format ignoriert, weil in diesem Fall die Fehlermeldung ASS7106 nicht auftritt.
Option NULLEN
Bei nicht berechenbaren Formeln wird 0 (anstatt Leerzeichen beim Cobol-Format bzw. Strichen sonst) in die PC-Datei ausgegeben.
Option PC_KY_VAR
Bei Schlüsselausprägungen werden hintere Leerzeichen entfernt, um ggf. Platz zu sparen. Nur für die Formate EXCEL, EXCELOK und DBASE.
Option OHNE_ZAHLEN oder OZ
Der Spaltenteil der Statistik wird unterdrückt, es werden keine Zahlen ausgegeben.
Option NO_ASSDS
Wird die Option NO_ASSDS angegeben, so wird grundsätzlich keine Beschreibungsdatei ASSDS erzeugt.
Option OS2_ANSI
Bei Erzeugung der PC-Schnittstelle wird der ANSI-Zeichensatz verwendet statt des Microsoft Konsolenzeichensatzes OEM 850.
Option EMAIL
Das Anforderungsergebnis wird auf eine sequentielle Datei geschrieben, die auf einem PC (eventuell nach Filetransfer) via PCL1125 weiterverarbeitet werden kann. PCL1125 versendet die Anforderungsergebnisse an die bei der Anforderung unter dem Verteiler zusammengefassten Empfänger (vergleiche HAUSWERT und HST09).
Optionen PC_MIN und PC_MAX
Die Anzahl der zu erstellenden PC-Dateien muss zwischen PC_MIN und PC_MAX liegen. Standardmäßig ist PC_MIN = 0 und PC_MAX = 99. In der Vorlaufkarte können PC_MIN und PC_MAX verändert werden, so dass gilt: 0 <= PC_MIN <= PC_MAX <= 99.
Vorlaufkarten 2 bis n (max. 50): Namensintervalle (optional)
Ab Spalte 1 können einzelne Anforderungen über ihren Namen oder Namensintervalle selektiert werden.
Andernfalls werden alle Anforderungen bearbeitet.
Beispiel: A-D STAT
In diesem Beispiel werden alle Anforderungen bearbeitet, deren Name im Intervall von 'A' bis 'D' liegt, oder deren Name mit 'STAT' beginnt.
Existieren mehr als zwei Vorlaufkarten, so werden zuerst die Anforderungen aus der 2. Vorlaufkarte, dann die Anforderungen aus der 3. Vorlaufkarte usw. bearbeitet.
ACHTUNG
Die Namensangaben in den Vorlaufkarten 2 bis n dürfen sich nicht überlappen, da das Programm in diesem Fall mit einer entsprechenden Fehlermeldung abbricht.
Die Parameter &&LDAT_SPn:
Werden in der Anforderung, die die Daten der zu erzeugenden PC-Datei ermittelt, Parameter benutzt, die &&LDAT_SP1, &&LDAT_SP2, ... , &&LDAT_SP9 heißen, so wird der Inhalt dieser Parameter in die PC-Datei durchgereicht. Jeder der oben genannten Parameter macht eine eigene Spalte in der PC-Datei auf. Als Inhalt wird der aktuelle Parameterinhalt ausgegeben. Parameterspalten haben also konstanten Inhalt. Die Parameterspalten werden als erste, vor den eigentlichen Datenspalten ausgegeben. Lücken zischen den Parameterspalten werden als Leerspalten (Dummy-Spalten) behandelt.
Beispiel:
In der aktuellen Anforderung gelte: &&LDAT_SP2 = ABC und &&LDAT_SP5 = 4711
Es werden den eigentlichen Datenspalten 5 Spalten vorangestellt. Die 1., 3. und 4. Spalte sind Leerspalten und erhalten den Inhalt "?". Die 2. Spalte erhält den konstanten Inhalt "ABC", die 5. Spalte den konstanten Inhalt "4711".
Besonderheiten bei Join-Anforderungen bzw. verketteten Anforderungen:
Es werden nur die Parameter berücksichtigt, die der Join-Anforderung bzw. der verketteten Anforderung zugeordnet sind. Parameter von benutzten bzw. untergeordneten Anforderungen werden nicht berücksichtigt.
Leere Anforderungen
Liefert eine Anforderung keine Zahlen (ES GIBT KEINE DARZUSTELLENDEN ZAHLEN), so wird eine "leere" PC-Datei erzeugt. D.h. es wird ein einziger Datensatz erzeugt, der zusätzlich zu den &&LDAT_SPn-Spalten eine Spalte mit Namen LEERSP und Inhalt LEER enthält.
Fehlerhafte Anforderungen
Wird aus einer fehlerhaften Anforderung eine PC-Datei
erzeugt, so wird dies durch einen speziellen Datensatz
gekennzeichnet. Dieser Datensatz enthält eine Spalte
mit Namen FEHLSP und Inhalt FEHLER.
Konnten die Parameter &&LDAT_SPn ermittelt werden,
so wird die Fehler-Spalte zusätzlich zu den
&&LDAT_SPn-Spalten erzeugt.
Unvollständige Anforderungen
Musste die Erzeugung einer PC-Datei wegen einer Fehlersituation abgebrochen werden, so werden unvollständige PC-Dateien durch einen speziellen Endesatz gekennzeichnet. Die Schlüsselinhalte erhalten den Text FEHLER, falls die betreffende Spalte breit genug ist, ansonsten wird die betreffende Spalte mit dem Buchstaben F aufgefüllt. Die Werte-Spalten erhalten den Inhalt 0.
Satzaufbau ASSPCnn
- Variable Satzlänge geblockt
- maximale Satzlänge 400 Byte
Die Sätze innerhalb einer DATEI ASSPCnn sind alle gleich lang. Inhalt und Satzlänge variieren allerdings von Datei zu Datei in Abhängigkeit von der jeweiligen Anforderung und dem angeforderten PC-Format. Im Protokoll von PCL1038 wird für jede Datei eine detaillierte Dateibeschreibung erstellt.
Anforderung:
Ausprägungen erscheinen stets in der externen Länge, mit der sie in der Schlüsseldatenbank definiert sind, außer bei den Optionen Kurzbezeichnung (6) und Bezeichnung (20).
Werteinhalte werden nach den Aufbereitungsangaben der betreffenden Anforderung gespeichert.
Wurde in der Anforderung nichts angegeben, so gelten bei "echten" Werten die Angaben aus der Wertedatenbank, bei Formeln die Standardaufbereitung (15,0). Gerundete Werte ( z.B. (10,C)) werden wie ganzzahlige Werte behandelt.
Eine Ausnahme bildet das COBOL-/DB2-Format. Dort werden Werte stets im Format 8 Byte gepackt ausgegeben. A c h t u n g: Wird im ASS WERTE als Zeilenschlüssel angefordert, so kann die Kommaposition innerhalb einer Spalte sich verschieben. Im entsprechenden Kopfsatz der LDAT kann jedoch nur eine Kommaposition angekündigt werden (in diesem Fall die maximal möglichen vier Nachkommastellen). Daher sind in diesem Spezialfall die Zahlen der PC-Datei kontextabhängig zu interpretieren.
Zeitangaben werden stets in der Länge 4 in der Form JJMM geschrieben, wenn keine Zeitintervalle angefordert wurden. Kommen Zeitintervalle vor, so werden die Zeitangaben in der Länge 9 in der Form JJMM-JJMM geschrieben.
PC-Formate:
Die einzelnen PC-Formate unterscheiden sich in ihrem Aufbau
nur geringfügig.
Insbesondere die Feldlängen (ohne '"', ',' und '.') sind bei
allen Formaten identisch.
Die Besonderheiten der Formate werden in einem abschließenden
Beispiel dargestellt.
Satzaufbau ASSDSnn
- Feste Satzlänge 80 Byte
Diese Dateien werden zwingend benötigt, wenn die PC-Dateien für FOCUS und FOCUS2 erstellt werden. Für die übrigen PC-Formate ist die Angabe optional: Ist keine Formatdatei vorhanden, so wird keine Formatbeschreibung erstellt.
Für FOCUS und FOCUS2 enthalten sie die sogenannte MASTER FILE DESCRIPTION mit festem "FILENAME" und "SEGNAME" für die entsprechende PC-Datei ASSPCnn.
Für die übrigen PC-Formate ist das Format gleich dem der ASSPC-Datei, und die inhaltliche Bedeutung ist folgende :
- Jeder Satz beschreibt ein Feld der ASSPC-Datei, der erste das erste Feld, der zweite das zweite usw..
- Jeder Satz der ASSDS-Datei enthält 5 Felder mit folgender
Bedeutung :
- FELDBEZEICHNUNG :
Feldbezeichnung des jeweiligen Feldes. Wird aus der ASS-Anforderung übernommen, und zwar aus den Zeilen- und Spaltenüberschriften, falls angegeben, oder aus der entsprechenden Schlüssel- oder Werte-Bezeichnung bzw. Überschrift. - FELDTYP :
'C' (CHARACTER) für Schlüsselinhalte und Zeiträume, 'N' (numerisch) für Werte - FELDLAENGE :
Länge des Feldes, bei numerischen Feldern werden Vorzeichen und Dezimalzeichen mitgerechnet. - NACHKOMMASTELLEN:
Zahl der Nachkommastellen, bei Feldern des Types 'C' immer 0. - INDEX (Ja/Nein) :
Immer auf 'N' für Nein. (Damit kann gekennzeichnet werden, ob die PC-Software für dieses Feld einen Index anlegen soll.)
- FELDBEZEICHNUNG :
Die Längen der Felder der ASSDS-Sätze betragen 10,1,3,3,1 für DBase, und 20,1,3,3,1 sonst. Damit die ASSDS-Datei für die PC-Formate ungleich FOCUS, FOCUS2 erstellt wird, muss im Include SST1253 (in MST0010 enthalten) der Schalter LDAT_ERWEITERT auf '1'B stehen.
RESTRIKTIONEN
Die Elemente in LDAT müssen folgende Bedingungen erfüllen, um von PCL1038 einwandfrei verarbeitet werden zu können:
- WERTE muss einziger Spaltenschlüssel sein.
- Mindestens ein Kopf- oder Zeilenschlüssel muss existieren.
Es empfiehlt sich, für Zeitangaben ZEITRAUM als Kopf- oder Zeilenschlüssel zu verwenden, da Zeitangaben bei Werten nicht in die PC-Dateien überführt werden. Bei Formeln können nur die Rechenergebnisse, d.h. die Ziffernfolge des Ergebnisses, weitergegeben werden.
BEISPIEL:
Folgende Anforderung wurde mit PCL1003 bzw. PCL1016 in die Datei 'LDAT' gestellt:
ASS; AG: 19; KS: ZEITRAUM = ( Q486 ); ZS: 1903 , 1904; SS: WERTE = ( 1901 , 1904 ); OPT: DATEI; END;
Die Länge der beiden Schlüssel sei 2 bzw. 1, die der Werte 5 und 12.
Ergebnis der Anforderung:
ARBEITSGEBIET: 19: LEBEN_DEMO ZEITRAUM: Q486 I WERTE I ANZAHL_ JAHRESBEITRAG TARIF DYNAMI I STUECK DM ----------------------------------------- I T1 0 I 1.918 456.473,683 1 I 4.004 841.630,533 I T2 0 I 213 22.369,578 1 I 57 4.290,210 I T3 0 I 2.037- 109.921,688 I T4 0 I 2.359- 0 I T5 0 I 17- 3.366,728 I T6 0 I 186- 15.862,990- I T7 0 I 91 7.512,090
Dann erhält man für die einzelnen PC-Formate Ausgabedateien in folgender Form:
SYMPHONY - Format
Die Schlüsselausprägungen und Zeitraumangaben werden in '"' eingeschlossen.
Vor den Werteinhalten steht stets das Vorzeichen ('+' oder '-') und das Komma wird durch '.' dargestellt.
Alle Angaben werden durch ein ',' voneinander getrennt.
FORMAT-DATEI ----+----1----+----2----+----3----+----4----+----5----+--6 "ZEITRAUM ","C",+04,+00,"N" "TARIF ","C",+02,+00,"N" "DYNAMIK ","C",+01,+00,"N" "ANZAHL_VETRAEGE ","N",+06,+00,"N" "JAHRESBEITRAG ","N",+14,+03,"N" PC-DATEI ----+----1----+----2----+----3----+----4----+----5----+--6 "86Q4","T1","0",+01918,+000456473.683 "86Q4","T1","1",+04004,+000841630.533 "86Q4","T2","0",+00213,+000022369.578 "86Q4","T2","1",+00057,+000004290.210 "86Q4","T3","0",-02037,+000109921.688 "86Q4","T4","0",-02359,+000000000.000 "86Q4","T5","0",-00017,+000003366.728 "86Q4","T6","0",-00186,-000015862.990 "86Q4","T7","0",+00091,+000007512.090
LOTUSD - Format
Das LOTUSD-Format ist fast identisch mit dem SYMPHONY-Format. Lediglich bei den Werteinhalten wird das Komma durch ',' (anstatt durch '.') dargestellt.
FORMAT-DATEI ----+----1----+----2----+----3----+----4----+----5----+--6 "ZEITRAUM ","C",+04,+00,"N" "TARIF ","C",+02,+00,"N" "DYNAMIK ","C",+01,+00,"N" "ANZAHL_VETRAEGE ","N",+06,+00,"N" "JAHRESBEITRAG ","N",+14,+03,"N" PC-DATEI ----+----1----+----2----+----3----+----4----+----5----+--6 "86Q4","T1","0",+01918,+000456473,683 "86Q4","T1","1",+04004,+000841630,533 "86Q4","T2","0",+00213,+000022369,578 "86Q4","T2","1",+00057,+000004290,210 "86Q4","T3","0",-02037,+000109921,688 "86Q4","T4","0",-02359,+000000000,000 "86Q4","T5","0",-00017,+000003366,728 "86Q4","T6","0",-00186,-000015862,990 "86Q4","T7","0",+00091,+000007512,090
OA - Format (Open Access)
Das OA-Format ist fast identisch mit dem SYMPHONY-Format. Lediglich bei den Werteinhalten wird das Komma durch ',' (anstatt durch '.') dargestellt und als Trennsymbol gilt ein Blank (anstatt ',').
FORMAT-DATEI ----+----1----+----2----+----3----+----4----+----5----+--6 "ZEITRAUM " "C" +04 +00 "N" "TARIF " "C" +02 +00 "N" "DYNAMIK " "C" +01 +00 "N" "ANZAHL_VETRAEGE " "N" +06 +00 "N" "JAHRESBEITRAG " "N" +14 +03 "N" PC-DATEI ----+----1----+----2----+----3----+----4----+----5----+--6 "86Q4" "T1" "0" +01918 +000456473,683 "86Q4" "T1" "1" +04004 +000841630,533 "86Q4" "T2" "0" +00213 +000022369,578 "86Q4" "T2" "1" +00057 +000004290,210 "86Q4" "T3" "0" -02037 +000109921,688 "86Q4" "T4" "0" -02359 +000000000,000 "86Q4" "T5" "0" -00017 +000003366,728 "86Q4" "T6" "0" -00186 -000015862,990 "86Q4" "T7" "0" +00091 +000007512,090
FOCUS - Format
Schlüsselausprägungen und Zeitraumangaben stehen ohne einschließende '"' und trennende ','. Die Werteinhalte werden ebenfalls nicht durch ',' getrennt. Bei ihnen fehlt stets das Komma; das Vorzeichen wird durch Zonenüberlochung auf der niederwertigsten Ziffer dargestellt.
FORMAT-DATEI ----+----1----+----2----+----3----+----4----+----5----+--6 FILENAME=ASSDS,SUFFIX=FIX,$ SEGNAME=A,$ FIELDNAME=ZEITRAUM ,ALIAS=ASS,USAGE=A4 ,ACTUAL=A4 ,$ FIELDNAME=TARIF ,ALIAS= ,USAGE=A2 ,ACTUAL=A2 ,$ FIELDNAME=DYN ,ALIAS= ,USAGE=A1 ,ACTUAL=A1 ,$ FIELDNAME=ANZAHL ,ALIAS= ,USAGE=P5 ,ACTUAL=Z5 ,$ FIELDNAME=JBTR ,ALIAS= ,USAGE=P12.3 ,ACTUAL=Z12.3 ,$ PC-DATEI ----+----1----+----2----+----3----+----4----+----5----+ CHAR:86Q4T100191H00045647368C HEX1:FFDFEFFFFFFCFFFFFFFFFFFC HEX2:868431001918000456473683 CHAR:86Q4T110400D00084163053C HEX1:FFDFEFFFFFFCFFFFFFFFFFFC HEX2:868431104004000841630533 CHAR:86Q4T200021C00002236957H HEX1:FFDFEFFFFFFCFFFFFFFFFFFC HEX2:868432000213000022369578 CHAR:86Q4T210005G00000429021ä HEX1:FFDFEFFFFFFCFFFFFFFFFFFC HEX2:868432100057000004290210 CHAR:86Q4T300203P00010992168H HEX1:FFDFEFFFFFFDFFFFFFFFFFFC HEX2:868433002037000109921688 CHAR:86Q4T400235R00000000000ä HEX1:FFDFEFFFFFFDFFFFFFFFFFFC HEX2:868434002359000000000000 CHAR:86Q4T500001P00000336672H HEX1:FFDFEFFFFFFDFFFFFFFFFFFC HEX2:868435000017000003366728 CHAR:86Q4T600018O00001586299ü HEX1:FFDFEFFFFFFDFFFFFFFFFFFD HEX2:868436000186000015862990 CHAR:86Q4T700009A00000751209ä HEX1:FFDFEFFFFFFCFFFFFFFFFFFC HEX2:868437000091000007512090
Je 3 Zeilen (CHAR, HEX1, HEX2) gehören logisch zusammen. In der Zeile CHAR sind die am Bildschirm sichtbaren Zeichen, unter HEX1 und HEX2 die hexadezimalen Zahlen zu entnehmen.
Durch spaltenweises Lesen ergibt sich folgende Entsprechung:- Zeichen '8' entspricht hexadezimal 'F8',
- Zeichen '6' entspricht hexadezimal 'F6',
- Zeichen 'Q' entspricht hexadezimal 'D8' usw.
FOCUS2 - Format
Schlüsselausprägungen und Zeitraumangaben stehen ohne einschließende '"' und trennende ','. Die Werteinhalte werden ebenfalls nicht durch ',' getrennt. Führende Nullen werden unterdrückt, negative Vorzeichen stehen vor der ersten Ziffer.
Zu diesem Format wird eine Beschreibung (MASTER FILE DESCRIPTION) auf ASSDSnn generiert. Dieses Format kann keine Werte mit einer Länge größer als 16 verarbeiten, d.h. in den ASS-Anforderungen darf keine Werteaufbereitung der Form (15,n), n=1,2,3,..., verwendet werden ((15,0) ist zulässig). In diesem Fall wird die Bearbeitung abgebrochen.
FORMAT-DATEI ----+----1----+----2----+----3----+----4----+----5----+--6 FILENAME=ASSDS,SUFFIX=FIX,$ SEGNAME=A,$ FIELDNAME=ZEITRAUM ,ALIAS=E01,USAGE=A4 ,ACTUAL=A4 ,$ FIELDNAME=TARIF ,ALIAS=E02,USAGE=A2 ,ACTUAL=A2 ,$ FIELDNAME=DYN ,ALIAS=E03,USAGE=A1 ,ACTUAL=A1 ,$ FIELDNAME=ANZAHL ,ALIAS=E04,USAGE=D6 ,ACTUAL=A6 ,$ FIELDNAME=JBTR ,ALIAS=E05,USAGE=D14.3 ,ACTUAL=A14 ,$ PC-DATEI ----+----1----+----2----+----3----+----4----+----5----+ CHAR:86Q4T10 1918 456473,683 HEX1:FFDFEF44FFFFFFFFFFFF6FFF HEX2:86843100191800456473B683 CHAR:86Q4T11 4004 841630,333 HEX1:FFDFEFF4FFFF44FFFFFF6FFC HEX2:86843110400400841630B333 CHAR:86Q4T20 213 22369,578 HEX1:FFDFEFF44FFF444FFFFF6FFF HEX2:86843200021300022369B578 CHAR:86Q4T21 57 4290,210 HEX1:FFDFEFF444FF4444FFFF6FFF HEX2:86843210005700004290B210 CHAR:86Q4T30-2037 109921,728 HEX1:FFDFEFF6FFFF44FFFFFF6FFF HEX2:86843300203700109921B728 CHAR:86Q4T40-2359 ,000 HEX1:FFDFEFF6FFFF444444446FFF HEX2:86843400235900000000B000 CHAR:86Q4T50 -1P 3366,728 HEX1:FFDFEFF446FF4444FFFF6FFF HEX2:86843500001700003366B728 CHAR:86Q4T60 -186 -15862,990 HEX1:FFDFEFF46FFF446FFFFF6FFF HEX2:86843600018600015862B990 CHAR:86Q4T70 91 7512,090 HEX1:FFDFEFF444FF4444FFFF6FFF HEX2:86843700009100007512B090
DBASE - Format
Dieses Format entspricht dem SYMPHONY-Format mit der einen Ausnahme, dass Schlüsselausprägungen und Zeitraumangaben nicht in '"' eingeschlossen werden. In der Format-Datei werden die Feldbezeichnungen in der Länge 10 (anstatt 20) weitergegeben. Längere Bezeichnungen werden abgeschnitten.
FORMAT-DATEI ----+----1----+----2----+----3----+----4----+----5----+--6 ZEITRAUM ,C,+04,+00,N TARIF ,C,+02,+00,N DYNAMIK ,C,+01,+00,N ANZAHL_VET,N,+06,+00,N JAHRESBEIT,N,+14,+03,N PC-DATEI ----+----1----+----2----+----3----+----4----+----5----+--6 86Q4,T1,0,+01918,+000456473.683 86Q4,T1,1,+04004,+000841630.533 86Q4,T2,0,+00213,+000022369.578 86Q4,T2,1,+00057,+000004290.210 86Q4,T3,0,-02037,+000109921.688 86Q4,T4,0,-02359,+000000000.000 86Q4,T5,0,-00017,+000003366.728 86Q4,T6,0,-00186,-000015862.990 86Q4,T7,0,+00091,+000007512.090
EXCEL - Format
Dieses Format entspricht dem DBASE-Format mit der Ausnahme, dass der Dezimalpunkt durch ein Dezimalkomma und das Trennsymbol durch ein Semikolon ersetzt wird. Außerdem wird, sofern im Include SST1253 (s.o.) aktiviert, als erster Satz ein beschreibender Satz herausgegeben, der die Spalten-Bezeichnungen enthält.
FORMAT-DATEI ----+----1----+----2----+----3----+----4----+----5----+--6 ZEITRAUM ;C;+04;+00;N TARIF ;C;+02;+00;N DYNAMIK ;C;+01;+00;N ANZAHL_VETRAEGE ;N;+06;+00;N JAHRESBEITRAG ;N;+14;+03;N PC-DATEI ----+----1----+----2----+----3----+----4----+----5----+--6 ZEITRAUM;TARIF;DYNAMIK;ANZAHL_VERTRAEGE;JAHRESBEITRAG 86Q4;T1;0;+01918;+000456473,683 86Q4;T1;1;+04004;+000841630,533 86Q4;T2;0;+00213;+000022369,578 86Q4;T2;1;+00057;+000004290,210 86Q4;T3;0;-02037;+000109921,688 86Q4;T4;0;-02359;+000000000,000 86Q4;T5;0;-00017;+000003366,728 86Q4;T6;0;-00186;-000015862,990 86Q4;T7;0;+00091;+000007512,090
ALPHA - Format
Dieses Format entspricht dem EXCEL-Format, jedoch ohne die trennenden Semikolons zwischen Schlüsselausprägungen und Werten.
FORMAT-DATEI ----+----1----+----2----+----3----+----4----+----5----+--6 ZEITRAUM C+04+00N TARIF C+02+00N DYNAMIK C+01+00N ANZAHL_VETRAEGE N+06+00N JAHRESBEITRAG N+14+03N PC-DATEI ----+----1----+----2----+----3----+----4----+----5----+--6 86Q4T10+01918+000456473.683 86Q4T11+04004+000841630.533 86Q4T20+00213+000022369.578 86Q4T21+00057+000004290.210 86Q4T30-02037+000109921.688 86Q4T40-02359+000000000.000 86Q4T50-00017+000003366.728 86Q4T60-00186-000015862.990 86Q4T70+00091+000007512.090
SIPLAN - Format
Die Schlüsselausprägungen und Zeitraumangaben werden am Anfang jeweils mit "'" gekennzeichnet. Vor den Werteinhalten steht stets das Vorzeichen ('+' oder '-'). Das Komma wird durch ',' dargestellt. Eine Angabe wird durch ' #' abgeschlossen. Das Satzende wird durch ' ##' markiert.
FORMAT-DATEI ----+----1----+----2----+----3----+----4----+----5----+--6 'ZEITRAUM #'C #+04 #+00 #'N # ## 'TARIF #'C #+02 #+00 #'N # ## 'DYNAMIK #'C #+01 #+00 #'N # ## 'ANZAHL_VETRAEGE #'N #+06 #+00 #'N # ## 'JAHRESBEITRAG #'N #+14 #+03 #'N # ## PC-DATEI ----+----1----+----2----+----3----+----4----+----5----+--6 '86Q4 #'T1 #'0 #+01918 #+000456473.683 # ## '86Q4 #'T1 #'1 #+04004 #+000841630.533 # ## '86Q4 #'T2 #'0 #+00213 #+000022369.578 # ## '86Q4 #'T2 #'1 #+00057 #+000004290.210 # ## '86Q4 #'T3 #'0 #-02037 #+000109921.688 # ## '86Q4 #'T4 #'0 #-02359 #+000000000.000 # ## '86Q4 #'T5 #'0 #-00017 #+000003366.728 # ## '86Q4 #'T6 #'0 #-00186 #-000015862.990 # ## '86Q4 #'T7 #'0 #+00091 #+000007512.090 # ##
COBOL - und DB2 - Format
Dieses Format entspricht den anderen Formaten, es werden jedoch alle Begrenzer (Hochkommata) und Trennsymbole (Kommata) weggelassen. Zahlen werden im Format 8 Byte gepackt ausgegeben.
FORMAT-DATEI für COBOL: ----+----1----+----2----+----3----+----4----+----5----+--6 ZEITRAUM C................N TARIF C................N DYNAMIK C................N ANZAHL_VETRAEGE C................N JAHRESBEITRAG C................N
zwei gepackte Zahlen
FORMAT-DATEI für DB2 (nur PCL1038)
Die Format-Datei bei der Option DB2 wird als 'Create-Table-Anweisung' für das DB2-Load-Utility generiert. Dabei kann der Name der DB2-Tables und des DB2-Tablespaces in der Anforderung festgelegt werden. Die erste Überschriftszeile der Anforderung muss dazu in den ersten 70 Byte folgenden Text enhalten:
TABLE ........ IN ........... .
Fehlt in der Überschrift der Anforderung TABLE ... IN ... so werden Table und Tablespace als '???' ausgegeben.
Beispiel:
In der ST31 wurde im Bild VS101 oder in der Maske VS106 (nach Kommando 'UE') in der ersten Eingabezeile folgender Text angelegt:
"TABLE PG####.DB2_Table IN PG####.DB2_Tablespace" PCL1038 schreibt dann bei der Option DB2 im obigen Beispiel folgende Formatdatei:
----+----1----+----2----+----3----+----4----+----5----+--6 CREATE TABLE PG####.DB2_Table ( ZEITRAUM CHAR (4) NOT NULL, TARIF CHAR (2) NOT NULL, DYNAMIK CHAR (1) NOT NULL, ANZAHL_VETRAEGE DEC (15,0) NOT NULL, JAHRESBEITRAG DEC (15,3) NOT NULL ) IN PG####.DB2_Tablespace ;
Ausgabedatei ASSDSnn für Cobol- und DB2-Format:
----+----1----+----2----+----3----+----4----+----5----+--6 86Q4T10................ 86Q4T11................ 86Q4T20................ 86Q4T21................ 86Q4T30................ 86Q4T40................ 86Q4T50................ 86Q4T60................ 86Q4T70................
zwei gepackte Zahlen
PARADOX - Format
Im PARADOX-Format werden sowohl Schlüsselinhalte wie auch Werteinhalte in Gänsefüßchen eingeschlossen. Die einzelnen Felder werden duch Kommata getrennt, Dezimalzeichen ist der Punkt, nur das negative Vorzeichen erscheint, und zwar vorne, führende Nullen erscheinen nicht.
FORMAT-DATEI ----+----1----+----2----+----3----+----4----+----5----+--6 "ZEITRAUM ","C","4","","N" "TARIF ","C","2","","N" "DYNAMIK ","C","1","","N" "ANZAHL_VETRAEGE ","N","6","","N" "JAHRESBEITRAG ","N","14","3","N" PC-DATEI ----+----1----+----2----+----3----+----4----+----5----+--6 "86Q4","T1","0","1918","456473.683" "86Q4","T1","1","4004","841630.533" "86Q4","T2","0","213","22369.578" "86Q4","T2","1","57","4290.210" "86Q4","T3","0","-2037","109921.688" "86Q4","T4","0","-2359","" "86Q4","T5","0","-17","3366.728" "86Q4","T6","0","-186","-15862.990" "86Q4","T7","0","91","7512.090"
4.4 Selektion und Zusammenfassung von ASS-Druckoutput PCL1078
FUNKTIONSBESCHREIBUNG
Wird ASS als Instrument zur Bereitstellung von Standardlisten
für die verschiedenen Organisationseinheiten eines
Unternehmens eingesetzt, so erfordert dieser Einsatz häufig
eine Umsortierung und/oder Zusammenfassung des Druckoutputs
der ASS-Auswertungsprogramme.
So können Anwendungsfälle auftreten, in denen gezielt
Listseiten einer ASS-Auswertung für bestimmte Empfänger
selektiert und auf eigene Druckausgabedatei ausgegeben werden
sollen.
Werden themen- oder arbeitsgebietsübergreifende Auswertungen
vorgenommen, so werden diese in der Regel über getrennte
Listanforderungen erreicht. In jeder dieser Listanforderungen
treten aber die gleichen Organisationseinheiten auf, nach
denen die Daten aufgeschlüsselt und die Listen verteilt
werden sollen.
Belässt man die Druckausgabe in der Form, wie sie durch das
Programm PCL1016 erzeugt wurde, so folgen zunächst die Daten
der einzelnen Organisationseinheiten zum ersten der gewünschten
Themengebiete, dann zum zweiten usw. .
Gewünscht wird aber eine Zusammenstellung der nach
Themengebieten, z.B. Sparte, getrennten Listseiten einer dieser
angeforderten Organisationseinheiten. Zu einer jeden
Geschäftsstelle sollen z.B. auf der ersten Seite die
Ergebnisse im Bereich Leben, auf der zweiten Seite im
Bereich Sach ausgegeben werden. Es soll auf diese Weise
eine einzige, neu zusammengemischte Ausgabedatei entstehen.
Mit dem Programm PCL1078 steht nun ein Hilfsmittel zur
Verfügung, das sowohl die oben gezeigte Selektion von
Listseiten einer Output-Datei auf getrennte Ausgabedateien als
auch das Mischen von Listseiten mehrerer Output-Dateien nach
bestimmten Schlüsselkriterien zu einer Ausgabedatei
ermöglicht. Beim Mischen gibt es noch zusätzlich die
Möglichkeit die Zielliste frei zusammenzustellen, das
sogenannte Merge-Edit.
Um in dieser Weise die Listausgaben umgestalten zu können,
erwartet PCL1078 das Vorhandensein von Trennsätzen vor den
einzelnen Listseiten der Ausgabedateien von PCL1016.
Die Ausgabe von Trennsätzen wird erreicht, indem man in den betreffenden Anforderungen die Option "Jeder Start mit Startseite" wählt und eine Listklasse anfordert, die bei der ASS-Installation als spezielle Klasse für diese Output-Umgestaltung eingerichtet wurde (Verschickklasse). Die angeforderte Protokollklasse muss von der Listklasse verschieden sein.
Mit dem Dienstprogramm PCL1016 werden dann die Anforderungen ausgeführt und die Liste auf die reservierte Listklasse ausgegeben. Die Ausgabe ist identisch mit der normalen Ausgabe, außer dass Trennsätze eingefügt werden. Trennsätze enthalten an den ersten beiden Positionen die Zeichenkombination &&. (Die erste Position ist normalerweise die Stelle für das Druckersteuerzeichen (ASA-Zeichen).) Dann folgt der Anforderungsname, der Inhalt des ersten echten Kopfschlüssels und die erste Kommentarzeile der Anforderung.
Anschließend kann mit dem Dienstprogramm PCL1078 entweder aus einer Datei selektiert werden oder mehrere Dateien zusammengemischt werden. Die Selektion und das Merge-Edit werden über Vorlaufkarte gesteuert. Für das Merge-Edit definiert man lediglich in der Zielliste die Fenster und gibt zu diesen noch die Fenster in der Quelliste an. Die Fenster sind stets rechteckig und dürfen sich in der Zielliste nicht überlappen.
ABLAUF
- Anforderungen via ST31 erstellen und auf Bibliothek E oder P abspeichern. In der Optionen-Maske muss bei LIKLASSE die Nummer der Listklasse angegeben werden, die für die Trennsatzausgabe bei der Installation vorbereitet wurde.
- Mit dem Dienstprogramm PCL1016 die oben erstellten Anforderungen ausführen. Dafür muss in der JCL unter LISTEnn eine sequentielle Datei zugeordnet werden, wobei für nn die Nummer der Listklasse zu setzen ist.
- Mit dem Dienstprogramm PCL1078 kann nun die im vorherigen Schritt erstellte sequentielle Datei selektiert werden.
Datenflussplan (ohne Option MERGE)
Datenflussplan (mit Option MERGE)
Dateibeschreibung
DD-Name/ Link-Name |
Format/Recl | Dateiname ASS-PC | Beschreibung |
---|---|---|---|
ASSCO | FB 80 | $ASSVLK/T1078.VLK | Vorlaufkarte |
LISTE | FBA 133 | $ASSPTK/PCL1078.PTK | Protokoll, 80-spaltig in den Spalten 7 bis 86 |
ASSIN | * | $ASS/ASSIN | Verschickklasse, die durch PCL1016 erstellt wurde |
ASSINmm | * | $ASS/ASSINnn | Verschickklasse, die durch PCL1016
erstellt wurde mm = 01 .. 50 |
ASSUT | * | $ASS/ASSUT | Merge von Verschickklassen |
ASSUTnn | * | $ASS/ASSUTnn | Selektion aus Verschickklasse nn = 01 .. 99 nn ist die nn. Selektionsangabe in der Vorlaufkarte |
LISTDB | * | $ASS/LISTDB | Ausgabedatei bei Option LISTDB |
* Das Dateiformat ist installationsabhängig und identisch mit dem der in der JCL von PCL1016 unter LISTEnn zugewiesenen Ausgabedatei. |
VORLAUFKARTE
Achtung: Es werden nur die ersten 72 Zeichen innerhalb jeder Karte berücksichtigt.
Die Optionen werden ab der ersten Karte angegeben und untereinander durch Kommata getrennt. Falls keine Optionen erforderlich sind, so bleibt die erste Karte leer. Standardmäßig gelten alle Optionen als nicht angegeben.
Inhalt | Aktion |
---|---|
OHNE_TRENNSATZ | Trennsätze werden nicht ausgegeben |
LISTDB | Ausgabe auf die Datei LISTDB, die mittels PCL1095 für den Berichtsdialog geladen werden kann |
NAME = xxxxxxx | Name des Elementes für den Berichtsdialog
(alphanumerisch von maximaler Länge 8); diese Option ist nur in Verbindung mit der Option LISTDB zulässig |
MERGE = nn | Keine Selektion, sondern 2 <= nn <= 50 PCL1016-Ausgabedateien mischen |
RL = rrr | Unter MVS die logische Satzlänge für die Ausgabe (außer MERGE-EDIT) mit 50 <= rrr <= 400 |
SORT = z vs bs | Für Merge-Edit Angabe von bis zu 10 Sortkriterien: Zeile, Von-Spalte und Bis-Spalte. Standard für eine nicht angegebene Von-Spalte ist 1 und für die Bis-Spalte das Zeilenende. |
Die Selektionskriterien werden ab der zweiten Karte aber direkt hinter den Optionen angegeben und zwar pro Karte genau eines. Falls die Angabe Sonderzeichen oder Leerzeichen enthält, muss sie in ' oder " angegeben werden.
Format für Merge-Edit
In der ersten Zeile ist die MERGE-Option anzugeben und ab der zweiten Zeile stehen die Angaben für Merge-Edit und zwar immer genau eine pro Zeile. Die Option OHNE_TRENNSATZ braucht nicht angegeben werden, da keine Trennsätze ausgegeben werden können.
Die Zeilen werden pro Seite von oben nach unten und die Spalten pro Zeile von links nach rechts jeweils bei eins beginnend durchnumeriert. Das ASA-Steuerzeichen und die Trennsätze der Verschickklasse werden bei der Numerierung als nicht existent angesehen. Die maximale Breite ist die Breite der Verschickklasse ohne das ASA-Steuerzeichen. Es können mehr Zeilen in einem Quellfenster angegeben werden als eine Seite enthält.
Die Quellfenster werden definiert durch:
- erste Zeile: Vonzeile
- letzte Zeile: Biszeile
- erste Spalte: Vonspalte
- letzte Spalte: Bisspalte
und die Zielfenster durch:
- erste Zeile: Poszeile
- letzte Zeile: Poszeile + Biszeile - Vonzeile + 1
- erste Spalte: Posspalte
- letzte Spalte: Posspalte + Bisspalte - Vonspalte + 1.
Bei Angabe der Dateinummer nn wird das Quellfenster von der Datei ASSINnn gelesen und bei Angabe des Anforderungsnamens werden die Dateien ASSIN01 bis ASSINmm in dieser Reihenfolge bis zum ersten Erfolg durchsucht, wobei mm aus der Option MERGE = mm stammt.
Bei fehlenden Angaben gelten folgende Standardannahmen:
- Vonzeile:
1 - Biszeile:
Vonzeile falls angegeben oder 1 ohne vorheriges - Zeilenanzahl der Seite mit vorherigen - - Vonspalte:
1 - Bisspalte:
Vonspalte falls angegeben oder 1 ohne vorheriges - Breite der Verschickklasse mit vorherigen - - Poszeile:
Vonzeile falls angegeben oder 1 - Posspalte:
Vonspalte falls angegeben oder 1.
Die Angabe von Z/ZEILE, S/SPALTE, P/POS, - und , ist wahlfrei, falls die restlichen Angaben noch eindeutig zugeordnet werden können. Bei Angabe von Z/ZEILE, S/SPALTE oder P/POS kann auch die Reihenfolge abgeändert werden.
BEISPIELE:
Selektion:
Die folgende Anforderung wird mit dem Programm PCL1016 ausgeführt.
ASS; AG: 19 ; KS: 1904 ; /* Direktion */ ZS: 1903 ; /* Filiale */ SS: WERTE = ( 1901 ) , /* Anzahl Verträge */ ZEITRAUM = ( 1289 ) ; OPT: LIKLASSE = 10 , STARTSEITE=1, SST ; END;
In dem Arbeitsgebiet 19 sind 5 Direktionen eingespeichert. Zu jeder Direktion bestehen in etwa 150 Filialen, so dass über den Zeilenschlüssel FILIALE mehrere Seiten pro Direktion entstehen. Die Verschickklasse sei 10.
Da die Option Startseite (Batch-Sprache SST) angegeben ist, wird bei jedem Wechsel im ersten echten Kopfschlüssel (hier Direktion) ein Trennsatz mit dem betreffenden Schlüsselinhalt (Direktionsnummer) ausgegeben.
Die Direktion 5 kann so z.B. auf den Seiten 14 - 17 vorkommen. Über einen Lauf von PCL1078 kann nun durch entsprechende Selektionsanweisungen für die Direktionen in der Vorlaufkarte eine getrennte Listausgabe pro Direktion erreicht werden. Für die Direktion 5 entstünde so eine eigene Liste mit den Seiten 1 - 4, wenn in der Listanforderung zusätzlich die Option "Nummer der ersten Seite = 1" angefordert wurde.
Die zugehörige JCL wäre:
ASSCO ;Vorlaufkarte
Vorlaufkartenanweisungen
;1.Zeile leer, da keine Option gewünscht 5 ;Selektion der Direktion 5 --> 1.Selektion 1 ;Selektion der Direktion 1 --> 2.Selektion LISTE ;Protokoll ASSIN ;sequentielle Datei, ; von PCL1016 unter LISTE10 erstellt ASSUT01 ;enthält Liste der Direktion 5 ASSUT02 ;enthält Liste der Direktion 1
Merge
Die beiden folgenden Anforderungen werden mit dem Dienstprogramm PCL1016 in zwei verschiedenen Läufen ausgeführt. Die Verschickklasse sei 10.
ASS; AG: 19 ; KS: 1903 = ( 'A' , 'B' ) ; /* Tarifgruppe */ ZS: 1904 = ( '0' ) ; /* Dynamik */ SS: WERTE = ( 1901 ) , /* Anzahl Verträge */ ZEITRAUM = ( 1289 ) ; OPT: LIKLASSE = 10 , STARTSEITE=1, SST ; END; ASS; AG: 19 ; KS: 1903 = ( 'A' , 'B' ) ; /* Tarifgruppe */ ZS: 1904 = ( '1' ) ; /* Dynamik */ SS: WERTE = ( 1901 ) , /* Anzahl Verträge */ ZEITRAUM = ( 1289 ) ; OPT: LIKLASSE = 10 , STARTSEITE=2, SST ; END;
PCL1016 erzeugt hier zwei Listen von jeweils zwei Seiten: Eine für die Tarifgruppe A und eine für B. Das Programm PCL1078 mischt nun diese beiden Listen so zusammen, dass zwei neue logische Listen entstehen, wobei für jede Tarifgruppe jeweils zwei Seiten mit Dynamik 0 und 1 ausgegeben werden.
Für die korrekte Seitenzählung ist es hier erforderlich, dass die erste Anforderung immer die Seite 1, die zweite immer die Seite 2 liefert. Daher muss im ersten Fall die Option "Nummer der ersten Seite = 1" , im zweiten Fall die Option "Nummer der ersten Seite = 2" angefordert werden.
Die zugehörige JCL wäre:
ASSCO ;Vorlaufkarte MERGE = 2 ;2 Dateien mischen LISTE ;Protokoll ASSIN01 ;sequentielle Datei, 1. Anforderung ; von PCL1016 unter LISTE10 erstellt ASSIN02 ;sequentielle Datei, 2. Anforderung ; von PCL1016 unter LISTE10 erstellt ASSUT ;enthält die 1. und 2. Anforderung gemischt ; also in folgender Reihenfolge: ; Tarifgruppe A Dynamik 0 ; Tarifgruppe A Dynamik 1 ; Tarifgruppe B Dynamik 0 ; Tarifgruppe B Dynamik 1
Merge-Edit ohne SORT-Angabe
Falls die beiden Anforderungen aus dem obigen Beispiel zu Merge pro Seite höchstens 30 Zeilen liefern, so kann die Ausgabe
Seite 1: Tarifgruppe A aus 1. Anforderung Tarifgruppe A aus 2. Anforderung Seite 2: Tarifgruppe B aus 1. Anforderung Tarifgruppe B aus 2. Anforderung
mit folgender Vorlaufkarte erreicht werden.
MERGE = 2 1 Z 1 - 30 S 1 - P 1 1 2 Z 1 - 30 S 1 - P 31 1
Merge-Edit mit SORT-Angabe
Falls in den beiden Anforderungen aus dem obigen Beispiel nicht sichergestellt ist, dass die Tarifgruppen jeweils auch Zahlen liefern, also zum Beispiel die zweite Anforderung nur eine Seite für die Tarifgruppe B bringt. Damit aber nach dem Merge-Edit auf jeder Seite die gleiche Tarifgruppe steht, ist dies in der Vorlaufkarte mit der SORT-Option anzugeben. Angenommen die Tarifgruppe befindet sich auf jeder Seite in der Zeile 6 zwischen den Spalten 10 und 11. Dann sähe die Vorlaufkarte wie folgt aus.
MERGE = 2 , SORT = 6 10 11 1 Z 1 - 30 S 1 - P 1 1 2 Z 1 - 30 S 1 - P 31 1
4.5 Paketierte Listausgabe PCL1086
PCL1086 wird nicht mehr unterstützt.
4.6 ASS-Output via E-Mail versenden PCL1125
PCL1125 bietet die Möglichkeit, ASS-Output (Listen, PC-Dateien, HTML-Dokument, PDF) via E-Mail zu versenden. Voraussetzung hierfür ist das Vorhandensein eines SMTP-Servers.
Datenflussplan
- Vorlaufkarte (ASSCO):
Unix/Windows: $ASSVLK/T1125.VLK - Maildatei von PCL1016 bzw. PCL1038 (ASSVT):
Unix/Windows: $ASS/MAILFB.EBC - Protokoll (PROTO):
Unix/Windows: $ASSPTK/PCL1125.PTK (wird ggf. erzeugt) - Arbeitsdatei (ASSOUT)
Unix/Windows: $ASSWK/MAIL (wird ggf. erzeugt) - Arbeitsdatei (ASSOUT2)
Unix/Windows: $ASSWK/ASSMAIL (wird ggf. erzeugt) - Arbeitsdatei (ASSMAIL)
Unix/Windows: $ASSWK/ASSMAIL2 (wird ggf. erzeugt) - Datenbanken: DST007 (Texte)
VORLAUFKARTE
SENDER-EMAIL E-Mail-Adresse, unter der die Nachricht versendet wird SENDER-NAME Name, unter der die Nachricht versendet wird SERVER-NAME Name des SMTP-Servers SERVER-PORT TCP-Port des SMTP-Servers (Standard ist 25) PC-EXT Dateierweiterung von ASSPC01 als Name im Mail-Anhang (Standard ist keine Dateierweiterung) ACCT-U Optionale User-id für Authentifizierung am ESMTP-Server ACCT-P Optionales Passwort für Authentifizierung am ESMTP-Server BS2000_MVS Translate, EBCDIC BS2000 nach EBCDIC z/OS BS2000_ANSI Translate, EBCDIC BS2000 nach ANSI MVS_BS2000 Translate, EBCDIC z/OS nach EBCDIC BS2000 MVS_ANSI Translate, EBCDIC z/OS nach ANSI OS2_ANSI Translate, Microsoft Konsole nach ANSI EZA Test unter Linux/Unix, MCL0649 statt MCLMAIL
In den Optionennamen kann statt des - der _ genommen werden, also zum Beispiel SENDER_NAME statt SENDER-NAME.
5 Reorganisationsmaßnahmen
5.1 Schlüssel im Arbeitsgebiet
5.1.1 Schlüssel im AG hinzufügen oder löschen PCL1011
FUNKTIONSBESCHREIBUNG
Sollen in einem Arbeitsgebiet zusätzliche Schlüssel verwendet oder bisher verwendete Schlüssel gelöscht werden, so ändert sich in der zugehörigen Summen-DB die Schlüssellänge des Root-Segmentes. Um die Konsistenz der vorhandenen Daten wiederherzustellen, sind nach einem solchen Eingriff umfangreiche Reorganisationsmaßnahmen erforderlich.
Eine Reorganisation erübrigt sich natürlich, wenn bisher keine Dateneinspeicherungen zum entsprechenden Arbeitsgebiet erfolgt sind. In diesem Fall kann die Änderung ohne jede Reorganisation über die Transaktion ST06 durchgeführt werden.
Der Einsatz von PCL1011 setzt eine gewisse Vertrautheit mit dem Themenbereich 'Folgeeinspeicherung' voraus. Eine Lektüre des entsprechenden Kapitels im ASS-Handbuch 'BETRIEB1' ist an dieser Stelle eventuell ratsam. Da dieses Programm für vielfältige Problemstellungen verwendet wird, erfolgt die grundsätzliche Beschreibung an dieser Stelle. Einzelheiten sind der Beschreibung der jeweiligen Funktion in diesem Handbuch zu entnehmen.
Das Programm geht davon aus, dass die bestehende Definition eines Arbeitsgebietes mit zugehöriger Summen-DB und evtl. sequentiellen Verdichtungsstufen sichergestellt wird. Nach der entsprechenden Änderung der Arbeitsgebietsdefinition (ST06) überträgt das Programm die Summendaten auf die neue Definition. Es ist darauf zu achten, dass nach einer Änderung bei Schlüsseln evtl. vorhandene Verdichtungsstufen angepasst werden müssen.
Sollen in einem Arbeitsgebiet nur Schlüssel gelöscht werden, so bietet sich hierfür die Option EINS_ZU_EINS an. In diesem Fall werden die alten Verdichtungsstufen 1 : 1 auf die neuen Verdichtungsstufen abgebildet (außer Index-Verdichtungsstufen). Achtung: es werden nur Werte übernommen, die eingespeichert sind (Datum erste Einspeicherung beim Wert gesetzt). Weiterhin ist bei der Definition des neuen Arbeitsgebietes darauf zu achten, dass nur verwendete Schlüssel entfernt werden und die entfernten Schlüssel in den betroffenen Verdichtungsstufen als nicht mehr ausgeprägt markiert werden. Weitergehende Änderungen dürfen nicht vorgenommen werden. Bei betroffenen gedrehten Verdichtungsstufen empfiehlt es sich u.U. zunächst die alten Drehungen zu löschen und dann die alte Drehung ohne die gelöschten Schlüssel neu einzugeben. Die genannten Einschränkungen gelten nicht für Index-Verdichtungsstufen.
Werden Schlüssel neu in das Arbeitsgebiet aufgenommen, so müssen sie ohne NO_SORT in jeder Verdichtungsstufe mit 1 deklariert werden. Nach der Reorganisation kann dann die 1 auf 0 abgeändert werden. Empfehlenswert ist auch die Pseudoausprägung (?! oder bei IBM ggf. ?Ü). Sollen nur neue Schlüssel aufgenommen werden, so ist NO_SORT wesentlich performanter und die Schlüssel können auch schon vor der Reorganisation mit 0 deklariert werden. Ab der Version 7.22 von PCL1011 ist bei NO_SORT auch noch KEINH möglich.
Sollen in einem Arbeitsgebiet nur neue Schlüssel aufgenommen werden, so kann für die neuen Schlüssel ein Schlüsselinhalt vorgegeben werden (s. u. bei der Option KEINH).
VORLAUFKARTE: Allgemeine Optionen
Generell werden aus jeder Vorlaufkarte nur die ersten 72 Zeichen interpretiert. Bei Angabe mehrerer Optionen müssen diese durch Leerzeichen oder ein Komma getrennt werden. Es können beliebig viele Karten angegeben werden. Dabei müssen allerdings Optionen über die Kartengrenze durch Kommata getrennt werden.
Option | Bedeutung | Voreinstellung |
---|---|---|
UPDAT | UPDATE Parameterdatenbanken | UPDAT |
NUPDAT | kein UPDATE der Parameterdatenbanken. Es erfolgt ein gezielter Programmabbruch | UPDAT |
MINUTEN=nnnn | maximale Laufzeit in Minuten | 1000000 |
SAETZE=nnnnnn | Maximal zu verarbeitende Sätze aus Schnittstelle | 900000000 |
SORTMAX=nnnn | maximal pro SORT-Aufruf zu sortierende Sätze | 2000000 |
VST_ERGAENZ | Erzeugung von neuen Verdichtungsstufen (siehe in 5.2.1). | nicht VST_ERGAENZ |
VST_ERGAENZ_AB (mmjj) | wie VST_ERGAENZ, es werden nur Zeiten >= mmjj übernommen, bei Tages-AG ttmmjj | |
LIST | Anlisten der Umsetzung
für die Verdichtungsstufen Achtung: Es wird nicht reorganisiert ! | nicht LIST |
BASIS | Verdichtungsstufen werden
jeweils aus der zu jedem
Wert entsprechenden
Basisverdichtungsstufe
generiert. Nur für Reparaturmaßnahmen nach Rücksprache mit der zentralen ASS-Wartung geeignet. | nicht BASIS |
AGNEU | vollständige Reorganisation von einem Quellarbeitsgebiet auf ein kleineres Zielarbeitsgebiet (siehe 5.2.6) | nicht AGNEU |
NO_SORT | bei Vergrößerung der internen Schlüssellänge oder Hinzunahme von Schlüsseln (siehe 5.1.4) | nicht NO_SORT |
NUR_KST | Vergrößerung der Zahl der Kommastellen bei Werten (siehe 5.2.7) | nicht NUR_KST |
EURO(WERT=nnnnn, DATUM=MMJJ, INDEX=n) | Euroumrechn. (siehe 5.2.8) | |
ASSCV_DIREKT | seq. Verdichtungsstufen von ASSCVnn statt ASSCV01 lesen, wobei nn der Ort ist | nicht ASSCV_DIREKT |
KY_COPY | Schlüssel kopieren (s.u.) | nicht KY_COPY |
KY_COPY_L | Schlüssel kopieren (s.u.) | nicht KY_COPY_L |
KY_COPY_LOGISCH | Synonym für KY_COPY_L | |
EINS_ZU_EINS | Schlüssel löschen (s.o) | nicht |
KEINH(... | neue Schlüssel (s.5.1.1.1) impliziert NO_SORT | nicht |
PROTO_VDST_MENGEN | Es wird eine (i.a. sehr umfangreiche) Übersicht über Verdichtungsstufenmengen pro Wert in der alten und neuen Arbeitsgebietsdefinition erstellt (i.w. für Fehleranalysen, kann zusammen mit der Option LIST eingesetzt werden) | nicht |
PROTO_LANG | Es wird eine Übersicht
über die Änderungen
des Arbeitsgebiets
erstellt: - neue / gelöschte Schlüssel - veränderte interne Schlüssellängen - neue / gelöschte Verdichtungsstufen - Änderungen der Werteverwendung innerhalb von Verdichtungsstufen - Änderung der Schlüsselreihenfolgen in Verdichtungsstufen (bei Änderungen werden alle ausgeprägten Schlüssel in der jeweiligen Reihenfolge protokolliert) - Anzahl Monate im AG - Länge des Keys der zugehörigen Summen-DB | nicht |
FOLGESAETZE | siehe 5.3.7 | nicht FOLGESAETZE |
TAG=nn | siehe 5.3.7 | nicht TAG FOLGESAETZE |
TAGES_KY=n | Tagesschlüssel auf
ASS-Zeit abbilden siehe 5.3.8 | nicht TAGES_KY |
AU_GEN | siehe 5.3.9 | nicht AU_GEN |
AU_GEN_SRT | siehe 5.3.9 | nicht AU_GEN_SRT |
ISAMSORT | wird ignoriert, ab Release 8.10 wird Sortierverfahren automatisch bestimmt | |
MENGE_DATUM | siehe 5.2.1 | nicht MENGE_DATUM |
MENGE_DATUM_STRIKT | siehe 5.2.1 | nicht MENGE_DATUM_STRIKT |
PROTO_DATUM | Protokoll der Generierung der Verdichtungsstufen und Werte um Datum erweitern | nicht PROTO_DATUM |
Beispiele:
NUPDAT SORTMAX=1000000 oder: NUPDAT,SORTMAX=1000000 oder: NUPDAT, SORTMAX=1000000
BEISPIEL:
In einem Arbeitsgebiet soll nachträglich ein Schlüssel in der Basisverdichtungsstufe ergänzt werden. Dieser Schlüssel wird dem System über die Transaktion ST06 bekanntgemacht. Da für bereits gespeicherte Daten der neue Schlüssel nicht ausgeprägt vorliegt, muss auch die Pseudoausprägung '?!' angelegt werden.
Mittels PCL1011 wird der neue Schlüssel mit seiner Pseudoausprägung in die gespeicherten Daten eingearbeitet. Physikalisch wird auf der Summendatenbank x'FF' eingetragen. Bei einer Auswertung, die auf diese Verdichtungsstufe zugreift, wird der neue Schlüssel mit dem Inhalt '?!' angezeigt . (außer mit der Option KEINH(... --> vgl. Kap. 5.1.1.1).
5.1.1.1 Vorbelegung des Schlüsselinhalts: KEINH(...
Ein Arbeitsgebiet soll um neue Schlüssel erweitert werden. Den bestehenden Summendaten kann bei den neuen Schlüsseln kein Schlüsselinhalt zugeordnet werden. Werden neue Schlüssel in einer existierenden Verdichtungsstufe ausgeprägt, so erhalten die neu ausgeprägten Schlüssel den verdichteten Schlüsselinhalt X'FF', der dann in der Auswertung als Dummy-Ausprägung ?! (bei IBM ggf. ?Ü) angesprochen bzw. angezeigt wird. Werden in einem Arbeitsgebiet neue Schlüssel aufgenommen, so kann vorgegeben werden, welchem Schlüsselinhalt die existierenden Daten zugeordnet werden sollen. Hierzu ist in der Vorlaufkarte KEINH(Schlüsselnummer)='Schlüsselinhalt' für jeden neuen Schlüssel anzugeben, bei dem ein Schlüsselinhalt zugeordnet werden soll. Mehrere Angaben sind durch Komma zu trennen.
Beispiel:
Ein Arbeitsgebiet wird um die Schlüssel 101, 102 und 103
erweitert. Bei den Schlüsseln 101 und 103 soll als
Schlüsselinhalt bei existierenden Daten ABC bzw. 001
angenommen werden. Dies wird erreicht durch
KEINH(101)='ABC', KEINH(103)='001'
Die angegeben Schlüsselinhalte müssen auf der Schlüsseldatenbank existieren, damit ein verdichteter Schlüsselinhalt ermittelt werden kann. Pro Schlüssel kann maximal eine Schlüsselausprägung angegeben werden. Die vorgegebenen Schlüsselinhalte werden in Verdichtungsstufen nur dort eingesetzt, wo die entsprechenden Schlüssel auch ausgeprägt sind. D.h. bei einem derartigen Reorganisationslauf müssen die neuen Schlüssel in der neuen Arbeitsgebietsdefinition vor dem Lauf von PCL1011 mit der ST06 ausgeprägt werden.
Die oben beschriebene Reorganisation wird mit der impliziten Option NO_SORT (s.u.) durchgeführt, d.h. die Reihenfolge der Schlüssel muss bei der Defintion des neuen Arbeitsgebiets beibehalten werden. Die neuen Schlüssel dürfen jedoch an beliebiger Stelle eingefügt werden (auch in Index-Verdichtungsstufen und in Verdichtungsstufen mit gedrehter Schlüsselreihenfolge).
Die hier beschriebene Reorganisationsmaßnahme darf nicht mit anderen Reorganisationsmaßnahmen verknüpft werden. U.U. müssen komplexe Reorganisationen mit mehreren Läufen von PCL1011 erledigt werden.
5.1.1.2 Vorbelegung des Schlüsselinhalts: KY_COPY KY_COPY_L
Die Option KY_COPY ist für folgenden Anwendungsfall gedacht: In einem Arbeitsgebiet sollen neue Schlüssel ergänzt werden. Die Inhalte der neuen Schlüssel lassen sich aus Inhalten von bereits eingespeicherten Schlüsseln ableiten. (Es wird eine neue Vertriebsstruktur eingeführt, die am Anfang mit einer bereits vorhandenen alten Vertriebsstruktur identisch ist). Es brauchen in diesem Fall nur die verdichteten Inhalte der alten Schlüsselausprägungen auf die entsprechenden verdichteten Inhalte der neuen Schlüssel kopiert zu werden.
Bei der Option KY_COPY werden Verdichtungsstufen 1 : 1 umkopiert. Das hat für eine derartige Reorganisation folgende Konsequenzen:
- Es dürfen im neuen Arbeitsgebiet keine neuen Verdichtungsstufen vor dieser Reorganisation ergänzt werden.
- Die Arten der Verdichtungsstufen müssen beibehalten werden.
- Es dürfen in einer Verdichtungsstufe im neuen Arbeitsgebiet nur die neuen Schlüssel ausgeprägt werden, die aus einem alten ausgeprägten Schlüssel dieser Verdichtungsstufe kopiert werden können.
- KY_COPY_L impliziert KY_COPY.
- KY_COPY und KY_COPY_L implizieren SORT.
- Bei KY_COPY werden nur verdichtete Inhalte kopiert. Diese Option ist daher mit einigen anderen unverträglich (VST_ERGAENZ, BASIS, NUR_KST, EURO, AGNEU).
- KY_COPY_L ist nur bei Schlüsseln mit interner Länge 1 und 2 möglich.
Die Kopierangaben werden in weiteren Vorlaufkarten angegeben.
Beispiel:
KY_COPY, SORTMAX=1000000 ; Größe nur für Unix und Windows gut KENR: 401 -> 601 KENR: 402 -> 602 KENR: 403 -> 603
Es wird der Schlüssel 401 auf 601, 402 auf 602 und 403 auf 603 kopiert.
Beispiel für ausgeprägte Schlüssel. In der alten Verdichtungsstufe 17 seien die Schlüssel 300, 301, 401, 402 ausgeprägt. In der neuen Verdichtungsstufe 17 können dann die Schlüssel 300, 301, 401, 402, 601, 602 ausgeprägt sein, nicht jedoch der Schlüssel 603, weil die Quelle für das Kopieren des verdichteten Inhalts von Schlüssel 603 in der alten Verdichtungsstufe 17 fehlt.
Um zu gewährleisten, dass die Inhalte von kopierten Schlüsseln die gleichen verdichteten Inhalte wie die Quell-Schlüssel erhalten, müssen die zu kopierenden Schlüssel analog mit dem Programm PCL1005 umkopiert werden (siehe Dokumentation von PCL1005).
Achtung: wenn Schlüssel in Arbeitsgebieten mit Hilfe von PCL1005 bzw. PCL1011 kopiert werden, dürfen in dieser Zeit keine Schlüsselinhalte bei den betroffenen Schlüsseln geändert werden (z.B. ST06 oder Folgeeinspeicherung).
KY_COPY_L
Bei KY_COPY_L wird der Quellschlüssel jeder KENR-Angabe in den Zielschlüssel übernommen. Es werden nur die Verdichtungsstufen reorganisiert, die sowohl den Quell- als auch den Zielschlüssel enthalten. Verdichtungsstufen ohne Quell- und Zielschlüsel bleiben unverändert. Die Reorganisation ist nicht möglich, falls eine Verdichtungsstufe nur den Zielschlüssel enthält. Dabei wird die Ausprägung der Quelle in das Ziel übernommen. Es sind bis zu 10 KENR-Angaben in einer Reorganisation möglich. Daher kann die Auswertung nach der Reorganisation ein anderes Ergebnis liefern.
technisches Beispiel:
Schlüssel 9910: Ausprägung A mit interner Nummer 1 B mit interner Nummer 2 C mit interner Nummer 3 Schlüssel 9911: Ausprägung A mit interner Nummer 3 B mit interner Nummer 2 C mit interner Nummer 1 D mit interner Nummer 4
Die Auswertung ergebe dann folgendes Ergebnis
Schlüssel 9910 Schlüssel 9911 Wert/0106 A C 1 D 4 B B 2 C A 3
Nach der Reorganisation mittels PCL1011 und der folgenden Vorlaufkarte:
KY_COPY_L KENR: 9910 -> 9911
liefert die obige Auswertung dann folgendes Ergebnis
Schlüssel 9910 Schlüssel 9911 Wert/0106 A A 5 B B 2 C C 3
Die Schlüsseldatenbank bleibt natürlich durch diese
Reorganisation unverändert. Es ändert sich in den
Verdichtungsstufen der verdichtete Inhalt. Im obigen Beispiel
also bei Schlüssel 9911.
Wäre dagegen beim Schlüssel 9910 noch die Ausprägung E
eingespeichert aber nicht beim Schlüssel 9911 als Ausprägung
vorhanden, so bricht die Reorganisation mit der Meldung
ASS8995 ab. Ist dagegen die Ausprägung E auch beim Schlüssel
9911 vorhanden, egal ob eingespeichert, so ist die
Reorganisation wieder möglich.
Bei KY_COPY_L kann auch mit SUBSTR gearbeitet werden.
KENR: SUBSTR(Quell-Schlüssel-Nr,n,m) -> Ziel-Schlüssel-Nr wobei n den Offset und m die Länge des Substrings angeben.
Beispiel:
KENR: SUBSTR(4711,3,4) -> 5000
Bei SUBSTR gilt als Ziel-Schlüsselausprägung nur der durch SUBSTR abgegriffene Schlüsselinhalt der Quell-Schlüsselausprägung (z.B. SUBSTR('12345678',3,4) = '3456'). Die SUBSTR-Funktion kann z.B. benutzt werden, um einen Schlüsselinhalt auf mehrer Inhalte aufzuteilen (gesplitteten Schlüssel einführen).
Beispiel:
KENR: SUBSTR(4711,1,2) -> 5000
KENR: SUBSTR(4711,3,4) -> 5001
KY_COPY_L mit SUBSTR verhält sich analog zu KY_COPY_L ohne SUBSTR. Es gelten die gleichen Bedingungen bzw. Einschränkungen. Entsteht bei SUBSTR eine Schlüsselausprägung, die nur aus Blanks besteht, so wird diese auf die Dummy-Ausprägung (?!, bei IBM ggf. ?Ü) abgebildet. Die Dummy-Ausprägung muss ggf. mit der ST06 angelegt werden.
5.1.2 Interne Längen von Schlüsseln im AG verändern PCL1011
FUNKTIONSBESCHREIBUNG
Die interne Länge eines Schlüssels ist abhängig von der
maximalen Anzahl seiner Ausprägungen.
Beim Einrichten eines Arbeitsgebietes sind die Schlüssel
daraufhin zu überprüfen.
Wenn sich nach erfolgter Einspeicherung die Notwendigkeit
ergibt, die interne Länge eines Schlüssels zu vergrößern,
weil eben die Zahl seiner Ausprägungen die Byte-Grenze zu
sprengen droht, ist eine Reorganisation mit dem Programm
PCL1011 erforderlich.
Beschreibung siehe Kapitel 5.3.6. in diesem Handbuch.
5.1.3 Reihenfolge der verwendeten Schlüssel im AG PCL1011 verändern
FUNKTIONSBESCHREIBUNG
Die Reihenfolge der verwendeten Schlüssel im AG ist für die Online-Auswertungsfähigkeit von großer Bedeutung, da auf den jeweils linkesten Schlüssel einer Verdichtungsstufe direkt positioniert werden kann. Oft ergeben sich erst später Erkenntnisse, wonach eine andere Reihenfolge der verwendeten Schlüssel vorteilhaft ist. In diesem Falle ist ebenfalls eine Reorganisation mit dem Programm PCL1011 erforderlich. Beschreibung siehe Kapitel 5.3.6. in diesem Handbuch.
5.1.4 Beschleunigte Reorganisation via NO_SORT PCL1011
In einigen Fällen von Reorganisationen ist der Werteteil der Summensätze nicht betroffen. Daher wurde für folgende Fälle mit Hilfe der Vorlaufkarte NO_SORT ein beschleunigtes Reorganisationsverfahren geschaffen:
- Vergrößerung der internen Länge eines Schlüssels
- Hinzunahme eines Schlüssels im Arbeitsgebiet ohne die Reihenfolge der übrigen Schlüssel zu ändern
Bei Angabe dieser Option ist der Programmablauf stark verkürzt. Insbesondere finden keinerlei Sortiervorgänge statt, der Werteteil der Summensätze bleibt vollkommen unverändert. Die Dateien SORTWK, ASSWK und ASSWONN benötigen daher keinen Platz (vergleiche Datenflussplan PCL1011). Des weiteren werden auch keine Checkpoints geschrieben, also sind auch die Checkpoint-Dateien überflüssig.
Achtung: NO_SORT darf nur für diesen Spezialfall angegeben werden. Außer den oben angegebenen Veränderungen darf das Arbeitsgebiet nicht modifiziert werden.
Bei Verwendung von NO_SORT werden Verdichtungsstufen, die auf der Summendatenbank vorhanden sind, jedoch nicht auf der Steuerungsdatenbank im Summendatenbankabzug überlesen, d.h. nach der Reorganisation ist die Summendatenbank um diese bereinigt.
5.1.5 Reparatur von Summendaten PCL1011
In externen Schnittstellen dürfen in einem Summensatz keine Duplikate bezüglich Wertenummer und Wertezeit enthalten sein. Aus Performancegründen fehlt die entsprechende Duplikatsbehandlung in PCL1001. Die genannten Duplikate können zu entsprechenden Duplikaten in Summensätzen in Verdichtungsstufen führen. Wird eine derartige Situation erkannt, so kann u. U. eine Datenreparatur mit PCL1011 durchgeführt werden. Hierfür sind die Optionen DOPPELT_WERT bzw. DOPPELT_DIR vorgesehen. Ein entsprechender Einsatz von PCL1011 sollte nur nach Rücksprache mit dem ASS-Team erfolgen.
5.2 Verdichtungsstufen im Arbeitsgebiet
5.2.1 Verdichtungsstufen im AG hinzufügen, ändern oder löschen PCL1011
FUNKTIONSBESCHREIBUNG
Zu den wesentlichen Leistungsmerkmalen von ASS gehört die flexible Handhabung der Verdichtungsstufen. Das Programm PCL1011 bietet die Möglichkeit, mittels einer Reorganisation die Verdichtungsstufen vom bestehenden in einen neu definierten Zustand zu überführen. Auf diese Weise können Verdichtungsstufen gelöscht oder geändert sowie zusätzliche Verdichtungsstufen aus den bestehenden generiert werden. Eine Änderung kann im Hinzunehmen oder Weglassen von Schlüsseln und/oder Werten bestehen.
Einzelheiten zur Abwicklung einer Reorganisation mit dem Programm PCL1011 können dem Kapitel 5.1.1. entnommen werden. Sollen in einem Arbeitsgebiet Verdichtungsstufen rückwirkend ergänzt werden, bietet PCL1011 eine weitere Möglichkeit, mit der im Vergleich zu einer Reorganisation sehr viel Rechenzeit eingespart werden kann.
Wird in der Vorlaufkarte von PCL1011 'VST_ERGAENZ' angegeben,
so wird von PCL1011 eine interne Schnittstelle erzeugt, die
nur die neuen Verdichtungsstufen enthält.
Diese interne Schnittstelle kann dann mit dem Programm PCL1002
additiv geladen werden (vgl. 'VST_ERGAENZ in Handbuch Betrieb I',
und dort die Bemerkung zu Linux/Unix/Windows).
Sollen nur aktuelle Zeiträume übernommen werden, so kann mit
VST_ERGAENZ_AB (mmjj) ein Zeitpunkt angegeben werden, ab dem
die Daten übernommen werden. Es werden nur Zeiten >= mmjj
übernommen. Wird VST_ERGAENZ_AB angegeben, so gilt auch
VST_ERGAENZ als angegeben. Wird explizit mit Zeiten vorgegeben
(s.u.), wie die neuen Verdichtungsstufen generiert werden
sollen, so müssen diese Angaben genau so sein wie ohne
die Option VST_ERGAENZ_AB.
Bei Tages-Arbeitsgebieten ist das Datum in der Form ttmmjj
anzugeben.
Folgeverarbeitungen sind analog zu VST_ERGAENZ durchzuführen.
UMSETZUNG VON VERDICHTUNGSSTUFEN
Standardmäßige Umsetzung
Bei der Reorganisation ermittelt das Programm PCL1011 aufgrund bestimmter Algorithmen, aus welchen bestehenden Verdichtungsstufen neue Verdichtungsstufen und Werte abgeleitet werden können.
Die standardmäßige Umsetzung arbeitet dabei nach folgender Methode:
- Falls die alte und neue Verdichtungsstufenmenge gleich ist, werden die einzelnen Verdichtungsstufen übertragen.
- Falls die neue Verdichtungsstufenmenge neben stillgelegten mindestens eine aktive Verdichtungstufe enthält, und aus alten Stufen gewonnen werden kann, werden nur die aktiven Verdichtungsstufen generiert und die stillgelegten bleiben generell leer. Die automatische Umsetzung ist in diesem Fall ungeeignet.
Lässt man PCL1011 mit der Vorlaufkartenoption LIST laufen,
so listet das Programm ohne jegliche Datenveränderung an,
aus welchen Quellen die gewünschten Verdichtungsstufen und
Werte abgeleitet werden (siehe auch VORLAUFKARTE).
Man kann also über diese Vorlaufkarte feststellen, ob die
automatische Umsetzung für die jeweilige Reorganisation
genügt.
Übersteuerung der standardmäßigen Umsetzung
In den meisten Fällen führt die automatische Auswahl zu den gewünschten Ergebnissen. Probleme könnten sich aber bezüglich Verdichtungsstufenmengen und stillgelegter Verdichtungsstufen ergeben.
Sollen neue Verdichtungsstufen einer Verdichtungsstufenmenge erzeugt werden, von denen einige stillgelegt sein sollen, so kann nicht mehr in jedem Fall mit dieser automatischen Verdichtungsstufenauswahl vorgegangen werden, da unter Umständen alle Werte in die aktiven Stufen gebracht werden, während die stillgelegten Stufen leer bleiben.
Ebenso kann bei zeitlich geteilten Verdichtungsstufen der automatische Algorithmus dazu führen, dass das System eine Stufe wählt, die die gewünschten Zeiten nicht enthält, da das Programm von mehreren zur Auswahl stehenden Stufen immer die kleinere nimmt. In solchen Fällen kann über Umsetzungsoptionen in den Vorlaufkarten eine Übersteuerung der Umsetzung erreicht werden.
Restriktionen bei der Umsetzungsübersteuerung
Für die Umsetzungsübersteuerung spielt der Begriff der Verdichtungsstufenmenge eine zentrale Rolle. Standardmäßig bilden alle Verdichtungsstufen mit gleichen ausgeprägten Schlüsseln und gleicher Reihenfolge eine Verdichtungsstufenmenge. Aus Konsistenzgründen müssen alle neuen Verdichtungsstufenmengen aus einer alten Verdichtungsstufenmenge erzeugt werden. Es wird daher verlangt, dass die Abbildung alt nach neu für alle neuen Verdichtungsstufenmengen angegeben wird. Dies bedeutet im einzelnen:
- Wird eine Verdichtungsstufe einer neuen Menge aus über Vorlaufkarten angewiesenen Stufen generiert, so müssen für sämtliche Stufen der Menge Vorlaufkartenanweisungen gemacht werden.
- Wird in einer Vorlaufkarte ein Wert aus einer Verdichtungsstufe einer alten Menge angefordert, so müssen auch sämtliche anderen Verdichtungsstufen der Menge, die den Wert enthalten, angefordert werden.
Für einfache Reorganisationswünsche (z.B. eine oder mehrere aktive Verdichtungsstufen zeitlich splitten) ist die Angabe für alle Verdichtungsstufen mühsam. Durch die Angabe der Option MENGE_DATUM werden folgende Vereinfachungen erreicht:
Der Begriff der Verdichtungsstufenmenge wird verfeinert:
- Das zeitliche Einspeicherungsintervall einer
Verdichtungsstufe ist die Vereinigung aller zeitlichen
Einspeichungsintervalle aller Werte dieser Verdichtungsstufe.
Alle Verdichtungsstufen mit gleichen ausgeprägten Schlüsseln
und gleicher Reihenfolge und zeitlicher Überlappung
bilden jetzt eine Menge:
Beispiel:
Vstnr von bis Menge allg. Menge bei MENGE_DATUM 1 0105 1206 1 1 2 0705 1206 1 1 3 0107 1209 1 2 4 0110 1210 1 3
- Mengen müssen vollständig auf Mengen abgebildet werden, es müssen jedoch nur die Mengen angegeben werden, die sich ändern. Die restlichen Verdichtungsstufen werden 1 : 1 aufeinander abgebildet. Soll im obigen Beispiel nur die Verdichtungsstufe 4 gesplittet werden, so ist nur für diese alte Menge, also nur für die Verdichtungsstufe 4 anzugeben, wie sie aufgeteilt werden soll.
Die Option MENGE_DATUM_STRIKT impliziert die Option MENGE_DATUM. Sind einige Verdichtungsstufen nur teilweise eingespeichert werden diese nur aus anderen generiert, wenn sich dadurch nicht der eingespeicherte Zeitraum vergrößert.
List- und Umsetzungsoptionen der Vorlaufkarte
Option LIST:
Falls man sich mittels der Option LIST die standardmäßige Umsetzung anlisten will, braucht man natürlich in der JCL keinerlei Dateizuordnungen für die Verdichtungsstufen, Arbeits- und SORT-Dateien vorzunehmen. Ein Programmlauf mit der Option LIST erfordert sehr wenig Zeit und Betriebsmittel.
Beispiel einer LIST-Ausgabe: 2 -> 5 ( 1 2 3 4 )
Aus einer bestehenden Verdichtungsstufe mit der Nummer 2 würden die Werte mit den Nummern 1, 2, 3 und 4 einer neuen Verdichtungsstufe mit Nummer 5 abgeleitet.
Umsetzungsoptionen:
Optional kann auf weiteren Karten je eine Umsetzung folgen. Die einzelnen Umsetzungen können in beliebiger Reihenfolge hinter den Vorlaufkarten für die übrigen Optionen angegeben werden.
Pro Umsetzungsanweisung ist eine eigene Vorlaufkarte mit folgendem allgemeinen Format anzugeben:
.... -> ....
oder
.... -> .... ( .... ) ! ! ! ! ! Wert(e) ! ! ! neue Verdichtungsstufe(n) ! alte Verdichtungsstufe(n)
Verdichtungsstufen und Werte werden über ihre Nummern angesprochen. Mehrere Werte werden durch ein Leerzeichen voneinander getrennt angegeben. Des weiteren ist es möglich, Mengen auf Mengen abzubilden, wobei jeder Stufe der neuen Menge ein Zeitaspekt zugeordnet werden kann, z.B.
MENGE (1 2) -> MENGE (3<=1297 4<=1299 5)
Bei Tages-Arbeitsgebieten muss das Datum in der Form TTMMJJ angegeben werden.
Diese Anweisung hat zur Folge, dass die Verdichtungsstufen 1 und 2 für alle Zeiten bis Dez.97 auf die Stufe 3, von Jan. 98 bis Dez.99 auf die Stufe 4 und für alle späteren Zeiträume auf die Stufe 5 abgebildet werden. Bei einer solchen Anweisung müssen natürlich die links und rechts angegebenen Stufen bezüglich alter bzw. neuer AG-Definition Mengen bilden. Die Verdichtungsstufen untereinander werden durch Leerzeichen getrennt. Lässt man den Zeitaspekt weg, z.B
MENGE (1 2) -> MENGE (3 4)
so wird im obigen Beispiel 1 nach 3 und 2 nach 4 umgesetzt.
Wenn auf einer Seite einer Umsetzanweisung 'MENGE' hingeschrieben wird, so muss auch auf der anderen Seite 'MENGE' stehen, z.B.
MENGE(1) -> MENGE(3 <=1299 4)
Auch mengenorientierten Umsetzanweisungen kann man Wertangaben hinzufügen, z.B.
MENGE(1 2) -> MENGE(3 <=1299 4) (101 102)
Zur Zeit wird verlangt, dass bei MENGE sämtliche neue Verdichtungsstufen aufgeführt werden. Mit der Option 'PROTO_VDST_MENGEN' kann man sich alle Verdichtungsstufenmengen pro verwendetem Wert gemäß alter und neuer AG-Definition ausgeben lassen.
BEISPIELE:
Es sei folgendes Arbeitsgebiet gegeben:
Sätze Verd.- S c h l u e s s e l W e r t e Zeitraum stufen Nummer 1 2 3 4 5 1 2 3 4 4000000 1 + + + + + + + + 1975 - 1986 500000 2 + + + + + + + + 1987 - 100000 3 + + + + + + 1975 - 1986 0 4 + + + + + + + 1975 - 1986 0 5 + + + + + + + 1987
Aus Tuninggründen sollen die beiden Verdichtungsstufen 4 (bis 1986) und 5 (ab 1987) hinzukommen, um die Auswertung bestimmter Listanforderungen zu beschleunigen. Die Verdichtungsstufe 4 muss stillgelegt sein, da 4 und 5 eine Verdichtungsstufenmenge bilden, in denen gleiche Werte mehrmals auftreten.
Die automatische Umsetzung würde die Verdichtungsstufe 5 aus der Stufe 2 ableiten. Die stillgelegte Stufe 4 bliebe leer. Um das angestrebte Ergebnis zu erhalten, müssen daher folgende Vorlaufkartenanweisungen vorgenommen werden:
VST_ERGAENZ 1 -> 4 ( 1 2 3 ) 3 -> 4 ( 4 ) 2 -> 5
In diesem Fall darf die Umsetzanweisung "1 -> 4 (1 2 3)" nicht zu "1 -> 4" verkürzt werden, da die Verdichtungsstufe 4 in mehreren Vorschriften erscheint. Ebenso ist die Umsetz-Anweisung "2 -> 5" erforderlich, da jede Verdichtungsstufe einer neuen Menge anzugeben ist.
BESONDERHEITEN:
Ein Wert wird nur dann korrekt übernommen, wenn sich die interne Wertenummer nicht verändert. Dies kann man erreichen, wenn man zunächst die neuen Verdichtungsstufen mit den verwendeten Werten bzw. die neu hinzugekommenen Werteverwendungen anlegt, und anschließend die nicht mehr benötigten Werteverwendungen bzw. Verdichtungsstufen löscht.
5.2.2 Löschen von Verdichtungsstufen PCL1007
FUNKTIONSBESCHREIBUNG
Mit dem Programm PCL1007 können bestehende Verdichtungsstufen aus der Summen- und Steuerungsdatenbank gelöscht werden. Soll eine Verdichtungsstufe auf sequentiellem Datenträger komplett gelöscht werden, so muss lediglich die betreffende Verdichtungsstufe in der Definition des Arbeitsgebietes gelöscht werden (ST06 mit Master-Passwort). Anschließend kann die sequentielle Datei mit den üblichen Betriebssystemmitteln gelöscht werden.
ABLAUF
1 Parameter-DB DST001 DST002 DST003 2 Summen-DB DST110 DST111 (DLI) ... bis DST600 DST601 (DLI) (nur die tatsächlich gebrauchten Summen-DBs) 3 Vorlaufkarte SYSIN $ASSVLK/T1007.VLK (PC) 4 Protokoll PROTO $ASSPTK/PCL1007.PTK 5 Sequ. Verd.-St. ASSCO01 bis ASSCO99 (nur benötigte Verd.-Stufen) $ASS/ASSCOnn ev. Ladebestand AUS analog PCL1002 (siehe 5.2.3) $ASS/AG_SUM.UPD (PC) |
VORLAUFKARTE
Für den Programmlauf ist eine Vorlaufkarte mit folgendem Aufbau anzugeben:
Inhalt | Bemerkung |
---|---|
AGNR=nnn, | Nummer des Arbeitsgebietes Muss vorhanden sein als Bestandteil der Vorlaufkartenprüfung. nnn = Zahl zwischen 01 und 300 |
VERD.-NR=nnnnn | Nummer der Verdichtungsstufe Muss vorhanden sein als Bestandteil der Vorlaufkartenprüfung. nnnnn = Zahl zwischen 00001 und 32767 (5-stellig) |
LADEBESTAND | siehe 5.2.3 |
Es können bis zu 50 Vorlaufkarten verarbeitet werden. Die Reihenfolge der Arbeitsgebiete oder Verdichtungsstufen spielt dabei keine Rolle.
BEISPIEL: Im Arbeitsgebiet 9 sollen die Verdichtungsstufen 17 und 21 gelöscht werden.
AGNR=9,VERD.-NR=17 AGNR=9,VERD.-NR=21
Besonderheiten unter Windows/Linux:
Die erzeugten sequentiellen Verdichtungsstufen werden im $ASS-Verzeichnis unter dem Namen ASSCOnn angelegt. (nn ist Ort der sequentiellen Verdichtungsstufe) Um sie für die Auswertung verfügbar zu machen müssen sie in das $ASSDB-Verzeichnis kopiert und in ASSCVnn umbenannt werden. Bei aktiven Arbeitsgebiets-Cache muss auch das PCL1046 laufen. Grundsätzlich ist jedoch die Verwendung von sequentiellen Verdichtungsstufen unter Windows oder Linux nicht zu empfehlen.
5.2.3 Verdichtungsstufen auf sequentielle Dateien auslagern PCL1007
FUNKTIONSBESCHREIBUNG
Mit dem Programm PCL1007 können Verdichtungsstufen aus der Summen-DB auf sequentielle Dateien ausgelagert werden.
Dazu sind folgende Schritte erforderlich:
- Die ART der Verdichtungsstufe wird über die Transaktion ST06 von 'direkt' auf 'sequentiell' geändert (Master-Passwort!).
- Ebenso muss ein neuer Verdichtungsstufen-ORT vereinbart werden.
- Die neue, sequentielle Verdichtungsstufe muss in der Job-Control unter dem DD- bzw. Linknamen 'ASSCVnn' zugewiesen werden, wobei nn die 2-stellige Zahl des Verdichtungsstufenortes ist, die bei der Definitionsänderung in der ST06 zugewiesen wurde.
Die Beschreibung des Programmablaufs sowie die Angabe der Vorlaufkartenoptionen ist Kapitel 5.2.2. zu entnehmen. Werden Verdichtungsstufen auf sequentielle Dateien ausgelagert, so wird zunächst die jeweilige Verdichtungsstufe erzeugt und anschließend die betreffende Verdichtungsstufe auf der jeweiligen Summendatenbank gelöscht. Es wird Verdichtungsstufe für Verdichtungsstufe abgearbeitet. Das Löschen von Summensätzen aus einer Datenbank ist i.a. eine vergleichsweise aufwendige Operation. Bei großen Verdichtungsstufen kann es dadurch zu längeren Programmlaufzeiten kommen. In diesem Fall ist es günstiger, die Summendaten einer Summendatenbank zu splitten:
- ein Teil wird auf sequentielle Dateien ausgelagert.
- ein Teil wird als neuer Ladebestand für das Programm PCL1013 zur Verfügung gestellt.
Diese Verarbeitung wird durch die Option LADEBESTAND
ausgelöst.
Wird die Option LADEBESTAND benutzt, so gilt folgende
Einschränkung:
In einem Programmlauf von PCL1007 können nur
Verdichtungsstufen verarbeitet werden, die sich auf
einer Summendatenbank befinden.
Dies ist insbesondere bei verteilten Summendaten (mehrere
Summen-Datenbanken pro Arbeitsgebiet) zu beachten.
Weiterhin ist beim Laden von Summendaten mit Hilfe von
PCL1013 zu beachten, dass dort in der Vorlaufkarte die
Nummer der zu ladenden Summendatenbank anzugeben ist
(stimmt i.a. mit der Arbeitsgebietsnummer überein,
bei sekundären Summen-Datenbanken weicht die Nummer ab).
Der Ladebestand wird auf die Datei AUS ausgesteuert. Diese Datei hat die gleichen Eigenschaften wie die Datei AUS von PCL1002 und ist dort beschrieben.
BEISPIEL:
Im Arbeitsgebiet 9 sollen die Verdichtungsstufen 17 und 21 auf sequentielle Dateien ausgelagert werden, wobei ein neuer Ladebestand erzeugt werden soll:
LADEBESTAND AGNR=9,VERD.-NR=17 AGNR=9,VERD.-NR=21
5.2.4 Sequentielle Verdichtungsstufen auf Ladeformat der Summendatenbank umformen PCL1033
FUNKTIONSBESCHREIBUNG
Verdichtungsstufen können auf sequentielle Datenträger gespeichert werden. Dies kann schon unmittelbar bei der Erst- oder Folgeeinspeicherung (PCL1002) veranlasst werden oder aber später durch Reorganisation über PCL1007 nachgeholt werden. Jede Verdichtungsstufe wird in eine eigene Datei gespeichert.
Soll nun eine auf sequentiellem Datenträger gespeicherte Verdichtungsstufe in die Summendatenbank aufgenommen werden, so müssen die Sätze dieser Verdichtungsstufe zunächst auf das Format der Sätze der Summendatenbank gebracht werden. Diese Aufgabe erledigt das Programm PCL1033.
Anschließend können die umgeformten Sätze mit dem Programm PCL1013 in die Summendatenbank gespeichert werden.
Achtung: Ist die Summendatenbank nicht leer, so kann nicht mehr mit einem Lade-PSB gearbeitet werden (IBM).
Achtung: Dieses Dienstprogramm kann derzeit nicht bei VSAM- und BS2000/ISAM-Installationen eingesetzt werden.
Zum Schluss muss noch in der Steuerungs-DB der ORT der Verdichtungsstufe richtiggestellt werden (Masterpasswort).
ABLAUF
Datenflussplan
3 sequentielle Verdichtungsstufe(n) //ASSCV $ASS/ASSCV (PC) 4 Vorlaufkarte //VORLAUF $ASSVLK/T1033.VLK (PC) Auf Dummy setzen, nur bei Bedarf aktivieren 1 Liste f. Protokoll //LISTE $ASSPTK/PCL1033.PTK (PC) 2 Eingabe f. PCL1013 //ASSAUS $ASS/AG_SUM.UPD (PC) |
VORLAUFKARTE
Eine Vorlaufkarte wird nur benötigt, wenn in die betreffende Summendatenbank noch keine Einspeicherung erfolgt ist. In der Regel ist also die Vorlaufkarte auf DUMMY zu setzen. Es werden nur die Spalten 1-72 innerhalb der Vorlaufkarte berücksichtigt.
Inhalt | Bemerkung |
---|---|
MITKOPF, | Obligatorisch (bei Ersteinspeicherung). Bei Ersteinspeicherung ist ein Kopfsatz für die zu ladende Summendatenbank erforderlich. Dieser wird bei einer gültigen Vorlaufkarte erzeugt. |
KEYLEN=nnn | Obligatorisch (bei Ersteinspeicherung). Gibt die Schlüssellänge der zu ladenden Summendatenbank an. nnn = maximal 3-stellige Ziffer |
Wenn mehrere Dateien verarbeitet werden, sollten diese aufsteigend nach Verdichtungsstufennummern konkateniert werden, damit die Ausgabe sortiert vorliegt.
BEISPIEL:
MITKOPF, KEYLEN = 37
Besonderheiten unter Windows/Linux:
Die sequentiellen Verdichtungsstufen sind im Datenbankverzeichnis $ASSDB unter den Namen $ASSDB/ASSCVnn gespeichert, wobei nn dem Ort der sequentiellen Verdichtungsstufe entspricht. PCL1033 erwartet die Daten aller betroffenen sequentiellen Verdichtungsstufen in einer einzigen sequentiellen Datei $ASS/ASSCV. Die Verdichtungsstufen müssen in dieser Datei aufsteigend nach Verdichtungsstufennummer sortiert sein. Alle betroffenen sequentiellen Verdichtungsstufendateien müssen also in der richtigen Reihenfolge aus den Dateien der sequentiellen Verdichtungsstufen $ASSDB/ASSCVnn in die Datei $ASS/ASSCV kopiert werden.
5.2.5 Werteverwendungen in einer Verdichtungsstufe rückwirkend hinzufügen oder löschen PCL1011
FUNKTIONSBESCHREIBUNG
Wenn eine Verdichtungsstufe durch zahlreiche Werteverwendungen überlastet ist, kann ein Löschen von Werteverwendungen oder ein Aufteilen auf mehrere Verdichtungsstufen vorteilhaft sein. Vergleiche auch Handbuch 'EINRICHTEN EINES ARBEITSGEBIETES IM DIALOG'.
Mit dem Programm PCL1011 können Werteverwendungen im Rahmen einer generellen Reorganisation in Verdichtungsstufen hinzugefügt oder gelöscht werden. Werteverwendungen können dabei nur korrekt übernommen werden, wenn die interne Wertenummer unverändert bleibt.
Löscht man z.B. einen Wert Prämie zunächst aus allen Verdichtungsstufen eines Arbeitsgebietes, um ihn nachträglich in anderen Stufen wieder neu aufzunehmen, so vergibt ASS in diesem Fall, da ja der Wert zunächst ganz gelöscht wurde, eine neue interne Wertenummer.
Um diesen Effekt zu vermeiden, sollte zunächst die Aufnahme des Wertes in den anderen Verdichtungsstufen erfolgen. Erst dann sollte gelöscht werden. Zum Einsatz von PCL1011 siehe Kapitel 5.2.1.
BEISPIEL:
Eine Verdichtungsstufe mit 5 Schlüsseln und 8 verwendeten Werten soll durch Aufteilung auf 2 Verdichtungsstufen mit je 4 Werten entlastet werden. Bei der Neudefinition des Arbeitsgebietes (Step 3 in 5.3.6.) wird die bestehende Verdichtungsstufe kopiert. Danach werden in beiden Verdichtungsstufen die überflüssigen Werteverwendungen gelöscht (Interne Nummern der verwendeten Werte bleiben erhalten!).
AG alt: Verd.-Stufe Schlüssel Verwendete Werte 1 1 2 3 4 5 1 2 3 4 5 6 7 8 AG neu: Verd.-Stufe Schlüssel Verwendete Werte 1 1 2 3 4 5 1 2 3 4 2 1 2 3 4 5 5 6 7 8
5.2.6 Arbeitsgebiet kopieren für die PC-Verteilung PCL1011
Im Rahmen für die PC-Verteilung kann mit der Option AGNEU ein
umfangreiches Arbeitsgebiet (im folgenden altes genannt) in ein
kleineres Arbeitsgebiet (im folgenden neues genannt) geladen werden,
damit dieses dann besser für die PC-Verteilung genutzt werden kann.
Unter ASSCALT gibt man den Abzug des alten Arbeitsgebietes (PCL1004)
an, unter ASSDALT gegebenenfalls den Abzug der alten
Summendatenbank (PCL1024 oder PCL1124), unter ASSCV01
gegebenenfalls die alten sequentiellen Verdichtungsstufen und
unter ASSCNEU den Abzug des neuen Arbeitsgebietes (PCL1004).
Damit das neue Arbeitsgebiet aus dem alten geladen werden kann, wird
das Datum der ersten Einspeicherung und die Anzahl der Monate jeweils
überschrieben. Bei verwendeten Werten, die in beiden Arbeitsgebieten
enthalten sind, wird auch die relative Wertenummer überschrieben und
verwendete Werte, die nur im neuen Arbeitsgebiet vorkommen, werden
gelöscht.
5.2.7 Anzahl Nachkommastellen bei Werten vergrößern PCL1011
Mit der Option NUR_KST kann man die Anzahl der Kommastellen bei
verwendeten Werten in Verdichtungsstufen vergrößern. Wird die Option
NUR_KST verwendet, so ist keine weitere Reorganisation zulässig
(wird im Programmm abgeprüft), d. h. es darf in der ST06 nur die
Anzahl der Kommastellen bei den betreffenden Werten vergrößert werden.
Sonstige Änderungen (etwa in der AG-Definition) sind unzulässig.
Eine Reduktion der Zahl der Nachkommastellen ist unzulässig.
Beschreibung siehe Kapitel 5.3.6. in diesem Handbuch.
5.2.8 Summendaten in Euro umrechnen PCL1011
Das Programm PCL1011 bietet die Möglichkeit, alle Wertinhalte ab einem bestimmten Stichtag von der originalen Währung in Euro umzurechnen. Dazu ist für jeden umzurechnenden Wert eine Vorlaufkarte mit folgendem Inhalt erforderlich:
EURO(WERT=nnnnn, DATUM=MMJJ, INDEX=n)
Beschreibung der Vorlaufkarte
- EURO :
muss für die Euro-Umrechnung stets angegeben werden - WERT=nnnnn :
Angabe der Nummer des umzurechnenden Wertes - DATUM=MMJJ :
Angabe des Monats einschließlich, von dem ab alle Werteinhalte umgerechnet werden sollen statt des = sind auch < und > möglich > ist identisch mit = < Angabe des Monats ausschließlich, vor dem alle Werteinhalte umgerechnet werden sollen statt MMJJ kann auch STD angegeben werden, falls der Wert einen Eurostichtag hat - INDEX=n :
bezieht sich auf einen Eintrag in der installationsabhängigen Umrechnungstabelle
(COPY SST1502)
statt n kann auch STD angegeben werden, falls der Wert die Euroeigenschaft hat
Beispiel:
EURO(WERT=100, DATUM=0102, INDEX=1)
Die Euro-Angaben müssen in der ersten Zeile beginnen.
In einem Programmlauf kann man bis zu 100 Werte umrechnen. Die Vorlaufkarten für die einzelnen Werte müssen dabei durch Kommata getrennt werden. Die Umrechnung der einzelnen Werte erfolgt Verdichtungsstufe für Verdichtungsstufe. Aus diesem Grunde kann es in der Auswertung wegen der auftretenden Rundungsfehler in Abhängigkeit von den benutzten Verdichtungsstufen zu Abweichungen kommen. Bei Existenz einer Basisverdichtungsstufe können diese Inkonsistenzen durch einen weiteren Reorganisationslauf mit PCL1011 und der Option BASIS beseitigt werden. Die Euro-Umrechnung kann nicht mit anderen Reorganisationsmaßnahmen zusammen durchgeführt werden.
Ändererungen an der Arbeitsgebietsdefinition sind nicht erforderlich, der alte und neue Arbeitsgebietsabzug sollten für diesen Programmlauf identisch sein Näheres zum Programm PCL1011 siehe Kapitel 5.3.6.
5.2.9 Wert kopieren PCL1011
Das Programm PCL1011 bietet die Möglichkeit, alle Wertinhalte eines Wertes auf einen neuen Wert im Arbeitsgebiet zu kopieren. Es wird dabei die gesamte Historie kopiert. Es wird nur innerhalb von Verdichtungsstufen kopiert, d.h. Quell- und Zielwert müssen synchron in allen Verdichtungssstufen eingerichtet werden. Der Zielwert muss ein neuer Wert im betreffenden Arbeitsgebiet sein, es dürfen für ihn noch keine Daten eingespeichert worden sein.
Wird ein Wert kopiert, so werden Summensätze länger. Dies kann u.U. zu Problemen führen, wenn die maximale Satzlänge von Summensätzen Systemgrenzen überschreitet. Ist das betreffende Arbeitsgebiet so eingerichtet, dass lange logische Verdichtungsstufensätze auf mehrere physische Datensätze aufgeteilt werden können (z.B. in Tages-Arbeitsgebieten), so ist i.a. nicht mit Satzlängenproblemen zu rechnen. Treten Satzlängenprobleme auf, so ist vor dem Kopieren eines Wertes das betreffende Arbeitsgebiet geeignet zu reorganisieren (Verdichtungsstufen splitten oder die Aufteilung eines logischen Verdichtungsstufensätzes auf mehrere physische Sätze ermöglichen).
Beschreibung der Vorlaufkarte
COPY_WERT : Alte Wertenummer > Neue Wertenummer
Beispiel:
COPY_WERT : 4711 > 5711
Wert 4711 auf Wert 5711 kopieren. Näheres zum Programm PCL1011 siehe Kapitel 5.3.6.
5.3 Zeitaspekt
5.3.1 Arbeitsgebiete zeitlich zurücksetzen PCL1051
FUNKTIONSBESCHREIBUNG
Mit dem Programm PCL1051 können Arbeitsgebiete zeitlich zurückgesetzt werden, d.h. alle Einträge, deren Datumsangabe größer oder gleich einem gewählten Datum ist, werden physikalisch aus der Summendatenbank des betreffenden Arbeitsgebietes gelöscht.
Darüber hinaus werden folgende Funktionen ausgeführt:
- Datumsangaben in der Steuerungs-DB (Datum erste/letzte Einspeicherung im AG und bei den verwendeten Werten) werden den neuen Gegebenheiten angepasst.
- Bei sequentiellen Verdichtungsstufen wird die Satzanzahl durch das Programm PCL1051 korrekt gepflegt.
- Bei anderen, betroffenen Verdichtungsstufen, die auf Summendatenbanken gespeichert werden, wird die Satzanzahl von PCL1051 auf NULL gesetzt. Die korrekte Satzanzahl wird dann erst beim Laden durch PCL1002 eingefügt. (ACHTUNG bei verzögertem Update !).
Über Vorlaufkarte kann das Zurücksetzen auf einen Teil der Werte eingeschränkt werden.
ABLAUF
Abwicklungsschritte
- Arbeitsgebiet mittels PCL1004 abziehen.
- Falls erforderlich Summendatenbank mittels PCL1124 (oder eines äquivalenten Utilities) abziehen. Es kann auch mit der Option DBDIREKT gearbeitet werden.
- PCL1051.
- Falls PCL1051 mit der Option NUPDAT gelaufen ist, verzögerten Update der Steuerungsdatenbank mittels PCL1032 nachtragen.
- Falls im Protokoll von PCL1051 angezeigt wurde, dass die Summendatenbank geändert wurde, muss noch die Summendatenbank mittels PCL1002 mit der Option LADEN geladen werden.
Datenflussplan
Dateibeschreibung
DD-Name | Format/Recl | Dateiname ASS-PC | Beschreibung |
---|---|---|---|
ASSCO | FB 80 | $ASSVLK/T1051.VLK | Vorlaufkarte |
ASSLST | FBA 133 | $ASSPTK/PCL1051.PTK | Protokoll, 80-spaltig in den Spalten 7 bis 86 |
ASSAG | FB 166 | $ASS/AG.EBC | Abzug der Parameterdatenbanken. wird durch PCL1004 erstellt. |
Die folgenden Dateien werden nicht benötigt, falls in der Vorlaufkarte die Option LIST angegeben wird. | |||
ASSUPD | FB 80 | $ASS/ASSUPD.DAT | Verzögerter Update für PCL1032 bei der Option NUPDAT. |
ASSAINN | VB 10039 | $ASS/AG_SUM.EBC | Abzug der Summendatenbank. Erstellung durch PCL1024 oder DB-Utility. Nur nötig, falls nicht die Option DBDIREKT angegeben wird, was der Standard ist. |
ASSAONN | VB 20004 | $ASS/AE.DAT | Ladedatei für die Summendatenbank. Laden durch PCL1002 mit Option LADEN. |
ASSCV01 bis ASSCV99 |
VB 20004 | $ASSDB/ASSCVnn | Alte sequentielle Verdichtungsstufe. Verdichtungsstufe mit Ort nn erfordert ASSCVnn. |
ASSCO01 bis ASSCO99 |
VB 20004 | $ASS/ASSCOnn | Neue sequentielle Verdichtungsstufe. Verdichtungsstufe mit Ort nn erfordert ASSCOnn. |
Die Dateien ASSAINN und ASSAONN werden nur dann gebraucht, falls eine zurückzusetzende Verdichtungsstufe auf Summendatenbank gespeichert wird. Es sind nur die sequentiellen Verdichtungsstufen anzugeben, die vom Zurücksetzen betroffen sind. Unter IBM darf die LRECL bei ASSCVnn abweichend sein.
Datei - Platzbedarf
ASSAOnn nn = Verdichtungsstufenort
Da diese Dateien aus Optimierungsgründen nicht von PCL1002 sondern von PCL1051 direkt generiert werden, gilt für diese das gleiche wie für die ASSCOnn in PCL1002.
ASSAONN
Falls mindestens eine der zurückgesetzten Verdichtungsstufen in der Summendatenbank gespeichert wird, enthält ASSAONN alle Sätze der Summendatenbank. ASSAONN muss also so groß dimensioniert werden, dass diese Datei den kompletten Ladebestand aufnehmen kann, wobei noch berücksichtigt werden muss, dass der Werteteil noch nicht verdichtet ist, die Sätze dann pro Werteeintrag etwa den doppelten Platz benötigen. Andernfalls bleibt ASSAONN leer.
Unter Windows/Linux werden die neuen sequentiellen Verdichtungsstufen im $ASS-Verzeichnis unter dem Namen ASSCOnn angelegt. Sie müssen nach dem Programm laufnach $ASSDB kopiert und in ASSCVnn umbenannt werden.
ASSUPD
Diese Datei enthält maximal einige Tausend Sätze mit maximaler Satzlänge 100.
VORLAUFKARTE
Allgemein
Die Optionen werden ab der 1. Karte angegeben und untereinander durch Kommata getrennt. Falls keine Optionen erforderlich sind, so bleibt die 1. Karte leer. Standardmäßig gelten alle Optionen als nicht gesetzt.
Achtung: Es werden nur die ersten 72 Zeichen innerhalb einer Karte berücksichtigt.
Inhalt
Inhalt | Aktion |
---|---|
AG = nn | Angabe des Arbeitsgebiet mit 1 <= nn <= 300. Fehlt diese Angabe, so wird das Arbeitsgebiet aus der Datei ASSAG ermittelt. |
LIST | Abgrenzungsangaben aus der Vorlaufkarte auswerten und relevante Informationen anlisten, ohne das eigentliche Zurücksetzen durchzuführen. |
NUPDAT | Verzögerter Update auf die Steuerungsdatenbank. |
NO_VERSION | Kein Abgleich der Version von Verdichtungsstufen mit der Steuerungsdatenbank. |
NO_ANZAHL | Keine Überprüfung der Satzanzahl von Verdichtungsstufen mit der Steuerungsdatenbank. |
DELETE | Unbekannte direkte Verdichtungsstufen werden gelöscht. |
DBDIREKT | Der Summendatenbank-Abzug wird nicht über ASSAINN eingelesen, sondern die Summendatenbank wird direkt gelesen. |
WERT = n | Die folgenden Abgrenzungsangaben gelten bei n = 1 für normale Werte n = 2 für Vorgabewerte n = 3 für Erfasswerte |
CEERS = mmjj | Datum der ersten Einspeicherung des Arbeitsgebiets
und sämtlicher Werte auf das angegebene Datum
setzen. Das neue Datum kann nur nach dem aktuellen
Datum der ersten Einspeicherung liegen. In Tagesarbeitsgebieten ist das Datum in der Form ttmmjj anzugeben. |
CEERS5 | Bestimmung des minimalen Datums der ersten
Einspeicherung pro Wert und Verdichtungsstufe. Es kann passieren, dass das Datum der ersten und letzten Einspeicherung auf nicht eingespeichert zurückgesetzt wird. Dies kann auch Konsequenzen für die Auswertung und die Folgeeinspeicherung haben, insbesondere bei Bestandswerten. |
CEERS5_BEST | Analog CEERS5, es werden jedoch nur Bestandswerte verarbeitet. |
CEERS5_BEW | Analog CEERS5, es werden jedoch nur Bewegungswerte verarbeitet. |
CELET5 | Bestimmung des maximalen Datums der letzten Einspeicherung pro Wert und Verdichtungsstufe (analog zu CEERS5). Bei Bestandswerten ist folgende Besonderheit zu beachten: Da Bestandswerte in Summensätzen nur dann physikalisch gespeichert werden, wenn sie sich im Vergleich zum vorausgehenden Zeitaspekt geändert haben, wird das Datum der letzten Einspeicherung u. U. kleiner ermittelt als gewünscht. Dies passiert, wenn sich bei einem Wert in einer Verdichtungsstufe von einem Zeitaspekt zum nächsten nirgends eine Änderung ergibt. Beispiel: Der letzte Einspeicherungsmonat eines Wertes in einer Verdichtungsstufe sei Mai 2005. Der Mai 2005 unterscheide sich dort nicht von April 2005. Im April 2005 existieren physikalische Einträge zum betreffenden Wert in der betreffenden Verdichtungsstufe. Dann wird der Mai 2005 auf April 2005 reduziert. |
CELET5_BEST | Analog CELET5, es werden jedoch nur Bestandswerte verarbeitet. |
CELET5_BEW | Analog CELET5, es werden jedoch nur Bewegungswerte verarbeitet. |
CEERS_KENR CEERS_WENR | Datum der ersten Einspeicherung bestimmen |
Bei Verwendung der Option NUPDAT erfolgt kein Zugriff auf die Steuerungsdatenbank, das Programm PCL1051 kann dann also ohne zugeordnete Datenbank in der JCL laufen. Die Optionen NO_VERSION, NO_ANZAHL und DELETE sind lediglich für Testläufe gedacht, wobei äußerste Vorsicht angeraten ist.
Abgrenzungsangabe
Diese Angabe ist ab der 2. Karte erforderlich. Durch diese Angabe wird zum Ausdruck gebracht, ab welchem Datum (einschließlich) die Summendaten des betreffenden Arbeitsgebiets auf 0 zurückgesetzt werden.
Es ist eins der folgenden Formate zu verwenden.
**** **** ***** , **** ***** ***** , ! ! ! ! ! Wertenummer ! Wertenummer Datum in der Form MMJJ, in Tages-Arbeitsgebieten TTMMJJ.
Es sind maximal 19 Werteangaben zu einer Zeitraumangabe möglich.
Bemerkung zu den Satzlängen
PCL1051 berechnet diese für alle Verdichtungsstufen gleich. Dagegen berücksichtigt PCL1002 bei sequentiellen Verdichtungsstufen noch den Kopfsatz, wodurch geringfügige Abweichungen auftreten können.
Nullanhängen bei Bestandswerten in stillgelegten Verd.-Stufen
Dies erfolgt in PCL1051 nicht, aber in PCL1011. Daher können nach einer Reorganisation mittels PCL1011 die Sätze länger werden. Für die Listauswertungen bleibt dieser Effekt selbstverständlich ohne Auswirkungen.
BESONDERHEITEN:
Verzögerter UPDATE der Steuerungsdatenbank
Der eventuelle verzögerte Update der Steuerungsdatenbank bezüglich PCL1051 muss unbedingt vor dem Lauf von PCL1002 erfolgen. Andernfalls kann die Summendatenbank nicht einwandfrei geladen werden.
Beim Update der Steuerungsdatenbank werden bei den verwendeten Werten jeder zu splittenden Verdichtungsstufe die eingespeicherten Zeiträume angepasst. Der alte und der neue Zeitraum werden auch im Ablaufprotokoll angelistet (siehe Option LIST).
Des weiteren wird die Satzanzahl der betroffenen
Verdichtungsstufen gepflegt.
Da sequentielle Verdichtungsstufen durch PCL1051 generiert
werden, ist hier die Satzanzahl korrekt. Bei den anderen
betroffenen Verdichtungsstufen wird die Satzanzahl von PCL1051
Null gesetzt.
Bei Verdichtungsstufen, die auf Summendatenbanken gespeichert
werden, wird die Satzanzahl von PCL1002 gepflegt.
Daher muss ein eventuell verzögerter Update der
Steuerungsdatenbank bezüglich PCL1051 zwingend vor dem Laden
durch PCL1002 erfolgen.
Vor der Reorganisation durch PCL1051 ist ein eventuell noch ausstehender verzögerter Update der Steuerungsdatenbank mittels PCL1032 unbedingt erforderlich. Im Gegensatz zu anderen Dienstprogrammen wird die Satzanzahl der Verdichtungsstufen mit dem Abzug der Steuerungsdatenbank und beim Fehlen der Option NUPDAT zusätzlich mit der Steuerungsdatenbank abgeglichen. Diese Überprüfung wird mit der Option NO_ANZAHL umgangen.
Verdichtungsstufen aus Summendatenbank löschen
Falls Verdichtungsstufen mit dem Masterpasswort via ST06 gelöscht wurden und diese Verdichtungsstufen in der Summendatenbank waren, so ist die Option DELETE anzugeben. Im Gegensatz zu PCL1002 erlaubt PCL1051 keine unbekannten Verdichtungsstufen auf der Summendatenbank. Daher wird empfohlen, Verdichtungsstufen mit dem Dienstprogramm PCL1007 aus der Summendatenbank zu löschen.
Option CEERS
Mit der Option CEERS kann das Datum der ersten Einspeicherung chronologisch aufsteigend hochgesetzt werden. Deswegen müssen sämtliche Verdichtungsstufen angepasst werden: die eingespeicherten Zeiten auf der Steuerungsdatenbank und die Verdichtungsstufen auf der Summendatenbank bzw. sequentiellen Datei. Daher ist auch die Einschränkung auf gewisse Werte nicht zulässig.
BEISPIEL:
Sämtliche normalen Werte sollen ab Januar 1989 einschließlich aus Arbeitsgebiet 9 gelöscht werden.
AG = 9 , WERT = 1 0189
Die Werte 900 bis 919 sollen ab Januar 1989 einschließlich und die Vorgabewerte 920 bis 929 ab Januar 1990 einschließlich aus Arbeitsgebiet 9 gelöscht werden. Dann sind die ersten zwei Beispiele korrekt und das dritte nicht (zu einer Zeitangabe sind höchstens 19 Wertangaben zulässig).
AG = 9 ;Beispiel 1: richtig 0189 900 901 902 903 904 905 906 907 908 909 , 0189 910 911 912 913 914 915 916 917 918 919 , 0190 920 921 922 923 924 925 926 927 928 929 AG = 9 ;Beispiel 2: richtig 0189 900 901 902 903 904 905 906 907 908 909 , 0189 910 911 912 913 914 915 916 917 918 919 , 0190 920 921 922 923 924 925 926 927 928 929 AG = 9 ;Beispiel 3: falsch 0189 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 , 0190 920 921 922 923 924 925 926 927 928 929
Optionen CEERS_KENR und CEERS_WENR
Mit den Optionen CEERS_KENR und CEERS_WENR kann das Datum der ersten Einspeicherung bezüglich der angeforderten Schlüssel und Werte bestimmt werden. Im Protokoll werden die Zeiten angelistet. Es werden weder Ausgabedateien erstellt noch Datenbanken geändert. Daher können diese beiden Optionen nicht mit anderen angefordert werden. Es können maximal 10 Schlüssel und 50 Werte angefordert werden. Bei Schlüsseln werden nur Summensätze betrachtet die keine Dummy-Ausprägung (?! bzw. bei IBM ggf. ?Ü) enthalten.
Das folgenden Beispiel ergebe den anschließenden Protokollausschnitt.
AG = 497 , CEERS_KENR = 9900 9901 9902 , 9875 9876 9877 , CEERS_WENR = 9900 9901 9902 9903 , DBDIREKT ERSTE EINSPEICHERUNG ZUM SCHLUESSEL 9900 : JAN 2001 ERSTE EINSPEICHERUNG ZUM SCHLUESSEL 9900 UND WERT : JAN 2001 ERSTE EINSPEICHERUNG ZUM SCHLUESSEL 9901 : APR 2001 ERSTE EINSPEICHERUNG ZUM SCHLUESSEL 9901 UND WERT : APR 2001 ERSTE EINSPEICHERUNG ZUM SCHLUESSEL 9902 : JUL 2001 ERSTE EINSPEICHERUNG ZUM SCHLUESSEL 9902 UND WERT : JUL 2001 ERSTE EINSPEICHERUNG ZUM SCHLUESSEL 9875 : APR 1999 ERSTE EINSPEICHERUNG ZUM SCHLUESSEL 9875 UND WERT : APR 1999 ERSTE EINSPEICHERUNG ZUM SCHLUESSEL 9876 : JUL 1999 ERSTE EINSPEICHERUNG ZUM SCHLUESSEL 9876 UND WERT : JUL 1999 ERSTE EINSPEICHERUNG ZUM SCHLUESSEL 9877 : OKT 1999 ERSTE EINSPEICHERUNG ZUM SCHLUESSEL 9877 UND WERT : OKT 1999 ERSTE EINSPEICHERUNG ZUM SCHLUESSEL : APR 1999 ERSTE EINSPEICHERUNG ZUM SCHLUESSEL UND WERT : APR 1999 ERSTE EINSPEICHERUNG ZUM WERT 9900 : JAN 1999 ERSTE EINSPEICHERUNG ZUM WERT 9901 : FEB 1999 ERSTE EINSPEICHERUNG ZUM WERT 9902 : MRZ 1999 ERSTE EINSPEICHERUNG ZUM WERT 9903 : NICHT ERSTE EINSPEICHERUNG ZUM WERT : JAN 1999
Die erste Zeile besagt, dass der Schlüssel 9900 erstmals im Januar
2001 eingespeichert wurde und zwar unabhängig von den angeforderten
Werten und die zweite Zeile abhängig von den Werten.
Die dreizehnte Zeile bezieht sich auf alle angeforderten Schlüssel
unabhängig von den Werten und die vierzehnte abhäbgig von den
Werten.
Die fünfzehnte Zeile besagt, dass der Wert 9900 erstmals im Januar
1999 eingespeichert wurde. Die vorletzte Spalte besagt, dass der
Wert 9903 nicht eingespeichert wurde.
Die letzte Spalte ist das Minimum aller angeforderten Werte.
5.3.2 Auslagern von Zeiträumen PCL1021
FUNKTIONSBESCHREIBUNG
Das Programm PCl1021 wird nicht mehr unterstützt. Das Auslagern von Zeiträumen kann nur noch mit den anderen Utilities durchgeführt werden (siehe hierzu PCL1051, PCL1042 oder PCL1011).
5.3.3 Zeitliches Verdichten der Daten PCL1021
FUNKTIONSBESCHREIBUNG
Das Programm PCl1021 wird nicht mehr unterstützt. Ein zeitliches Verdichten von Summendaten ist daher nicht mehr möglich.
5.3.4 Aufteilung des Zeitaspekts auf verschiedene Verdichtungsstufen PCL1042
FUNKTIONSBESCHREIBUNG
Mit dem Dienstprogramm PCL1042 werden Verdichtungsstufen zeitlich gesplittet und dadurch Verdichtungsstufenmengen erzeugt oder bereits existierende Verdichtungsstufenmengen weiter aufgeteilt.
Zum ersten Splitten wird eine identische Verdichtungsstufe
via ST06 durch die Copy-Funktion angelegt und eine der beiden
Verdichtungsstufen stillgelegt (welche ist belanglos).
Anschließend kann dann diese Menge gesplittet werden.
Dazu ist lediglich bei der stillgelegten Verdichtungsstufe
das Abgrenzungsdatum anzugeben.
Bis zu diesem Datum einschließlich wird durch das Dienstprogramm
PCL1042 alles in die stillgelegte Verdichtungsstufe
ausgelagert, der Rest kommt in die aktive Verdichtungsstufe.
Das Splitten von größeren Verdichtungsstufenmengen ist
weiter unten bei der Vorlaufkarte beschrieben.
PCL1042 kennt einen eigenen Verdichtungsstufen-Mengenbegriff.
Alle Verdichtungsstufen mit gleichen ausgeprägten Schlüsseln
und gleicher Reihenfolge bilden zunächst eine Grund-Menge.
Lässt sich diese Grund-Menge in Unter-Mengen aufteilen,
so dass diese Unter-Mengen bezüglich der verwendeten Werte
paarweise disjunkt sind, so sind diese die
Verdichtungsstufenmengen von PCL1042 (um kurze Summensätze zu erhalten,
werden in der Praxis mitunter Werte auf 2 Verdichtungsstufen
aufgeteilt, obwohl sie bezüglich der Schlüssel identisch
sind; hierduch entstehen dann 2 Mengen für PCL1042).
Index-Verdichtungsstufen bilden jeweils eine eigene Menge.
Ein Splitten von Verdichtungsstufen kann notwendig werden,
wenn die Sätze der Summendatenbank die maximal zulässige
Satzlänge des betreffenden Datenbanksystems zu erreichen
drohen bzw. wenn die Performance infolge zu großer Satzlängen
zu wünschen übriglässt.
Mit jeder Einspeicherung werden die Summensätze um die
entsprechenden Werte länger. Irgendwann kann sich daher, wenn
sehr lange Historien schon eingespeichert sind, die
Notwendigkeit einer zeitlichen Umverteilung ergeben.
Zur Problematik der Verdichtungsstufenreorganisation wird im
ASS-Handbuch EINRICHTEN EINES ARBEITSGEBIETS Stellung
genommen. Vor dem Einsatz von PCL1042 sollte daher die
Lektüre dieser Abschnitte unbedingt erfolgen.
Beim Splitten werden die Werte eines Summensatzes nach den
angegebenen zeitlichen Kriterien auf zwei Summensätze
verteilt.
Die neuen Sätze werden jeweils dadurch i.a. kürzer als
der Ausgangssatz.
Ist eine umfangreiche Reorganisation erforderlich, die nur
durch PCL1011 und PCL1042 zu realisieren ist, sollte man diese
logisch trennen.
Vor jedem Lauf sollten nur die dafür erforderlichen
Änderungen via ST06 durchgeführt werden, da sonst die
Reihenfolge des Einsatzes von PCL1011 und PCL1042 über die
richtige Verdichtungsstufenbesetzung entscheiden muss.
Muss auch PCL1011 eingesetzt werden, so sind auch die
entsprechenden Kapitel dieses Handbuchs zu lesen.
ABLAUF
Schritte zur Abwicklung
- Arbeitsgebiet mittels PCL1004 abziehen.
- Falls erforderlich Summendatenbank mittels PCL1124 (oder eines äquivalenten Utilities) abziehen.
- PCL1042.
- Falls PCL1042 mit der Option NUPDAT gelaufen ist, verzögerten Update der Steuerungsdatenbank mittels PCL1032 nachtragen.
- Falls im Protokoll von PCL1042 angezeigt wurde, dass die Summendatenbank geändert wurde, so ist noch folgender Schritt notwendig: Summendatenbank mittels PCL1002 mit der Option LADEN laden.
Datenflussplan
Dateibeschreibung
DD-Name/ Link-Name |
Format/Recl | Dateiname ASS-PC | Beschreibung |
---|---|---|---|
ASSCO | FB 80 | $ASSVLK/T1042.VLK | Vorlaufkarte |
ASSLST | FBA 133 | $ASSPTK/PCL1042.PTK | Protokoll, 80-spaltig in den Spalten 7 bis 86 |
ASSAG | VB 1000 | $ASS/AG.EBC | Abzug der Parameterdatenbanken. Wird durch PCL1004 erstellt. |
DD-Name/ Link-Name |
Format/Recl | Dateiname ASS-PC | Beschreibung |
ASSUPD | VB 100 | $ASS/ASSUPD.DAT | Verzögerter Update für PCL1032 bei der Option NUPDAT. |
ASSAINN | VB 10000 * | $ASS/AG_SUM.EBC | Abzug der Summendatenbank. Erstellung durch PCL1124 oder DB-Utility. |
ASSAONN | VB 20000 ** | $ASS/AE.DAT | Ladedatei für die Summendatenbank. Laden durch PCL1002 mit Option LADEN. |
ASSAI01 bis ASSAI99 |
VB 10000 * | $ASSDB/ASSCVnn | Alte sequentielle Verdichtungsstufe. Verdichtungsstufe mit Ort nn erfordert ASSAInn. |
ASSAO01 bis ASSAO99 |
VB 10000 * | $ASS/ASSCOnn | Neue sequentielle Verdichtungsstufe. Verdichtungsstufe mit Ort nn erfordert ASSAOnn. |
ASSI01 bis ASSInn |
VB 10000 * | $ASSWK/ASSInn | Arbeitsdateien zum Portionieren der Summendatenbank, wobei 01 <= nn <= 99 ist. |
ASSO01 bis ASSOnn |
VB 10000 * | $ASSWK/ASSOnn | Arbeitsdateien zum Aufbau der Summendatenbank, wobei 01 <= nn <= 49 ist. |
* = 10000 bei MVS und BS2000, 5000 bei VSE ** = 20000 bei MVS und BS2000, 10000 bei VSE |
ACHTUNG: Bei den zusammengehörenden Input-/Outputdateien (z.B. ASSAI01/ASSAO01) müssen unbedingt verschiedene Dateien zugewiesen werden !
Die Dateien ASSAINN und ASSAONN werden nur dann gebraucht, falls eine der zu splittenden Verdichtungsstufen auf der Summendatenbank gespeichert ist. Entsprechend sind auch nur die sequentiellen Verdichtungsstufen anzugeben, die in zu splittenden Mengen vorkommen.
Die Zuordnung der Arbeitsdateien ASSInn und ASSOnn wird weiter unten beschrieben. Sie werden aber nur gebraucht, falls eine der zu splittenden Verdichtungsstufen auf der Summendatenbank gespeichert wird.
Die Zuordnung der Arbeitsdateien ASSInn/ASSOnn ist einfach.
Für jede nichtleere Verdichtungssstufe, die in der
Summendatenbank gespeichert ist, wird eine Arbeitsdatei ASSInn
benötigt und für jede zu erzeugende Verdichtungsstufe, die
in der Summendatenbank gespeichert wird, eine Arbeitsdatei
ASSOnn.
Um die nn zu füllen, sind in beiden Klassen die
Verdichtungsstufen nach der Verdichtungsstufennummer zu sortieren.
Bei der kleinsten Nummer wird nn = 01, bei der zweitkleinsten
nn = 02 und so weiter.
Diese Zuordnung und die gesamte Umsetzung kann man sich anlisten lassen, ohne dass die eigentliche Reorganisation ausgeführt wird, falls die Option LIST in der Vorlaufkarte angegeben wird.
Datei - Platzbedarf
Auf ASSAInn stehen die Summensätze im komprimierten Format, auf ASSAINN im komprimierten Format mit Steuerzeichen entsprechend HSSR-Format (IBM-Utility für DL/I-Datenbanken). Diese Dateien benötigen den Platz, der schon aus der "normalen" Folgeeinspeicherung bekannt ist.
ASSAOnn nn = Verdichtungsstufenort
Da diese Dateien aus Optimierungsgründen nicht von PCL1002, sondern von PCL1042 direkt generiert werden, gilt für diese das gleiche wie für die ASSCOnn in PCL1002.
ASSAONN
Falls mindestens eine der gesplitteten Verdichtungsstufen
in der Summendatenbank gespeichert wird, enthält ASSAONN
alle Sätze der Summendatenbank. ASSAONN muss also so
groß dimensioniert werden, dass diese Datei den kompletten
Ladebestand aufnehmen kann, wobei noch berücksichtigt werden
muss, dass der Werteteil noch nicht verdichtet ist, die
Sätze dann pro Werteeintrag etwa den doppelten Platz
benötigen.
Andernfalls bleibt ASSAONN leer.
ASSIii und ASSOoo
Diese Dateien müssen so groß dimensioniert werden, dass sie alle Sätze der betreffenden Verdichtungsstufe aufnehmen können. Die Zuordnung Datei zu Verdichtungsstufennummer ist oben beschrieben.
ASSUPD
Diese Datei enthält maximal einige Tausend Sätze mit maximaler Satzlänge 100.
VORLAUFKARTE
Die Optionen werden ab der 1. Karte angegeben und untereinander durch Kommata getrennt. Falls keine Optionen erforderlich sind, so bleibt die 1. Karte leer. Standardmäßig gelten alle Optionen als nicht gesetzt.
Achtung: Es werden nur die ersten 72 Zeichen innerhalb einer Karte berücksichtigt.
Inhalt | Aktion |
---|---|
AG = nn | Angabe des Arbeitsgebiet mit 1 <= nn <= 99. Fehlt diese Angabe, so wird das Arbeitsgebiet aus der Datei ASSAG ermittelt. |
PART_SPLIT | Hat keine Funktion mehr. Wird akzeptiert aus Gründen der Aufwärtskompatibilität. |
LIST | Split-Angaben aus der Vorlaufkarte auswerten und relevante Informationen anlisten, ohne das eigentliche Splitten durchzuführen. |
INFO | Wie LIST, aber mit Zugriff auf die Verdichtungsstufen und Auflistung ihrer Versionen. |
NUPDAT | Verzögerter Update auf die Steuerungsdatenbank. |
NO_VERSION | Kein Abgleich der Version von Verdichtungsstufen mit der Steuerungsdatenbank. |
NO_ANZAHL | Keine Überprüfung der Satzanzahl von Verdichtungsstufen mit der Steuerungsdatenbank. |
DELETE | Unbekannte Verdichtungsstufen, d.h. es gibt Daten zu Verdichtungsstufen in der Summendatenbank, jedoch hierzu keinen Eintrag in der Steuerungs-DB, werden gelöscht. |
NO_OPT | Deaktivierung der Optimierung, d.h. dass nicht zu verändernde Verdichtungsstufen einer zu splittenden Verdichtungsstufenmenge unangetastet bleiben. Diese Angabe ist nicht empfehlenswert. |
PART_MENGE | s.u. |
Bei Verwendung der Option NUPDAT erfolgt kein Zugriff auf die Steuerungsdatenbank, das Programm PCL1042 kann dann also ohne zugeordnete Datenbank in der JCL laufen.
Die Optionen NO_VERSION, NO_ANZAHL und DELETE sind lediglich für Testläufe gedacht, wobei äußerste Vorsicht angeraten ist.
Split-Angaben
Diese Angaben sind ab der 2. Karte erforderlich. Pro Zeile ist genau ein Eintrag in einer der folgenden Formen vorgesehen:
***** : **** ! ! ! Datum in der Form MMJJ, bei Tages-AG's TTMMJJ Nummer der Verdichtungsstufe.
Für jede stillgelegte Verdichtungsstufe einer splitbaren Verdichtungsstufenmenge ist genau solch eine Angabe erforderlich. Ist die Option PART_MENGE angegeben, so sind Teilmengen von Verdichtungsstufenmengen zulässig. Stillgelegte Verdichtungsstufen, zu denen keine Aussage gemacht wird, bleiben unverändert.
***** > ***** : **** , ***** ! ! ! ! ! ! ! Nummer der Verdichtungsstufe (Ziel) ! ! Datum der Form MMJJ, bei Tages-AG's TTMMJJ ! Nummer der Verdichtungsstufe (Ziel, stillgelegt) Nummer der Verdichtungsstufe (Quelle).
Dieses Format dient dazu, einzelne Verdichtungsstufen
gezielt zu splitten. Die Quell-Verdichtungsstufe wird dabei
auf die beiden Ziel-Verdichtungsstufen aufgeteilt.
Eine der Ziel-Verdichtungsstufen muss leer sein,
die andere muss mit der Quell-Verdichtungsstufe übereinstimmen.
Jede Verdichtungsstufennummer darf maximal einmal angesprochen
werden.
Bemerkung zu den Satzlängen
PCL1042 berechnet diese für alle Verdichtungsstufen gleich. Dagegen berücksichtigt PCL1002 bei sequentiellen Verdichtungsstufen noch den Kopfsatz, wodurch geringfügige Abweichungen auftreten können.
Nullanhängen bei Bestandswerten in stillgelegten Verd.-Stufen
Dies erfolgt in PCL1042 nicht, aber in PCL1011. Daher können nach einer Reorganisation mittels PCL1011 die Sätze länger werden. Dies liegt an dem aufwendigeren Algorithmus in PCL1042. Für die Listauswertungen bleibt dieser Effekt selbstverständlich ohne Auswirkungen.
BESONDERHEITEN / RESTRIKTIONEN
:Verzögerter UPDATE der Steuerungsdatenbank
Der eventuelle verzögerte Update der Steuerungsdatenbank bezüglich PCL1042 muss unbedingt vor dem Lauf von PCL1002 erfolgen. Andernfalls kann die Summendatenbank nicht einwandfrei geladen werden.
Beim Update der Steuerungsdatenbank werden bei den verwendeten
Werten jeder zu splittenden Verdichtungsstufe die
eingespeicherten Zeiträume angepasst.
Der alte und der neue Zeitraum werden auch im Ablaufprotokoll
angelistet (siehe Option LIST).
Da in den Verdichtungsstufen einer Menge die verwendeten Werte
nicht identisch sein müssen, kann es vorkommen, dass gewisse
Zeiträume verloren gehen.
Dies wird im Protokoll zu der oben angesprochenen Übersicht
zusätzlich angezeigt.
Auch hier hilft die Option LIST für einen Testlauf.
Des weiteren wird die Satzanzahl der betroffenen Verdichtungsstufen gepflegt. Da sequentielle Verdichtungsstufen direkt von PCL1042 geschrieben werden, wird für diese die Satzanzahl korrekt in die Steuerungs-Datenbank eingetragen. Für die anderen betroffenen Verdichtungsstufen wird die Satzanzahl in der Steuerungs-Datenbank auf Null gesetzt.
Die Verdichtungsstufen, die in der Summendatenbank gespeichert werden, werden mit dem Programm PCL1002 mit der Option LADEN bearbeitet. Für diese Verdichtungsstufen pflegt PCL1002 die Anzahl der Summensätze in der Steuerungs-Datenbank.
Daher muss ein eventuell verzögerter Update der Steuerungs-Datenbank bezüglich PCL1042 zwingend vor dem Laden durch PCL1002 erfolgen. Andernfalls überholen sich die beiden Updates für die Anzahl der Summensätze einer Verdichtungsstufen und es steht zum Schluss für die betroffenen Verdichtungsstufen, die in der Summendatenbank gespeichert werden, Null bei Anzahl Sätze.
Vor der Reorganisation durch PCL1042 ist ein eventuell noch
ausstehender verzögerter Update der Steuerungsdatenbank
mittels PCL1032 unbedingt erforderlich.
Im Gegensatz zu anderen Dienstprogrammen wird die Satzanzahl
der Verdichtungsstufen mit dem Abzug der Steuerungsdatenbank
und beim Fehlen der Option NUPDAT zusätzlich mit der
Steuerungsdatenbank abgeglichen.
Diese Überprüfung wird mit der Option NO_ANZAHL umgangen.
Verdichtungsstufen aus Summendatenbank löschen
Falls Verdichtungsstufen mit dem Masterpasswort via ST06 gelöscht wurden und diese Verdichtungsstufen in der Summendatenbank waren, so ist die Option DELETE anzugeben. Im Gegensatz zu PCL1002 erlaubt PCL1042 keine unbekannten Verdichtungsstufen auf der Summendatenbank. Daher wird empfohlen, Verdichtungsstufen mit dem Dienstprogramm PCL1007 aus der Summendatenbank zu löschen.
Restriktionen
Für das Splitten gelten folgende Restriktionen, die vor der eigentlichen Reorganisation abgeprüft werden: Zu splittende Verdichtungsstufenmengen müssen aus zwei bis neun Verdichtungsstufen bestehen, von denen mindestens eine aktiv und eine andere stillgelegt sein muss.
Falls eine zu splittende Verdichtungsstufe in der Summendatenbank gespeichert ist, gilt zusätzlich:
- Auf der Summendatenbank darf es maximal 99 nichtleere Verdichtungsstufen geben.
- Von den zu splittenden Verdichtungsstufen dürfen maximal 49 auf der Summendatenbank sein.
BEISPIELE
Gegeben sei das folgende Arbeitsgebiet 1, in dem Werte von Januar 1980 bis Januar 1988 eingespeichert seien.
Verd.-St. Art Ort Schlüssel-Nr 1 2 3 4 5 6 1 D A + + + + + 2 S A 1 + + + + 3 D A + + + + + 4 S A 2 + + + + 5 D A + + + 6 D S + + + + + 7 S S 3 + + + + 8 S S 4 + + + 9 S S 5 + + + + + 10 S S 6 + + + + 11 S S 7 + + + + ! ! ! A = aktiv , S = stillgelegt ! D = DB , S = sequentiell.
Es ist dann:
Verdichtungsstufenmenge | splitbar |
---|---|
1 | nein |
2 | nein |
3 , 6 | ja |
4 , 7 | ja |
5 , 8 | ja |
9 | nein |
10 , 11 | nein |
In diesem Arbeitsgebiet sollen folgende zwei Reorganisationen durchgeführt werden. Die erforderlichen Dateizuordnungen sind im Anschluss in MVS-Notation aufgeführt (ohne Steuerungs-DB, da unabhängig vom DB-System). Die Verdichtungsstufen sind, bis auf 12, nichtleer.
Problem I
Im obigen Arbeitsgebiet 1 sollen die splitbaren Verdichtungsstufen eine neue zeitliche Abgrenzung erhalten.
Verdichtungsstufe | Zeitraum |
---|---|
6 | Januar 1980 - Dezember 1984 |
3 | Januar 1985 - |
7 | Januar 1980 - Dezember 1983 |
4 | Januar 1984 - |
8 | Januar 1980 - Dezember 1986 |
5 | Januar 1987 - |
Dateizuordnung:
// EXEC PCL1042 //ASSCO DD * AG = 1 6 : 1284 7 : 1283 8 : 1286 //ASSLST DD SYSOUT=* //ASSAG DD DISP=OLD,DSN= //ASSAINN DD DISP=OLD,DSN= //ASSAI02 DD DISP=OLD,DSN= //ASSAI03 DD DISP=OLD,DSN= //ASSAI04 DD DISP=OLD,DSN= //ASSAONN DD DISP=NEW,DSN= //ASSAO02 DD DISP=NEW,DSN= //ASSAO03 DD DISP=NEW,DSN= //ASSAO04 DD DISP=NEW,DSN= //ASSI01 DD UNIT=SYSDA Verdichtungsstufe 1 //ASSI02 DD UNIT=SYSDA Verdichtungsstufe 3 //ASSI03 DD UNIT=SYSDA Verdichtungsstufe 5 //ASSI04 DD UNIT=SYSDA Verdichtungsstufe 6 //ASSO01 DD UNIT=SYSDA Verdichtungsstufe 3 //ASSO02 DD UNIT=SYSDA Verdichtungsstufe 5 //ASSO03 DD UNIT=SYSDA Verdichtungsstufe 6
Problem II
Im obigen Arbeitsgebiet 1 sei die folgende Verdichtungsstufe nachträglich via ST06 eingerichtet worden.
Verd.-St. Art Ort Schlüssel-Nr 1 2 3 4 5 6 12 D A + + + +
Damit ändert sich aber auch die letzte Verdichtungsstufenmenge:
Verdichtungsstufenmenge | splitbar |
---|---|
10 , 11 , 12 | ja |
Nun soll diese Verdichtungsstufenmenge so reorganisiert werden, dass gilt:
Verdichtungsstufe | Zeitraum |
---|---|
10 | Januar 1980 - Dezember 1985 |
11 | Januar 1986 - Dezember 1987 |
12 | Januar 1988 - |
Dateizuordnung:
// EXEC PCL1042 //ASSCO DD * AG = 1 10 : 1285 11 : 1287 //ASSLST DD SYSOUT=* //ASSAG DD DISP=OLD,DSN= //ASSAINN DD DISP=OLD,DSN= //ASSAI06 DD DISP=OLD,DSN= //ASSAI07 DD DISP=OLD,DSN= //ASSAONN DD DISP=NEW,DSN= //ASSAO06 DD DISP=NEW,DSN= //ASSAO07 DD DISP=NEW,DSN= //ASSI01 DD UNIT=SYSDA Verdichtungsstufe 1 //ASSI02 DD UNIT=SYSDA Verdichtungsstufe 3 //ASSI03 DD UNIT=SYSDA Verdichtungsstufe 5 //ASSI04 DD UNIT=SYSDA Verdichtungsstufe 6 //ASSO01 DD UNIT=SYSDA Verdichtungsstufe 12
Wäre die Verdichtungsstufe 12 nicht in der DB gespeichert, sondern sequentiell mit dem Ort 8, so ergäbe sich:
// EXEC PCL1042 //ASSCO DD * AG = 1 10 : 1285 11 : 1286 //ASSLST DD SYSOUT=* //ASSAG DD DISP=OLD,DSN= //ASSAI06 DD DISP=OLD,DSN= //ASSAI07 DD DISP=OLD,DSN= //ASSAO06 DD DISP=NEW,DSN= //ASSAO07 DD DISP=NEW,DSN= //ASSAO08 DD DISP=NEW,DSN=
Falls Verdichtungsstufen aus der Summendatenbank gesplittet wurden, enthält ASSAONN eine interne Schnittstelle, die wie bei einer Ersteinspeicherung mit PCL1002 zu laden ist, wobei in diesem Fall noch die Option LADEN in der Vorlaufkarte von PCL1002 anzugeben ist.
Unter Windows/Linux werden die neuen sequentiellen Verdichtungsstufen im $ASS-Verzeichnis unter dem Namen ASSCOnn angelegt. Sie müssen nach dem Programm laufnach $ASSDB kopiert und in ASSCVnn umbenannt werden.
5.3.5 Anzahl der Monate des Statistikjahres verändern PCL1011
FUNKTIONSBESCHREIBUNG
ASS bietet die Möglichkeit, intern maximal 16 Monate für ein Jahr zu vereinbaren. Zeitangaben werden jedoch bei der Einspeicherung der Summendaten intern in eine lfd. Nummer umgesetzt, die auch über die Jahre fortgezählt wird.
Wird nachträglich die Anzahl der ASS-Monate verändert, ist eine Reorganisation mit dem Programm PCL1011 erforderlich, um die Konsistenz der eingespeicherten Summendaten zu erhalten.
Bei einer Vergrößerung der Anzahl der Monate pro Jahr müssen
Sie nur darauf achten, dass die Spanne zwischen erster und
letzter Einspeicherung nicht zu groß wird (1023 Monate sind
erlaubt).
Bei einer Verkleinerung darf jedoch zu den Monaten, die laut
der neuen Definition im Arbeitsgebiet größer als der maximale
Monat im Jahr sind, nichts auf der Summendatenbank
eingespeichert sein.
Der Einsatz dieses Programmes wird in Kapitel 5.1.1 in diesem Handbuch beschrieben.
5.3.6 Anwendung des Programmes PCL1011 PCL1011
FUNKTIONSBESCHREIBUNG
Eine Reihe von Reorganisationsmaßnahmen, die in den vorhergehenden Kapiteln vorgestellt wurden, können über das Programm PCL1011 durchgeführt werden. Die Grundsätze der Anwendung dieses Programmes sollen nun in diesem Kapitel kurz vorgestellt werden.
ABLAUF
Schritte zur Abwicklung einer Reorganisation
STEP | NORMALABLAUF | BESONDERHEITEN |
---|---|---|
1 | Abziehen alte Summen-DB (HSSR bzw. PCL1124). | Bei sequentiellen Verdichtungsstufen überflüssig |
2 | Arbeitsgebiet im alten Zustand sichern (PCL1004). | Unter Windows/Linux ist die Abzugsdatei $ASS/AG.EBC in AGALT.EBC umzubenennen |
3 | Arbeitsgebiet in Steuerungs-DB
neu definieren. (ST06 mit Masterpasswort!) Die Neudefinition muss mit einer Prüfung des AG abgeschlossen werden. | Verdichtungsstufen erst
ändern oder kopieren und
zum Schluss löschen. Bei Schlüsseländerung korrekte Zuordnung in Verdichtungsstufen beachten. |
4 | Arbeitsgebiet im neuen Zustand sichern (PCL1004). | |
Wird die Schlüssellänge der Summen-DB verändert, sind je nach Systemumgebung zusätzliche Maßnahmen erforderlich, die anschließend an diese Tabelle beschrieben werden ( s. Zusatzschritte !). | ||
5 | Abgezogene alte Summen-DB
auf neuen Zustand (internes
Format) übertragen. ( PCL1011 ). | |
6 | Neue Summen-DB laden bzw. neue sequ. Verd.-Stufen erzeugen (PCL1002). |
Zusatzschritte bei Änderung der Schlüssellänge Summen-DB
1. Schritt:
- IBM
- DL/I
DBDGEN für neue Summen-DB des geänderten Arbeitsgebiets.
- DL/I
- Siemens
- ISAM
In der Job-Control von PCL1002 Schlüssellänge für betreffende Summen-DB anpassen. Alte Summen-DB löschen. - UDS
Betreffende Summendatenbank (DSTnnn) mit BOUTLOAD entladen bzw. Summendatenbank neu generieren.
Ändert sich infolge der Reorganisation die Länge des Schlüssels der Summen-DB, muss das betreffende Zugriffsprogramm MSTSUnn entsprechend modifiziert und übersetzt werden. Anschließend sind in diesem Fall alle Programme, die auf Summendatenbanken zugreifen, neu zu linken.
- ISAM
- SAG
- ADABAS
Deskriptorlänge anpassen.
- ADABAS
2. Schritt:
Alle PSB's, die PCB-Pointer für Summendatenbanken enthalten, richtigstellen ( Nur IBM mit DL/I ).
Datenflussplan
LFD.-NR. | DD-NAME/PGM | Dateiname ASS_PC | BESCHREIBUNG |
---|---|---|---|
140.1 | //ASSCNEU | $ASS/AG.EBC | Datei aus PCL1004: Neues Arbeitsgebiet |
150 | //CPOUT01 //CPIN01 //CPOUT02 //CPIN02 | $ASS/CPIN01 $ASS/CPIN02 | Checkpoint-Datei 1 LRECL=200 Checkpoint-Datei 1 Checkpoint-Datei 2 LRECL=200 Checkpoint-Datei 2 |
160 | //ASSCV01 | $ASS/ASSCVIN | Enthält alle sequentiellen Verdichtungsstufen des Arbeitsgebietes (Dateiverkettung über Betriebssystem erforderlich) nicht benötigt bei ASSCV_DIREKT |
160 | //ASSCVnn | $ASSDB/ASSCVnn | Sequentielle Verdichtungsstufen des Arbeitsgebietes für ASSCV_DIREKT |
170 | //ASSCALT | $ASS/AGALT.EBC | Datei aus PCL1004: Altes Arbeitsgebiet |
180 | //DST001 //DST011 //DST012 //DST013 //DST002 //DST021 //DST022 //DST023 //DST003 //DST031 //DST032 //DST033 |
$ASS/DST001 $ASS/DST002 $ASS/DST003 | Werte-DB Primär-Index 1 (nur DLI) Sekundär-Index 1 (nur DLI) Sekundär-Index 2 (nur DLI) Schlüssel-DB Primär-Index (nur DLI) Sekundär-Index 1 (nur DLI) Sekundär-Index 2 (nur DLI) Steuerungs-DB Primär-Index (nur DLI) Sekundär-Index 1 (nur DLI) Sekundär-Index 2 (nur DLI) |
190 | //ASSCO | $ASSVLK/T1011.VLK | Vorlaufkarte |
200 | PCL1011 | Erstellen Reorg-Bestand für ein AG | |
210 | //ASSDALT | $ASS/AGALT.EBC | Abzug der alten Summen-DB |
220 | //ASSLIST //SYSPRINT //SYSOUT | $ASSPTK/PCL1011.PTK | Ablaufprotokoll PCL1011 Fehlermeldungen Sort-Meldungen |
230 | //ASSOUNN | $ASS/AE.DAT | Interne Schnittstelle (=Reorg-Bestand) LRECL=20000 |
240 | - | Logdatei (nur DLI) | |
250 | //ASSWONN | $ASSWK/ASSWONN | Arbeitsdatei für das AG LRECL=10000 |
260 | //ASSWK01 //ASSWK02 | $ASSWK/ASSWKnn | Work- u. Restartdatei 01 LRECL=20000 -"- 02 LRECL=20000 |
270 IBM SIEMENS | //SORTWK01 bis //SORTWKnn //SORTWK1 Bis //SORTWKn | $ASSWK/SORTnn | Sortwork-Bereich 1 Bis größtmöglicher Sortwork-Bereich Sortwork-Bereich 1 Bis größtmöglicher Sortwork-Bereich |
Beschreibung der Ein- und Ausgabedateien
ASSWK01 | Wie PCL1001 |
ASSWK02 | Wie PCL1001 |
ASSWONN | Wie PCL1001 |
ASSOUNN | Wie PCL1001 |
ASSCALT | Datei mit altem Arbeitsgebiet, siehe PCL1004 |
ASSCNEU | Datei mit neuem Arbeitsgebiet, siehe PCL1004 |
ASSDALT | Abzug von alter Summen-DB, siehe Beschreibung von PCL1002 oder PCL1024. Nur Daten aus komprimierten Verdichtungsstufen. |
ASSCV01 | ohne ASSCV_DIREKT (Standard) Konkatenierte Datei mit sequentiellen Verdichtungsstufen |
ASSCVnn | mit ASSCV_DIREKT, wobei nn der Verdichtungsstufenort ist Einzelne Datei(en) mit sequentiellen Verdichtungsstufen |
ASSCO | Vorlaufkarte |
CPIN01 | Eingabedatei für 1. Checkpoint (analog PCL1001) |
CPOUT01 | Ausgabedatei für 1. Checkpoint (analog PCL1001) CPIN01 und CPOUT01 repräsentieren denselben Dataset |
CPIN02 | Eingabedatei für 2. Checkpoint (analog PCL1001) |
CPOUT02 | Ausgabedatei für 2. Checkpoint (analog PCL1001) CPIN02 und CPOUT02 repräsentieren denselben Dataset |
ASSLIST | Ablaufprotokoll |
SORTIN | Muss auf denselben Dataset wie ASSWONN gelegt werden und darf in der COBOL-Version NICHT angegeben werden. |
SORTWK01 - SORTWKnn | bzw. Arbeitsdateien für SORT |
SORTWK1 - SORTWKn |
5.3.7 Tag oder Folgesätze einführen PCL1011
Folgesätze:
Die maximale Satzlänge von Summensätzen
ist umgebungsabhängig beschränkt. Werden Summensätze
zu lang, so können neue Daten nur nach einer Reorganisation
oder nach Splitten von Verdichtungsstufen übernommen
werden. In Summensätzen kann zusätzlich zu den
verdichteten Inhalten von Schlüsselausprägungen
rechts ein Byte ergänzt werden. Dieses Byte dient
zur Kennzeichnung von Folgesätzen und ermöglicht,
dass zu einer Schlüsselkombination in einer
Verdichtungsstufe mehrere Sätze gespeichert werden
können. Durch eine einfache Reorganisation mit
PCL1011 kann dieses Byte in bestehende Arbeitsgebiete
eingefügt werden. Hierzu ist die Option FOLGESAETZE
anzugeben und mit Hilfe der ST06 im "neuen" Arbeitsgebiet
das entsprechende Kennzeichen F (Typ der Summen-DB) zu setzen.
FOLGESAETZE impliziert die Option NO_SORT.
Tag = nn:
Soll in einem Monats-Arbeitsgebiet der Tag bei der ASS-Zeit
eingeführt werden, so kann allen alten Summendaten
dieses Arbeitsgebiets ein bestimmter Tag zugeordnet werden.
Zulässige Tage sind 01, 02, 03, ... , 32.
Werden Tage eingeführt, so wird analog zu FOLGESAETZE
ein Byte im Key der Summensätze reserviert, um "lange"
Summensätze speichern zu können.
TAG impliziert die Option NO_SORT.
Vor einem Reorganisationslauf von PCL1011 mit TAG = nn
muss mit Hilfe der ST06 im "neuen" Arbeitsgebiet
das entsprechende Kennzeichen T (Typ der Summen-DB) gesetzt
werden.
Es ist zu beachten, dass sowohl FOLGESAETZE als auch TAG = nn im Schlüssel der betreffenden Summen-DB ein zusätzliches Byte beanspruchen. Die Keylänge ist wie beim Vergrößern der internen Länge von Schlüsselausprägungen anzupassen (siehe 5.3.6).
5.3.8 Tagesschlüssel auf ASS-Zeit abbilden PCL1011
Allgemeines
Gibt es in einem Monats-Arbeitsgebiet einen Schlüssel,
auf den parallel zur ASS-Zeit (MMJJ) der Tag abgebildet
ist, so kann dieses Arbeitsgebiet in ein Tages-Arbeitsgebiet
überführt werden. Hierbei werden die Inhalte
des betreffenden Schlüssels auf den Tag in der ASS-Zeit
abgebildet.
Bei Bestandswerten wird für fehlende Tage eine Null
ergänzt.
Dies setzt i.a. voraus, dass es in dem betreffenden
Arbeitsgebiet eine Basis-Verdichtungsstufe (oder
Basis-Verdichtungsstufenmenge) gibt, da sonst Informationen
ohne Tagesbezug verloren gehen.
Die Inhalte dieses Schlüssel müssen einem Tag (einer Zahl zwischen 1 und 31) zugeordnet werden können. Dies ist möglich, wenn die betreffenden Schlüsselinhalte numerisch sind und Werte zwischen 1 und 31 darstellen. Die Dummy-Ausprägung (?! bzw. bei IBM ggf. ?Ü) wird auf den Tag 32 abgebildet.
Wird ein Tagesschlüssel auf die ASS-Zeit abgebildet, so
muss eine vollständige Reorganisation durchgeführt
werden. Der Tagesschlüssel darf im neuen Arbeitsgebiet
nicht mehr enthalten sein.
Dies zeigt, dass die Verdichtungsstufen des neuen Arbeitsgebiets
neu zu konfigurieren sind. Die Verdichtung über
diesen Schlüssel in allen alten Verdichtungsstufen könnte
z. B. dazu führen, dass sich aus zwei alten
Verdichtungsstufenmengen eine neue ergibt.
Da PCL1011 bei dieser Reorganisation alte
Verdichtungsstufenmengen nur auf jeweils eine neue Verdichtungsstufe abbilden
kann, sollte das neue Arbeitsgebiet nur Verdichtungsstufenmengen
enthalten, die jeweils aus nur einer Verdichtungsstufe
bestehen. Sollten dann noch zeitliche Splits von
Verdichtungsstufen benötigt werden, so sind diese durch weitere
Reorganisationsmaßnahmen zu erzeugen.
Die Abbildung eines Schlüssel auf den Tag der ASS-Zeit hat zur Konsequenz, dass in keiner Verdichtungsstufe mehr über den Tag verdichtet wird. Dies kann dazu führen, dass, insbesondere in höheren Verdichtungsstufen, das Datenvolumen zunimmt.
Durchführung
Es handelt sich um eine vollständige Reorganisation. Die prinzipielle Durchführung ist in 5.3.6 beschrieben.
In der Vorlaufkarte ist
TAGES_KY = n
anzugeben, wobei n die Schlüsselnummer des Tagesschlüssels
ist.
5.3.9 AU_GEN und AU_GEN_SRT PCL1011
Mit AU_GEN und AU_GEN_SRT kann ein Zielschlüssel aus bis zu zwei Quellschlüssel aufgebaut werden. Die Quellschlüssel dürfen gleich sein. Zum Beispiel ist folgendes möglich. Pro Lauf allerdings nur jeweils eine Angabe.
AU_GEN '4711 = 4712( 3,2 ) + "EF"' AU_GEN '9872 = 9870( 1,2 ) + "00" + 9871( 3,2 )' AU_GEN '9872 = 9870( 1,2 ) + "00" + 9870( 3,2 )'
Links vom = steht der Zielschlüssel und rechts die Quellschlüssel und ggf. konstante Inhalte. Bei Quellschlüsseln steht in Klammern durch das Komma getrennt die Position und die Länge innerhalb der Ausprägung. Mit + werden die Angaben verkettet.
Im obigen Beispiel hat der Schlüssel 4711 die externe Länge
4 und 9872 die externe Länge 6. Die externe Länge von 4712
und 9871 ist mindestens 4 und die von 9870 im 2. Fall
mindestens 2 und im 3. mindestens 4.
Die Dummyausprägung ?! (bei IBM ggf. ?Ü) in den Quellschlüsseln
wird auf diese im Zielschlüssel abgebildet. Bei den
Quellschlüsseln wird bei jedem Summensatz überprüft, dass
keiner oder alle die Dummyausprägung enthalten. Ansonsten wird
eine Warnung ausgegeben und der Dummyteil mit # aufgefüllt.
Bei AU_GEN wird nicht sortiert und bei AU_GEN_SRT wird sortiert. Dies ist der einzige Unterschied dieser Optionen. Bei AU_GEN wird daher überprüft, dass die Sortierreihenfolge erhalten bleibt.
Zur Zeit gelten folgende Einschränkungen:
- Die Längensumme der rechten Seite ist die externe Länge des Zielschlüssel
- Verdichtungsstufen mit dem Zielschlüssel enthalten sämtliche Quellschlüssel.
- Die interne Länge der Quell- und Zielschlüssel ist 1 oder 2.
- Pro Lauf können bis zu 20000 Ausprägungen beim Zielschlüssel eingefügt werden.
- AU_GEN und AU_GEN_SRT können nicht mit anderen Reorganisationsmaßnahmen gekoppelt werden. Insbesondere sind mehrere solcher Angaben nicht möglich.
Es wird eine Datei erstellt, die die neuen Ausgrägungen enthält. Diese werden dann mit PCL1036 auf die Schlüsseldatenbank eingespielt. Am Host ist dazu der DD/Link-Name ASSAU erforderlich (VB 1004). Am PC heißt diese binäre Datei $ASS/ASSINKY, also passend für PCL1036.
5.4 Schlüsseldatenbank
5.4.1 Interne Schlüsselausprägungsnummer reorganisieren PCL1058
FUNKTIONSBESCHREIBUNG
Die Inhalte eines Schlüssels werden von den ASS-Programmen
intern durchnumeriert. Auf diese Weise besteht für jeden
ASS-Schlüssel eine interne Nummer, die für den nächsten,
neu hinzukommenden Inhalt bereitsteht.
Werden Schlüsselausprägungen gelöscht, so greifen die
ASS-Programme bei der Neuanlage von Schlüsselinhalten
nicht auf die niedrigeren, eigentlich freien Nummern
zurück, sondern immer auf die gegenüber der zuletzt
vergebenen nächst höheren Nummer zu.
Bei Schlüsseln mit großer Änderungstendenz bezüglich
der Schlüsselinhalte, bei denen Ausprägungen rückwirkend
aus den ASS-Daten wegen Umbuchungen gelöscht werden, z.B.
bei Ausscheiden von Vertretern aus einem Unternehmen, können
auf diese Weise relativ zahlreiche Lücken innerhalb der
internen Nummern eines Schlüssels auftreten.
Um in diesem Fall ein ungewolltes und nicht gerechtfertigtes
Erreichen des Grenzbereiches der internen Nummer zu vermeiden,
bietet das Programm PCL1058 die Möglichkeit, die internen
Nummern eines Schlüssels zu reorganisieren.
PCL1058 ermöglicht somit das Ausnutzen bestehender Lücken
im Bereich der internen Nummern eines Schlüssels.
Allerdings bedingt dies eine Reorganisation der betroffenen
Summendaten. Das Bereinigen der Lücken im Bereich
der internen Nummern eines Schlüssels sollte daher nur
dann vorgenommen werden, wenn wirklich der Grenzwert für
die jeweilige interne Länge eines Schlüssels erreicht
zu werden droht. In allen anderen Fällen sollte man die
Lücken belassen, da sie mit keinerlei Beeinträchtigung
oder Belastung für den ASS-Betrieb verbunden sind.
Bei einer internen Schlüssellänge von 2 liegt der
Grenzwert bei 64000 Ausprägungen, bei einer internen
Schlüssellänge von 1 bei 253 Ausprägungen. Sollte der
Grenzwert von 253 erreicht sein, so ist zu überlegen,
ob statt einer Reorganisation der internen Nummern nicht
besser eine Erweiterung der internen Schlüssellänge von
1 auf 2 mittels Programm PCL1011 vorgenommen wird.
Hinweis: PCL1058 führt aus Performancegründen keine
Reorganisation für Massenschlüssel (interne Länge 3
oder 4) durch.
ABLAUF
Abwicklungsschritte
- Sicherungen erstellen (s.u.)
- PCL1055 (optional)
- PCL1058
- PCL1002 mit Option LADEN, siehe Handbuch 'Betrieb 1', Variante 1b.
- Updates PCL1036 (nur bei NUPDAT) PCL1032 (nur bei NUPDAT)
Schematische Darstellung (ab 3. Schritt):
Datenflussplan
Erklärungen zum Datenflussplan
Nummer | Datei | Bezeichnung | Dateiname ASS-PC |
---|---|---|---|
1 | SCHLUESSEL-DB | DST002 DST021 (nur DLI) DST022 (nur DLI) DST023 (nur DLI) |
$ASSDB/DST002 |
2 | STEUERUNGS-DB | DST003 DST031 (nur DLI) DST032 (nur DLI) DST033 (nur DLI) |
$ASSDB/DST003 |
3 | SUMMENDATEN-BANKEN | $ASSDB/DSTxxx | |
4 | VERDICHTUNGS-STUFEN AUF SEQ. DATENTRAEGER | ASSCV Dabei sind alle Verdichtungsstufen der betroffenen Arbeitsgebiete zu verketten und einer einzigen ASSCV-Datei mit dem logischen Namen ASSCV zuzuweisen. Welche Verdichtungsstufen zuzuweisen sind, wird unten beschrieben. |
|
5 | VORLAUFKARTEN | ASSCO | $ASSVLK/T1058.VLK |
6 | ASSOUnn SUMMENDATEN EINES ARBEITSGEBIETES EINSCHLIESSLICH SEQUENTIELLER VERDICHTUNGSSTUFEN | (Format: maximale Satzlänge=
20000 variabel geblockt) ASSOU01 gehört zu Arbeitsgebiet 1, ASSOU02 gehört zu Arbeitsgebiet 2, ... ASSO100 zu Arbeitsgebiet 100 usw. Für Arbeitsgebiete, die von der Reorganisation nicht betroffen sind, braucht keine Datei ASSOUnn bzw. ASSOnnn zugewiesen werden. |
$ASS/ASSOUnn |
7 | INTERNE ARBEITSDATEI | ASSWK (Format: maximale Satzlänge =10000 variabel geblockt) |
$ASSWK/ASSWK |
8 | VERARBEITUNGS-PROTOKOLL | PROTO (Format: feste Satzlänge=133 CTLASA) |
$ASSPTK/PCL1058.PTK |
9 | VORAB-KORREKTUR VON INTERNEN SCHLUESSEL-INHALTSNUMMERN | ASSAU (Format: maximale Satzlänge=1000 variabel geblockt: VB 1004) Sollten interne Schlüsselinhaltsnummern bei den Summendaten der betroffenen Arbeitsgebiete gefunden werden, die in der Schlüsseldatenbank nicht zu finden sind, ist eine Vorab-Korrektur auf der Schlüsseldatenbank notwendig. Hierzu sind die weiteren Ausführungen zur Datei ASSAU zu beachten. |
$ASS/ASSAU |
10 | SICHERUNG DES ALTEN ZUSTANDS AUF DER SCHLUESSEL-DATENBANK | ASSINKY (Format: maximale Satzlänge=1000 variabel geblockt) Mit dem Programm PCL1036 kann der alte Zustand auf der Schlüsseldatenbank hergestellt werden, wenn PCL1058 mit Option LOESCHEN gelaufen ist. |
$ASS/ASSINKY |
11 | VERZOEGERTER UPDATE AUF SCHLUESSEL-DATENBANK | ASSKY (Format: maximale Satzlänge=1000 variabel geblockt) Mit dem Programm PCL1036 kann der Update auf der Schlüsseldatenbank verzögert durchgeführt werden (nur bei Option NUPDAT) |
$ASS/ASSKY |
12 | VERZOEGERTER UPDATE AUF STEUERUNGS-DATENBANK | ASSUPD (Format: maximale Satzlänge=100 variabel geblockt) Mit dem Programm PCL1032 kann der Update auf der Steuerungsdatenbank verzögert durchgeführt werden (nur bei Option NUPDAT) |
$ASS/ASSUPD.DAT |
VORLAUFKARTE
Option INFO: Informationslauf
Die Vorlaufkartenoption INFO ermöglicht einen reinen Testlauf ohne Schreibzugriffe auf ASS-Datenbanken. Auf diese Weise kann unter relativ geringem Betriebsmittelaufwand eine Protokolldatei erstellt werden, die wesentliche Informationen bezüglich der geplanten Schlüsselinhaltsreorganisation liefert. Wird das Programm PCL1058 konsequent vor der eigentlichen Reorganisation mit einem INFO-Lauf eingesetzt, können Bedienungsfehler vermieden werden. Das in einem Informationslauf von PCL1058 erzeugte Protokoll enthält folgende Informationen:
- Angabe der Arbeitsgebiete, in denen der für die Reorganisation vorgesehene Schlüssel verwendet wird.
- Angabe der von der Reorganisation betroffenen Summendatenbanken und sequentiellen Verdichtungsstufen
- Information über ungeprüfte oder fehlerhafte Arbeitsgebiete.
- Auflistung der Inhalte des zu reorganisierenden Schlüssels in der Schlüsseldatenbank (optional).
- Information über ausgelagerte Zeiträume
- Hinweis auf fehlende Datei-Zuweisungen in der Job Control. Der Informationslauf kann auch erfolgen, wenn sequentielle Verdichtungsstufen und Summendatenbankabzüge nicht tatsächlich zugewiesen werden. Hierfür reicht es aus, für die entsprechenden Dateien eine Dummy-Zuweisung vorzunehmen. Auf Versionsprüfungen wird in diesem Fall verzichtet.
Durchführung der Reorganisation der internen Nummer eines Schlüssels
Wird die Option INFO nicht gesetzt, werden zunächst sämtliche
von der Reorganisation betroffenen Summensätze gelesen und
sämtliche Kopfsätze kontrolliert, wobei Fehlermeldungen und
Hinweise auf eine Protokolldatei ausgegeben werden. Um sich
Kenntnis über die benötigten sequentiellen Verdichtungsstufen
und Summendatenbankabzüge für korrekte
Job Control-Anweisungen zu verschaffen, sollte vorab
ein Informationslauf in der oben beschriebenen Weise vorgenommen
werden.
Sequentielle Verdichtungsstufen müssen dann zugewiesen werden,
wenn in ihnen der betreffende Schlüssel ausgeprägt ist.
Existieren auf sequentiellen Datenträgern ASS-Daten infolge
zeitlichen Auslagerns, in denen der vorgesehene Schlüssel
vorkommt, sind zwei Arten des Vorgehens denkbar:
- Die ausgelagerten Daten werden gelöscht. Außerdem wird dem Programm PCL1058 die Vorlaufkartenoption LOESCHEN vorgegeben, wodurch die ausgelagerten Daten dann aus der ASS-Verwaltung (Steuerungsdatenbank) gelöscht werden.
- Die Reorganisation des Schlüssels soll auch für die ausgelagerten Daten durchgeführt werden. In diesem Fall ist es erforderlich, vor der Reorganisation mit PCL1058 die ausgelagerten Daten via PCL1002 in die betreffenden Summendaten oder sequentiellen Verdichtungsstufen einzulagern. Nach der erfolgten Reorganisation können sie dann wieder mit dem Programm PCL1021 ausgelagert werden.
Nach erfolgreichem Abschluss der Prüf- und Kontrollaufgaben
erfolgt die eigentliche Verarbeitung:
An Hand einer programminternen Tabelle werden aus den alten
Summendaten die neuen Summendaten mit den neuen internen Nummern
des Schlüssels erstellt. Das Programm PCL1058 sorgt
dafür, dass die Sortierreihenfolge innerhalb der Summendaten
erhalten bleibt. Somit können die Summendaten mit dem
Programm PCL1002 unter der Option LADEN auf die betreffenden
Summendatenbanken und sequentielle Verdichtungsstufen
geladen werden. Nach dem erfolgreichen Erstellen des
Ladebestandes erfolgt eine entsprechende Änderung der Inhalte
des Schlüssels in der Schlüsseldatenbank.
Diese Änderungen können aber auch über die Vorlaufkartenoption
NUPDAT auf eine sequentielle Datei ausgegeben werden,
um so den eigentlichen UPDATE auf die Schlüsseldatenbank zu
verzögern und später, wenn die Schlüsseldatenbank nicht so
stark von anderen Anwendungen beansprucht wird, über das
Programm PCL1036 nachzuholen. Wird die Option LOESCHEN
angewandt, verursacht PCL1058 die Löschung der
Verwaltungsinformationen für die ausgelagerten Zeiten der Arbeitsgebiete,
die den zu reorgansierenden Schlüssel enthalten. Bei verzögertem
UPDATE über die Vorlaufkartenoption NUPDAT werden die
Löschanweisungen ebenfalls auf eine sequentielle Datei
zwischengespeichert und zu einem späteren, zeitlich besser
geeigneten Zeitpunkt über das Programm PCL1032 auf die
Steuerungsdatenbak angewandt.
Nach jedem Lauf von PCL1058 wird eine Protokolldatei ausgegeben.
Option LOESCHEN: Bearbeitungsvariante bei ausgelagerten Zeiträumen
Die Angabe der Option LOESCHEN bewirkt zusätzlich, dass für ausgelagerte Zeiträume die betreffenden Verwaltungsinformationen der Steuerungs-Datenbank gelöscht werden. Sind ausgelagerte Zeiträume von der Reorganisation des Schlüssels betroffen, ohne dass die Option LOESCHEN angegeben wurde, wird der Programmlauf abgebrochen. Die Option LOESCHEN ist nur wirksam, falls nicht gleichzeitig die Option INFO angegeben wurde.
Option NUPDAT: Verzögerter Update auf die Parameter-DB
Änderungen, die normalerweise direkt auf der Schlüssel-Datenbank und der Steuerungs-Datenbank durchgeführt werden, werden in zwei sequentielle Dateien gestellt. Die Änderungen können verzögert auf die betroffenen Parameter-Datenbanken übernommen werden, indem die Programme PCL1036 und PCL1032 eingesetzt werden.
- Die in der von PCL1058 erzeugten Datei ASSKY enthaltenen Änderungssätze für die Schlüsselinhalte können mit dem Programm PCL1036 eingearbeitet werden.
- Mit dem Programm PCL1032 können die in der Datei ASSUPD enthaltenen Löschungen für ausgelagerte Zeiträume nachgeholt werden.
Zusammenfassung der Optionen im Überblick:
Option | Summensätze | Änderungen auf Datenbanken | Zweck |
---|---|---|---|
INFO | werden nicht alle gelesen (nur bestimmte Kopfsätze) | nein | Testlauf mit sehr kurzer Laufzeit |
ohne Angabe einer Option | werden alle gelesen | ja | Ergebnis als Protokoll, interne Nummern werden korrigiert, allerdings keine ausgelagerten Zeiträume zulässig (ohne NUPDAT: Änderung sofort, sonst verzögert) |
LOESCHEN | werden alle gelesen | ja | Ergebnis als Protokoll, interne Nummern werden korrigiert,
ausgelagerte Zeiträume werden unbrauchbar und
entsprechende Segmente auf Steuerungs-DB gelöscht (ohne NUPDAT: Änderung sofort, sonst verzögert) |
In Ergänzung:
OPTION | BEDEUTUNG |
---|---|
SCHLUESSEL=nnnnn | Angabe des einen Schlüssels, zu dem die Schlüsselinhalte untersucht werden sollen, wobei nnnnn die Schlüsselnummer (mit führenden Nullen) angibt |
NUPDAT | verzögerter Update auf Parameter-DB und Schlüssel-DB |
NOPRUEF | Widersprüche bei den Versionen der Kopfsätze führen nicht zum Programmabbruch |
AUSPR_LIMIT=mmmmm | Das Protokoll über die internen Schlüsselinhaltsnummern wird auf die ersten mmmmm Schlüsselinhalte begrenzt. (Voreinstellung: mmmmm=00000) |
AUSPR_ERGAENZEN |
Es werden nur die fehlenden Schlüsselinhalte
auf der Schlüsseldatenbank
des angegebenen Schlüssels ergänzt.
Es können dabei Schlüssel mit interner
Länge 1 bis 4 verarbeitet werden. Die Ausgabedatei ASSAU muss danach mit PCL1036 auf die Schlüssel-DB gebracht werden. Einschränkung auf ein AG mit AGNR=xxx möglich Die Option gilt nur in der Cobol-Version. |
AGNR=xxx | Durch Angabe einer Arbeitsgebietsnummer (xxx) kann die vorher beschriebene Option auf das angegebene AG eingeschränkt werden. Gilt ebenfalls nur in der Cobol-Version PCL1058. |
BEISPIEL
Für einen Schlüssel PRODUKT hat sich im Laufe der Zeit folgende Situation ergeben:
Interne I Schlüsselinhalt I Kommentar Schlüssel- I I inhaltsnummer I I --------------I------------------------------------ 1 I ART3201 I 2 I ART3532 I 3 I ART4201 I 4 I - (nicht belegt) I gelöscht 5 I - (nicht belegt) I gelöscht 6 I ART4219 I 7 I - (nicht belegt) I gelöscht ... I ... I ... ... I ... I ... ... I ... I ... 247 I ART5721 I 248 I ART6102 I 249 I - (nicht belegt) I gelöscht
Die internen Schlüsselinhaltsnummern 4, 5, 6 ... und 249
waren irgendwann einmal vergeben worden und sind durch
Löschung (z.B. mit Online-Transaktion ST06) nicht mehr
in der Schlüsseldatenbank belegt.
Die nächste interne Schlüsselinhaltsnummer ist
im Beispiel 250. Diese wird von ASS-Programmen für den
nächsten Schlüsselinhalt herangezogen. Die eigentlich
auch freien Nummern 4, 5, 7 ... und 249 können aber ohne
Reorganisation mit dem Programm PCL1058 nicht mehr für
neue Schlüsselinhalte ausgenutzt werden. Sie bleiben trotz
erfolgter Löschung unbelegt. Ausnahme: PCL1001 mit
KEYLUECKE.
In Anwendungen mit sehr dynamischen Schlüsseln, z.B.
Vertriebs- und Organisationseinheiten, bei denen sehr
häufig Schlüsselinhalte wegfallen bzw. mit anderen
Schlüssselinhalten zusammenfallen und diese Änderung
rückwirkend auf sämtliche ASS-Daten durchgeführt werden,
entstehen so z.T. sehr große Lücken im Bereich der internen
Nummern eines Schlüssels. Für diese Fälle ist eine
Reorganisation mit dem Programm PCL1058 in bestimmten
Abständen sinnvoll, um nicht unnötig in den durch die
interne Länge vorgegebenen Grenzbereich der internen
Nummern zu geraten (64000 bei interner Länge 2 und
253 bei Länge 1).
BESONDERHEITEN
Funktion der Datei ASSWK
Die Datei ASSWK wird nur selten benötigt und zwar bestenfalls, wenn zum angegebenen Schlüssel die Dummy-Ausprägung (das ist die Ausprägung, unter der fehlerhafte Ausprägungen der externen Schnittstelle zusammengefasst werden, wenn das Prüf-Kennzeichen bei dem betreffenden Schlüssel auf '1' steht) in den Summensätzen verwendet wird und der Schlüssel die interne Länge 2 besitzt. ASSWK dient intern zur Erhaltung der Sortierreihenfolge auf den Dateien ASSOUnn, wenn beim angegebenen Schlüssel die Dummy-Ausprägung verwendet wird. Die Datei ASSWK nehmen alle Summendatensätze im verdichteten Format auf, in denen die Sammelausprägung zum betreffenden Schlüssel vorkommt. Falls ein Schlüssel einen Eintrag von 1 bei 'Ausprägung prüfen' besitzt, werden bei der Einspeicherung mit PCL1001 die unbekannten Schlüsselinhalte unter der Dummy-Ausprägung zusammengefasst (vgl. Handbuch 'EINRICHTEN EINES ARBEITSGEBIETES', Kap. 3.5.2).
Funktion der Datei ASSAU
In seltenen Fällen findet das Programm PCL1058 während des Reorganisationslaufes in den Summendatensätzen interne Nummern zu den Inhalten des zu reorganisierenden Schlüssels, zu denen keine Schlüsselinhalte auf der Schlüsseldatenbank existieren. Dann steuert das Programm Definitionssätze für diese verlorenen Schlüsselinhalte auf die Datei ASSAU aus. Das Protokoll informiert über die für eine Neuanlage vorgesehenen Ausprägungen der Datei ASSAU. In diesem Sonderfall sollte zur AP-Übermittlung übergegangen werden. In die Datei ASSAU werden die Ausprägungen stets in der Länge 8 ausgegeben unabhängig von der externen Länge des Schlüssels.
6 Maschinelle Pflege der Parameterdatenbanken (Werte-, Schlüssel- und Steuerungsdatenbank)
6.1 Überflüssige Schlüsselausprägungen löschen PCL1055
FUNKTIONSBESCHREIBUNG
Durch sachliche Veränderungen im Arbeitsgebiet ergibt sich oft die Tatsache, dass bestimmte Schlüsselausprägungen zu einem Schlüssel nicht mehr gebraucht werden. Vor allem bei einer größeren Anzahl von Ausprägungen kann es sehr mühsam sein, diese überflüssigen Ausprägungen mittels ST06 zu bereinigen.
Mit Hilfe des Programms PCL1055 kann zu einem anzugebenden Schlüssel geprüft werden, ob Ausprägungen in der
- Schlüsseldatenbank ( Ausprägungen u. Gruppierungen )
- Steuerungsdatenbank ( Schlüsselausschluss )
vorkommen, die weder in den Verdichtungsstufen der Summendatenbanken noch in sequentiellen Verdichtungsstufen zu finden sind.
Je nach Vorlaufkartenoption kann PCL1055 mit verschiedenen Verarbeitungsstufen gestartet werden:
- Informationslauf ohne schreibende Zugriffe auf die Datenbanken (Programmlauf mit Option INFO)
- Programmlauf zur Erstellung eines Protokolls, mit dem der Benutzer nach eigenem Ermessen selbst Ausprägungen mit der Dialogwendung ST06 löschen kann (Programmlauf ohne Angabe einer Option)
- Löschen aller überflüssigen Ausprägungen durch das Programm (Programmlauf mit Option LOESCHEN)
- Reservieren der betroffenen Arbeitsgebiete (Programmlauf mit Option RESERVIEREN)
- Freigeben der betroffenen Arbeitsgebiete (Programmlauf mit Option FREIGEBEN)
- Löschen aller überflüssigen Ausprägungen durch das Programm, mit vorangehendem Reservieren der benötigten Arbeitsgebiete und deren anschließender Freigabe (Programmlauf mit Option RESERVLOESCH) Durch die Reservierung der benötigten Arbeitsgebiete wird verhindert, dass andere Programme auf diese Arbeitsgebiete zugreifen können. Beispielsweise ist bis zur Aufhebung der Reservierung keine Einspeicherung möglich.
Hinweis: Seit ASS 8.00 ist der Einsatz von PCL1055 auch für Massenschlüssel (interne Länge 3 oder 4) zulässig.
ABLAUF
Datenflussplan
Dateibeschreibung
Nummer | Datei | Bezeichnung | Dateiname ASS-PC |
---|---|---|---|
1 | SCHLUESSEL-DB | DST002 DST021 (nur DLI) DST022 (nur DLI) DST023 (nur DLI) |
$ASSDB/DST002 |
2 | STEUERUNGS-DB | DST003 DST031 (nur DLI) DST032 (nur DLI) DST033 (nur DLI) |
$ASSDB/DST003 |
3 | SUMMEN-DB | DST110 DST111 (nur DLI) ... DST600 DST601 (nur DLI) Die Summendatenbanken, in denen der angegebene Schlüssel nicht vorkommt, brauchen nicht zugewiesen werden. |
$ASSDB/DSTxxx |
4 | VERDICHTUNGS-STUFEN AUF SEQ. DATENTRAEGER | ASSCV01 ... ASSCV99 ASSC100 ... ASSC200 ASSCV01 gehört zu Arbeitsgebiet 1, ... ASSCV99 gehört zu Arbeitsgebiet 99, ASSC100 gehört zu Arbeitsgebiet 100 ... ASSC500 gehört zu Arbeitsgebiet 500 Dabei sind alle Verdichtungsstufen des betreffenden Arbeitsgebietes in der einen (betreffenden) ASSCV-Datei bei der Zuweisung aneinanderzuhängen. Verdichtungsstufen von Arbeitsgebieten, in denen der angegebene Schlüssel nicht verwendet wird, brauchen nicht zugewiesen werden. |
$ASSDB/ASSCVnn |
5 | VORLAUFKARTE | ASSCO | $ASSVLK/T1055.VLK |
6 | Datei der gelöschten Ausprägungen in SST013SA | ASSINKY (kann als Eingabe für PCL1036 benutzt werden) Format: VB LRECL=1000 |
$ASS/ASSINKY |
7 | Datei der zu ändernden Gruppierungen in SST014GZ | ASSINGR (kann als Eingabe für PCL1036 benutzt werden) Format: VB LRECL=1000 |
$ASS/ASSINGR |
8 | VERARBEITUNGS-PROTOKOLL | PROTO (Format: LRECL=133 F CTLASA) |
$ASSPTK/PCL1055.PTK |
VORLAUFKARTE
Aufbau der Vorlaufkarte (allgemein)
INHALT | BEDEUTUNG |
---|---|
PROGRAMM PCL1055 | Angabe des Programms |
SCHLUESSEL=nnnnn | Angabe der Schlüsselnummer, zu der die Schlüsselausprägungen untersucht werden sollen (mit führenden Nullen) |
INFO | Informationslauf Von den relevanten Verdichtungsstufen werden nur die Kopfsätze gelesen |
ohne Option | weder INFO noch LOESCHEN Alle relevanten Verdichtungsstufen werden gelesen mit Übersicht der Verwendung der Schlüsselinhalte (siehe AUSPR_LIMIT und AUSPR_LIMIT_DEL) Es erfolgt keine Datenbankänderung |
RESERVIEREN | Reservieren aller benötigten Arbeitsgebiete |
FREIGEBEN | Freigeben aller benötigten Arbeitsgebiete |
LOESCHEN | Löschen aller überflüssigen Ausprägungen nachdem alle relevanten Verdichtungsstufen gelesen wurden |
RESERVLOESCH | Löschen aller überflüssigen Ausprägungen, die betroffenen Arbeitsgebiete werden vorher reserviert und hinterher wieder freigegeben |
NOGRUP | Ausprägungen in Gruppierungen werden nicht gelöscht |
AUSPR_LIMIT=nnnnnn | Das Protokoll über die Ausprägungen, die nicht gelöscht wurden und auch nicht zur Löschung vorgeschlagen werden, wird auf die ersten nnnnnn Ausprägungen begrenzt. (Voreinstellung: keine Begrenzung) |
AUSPR_LIMIT_DEL=nnnnnn | Wie AUSPR_LIMIT, aber für Ausprägungen, die gelöscht wurden oder dafür vorgeschlagen werden |
GUELTIG_BIS<ttmmjj | Nur Ausprägungen können gelöscht werden, deren Gültigkeits-bis-Datum kleiner ttmmjj ist. |
GUELTIG_BIS<MMdd | Wie oben, aber das Datum wird
vom aktuellen Datum aus
berechnet. Dabei sind vom aktuellen Monat dd Monate abzuziehen, und der Tag ist auf 01 zu setzen. Wenn heute z.B. der 13.09.90 ist, so ist die Datums-Angabe MM05 äquivalent zu 010490 . |
Beschreibung der Vorlaufkartenoptionen
Option INFO: Informationslauf
Bei Angabe der Option INFO kann mit PCL1055 ein Testlauf ohne schreibenden Zugriff auf Datenbanken durchgeführt werden. Bei dieser Verarbeitungsoption wird lediglich der 1. Kopfsatz in den Summendatenbanken bzw. sequentiellen Verdichtungsstufen gelesen, nicht aber die vollständigen Summensätze. Diese Informationen aus den Kopfsätzen werden mit der Arbeitsgebietsdefinition in der Steuerungsdatenbank verglichen.
Es ist in jedem Fall sinnvoll, das Programm PCL1055 vorab als Kontrolle mit der Option INFO laufen zu lassen, um mit diesem Programmlauf folgende wichtige Informationen protokollieren zu lassen:
- In welchen Arbeitsgebieten wird der Schlüssel verwendet ?
- Zu welchen Arbeitsgebieten müssen Summen-Datenbanken gelesen werden ?
- Zu welchen Arbeitsgebieten müssen sequentielle Verdichtungsstufen gelesen werden ?
- Welche Arbeitsgebiete sind ungeprüft oder fehlerhaft ?
- Welche Arbeitsgebiete sind nicht ordnungsgemäß reserviert ?
- Welche Ausprägungen existieren zum ausgewählten Schlüssel auf der Schlüsseldatenbank ?
- Welche Ausprägungen in Gruppierungen und Schlüsselausschlüssen sind bereits beim Zeitpunkt des Programmlaufes überflüssig ?
- Wo treten bei der Kontrolle der Summenkopfsätze Fehler auf? Auf diese Weise lassen sich Fehler in der JCL erkennen. Falls PCL1055 hierzu Fehlermeldungen ausgibt, ist die JCL sorgfältig zu kontrollieren, bevor PCL1055 mit der Option LOESCHEN eingesetzt wird.
Bemerkungen:
Weil bei der Vorab-Prüfung unter dieser Option zu jeder
Datei (ASSCV- oder DST...-Datei) nur der erste Satz gelesen
wird, wird bei jeder sequ. Verdichtungsstufe (ASSCV-Datei)
jeweils nur der Kopfsatz der ersten Verdichtungsstufe
gelesen und kontrolliert.
Es ist möglich, die Option INFO gemeinsam mit der Option
RESERVIEREN aufzurufen.
Ohne Option: Erstellen Löschprotokoll für ST06
Wird keine Option gesetzt, werden zusätzlich (im Vergleich zur Option INFO) sämtliche Kopf- und Summensätze gelesen und kontrolliert. Abweichungen werden als Warnung protokolliert. Ebenfalls protokolliert werden betroffene Arbeitsgebiete, die nicht von PCL1055 mit dem angegebenen Schlüssel reserviert wurden.
Durch das vollständige sequentielle Lesen der Dateien verlängert sich die Programmlaufzeit je nach Umfang der vorhandenen Summendaten um ein Vielfaches. Jedoch werden am Ende der Verarbeitung auch in diesem Fall keine schreibenden Zugriffe auf die Schlüssel- und Steuerungsdatenbank durchgeführt.
Ein Programmlauf mit PCL1055 ohne Angabe einer Option bietet sich an, wenn Fehler in der JCL mit absoluter Gewissheit auszuschließen sind, die Löschungen der überflüssigen Ausprägungen jedoch nach Beurteilung des Ergebnisprotokolls in eigenem Ermessen mittels ST06 durchgeführt werden sollen. Bei dieser Variante ist Vorsicht und größte Sorgfalt bei der Zuweisung der Dateien in der JCL zu verwenden, um unerwünschte Ergebnisse zu vermeiden.
Das Verfahren, das für Löschungen von Ausprägungen unter dieser Option durchzuführen ist, ist wesentlich zeitaufwendiger und gliedert sich in folgende Punkte, die nacheinander auszuführen sind (vgl. auch Handbuch 'EINRICHTEN EINES ARBEITSGEBIETES IM DIALOG'):
- Vor dem Programmlauf sollten auf jeden Fall Sicherungen der Arbeitsgebiete (PCL1004) vorgenommen werden. (Weitere Sicherungen durch PCL1055 siehe 'BEMERKUNGEN').
- Programmlauf PCL1055 zum angegebenen Schlüssel (ohne Angabe einer Option).
- Löschungen der Ausprägungen mittels ST06 (optional). Schlüsselausprägungen werden in der Maske 'VS013' mit Masterpasswort und Befehl DEL gelöscht.
- Die interne Verarbeitungsweise von PCL1055 verlangt einen zweiten Programmlauf mit der Option INFO, um Informationen für die nachfolgenden Schritte 5. und 6. zu erhalten.
- Löschungen der Gruppierungs-Ausprägungen mittels ST06 (optional) in der Maske 'VS015' mit DEL und Masterpasswort.
- Löschungen der Ausprägungen beim Schlüsselausschluss mittels ST06 in der Maske 'VS022' durch Überschreiben mit Punkten.
Option LOESCHEN: Löschen aller überflüssigen Ausprägungen
Bei Angabe der Option LOESCHEN werden die nicht benutzten Schlüsselausprägungen direkt von PCL1055 aus den jeweiligen Segmenten der Schlüssel- und Steuerungsdatenbank gelöscht.
Wird zusätzlich der Parameter 'NOGRUP' angegeben, werden Schlüsselgruppierungen von PCL1055 nicht verarbeitet. Ist ein betroffenes Arbeitsgebiet nicht von PCL1055 für den angegebenen Schlüssel reserviert worden, erfolgt die Ausgabe einer Protokollmeldung. Bei dieser Verarbeitungsoption ist kein weiterer manueller Eingriff mit ST06 erforderlich.
Option GUELTIG_BIS< : Maximales Gültigkeitsdatum
Es werden nur die Ausprägungen zum Löschen zugelassen, die zum angegebenen Datum nicht mehr gültig sind. Ist eine Schlüsselausprägung gültig von 010101 und im BIS-Feld ist nichts angegeben (Blank), so gilt diese Ausprägung als maschinell erzeugt und zum angegebenen Datum als nicht mehr gültig, d.h. sie wird ebenfalls gelöscht.
Option RESERVIEREN:
Bei Angabe der Option RESERVIEREN werden alle Arbeitsgebiete, in denen der Schlüssel verwendet wird, reserviert. Vorausgesetzt, diese Arbeitsgebiete sind geprüft und fehlerfrei. Ist ein Arbeitsgebiet bereits durch ein anderes Programm reserviert dann wird die bestehende Reservierung belassen und eine Protokollmeldung ausgegeben. Die Option RESERVIEREN kann auch in Verbindung mit der Option INFO benutzt werden.
Option FREIGEBEN:
Bei Angabe der Option FREIGEBEN wird für alle benötigten Arbeitsgebiete die Reservierung zurückgenommen. Das heißt, dass das Prüfkennzeichen wieder auf Ja gesetzt wird.
Option RESERVLOESCH:
Die Option RESERVLOESCH ist als Kombination der Optionen RESERVIEREN, LOESCHEN und FREIGEBEN zu verstehen. Zunächst wird versucht, die Arbeitsgebiete in denen der in der Vorlaufkarte genannte Schlüssel vorkommt, zu reservieren. Ist dies nicht möglich, weil eines dieser Arbeitsgebiete bereits reserviert ist, wird die Weiterverarbeitung nach dem Reservieren beendet.
Andernfalls werden die nicht benutzten Schlüsselausprägungen direkt von PCL1055 aus den jeweiligen Segmenten der Schlüssel- und der Steuerungsdatenbank gelöscht. Wird zusätzlich der Parameter 'NOGRUP' angegeben, werden Schlüsselgruppierungen von PCL1055 nicht verarbeitet.
Bei dieser Verarbeitungsoption ist kein weiterer manueller Eingriff mit ST06 erforderlich. Nach Abschluss der Löscharbeiten werden die zu Beginn reservierten Arbeitsgebiete wieder freigegeben, also das Geprüftkennzeichen auf Ja gesetzt.
Option GUELTIG_BIS< : Maximales Gültigkeitsdatum
Es werden nur die Ausprägungen zum Löschen zugelassen, die zum angegebenen Datum nicht mehr gültig sind. Ist eine Schlüsselausprägung gültig von 010101 und im BIS-Feld ist nichts angegeben (Blank), so gilt diese Ausprägung als maschinell erzeugt und zum angegebenen Datum als nicht mehr gültig, d.h. sie wird ebenfalls gelöscht.
Zusammenfassung der Optionen im Überblick
Option | Summensätze | Löschen auf Datenbanken | Zweck |
---|---|---|---|
INFO | werden nicht alle gelesen (nur bestimmte Kopfsätze) | nein | Testlauf mit sehr kurzer Laufzeit, um einen groben Überblick zu gewinnen. |
ohne Option | werden alle gelesen | nein | Erstellung eines verfeinerten Löschprotokolls. Die Löschung selbst erfolgt mit ST06. |
LOESCHEN | werden alle gelesen | ja | Löschung aller überflüssigen
Schlüsselausprägungen
zu einem Schlüssel. Dabei ist kein Eingriff mit ST06 erforderlich. |
RESERVIEREN | nein | Reservieren betroffener Arbeitsgebiete | |
FREIGEBEN | nein | Freigeben von Arbeitsgebieten, die benötigt würden | |
RESERVLOESCH | werden alle gelesen | ja | benötigte Arbeitsgebiete werden zunächst reserviert und abschließend freigegeben sonst wie LOESCHEN |
,NOGRUP | Gruppierungen werden nicht verarbeitet | ||
GUELTIG_BIS< | Selektion der Ausprägungen nach Gültigkeitsdatum |
PROTOKOLL
PCL1055 erstellt bei allen Verarbeitungsoptionen ein umfangreiches Protokoll, dessen einzelne Übersichten nachfolgend beschrieben werden. Einige Übersichten ( Gruppierungen, Schlüsselausschluss ) erscheinen natürlich nur, wenn die entsprechenden Merkmale vorhanden sind.
Übersicht über zu löschende Ausprägungen:
Die Ausprägungen aus der Schlüssel-Datenbank werden vollständig nach Namen und interner Nummer KEVINH protokolliert.
Die Spalte ZUSTAND hat in Abhängigkeit von der Verarbeitungsoption folgende Bedeutung:
INFO:
- JA
Schlüsselausprägung ist in der Schlüssel-DB vorhanden - ERR
Fehler in der Schlüssel-DB aufgetreten (evtl. nach Löschen mit ST06).
LOESCHEN / GUELTIG_BIS< / ohne Option:
- KEEP
Die Schlüsselausprägung wurde in mindestens einem Summensatz gefunden und wird deswegen nicht gelöscht. - DEL
Die Schlüsselausprägung wurde in keinem Summensatz gefunden. Sie kann entweder durch Angabe der Option LOESCHEN oder mit ST06 gelöscht werden. - DAT
Die Schlüsselausprägung wurde in keinem Summensatz gefunden. Ihr Gültigkeits-bis-Datum ist jedoch nicht kleiner als das bei der Option GUELTIG_BIS< angegebene.
Übersicht über Schlüsselausschluss:
In dieser Übersicht werden alle Änderungen zu bestehenden Schlüsselausschlüssen in der Steuerungsdatenbank aufgelistet. Es werden alle Ausprägungen mit Angabe des betreffenden Arbeitsgebietes angezeigt, die vom Programm PCL1055 gelöscht wurden (LOESCHEN) bzw. gelöscht würden (ohne Option/INFO).
Falls auf diese Weise alle der maximal 27 Ausprägungen zu einem Schlüsselausschluss wegfallen, wird das gesamte Segment gelöscht und ein Fehlerhinweis ausgegeben. Im Arbeitsgebiet sind nun alle Schlüsselinhalte des betreffenden Schlüssels zugelassen. Es ist evtl. notwendig, den Schlüsselausschluss mittels ST06 in einer sinnvollen Weise neu einzurichten.
Übersicht über Gruppierungen:
In dieser Übersicht werden alle Änderungen zu bestehenden Schlüsselgruppierungen in der Schlüsseldatenbank aufgelistet. Es werden alle Ausprägungen mit Angabe der betreffenden Gruppierung angezeigt, die vom Programm PCL1055 gelöscht wurden (LOESCHEN) bzw. gelöscht würden (ohne Option/INFO). Wird in Verbindung mit der Option LOESCHEN der Parameter NOGRUP angegeben, unterbleibt diese Übersicht.
Übersicht der Suche bei Arbeitsgebieten:
Die Arbeitsgebiete aus der Steuerungs-Datenbank werden vollständig nach Nummer und Abkürzung aufgelistet. Zu jedem Arbeitsgebiet wird protokolliert, ob der angegebene Schlüssel im Arbeitsgebiet verwendet wird und ob zu diesem Arbeitsgebiet eine Datenbank oder sequentielle Verdichtungsstufen gefunden wurden.
Die Inhalte der einzelnen Spalten haben folgende Bedeutung:
- JA
vorhanden bzw. gefunden - NEIN
nicht vorhanden oder nicht angegeben - ????
unbekannt (meist Verdichtungsstufe, die nicht aktiv und gleichzeitig komprimiert ist) - ERR
Fehler aufgetreten, Unstimmigkeiten führen u.U. zur Programmbeendigung mit entsprechender Fehlermeldung, wobei folgende Fälle denkbar sind:- falsche Arbeitsgebietsnummer in Steuerungs-DB.
- Schlüssel in der Steuerungs-DB des betreffenden AG's wurden in der Schlüssel-DB nicht gefunden.
- Fehler bei der Prüfung der Summenkopfsätze
- das Arbeitsgebiet ist ungeprüft
- ----
nicht gefunden
Übersicht gelesener Summensätze:
Die Arbeitsgebiete aus der Steuerungs-Datenbank werden vollständig nach Nummer und Abkürzung aufgelistet. Zu jedem Arbeitsgebiet wird protokolliert, wieviele Summensätze von PCL1055 gelesen wurden. Da bei der Option INFO nur Kopfsätze gelesen werden, sind die Zahlen in dem Fall natürlich entsprechend gering.
Für das Lesen der Summensätze in der Datenbank oder sequ. Verdichtungsstufe müssen folgende Voraussetzungen erfüllt sein:
- Im Arbeitsgebiet wird der in der Vorlaufkarte angegebene Schlüssel verwendet.
- Das Arbeitsgebiet ist geprüft.
- Das Arbeitsgebiet besitzt ein Datum der ersten Einspeicherung.
End-Übersicht:
In der End-Übersicht werden zusätzliche Informationen zum Programmlauf von PCL1055 ausgegeben.
BESONDERHEITEN
Sicherungen durch PCL1055
Neben umfangreichen Prüfungen im Programm kann die Datensicherheit bei einem Einsatz von PCL1055 durch weitere Maßnahmen verbessert werden.
Als Vorsichtsmaßnahme sollte vor dem Löschen mittels Option LOESCHEN oder Dialoganwendung ST06 in jedem Fall ein Programmlauf mit der Option INFO durchgeführt werden, um zu prüfen, in welchen Arbeitsgebieten der angegebene Schlüssel vorkommt. So kann man gezielte Arbeitsgebietssicherungen mit PCL1004 anlegen, mit denen bei unerwünschten Ergebnissen die Arbeitsgebiete zurückgesetzt werden können.
Weiteres Hilfsmittel kann PCL1006 ('Dokumentation von Arbeitsgebieten') sein, dass wahlweise vor und nach dem Lauf von PCL1055 einzusetzen ist. PCL1055 schreibt zusätzlich bei allen Verarbeitungsvarianten die Informationen zu gelöschten Ausprägungen und betroffenen Gruppierungen in die Dateien ASSINKY und ASSINGR. Diese Dateien können vom Programm PCL1036 verwendet werden, um die Änderungen auf der Schlüssel-Datenbank rückgängig zu machen.
6.2 Laden von Schlüsselausprägungen/-gruppierungen aus einer sequentiellen Datei PCL1036
FUNKTIONSBESCHREIBUNG
Mit dem Programm PCL1036 wurde eine Möglichkeit geschaffen, Schlüsselausprägungen bzw. -gruppierungen aus einer sequentiellen Datei in die Schlüssel-DB zu laden. Diese Datei kann über selbst zu erstellende Programmroutinen aus bereits vorhandenen, ASS-fremden Datenbeständen versorgt werden.
Natürlich ist die Erstellung einer solchen Datei auch mit einem Texteditor möglich. Die Behandlung des Satzlängenfeldes sowie die Durchführung binärer Eingaben ist entsprechend der Handhabungsregeln des eingesetzten Editors vorzunehmen.
Auf diese Weise ist es möglich,
Schlüsselinhaltsbezeichnungen und -kurzbezeichnungen,
Gültigkeitsbereich von Ausprägungen beziehungsweise
Gruppierungselemente maschinell zu ergänzen und zu pflegen.
Die bei der Einspeicherung automatisch ergänzten
Ausprägungen können via PCL1036 aktuell textiert werden.
Wird eine der beiden Dateien bei einem Lauf von PCL1036 nicht
benötigt, so ist sie in der Job-Control auf Dummy zu setzen.
PCL1036 kann außerdem dazu verwendet werden, alle Ausprägungen
und Gruppierungen zu vorgegebenen Schlüsseln zu
löschen. ( Siehe 6.3 )
ABLAUF
Einsatzmöglichkeiten von PCL1036
Schlüsselausprägungen:
- noch nicht existierende Ausprägungen werden in die Schlüssel-DB neu aufgenommen.
- bei bereits existierenden Ausprägungen werden Schlüsselinhaltsbezeichnung und -kurzbezeichnung in der Schlüssel-DB durch die Daten aus der sequentiellen Datei überschrieben. Der Gültigkeitsbereich der Ausprägung kann dabei vergrößert werden.
- für die erweiterte Security das Feld der übergeordneten Ausprägung versorgen.
- sämtliche Ausprägungen und Gruppierungen zu einem Schlüssel können gelöscht werden. (siehe entsprechende Funktion in der ST06)
Schlüsselgruppierungen:
- nur mit Nummer und Bezeichnung in der ST06 definierte Gruppierungen neu besetzen.
- bereits bestehende Schlüsselgruppierungen entsprechend der in der Datei ASSINGR vorgenommenen Definitionen modifizieren.
Der formale Aufbau der sequentiellen Dateien ist vorgegeben.
Schlüssel, zu denen Ausprägungen mit PCL1036 hinzugefügt/
fortgeschrieben werden sollen, müssen vorher im Dialog (ST06)
angelegt worden sein (natürlich nur die Schlüsselbeschreibungen
und nicht die Ausprägungen).
Dies gilt analog auch für die Gruppierungen.
Datenflussplan
1 Schlüssel-DB //DST002 //DST021 (DLI) //DST022 (DLI) //DST023 (DLI) $ASSDB/DST002 (PC) 2 Eingabedateien //ASSINKY (binär) //ASSINGR (binär) $ASS/ASSINKY (PC) $ASS/ASSINGR (PC) oder //ASSIN (Text) $ASS/ASSINKY (PC) 3 Vorlaufkarte //ASSCO $ASSVLK/T1036.VLK 4 Ablaufprotokoll //PROTO $ASSPTK/PCL1036.PTK |
Vorlaufkarte:
Die Optionen müssen in den ersten 72 Spalten erfolgen und
werden gegebenenfalls durch Kommata getrennt.
- KY_INIT = n
siehe unter "Löschen aller Ausprägungen und Gruppierungen zu einem ausgewählten Schlüssel" - NUR_ABGLEICH
Es werden nur bestehende Ausprägungen auf der Schlüsseldatenbank geändert - NUR_EINFUEGEN
Es werden nur neue Ausprägungen in die Schlüsseldatenbank eingefügt - UEBERLESEN
In der Schlüsseldatenbank nicht vorhandene Ausprägungen innerhalb einer Gruppierung werden entfernt. - KY
Muss angegeben werden, wenn die Datei ASSINKY (binär) verarbeitet werden soll. - GR
Muss angegeben werden, wenn die Datei ASSINGR (binär) verarbeitet werden soll. - KY_TEXT
Muss angegeben werden, wenn ASSIN (DD/Link-Name) oder ASSINKY (Datei) im Textformat verarbeitet werden soll. - UEBERNEHMEN
Bezeichnung = SPACES oder Abkürzung = SPACES werden übernommen (vergleiche Satzart BA). Diese Option wirkt nur in Verbindung mit der Option KY_TEXT. Mit ASS 8.60 ist diese Option auch für das PL/I-Format möglich. - FB
Die Eingabedatei wird im festgeblockten Format erwartet. - AU_OPT
Nur für ASS-ISAM DST002, sonst ohne Wirkung. Unter ASS-ISAM werden letzte Schlüsselinhalte eingefügt damit die DST002 weniger fragmentiert. Im Protokoll steht die Anzahl unter SCHLUESSEL OPTIMIERT. Danach sollte die DST002 mit PCL1087 reorganisiert werden. Nach PCL1005 mit der Option ERSETZ muß diese Eigenschaft ggf. erneuert werden.
Kommen die Daten für PCL1036 aus einem anderen Betriebssystem als dem, unter dem PCL1036 läuft, so können diese Daten in das gewünschte Zielsystem übersetzt werden. Folgende Angaben sind möglich:
- BS2000_MVS : BS2000-EBCDIC -> MVS-EBCDIC
- BS2000_ANSI : BS2000-EBCDIC -> ANSI (Unix)
- MVS_BS2000 : MVS-EBCDIC -> BS2000-EBCDIC
- MVS_ANSI : MVS-EBCDIC -> ANSI (Unix)
- OS2_ANSI : Windows -> ANSI (Unix)
Datei - Beschreibung
Beschreibung der Eingabedatei für Ausprägungen
Job Control:
DD/Link-Name : ASSINKY,
Satzform = VB (IBM) / V (Siemens),
Länge = 200
Satzaufbau des Datenteils: (Feldbeschreibung nach PLI)
KENR BIN FIXED(15), Schlüsselnummer KEINH CHAR(12), Ausprägung KEKBEI CHAR(6), Kurzbezeichnung der Ausprägung KEBEZI CHAR(20), Langbezeichnung der Ausprägung KEAUUE CHAR(12), Leerzeichen TYP CHAR(1), Verarbeitungstyp KEGAB CHAR(6), Gültigkeitsbeginn der Ausprägung in der Form TTMMJJ KEGBIS CHAR(6), Gültigkeitsende der Ausprägung in der Form TTMMJJ oder Leerzeichen ART CHAR(1), reserviert KEVINH BIN FIXED(15), reserviert KENXNR BIN FIXED(15); reserviert
Die obige Struktur inklusive dem Satzlängenfeld SL ist auch in dem PL/I-Include SST1129 enthalten.
Die Felder KENR, KEINH, KEKBEI und KEBEZI sind Mussfelder. Bei der erweiterten Security (gekennzeichnet durch die Typ-Angabe #) können die Felder KEKBEI und KEBEZI auch mit Leerzeichen gefüllt werden, falls die Ausprägung schon existiert und die Bezeichnung nicht mehr geändert werden soll.
Hinweis:
Für jeden Satz sind die Felder in Abhängigkeit
von der Satzlänge (Feld SL) zu belegen. Zum Beispiel
sind bei einer Satzlänge von 65 (PL/I, also SL = 65,
für Assembler 69) die Felder KENR, KEINH, KEKBEI,
KEBEZI, KEAUUE, TYP, KEGAB und KEGBIS zu versorgen.
Das Feld KEAAUUE ist nur bei der erweiterten Security (gekennzeichnet durch die Typ-Angabe #) erforderlich oder falls der Gültigkeitsbereich gesetzt werden soll.
Die Felder TYP, KEGAB und KEGBIS sind für die Angabe des Gültigkeitsbereiches vorgesehen.
Ist die angegebene Ausprägung nicht auf der Schlüsseldatenbank enthalten, so wird diese eingefügt, andernfalls wird die Bezeichnung geändert und der Gültigkeitszeitraum angepasst. Falls das Feld TYP dabei erforderlich ist, ist dieses mit Leerzeichen zu füllen.
ACHTUNG:
Die Felder ART, KEVINH und KENXNR sind für ASS reserviert.
Wird die Satzlänge so groß angegeben, dass eines der Felder
im Satz enthalten ist, so muss ART mit einem Leerzeichen
besetzt werden.
Die Satzlänge sollte so klein wie möglich gewählt werden,
denn diese bestimmt, welche Felder übernommen werden.
Restriktion:
Es ist nicht möglich, den Gültigkeitsbereich einer Ausprägung
zu verkleinern.
Sollen sämtliche Ausprägungen und Gruppierungen zu einem Schlüssel gelöscht werden, so ist KENR auf die Schlüsselnummer, die Felder KEINH, KEKBEI, KEBEZI und KEAUUE auf Leerzeichen, TYP auf D und die Satzlänge SL auf 53 (PL/I, 57 für Assembler) zu setzen. Diese Funktion ist alternativ über Vorlaufkarte ausführbar.
Die Ausprägungen zu einem Schlüssel darf man nur löschen, wenn dieser in keiner eingespeicherten Verdichtungsstufe irgend eines Arbeitsgebietes enthalten ist. Dies hat folgenden Grund: Fügt man anschließend die Ausprägungen wieder ein, so wird der verdichtete Inhalt (siehe Maske VS012 der ST06) neu gesetzt; das Ergebnis jeder folgenden Auswertung ist damit undefiniert. Die Funktion des Löschens ist nur für den Fall gedacht, in dem das Löschen via ST06 wegen zu vieler Ausprägungen unmöglich ist.
BEISPIEL: Ausprägungen
(Die Versorgung des Schlüssellängenfeldes wird hier im Beispiel vom Editor automatisch übernommen) Zum Schlüssel 1 soll eine Ausprägungen über PCL1036 textiert werden. Die erste der beiden folgenden Zeilen bietet eine Spaltennummerierung als Orientierungshilfe. Den eigentlichen Satz enthält die zweite Zeile:
123456789012345678901234567890123456789012345678901234
01AUSPRAEGUNG1AUSPR1ERSTE_AUSPRAEGUNG
Achtung:
KENR ist das erste echte Feld im Satz. Es schließt
direkt an das übliche Satzlängenfeld an, das bekanntlich
4 Byte lang ist.
Wenn möglich, sollten die Schlüsselausprägungen des
gleichen Schlüssels unmittelbar hintereinander gestellt
werden. Dadurch wird ein günstiges Laufzeitverhalten von
PCL1036 erreicht.
Beschreibung der Eingabedatei für Ausprägungen
Job Control:
DD/Link-Name : ASSINKY,
Satzform = VB (IBM) / V (Siemens),
Länge = 1000
Satzaufbau des Datenteils:
SA-KZ PIC X(02). SA PIC X(02). KENR PIC S9(04) COMP. KELFDNR PIC S9(04) COMP. KEINH PIC X(60). KEVINH PIC S9(04) COMP. KEKBEI PIC X(06). KEBEZI PIC X(20). KEAUUE PIC X(12). KEGAB PIC X(06). KEGBIS PIC X(06). KENXNR PIC S9(04) COMP.
Beschreibung der Felder:
- SA-KZ:
Existiert aus Kompatibilitätsgründen mit alten Formaten und muss mit HIGH-VALUES besetzt werden. - SA:
Satzart. Erlaubte Satzarten sind 'BA', 'BZ', 'IN' und 'UU'. - KENR:
Schlüsselnummer des zu bearbeitenden Schlüssels. Muss immer besetzt werden. - KELFDNR:
Nur für internen Gebrauch. Muss nicht versorgt werden. - KEINH:
Ausprägung. - KEVINH:
Nur für internen Gebrauch. Muss nicht versorgt werden. - KEKBEI:
Kurzbezeichnung der Ausprägung. - KEBEZI:
Langbezeichnung der Ausprägung. - KEAUUE:
Wird nur bei Satzart 'UU' benötigt. - KEGAB:
Gültigkeitsbeginn der Ausprägung in der Form TTMMJJ - KEGBIS:
Gültigkeitsende der Ausprägung in der Form TTMMJJ oder Leerzeichen. - KENXNR:
Nur für internen Gebrauch. Muss nicht versorgt werden.
Bei Satzart 'BZ' werden Ausprägungen zum Schlüssel mit
Schlüsselnummer KENR nachgetragen. Neben SA-KZ, SA und KENR
müssen die Felder KEINH, KEKBEI, KEBEZI, KEGAB und KEGBIS
versorgt werden. Falls keine Einschränkung des
Gültigkeitszeitraumes gewünscht wird, sollten für KEGAB '010101' und
für KEGBIS Leerzeichen eingesetzt werden.
Satzart 'IN' dient zum Initialisieren eines Schlüssels. Dabei
werden alle Ausprägungen des Schlüssels mit der Schlüsselnummer
KENR gelöscht.
Satzart 'UU' dient der erweiterten Security. Dabei können die
Felder KEKBEI und KEBEZI auch mit Leerzeichen gefüllt werden,
falls die Ausprägung schon existiert und die Bezeichnung nicht
mehr geändert werden soll. KEAUUE wird übernommen.
Die Satzart 'BA' dient zum Einfügen und Ändern von
Ausprägungen zum Schlüssel KENR. Neben SA-KZ, SA und KENR
müssen die Felder KEINH, KEKBEI und KEBEZI versorgt werden.
Die restlichen Felder werden auf den entsprechenden Initialwert
gesetzt: KEAUUE und KEGAB auf Leerzeichen und KEGBIS auf
'010101'. Im Gegensatz zur Satzart 'BZ' dürfen die Felder
KEKBEI und KEBEZI auch nur Leerzeichen enthalten.
Beschreibung der Eingabedatei für Gruppierungen
Job Control:
DD/Link-Name : ASSINGR,
Satzform = VB (IBM) / V (Siemens),
Länge = 200
Satzaufbau des Datenteils: (Feldbeschreibung nach PLI)
KENR BIN FIXED(15), /* Schlüsselnummer */ KEGRNR BIN FIXED(15), /* Gruppierungsnummer */ SA BIN FIXED(15), /* Satzart */ KEINH CHAR(12); /* Inhalt */
Für die Datei ASSINGR stehen vier Satzarten zur Verfügung. Das Inhaltsfeld ist abhängig von der Satzart:
Satzart | Inhalt | Bedeutung |
---|---|---|
0 | Leerzeichen | Beginn der Gruppierung (Kopfsatz) |
1 | Ausprägung | |
2 | 1 - 10 Sterne | Summenanforderung |
3 | PRUEF bzw. PRUEFOV | Ende der Gruppierung (Endesatz) Muss vorhanden sein, löst Prüfung aus. PRUEF(OV) analog ST06 |
BEISPIEL: Gruppierungen
Die Versorgung des Schlüssellängenfeldes wird hier im Beispiel vom Editor automatisch übernommen. Die erste Gruppierung des Schlüssels 1 enthalte drei Ausprägungen, wobei vor und nach der dritten Ausprägung eine Summenbildung angefordert wird:
Spaltenübersicht: | 123456789012345678 |
---|---|
1. Satz | 010100 |
2. Satz | 010101AUSPRAEGUNG1 |
3. Satz | 010101AUSPRAEGUNG2 |
4. Satz | 010102* |
5. Satz | 010101AUSPRAEGUNG3 |
6. Satz | 010102** |
7. Satz | 010103PRUEF |
Es können natürlich mehrere Gruppierungen auf diese Weise hintereinander angeführt werden.
BESONDERHEIT:
KENR ist das erste echte Feld im Satz. Es schließt direkt an das übliche Satzlängenfeld an, das bekanntlich 4 Byte lang ist.
6.2.1 Laden mithilfe einer Textdatei (Format line-sequential; nur Windows/Unix) PCL1036
Eine Text-Datei (nur lesbare Zeichen) mit Trennsymbolen als Feldtrenner kann zum Laden von Schlüsselausprägungen verwendet werden.
Beachte:
Das Trennsymbol darf in keinem gelieferten Feld vorkommen.
Es kann vorlaufkartenabhängig festgelegt werden.
Satzaufbau (Trennsymbol Semikolon):
- Schlüsselnummer; max. 5-stellige Zahl
- Schlüsselinhalt; max. externe Länge
- Abkürzung; max. 6-stellig
- Bezeichnung; max. 20-stellig
- Gültig ab; Format TTMMJJ
- Gültig bis Format TTMMJJ
- Schlüsselinhalt neu; max. externe Länge, nur bei Option UMBENENNEN (s.u.)
Die Felder Schlüsselnummer und Schlüsselinhalt müssen besetzt werden; alle anderen nicht. Auf Groß/Kleinschreibung ist gegebenenfalls zu achten. Bei Schlüsselinhalt, Abkürzung und Bezeichnung werden angelieferte Blanks übernommen. Hinten wird ggf. mit Blanks aufgefüllt. Falls keine Gültigkeitsdaten angeliefert werden, wird bei neuen Ausprägungen standardmäßig '010101' (=Immer gültig) gesetzt. Wenn bei bestehenden Ausprägungen Gültigkeit, Abkürzung oder Bezeichnung nicht besetzt werden, dann bleibt der Zustand des Feldes auf der Datenbank erhalten.
Beispiel:
Zur Schlüsselnummer 00100 seien nur die Ausprägungen 'INHALT1 ' ' Inhalt 3' vorhanden (externe Länge 9).
Durch folgende Anlieferung wird die 'Bezeichnung1' eingepflegt. Die Gültigkeit der Ausprägung bleibt unverändert. Der Schlüsseinhalt 'inhalt 2 ' wird mit 'Bezeichnung 2' und 'Abk. 2' angelegt; seine Gültigkeit wird nicht beschränkt ('010101'). Bei ' Inhalt 3' wird lediglich die Gültigkeit auf unbeschränkt gesetzt:
100 ;INHALT1 ;;Bezeichnung1 00100;inhalt 2;Abk. 2;Bezeichnung 2; 100; Inhalt 3;;;010101
Vorlaufkarten:
- KY_TEXT
muss angegeben werden für Eingabe-Datei ASSINKY im Text-Format; gleichzeitig darf man nicht 'KY' oder 'FB' angeben. Am Host heißt der DD/Link-Name ASSIN und die Datei kann feste oder variable Länge haben. Die maximale Satzlänge ist 200. - ANSI
bewirkt Umsetzung eines ANSI-Zeichensatzes nach ASCII; die deutschen Umlaute und das 'ß' werden richtig ins ASS übernommen, falls sie im ANSI-Zeichensatz geliefert werden. nur gleichzeitig mit 'TRANSLATE' angeben. - TRANSLATE
bewirkt - falls nicht gleichzeitig 'ANSI' angegeben - eine Zeichensatzumsetzung von EBCDIC (IBM/Siemens-HOST) nach ASCII (Windows/Unix). - TRENNSYMBOL=..
Standardmäßig erwartet ASS die Felder im Satz durch Semikolon getrennt. Hiermit kann ein anderes Trennsymbol festgelegt werden. - UEBERNEHMEN
Wird in der Datei die Inhaltsbezeichnung oder -Abkürzung mit SPACES angeliefert, so werden diese im Standardfall nicht übernommen (kein Überschreiben existierender Textierungen). Bei Angabe von UEBERNEHMEN bewirkt die Angabe von SPACES ein Löschen der entsprechenden Textierung. - UMBENENNEN
Mit dieser Option können auch die externen Inhalte geändert werden. Sie impliziert außerdem die Option KY_TEXT. Bei den zu ändernden Ausprägungen muss der neue Inhalt im 7. Feld (hinter dem "Gültig bis"-Datum) angegeben werden. Ist das 7. Feld gesetzt, aber UMBENENNEN fehlt in der Vorlaufkarte, wird das Programm abgebrochen. Für die Eingabedatei gibt es folgende Restriktionen:- Neue Inhalte dürfen zu Programmbeginn noch nicht auf der Schlüssel-DB existieren.
- Die neuen Inhalte eines Schlüssels müssen paarweise verschieden sein.
- Alle Sätze zu einer Schlüsselnr. müssen lückenlos hintereinanderstehen.
- Es dürfen max. 100 verschiedene Schlüsselnummern auf einmal verarbeitet werden.
Beispiel:
KY_Text, Translate, Ansi, Trennsymbol=#
Das PCL1036 soll mit einer Text-Datei (nur darstellbare Zeichen) in ANSI beliefert werden, deren Felder durch '#' getrennt sind.
6.3 Löschen aller Ausprägungen und Gruppierungen zu einem ausgewählten Schlüssel PCL1036
FUNKTIONSBESCHREIBUNG
Das Programm PCL1036 kann verwendet werden, um gezielt alle Ausprägungen und Gruppierungen zu bestimmten Schlüsseln zu löschen. In diesem Falle wird PCL1036 mit Vorlaufkarten eingesetzt.
VORLAUFKARTE
Allgemein:
Eine Vorlaufkarte kann angegeben werden, um einzelne Schlüssel zu initialisieren, d.h. um sämtliche Ausprägungen und Gruppierungen zu diesen Schlüsseln zu löschen. Angaben werden ab der 1.Karte angegeben und untereinander durch Kommata getrennt. Nach der letzten Angabe darf kein Komma erfolgen. Vorlaufkartenangaben sind in beliebig vielen Zeilen erlaubt; dabei werden nur die ersten 72 Zeichen jeder Zeile berücksichtigt.
Inhalt:
KY_INIT = nnnnn ( nnnnn = Schlüsselnummer )
Beispiel:
Die Schlüssel 5000 und 5001 sollen initialisiert werden:
KY_INIT = 5000, KY_INIT = 5001
6.4 Generieren der Segmente SST01AKI PCL1088
FUNKTIONSBESCHREIBUNG
Für Schlüssel der internen Länge 3 oder 4 werden auf
der Schlüsseldatenbank im ASS Segmente SST01AKI benötigt,
die intern ein schnelles Umschlüsseln vom verdichteten
Schlüsselinhalt auf den eigentlichen Schlüsselinhalt
erlauben.
Im allgemeinen werden diese Segmente im ASS beim Anlegen
neuer Schlüsselinhalte automatisch gepflegt.
Nach einer Reorganisation, bei der die interne Länge eines
Schlüssels von 1 oder 2 auf 3 oder 4 vergrößert wurde,
ist jedoch ein nachträgliches Generieren dieser Segmente
zwingend erforderlich.
Das Programm PCL1088 löscht zunächst alle eventuell
vorhandenen Segmente SST01AKI zu den angegebenen Schlüsseln
und generiert diese anschließend neu.
Verweis-Schlüssel des Typs '3' werden wie Nicht-VerweisSchlüssel
behandelt, obwohl i.a. eine Verarbeitung von
diesen Verweis-Schlüsseln keinen Sinn macht.
Datenflussplan
1 Schlüssel-DB //DST002 //DST021 (DLI) //DST022 (DLI) //DST023 (DLI) $ASSDB/DST002 (PC) 2 Vorlaufkarte //ASSCO $ASSVLK/T1088.VLK 3 Ablaufprotokoll //PROTO $ASSPTK/PCL1088.PTK |
PCL1088 wird mit mindestens zwei Vorlaufkarten eingesetzt.
VORLAUFKARTE
Allgemein:
In der ersten Vorlaufkarte ist der Programmname anzugeben, in weiteren Vorlaufkarten werden die Schlüssel angegeben, zu denen die neuen Segmente generiert werden sollen.
Inhalt der ersten Vorlaufkarte:
PROGRAMM=PCL1088
Inhalt der weiteren Vorlaufkarten:
KENR=nnnnn (nnnnn = Schlüsselnummer)
Beispiel:
Die Inhalte der Schlüssel 5001 und 5002 sollen in Abhängigkeit ihrer verdichteten Inhalte angelegt werden.
PROGRAMM=PCL1088 KENR=5001 KENR=5002
6.5 Werte- / Steuerungsdatenbank maschinell plegen PCL1198
FUNKTIONSBESCHREIBUNG
Das Dienstprogramm PCL1198 hat drei Funktionen:
- Anlegen von Werten auf der Wertedatenbank
- Werte zu einer Verdichtungsstufe hinzufügen
- Verdichtungsstufenart einer Verdichtungsstufe ändern.
Die Steuerung der Programmfunktion erfolgt über die
VORLAUFKARTE
- zu 1.) Anlage eines Wertes
Mit dem Schlüsselwert '#WE' wird eine Wertedefinition für einen Wert eingeleitet der auf der Wertedatenbank gespeichert werden soll.
Danach sind folgende Angaben erforderlich:- WENR Wertenummer
- WEBEZ Wertebezeichnung
- WEABK Werteabkurzung
- WEART Werteart
- WEANL Werteanlieferung
- WEEXL Externe Wertelänge
- WEKST Anzahl der Nachkommastellen auf der Wertedatenbank
- WEDIM Wertedimension
- WEUEB Werteüberschrift
- WEEUTYP Eurotyp des Wertes
- WEEUIND Index auf die Euroumrechnungstabelle
- WEEUDAT Stichtag der Euroumstellung
- WEEUNR Wertenummer des Euroreferenzwertes
- zu 2.) Werte zu einer Verdichtungsstufe hinzufügen
Um Werte zu Verdichtungsstufen hinzuzufügen oder zu
entfernen sind die zwei folgenden Angaben erforderlich:
AG Arbeitsgebietsnummer
VDST Nummer der Verdichtungsstufe
Um Werte zu einer Verdichtungsstufe hinzuzufügen, kann man die Wertenummern hinter WERTE(+) auflisten. Die Werte, die hinter WERTE(-) aufgelistet sind, werden aus der angegebenen Verdichtungsstufe entfernt. - zu 3.) Verdichtungsstufenart einer Verdichtungsstufe ändern.
Um die Art einer Verdichtungsstufe zu ändern,
sind folgende drei Angaben erforderlich:
- AG Arbeitsgebietsnummer
- VDST Nummer der Verdichtungsstufe
- ART Neue Art der Verdichtungsstufe.
Beispiel:
AG 6 VDST 4 ART 2 WERTE ( + ) 1000 WERTE ( - ) 9999 #WE WENR = 10 WEBEZ = WE10 WEABK = W10 WEART = 1 WEANL = 1 WEEXL = 10 WEKST = 2 WEDIM = DM WEUEB = WERT10 WEEUTYP = 1 WEEUIND = 1 WEEUDAT = 1201 WEEUNR = 2
Bedeutung:
In AG 6 wird in Verdichtungsstufe 4 die
Verdichtungsstufenart auf '2' gesetzt;
zusätzlich wird Wert '1000' zu dieser
Verdichtungsstufe hinzugefügt
und Wert '9999' entfernt.
Abschließend wird ein neuer Wert auf der
Wertedatenbank angelegt.
Datenflussplan
1 Vorlaufkarte //ASSCO $ASSVLK/T1198.VLK (PC) 2 Werte-DB //DST001 $ASSDB/DST001 (PC) 3 Steuerungs-DB //DST003 $ASSDB/DST003 (PC) 4 Protokoll //PROTO $ASSPTK/PCL1198.PTK (PC) |
6.6 Arbeitsgebiet initialisieren PCL1097
FUNKTIONSBESCHREIBUNG
Mit dem Dienstprogramm PCL1097 kann ein Arbeitsgebiet initialisiert werden. Das Arbeitsgebiet muss zuvor in der ST06 definiert werden. Die Initialisierung eines Arbeitsgebietes bewirkt, dass Vorgabewerte schon vor der ersten Einspeicherung erfasst werden können.
VORLAUFKARTE
Die Initialisierung des Arbeitsgebietes wird über eine Vorlaufkarte gesteuert.
In der Vorlaufkarte können die folgenden Angaben gemacht werden:
- AGNR
Nummer des Arbeitsgebietes - CSNR
Nummer der Verdichtungsstufe - DATUM
Bei Datum kann das Datum der ersten und letzten Einspeicherung gesetzt werden. Wird nur ein Datum angegeben, wird dieses für beide Angaben verwendet. DATUM hat das Format JJMM, bei Tagesarbeitsgebieten das Format JJMMTT. - CANZSA
Wird die CANZSA Angabe in der Vorlaufkarte angegeben, kann man die Anzahl der Sätze in der Verdichtungsstufe auf 1 setzen. Andere Werte sind unzulässig. - KORRSUKOPF
Korrektur des Summendatenbankkopfes Im Kopf der Summendatenbank werden AGNR, CARVERS, CSDAT und CELET1 überschrieben durch die Steuerungsdatenbank.
Beispiel:
AGNR 9 CSNR 2 DATUM = 0111 - 0211 CANZSA = 1
In AG Nummer 9 und Verdichtungsstufe 2 wird das Datum Ersteinspeicherung auf 0111 (November 2001) und das Datum 'Letzte Einspeicherung' auf 0211 (November 2002) im Arbeitsgebiet und bei den Werten in der Verdichtungsstufe gesetzt. Durch die optionale Angabe CANZSA = 1 wird die Anzahl der Sätze auf der Summendatenbank auf 1 gesetzt.
Beispie:l
AGNR 499 KORRSUKOPF
Bemerkung:
Für dieses Programm existieren undokumentierte Optionen.
Datenflussplan
1 Vorlaufkarte //ASSCO $ASSVLK/T1097.VLK (PC) 2 Schlüssel-DB //DST002 $ASSDB/DST002 (PC) 3 Steuerungs-DB //DST003 $ASSDB/DST003 (PC) 4 Summen-DB 5 Steuerungs-DB //DST003 6 Protokoll //ASSPROTO $ASSPTK/PCL1097.PTK |
6.7 Schlüsseldatenbank abziehen/laden PCL1114 / PCL1115
Mit den Programmen PCL1114 und PCL1115 wird die Schlüsseldatenbank abgezogen bzw. geladen, z.B. für Migrationen.
Dabei können mit PCL1114 auch nur die Relationen abgezogen und migriert werden (s.u. NUR_RELATIONEN).
Es besteht aber auch die Möglichkeit die maximale externe Schlüssellänge auf bis zu 50 zu vergrößern (siehe Hinweise in HINSTALL). Da sich bei Vergrößerung der externen Länge die Länge des Datenbankkeys ändert, ist eine Reorganisation der Schlüsseldatenbank notwendig. Hierzu dienen die Programme PCL1114 und PCL1115. PCL1114 entlädt die Schlüsseldatenbank in eine Datei, die mit PCL1115 wieder geladen werden kann.
Bei der Verwendung der Programme ist unbedingt darauf zu achten, dass PCL1114 mit den "alten" Zugriffsprogrammen, d. h. mit der alten externen Schlüssellänge, arbeitet und PCL1115 mit den "neuen". Das bedeutet, dass man zuerst PCL1114 in der alten Installation umwandelt/linkt und damit die Schlüsseldatenbank entlädt. Dann ist die Schlüsseldatenbank zu löschen und neu einzurichten. Anschließend wird ASS mit der neuen Schlüssellänge installiert (insbesondere auch PCL1115) und die Schlüsseldatenbank wieder mit PCL1115 geladen.
ACHTUNG:
Die Schlüsseldatenbank sollte NICHT mit PCL1050
initialisiert werden.
Existieren in der Installation Schlüssel mit interner Länge 3 oder 4, so müssen die zu diesen Schlüsseln gehörenden Segmente SST01AKI mit Hilfe von PCL1088 neu erzeugt werden.
PCL1114/PCL1115 können auch für Migrationen benutzt werden. Auf einer Umgebung wird entladen, auf der anderen wird geladen. Auch in diesem Fall muss PCL1088 laufen gelassen werden. Schlüsselausprägungscache's werden auf angefordert zurückgesetzt (siehe PCL1089). Externe Schnittstellen werden nicht migriert.
PCL1114 erwartet unter ASSCO immer eine Vorlaufkartendatei. Diese darf auf Dummy gesetzt werden oder leer sein.
- NUR_RELATIONEN: Es werden nur Relationen abgezogen (für Migration gedacht).
PCL1115 erwartet unter ASSCO immer eine Vorlaufkartendatei. Diese darf auf Dummy gesetzt werden oder leer sein. Bei Migrationen ist folgendes zu beachten:
- Ein Zeichensatzwechsel muss durch eine der Optionen
- BS2000_MVS: BS2000-EBCDIC -> MVS-EBCDIC
- BS2000_ANSI: BS2000-EBCDIC -> ANSI (Unix)
- MVS_BS2000: MVS-EBCDIC -> BS2000-EBCDIC
- MVS_ANSI: MVS-EBCDIC -> ANSI (Unix)
- OS2_ANSI: Windows -> ANSI (Unix)
- Bitschlüssel: PCL1115 erkennt keine Bitschlüssel
automatisch. Bitschlüssel müssen dem Programm
in der Form
BITSCHLUESSEL = nr
mitgeteilt werden, da hier kein Zeichensatzwechsel zulässig ist.
ABLAUF PCL1114
1 Schlüssel-DB DST002 DST021 (nur DLI) DST022 (nur DLI) DST023 (nur DLI) $ASS/DST002 (PC) 2 Vorlaufkarte ASSCO (FB 80) $ASSVLK/T1114.VLK (PC) 3 Protokoll PROTO (FB 133) $ASSPTK/PCL1114.PTK (PC) 4 Abzug Schlüssel-DB DATEI (FB 80) $ASS/AUS.EBC (PC) |
ABLAUF PCL1115
1 Abzug Schlüssel-DB DATEI (FB 80) $ASS/AUS.EBC (PC) 2 Vorlaufkarte ASSCO (FB 80) $ASSVLK/T1115.VLK (PC) 3 Protokoll PROTO (FB 133) $ASSPTK/PCL1115.PTK (PC) 4 Schlüssel-DB DST002 DST021 (nur DLI) DST022 (nur DLI) DST023 (nur DLI) $ASS/DST002 (PC) |
6.8 Datenbanken reorganisieren PCL1087
Funktionsweise
Betreibt man ASS-PC in einer ISAM-Umgebung - zum Beispiel Windows oder Linux - so sollten die ASS-PC Systemdatenbanken in größeren Abständen reorganisiert werden, da sie durch die große Zahl von Lösch- und Einfügevorgängen physikalisch zerstückelt werden. Diese Zerstückelung wirkt sich vor allem auf die Zugriffsgeschwindigkeit negativ aus.
Mit diesem Programm hat man nun die Möglichkeit, gezielt Werte-, Schlüssel-, Steuerungs-, Anforderungs-, Text- und Securitydatenbank zu reorganisieren. Die Datenbanken werden auf eine Arbeitsdatei abgezogen, gelöscht und wieder neu aufgebaut. Nach der Reorganisation ist die Datei dann wieder physikalisch zusammenhängend gespeichert und die Zugriffszeiten sind somit wieder optimiert.
Datenfluss
1 Parameter-DB's $ASSDB/DST001 $ASSDB/DST002 $ASSDB/DST003 $ASSDB/DST004 $ASSDB/DST007 $ASSDB/DST007K $ASSDB/DST009 2 Vorlaufkarte $ASSVLK/T1087.VLK 3 Protokoll $ASSPTK/PCL1087.PTK 4 Parameter-DB's (siehe 1) |
Vorlaufkarte
Inhalt | Bemerkung |
---|---|
PROGRAMM=PCL1087 | Muss vorhanden sein als Bestandteil der Vorlaufkartenprüfung. |
ALLE_DB | Alle Parameterdatenbanken werden reorganisiert. |
W_DB | Die Werte-DB DST001 wird reorganisiert. |
S_DB | Die Schlüssel-DB DST002 wird reorganisiert. |
ST_DB | Die Steuerungs-DB DST003 wird reorganisiert. |
ANF_DB | Die Anforderungs-DB DST004 wird reorganisiert. |
TE_DB | Die Text-DB DST007 wird reorganisiert. |
TE_DB_K | Die kundenspezifische Text-DB DST007K wird reorganisiert. (nur Windows) |
SEC_DB | Die Security-DB DST009 wird reorganisiert. |
EXIT_DB | Die User-Exit-DB (PCL1231) wird reorganisiert. (nur OpenCOBOL und GnuCOBOL) |
LIST_DB | Die List(/Bericht)-DB wird reorganisiert. |
AC_DB | Die Anforderungscache-DB wird reorganisiert. |
PSEUDO_DB | Die Pseudonym-DB wird reorganisiert. |
INDEX_DB | Die bis zu vier Index-DB's werden reorganisiert. |
nn | 1 <= nn <= CARNR-MAX-ABS (SST1554)
Die entsprechende Summen-DB wird reorganisiert. |
Beispiel:
Inhalt der Vorlaufkarte: PROGRAMM=PCL1087,ANF_DB
PCL1087 setzt voraus daß die optionalen Summendatenbanken (EXIT_DB, LIST_DB, AC_DB, PSEUDO_DB und INDEX_DB) bereits eingerichtet sind.
Die mit nn genannten Datenbanken setzen ein geprüftes Arbeitsgebiet voraus. Ein logisches Arbeitsgebiet kann nicht reorganisiert werden, sondern nur die einzelnen physischen. Analog müssen auch primäre und sekundäre Summendatenbanken einzeln reorganisiert werden.
6.9 Wertedatenbank abziehen/laden PCL1314/PCL1315
Mit PCL1314/PCL1315, PCL1114/PCL1115 und PCL1324/PCL1325 können die Wertedatenbank (DST001), Schlüsseldatenbank (DST002) und Steuerungsdatenbank (DST003) mit je einem Lauf zur Migration auf eine neue Umgebung genutzt werden.
Wertedatenbank abziehen
ASSCO DST001 |_________ _________| | PCL1314 _________| | | ASSLST ASSTMP
Wertedatenbank laden
ASSCO ASSTMP |_________| | PCL1315 _________|_________ | | ASSLST DST001
ASSCO $ASSVLK/T1314.VLK bzw. $ASSVLK/T1315.VLK ASSLST $ASSPTK/PCL1314.PTK bzw. $ASSPTK/PCL1315.PTK ASSTMP FB 80 $ASS/DST001.TMP
Die ASSTMP ist eine binäre Datei mit variablen langen Sätzen und im geblockten Format.
Die Vorlaufkarte ASSCO muß existieren, kann aber leer sein. PCL1314 vermerkt in ASSTMP den Zeichensatz und PCL1315 kann ihn beim Laden daher automatisch anpassen.
Die Wertedatenbank braucht vor PCL1315 nicht mit PCL1050 initialisiert werden, da PCL1315 der Ladelauf ist.
6.10 Steuerungsdatenbank abziehen/laden PCL1324/PCL1325
Mit PCL1314/PCL1315, PCL1114/PCL1115 und PCL1324/PCL1325 können die Wertedatenbank (DST001), Schlüsseldatenbank (DST002) und Steuerungsdatenbank (DST003) mit je einem Lauf zur Migration auf eine neue Umgebung genutzt werden.
Steuerungsdatenbank abziehen
ASSCO DST003 |_________ _________| | PCL1324 _________| | | ASSLST ASSTMP
Steuerungsdatenbank laden
ASSCO ASSTMP |_________| | PCL1325 _________|_________ | | ASSLST DST003
ASSCO $ASSVLK/T1324.VLK bzw. $ASSVLK/T1325.VLK ASSLST $ASSPTK/PCL1324.PTK bzw. $ASSPTK/PCL1325.PTK ASSTMP FB 80 $ASS/DST003.TMP
Die ASSTMP ist eine binäre Datei mit variablen langen Sätzen und im geblockten Format.
Die Vorlaufkarte ASSCO muß existieren, kann aber leer sein. PCL1324 vermerkt in ASSTMP den Zeichensatz und PCL1325 kann ihn beim Laden daher automatisch anpassen.
Die Steuerungsdatenbank braucht vor PCL1325 nicht mit PCL1050 initialisiert werden, da PCL1325 der Ladelauf ist.
7 Online-Pflege von externen Schnittstellendateien
Externe Schnittstellendateien sind sequentielle Dateien. Vor allem, wenn derartige Daten im binären Format vorliegen, sind sie manuell kaum zu bearbeiten. Daher wurde in ASS ein ONLINE-Dialog geschaffen, der in die Transaktion ST06 integriert und im entsprechenden Handbuch beschrieben ist.
Zusätzlich werden Batch-Funktionen benötigt, die externe Schnittstellendateien ONLINE bearbeitbar machen bzw. ONLINE bearbeitete, externe Schnittstellen wieder als sequentielle Datei und damit der Folgeeinspeicherung zur Verfügung stellen. Diese BATCH-Funktionen werden von den Programmen PCL1084 und PCL1085 abgedeckt.
Eine ONLINE-Bearbeitung bietet sich beispielsweise an, um die von PCL1001 erzeugte Datei der fehlerhaften Schnittstellensätze zu korrigieren.
Dabei dürfte einleuchten, dass eine solche manuelle Bearbeitung nur auf relativ kleine Datenmengen von einigen tausend Sätzen ausgerichtet ist.
7.1 Externe Schnittstellendatei aus der Schlüssel-Datenbank abziehen PCL1084
FUNKTIONSBESCHREIBUNG
Das Programm PCL1084 ermöglicht, externe Schnittstellen von der Schlüssel-Datenbank auf sequentiellen Datenträger (Schnittstellendatei ASSIN01) abzuziehen.
Eine Rückführung der Schnittstelle bietet sich z.B. dann an, wenn die Arbeiten an der Schnittstelle mittels des Online-Dialogs ST06 zum Abschluss gekommen sind.
Jede externe Schnittstelle wird über einen Elementnamen identifiziert.
Je Programmlauf wird über Vorlaufkarte dem Programm PCL1084 ein Elementname mitgegeben. Das Programm erzeugt zu diesem Elementnamen die Datei ASSIN01, prinzipiell im Format einer "langen" externen Schnittstelle. Wird in der Vorlaufkarte jedoch die Option KURZ angegeben, so erzeugt das Programm die Datei ASSIN01 im Format einer "kurzen" Schnittstelle.
Wird die Option LOESCHEN angegeben, werden zusätzlich nach dem Abzug auf sequentiellen Datenträger die betreffenden Sätze auf der Datenbank gelöscht, sofern keine fehlerhaften Sätze aufgetreten sind. Abzüge der externen Schnittstellen, die mit dem Programm PCL1084 unter Angabe der Option LOESCHEN erstellt wurden, können mit dem Programm PCL1085 wieder auf die Datenbank gebracht werden.
Das Programmpaar PCL1084/PCL1085 ist also unter diesem Aspekt vergleichbar mit dem Programmpaar PCL1004/PCL1005.
ABLAUF
Datenflussplan
Dateibeschreibung
Nummer | DD-Name/PGM | Dateiname ASS_PC | Beschreibung |
---|---|---|---|
1 | DST002 | $ASSDB/DST002 | Schlüssel-Datenbank |
2 | ASSCO | $ASSVLK/T1084.VLK | Vorlaufkartendatei |
3 | ASSIN01 | $ASS/ASSIN01 | Externe Schnittstelle (Format: VB LRECL=5000) |
4 | PROTO | $ASSPTK/PCL1084.PTK | Verarbeitungsprotokoll (Format: F LRECL=133 CTLASA) |
VORLAUFKARTE
Aufbau der Vorlaufkarten (allgemein)
Vorlaufkarten-Optionen können auf einer oder mehreren Vorlaufkarten angegeben werden. Mehrere Optionen in einer Karte sind mit Komma(ta) zu trennen. Die erste Optionen-Angabe muss in der ersten Spalte beginnen.
Zulässige Optionen
- PROGRAMM=PCL1084
Die Angabe des Programmnamens ist Pflicht.
- ELEMENT=xxxxxxxx
MULTI=xxxxxxxGenau eine der Angaben ELEMENT oder MULTI ist Pflicht. Mit der Option ELEMENT wird der Elementname angegeben, der der betreffenden Schnittstelle auf der Datenbank zugeordnet wurde. Der Elementname identifiziert eindeutig eine Externe Schnittstelle. Bei MULTI werden sämtliche Elemente nach ASSIN01 ausgegeben deren Name mit xxxxxxx beginnt.
- LOESCHEN
Diese Angabe ist wahlfrei. Nach dem Abzug der Schnittstelle mit dem angegebenen Elementnamen auf die Datei ASSIN01 werden die Schnittstellensätze aus der Datenbank gelöscht. Löschen mit ELEMENT löscht das Element xxxxxxxx und mit MULTI alle die mit xxxxxxx beginnen.
- KURZ
Diese Angabe ist wahlfrei. ASSIN01 wird im Format einer "kurzen" Schnittstelle erzeugt.
7.2 Externe Schnittstellendatei in die Schlüssel-Datenbank laden PCL1085
FUNKTIONSBESCHREIBUNG
Externe ASS-Schnittstellen können in beliebig viele Einheiten unterteilt sein, wobei jeweils ein Kopf- und ein Endesatz die Summensätze einer solchen Einheit begrenzt. In den meisten Fällen besteht eine Schnittstelle aus einer einzigen Einheit, d.h. sie enthält neben ihren Summensätzen nur einen Kopf- und einen Endesatz.
Das Programm PCL1085 erlaubt nun, gezielt derartige Einheiten einer Schnittstellendatei in die Schlüssel-Datenbank zu laden. Abschnitte einer externen Schnittstellendatei werden mit eins beginnend durchgezählt. Mittels dieser Zählnummer werden sie in der Datei identifiziert.
Jeder geladene Abschnitt erhält einen Namen, unter dem er im Dialog bearbeitet werden kann. Diese identifizierenden Merkmale werden dem Programm über Vorlaufkarte mitgegeben (s.u.).
PCL1085 verarbeitet alle gängigen Formate von externen Schnittstellen. Das Format einer geladenen Schnittstelle ist jedoch stets das einer "langen" Schnittstelle.
Enthält die externe Schnittstelle einen Formatfehler, wird eine Fehlermeldung ausgegeben und das Programm beendet. Wird die Option LOESCHEN angegeben, werden alle Sätze, die sich unter dem Elementnamen auf der Schlüssel-Datenbank befinden, vor dem Laden gelöscht.
Die externen Schnittstellen, die mit dem Programm PCL1085 auf die Schlüssel-Datenbank geladen wurden, können mit dem Programm PCL1084 wieder auf sequentielle Datei (ASSIN01) im Format einer externen Schnittstelle gebracht werden.
Das Programmpaar PCL1084/PCL1085 ist also unter diesem Aspekt vergleichbar mit dem Programmpaar PCL1004/PCL1005.
ABLAUF
Datenflussplan
Dateibeschreibung
Nummer | DD-Name/PGM | Dateiname ASS/PC | Beschreibung |
---|---|---|---|
1 | ASSIN01 | $ASS/ASSIN01 | Externe Schnittstelle |
2 | ASSCO | $ASSVLK/T1085.VLK | Vorlaufkartendatei |
3 | DST002 | $ASSDB/DST002 | Schlüssel-Datenbank |
4 | PROTO | $ASSPTK/PCL1085.PTK | Verarbeitungsprotokoll |
VORLAUFKARTE
Die Optionen können auf eine oder mehrere Vorlaufkarten verteilt angegeben werden. Mehrere Optionen in einer Karte sind mit Komma(ta) zu trennen. Die erste Optionen-Angabe muss in der ersten Spalte beginnen. Folgende Optionen sind zulässig:
- PROGRAMM=PCL1085
Die Angabe des Programmnamens ist Pflicht.
- ELEMENT=xxxxxxxx
MULTI=xxxxxxxGenau eine der Angaben ELEMENT oder MULTI ist Pflicht. Mit der Option ELEMENT wird der Elementname angegeben, unter dem die betreffende Schnittstelle in der Schlüssel-Datenbank gespeichert werden soll. Bei MULTI werden zunächst sämtliche Elemente von der Schlüsseldatenbank gelöscht die mit xxxxxxx beginnen. Danach werden alle Elemente von ASSIN01 auf die Schlüsseldatenbank geschrieben mit dem Namen xxxxxxx1 bis xxxxxxx9, xxxxxx01 bis xxxxxx99 usw.
- LOESCHEN
Diese Angabe ist wahlfrei und wird mit MULTI ignoriert. Existiert in der Schlüssel-Datenbank unter dem bei ELEMENT angegebenen Namen bereits eine Schnittstelle, so wird diese vor dem Laden der neuen Schnittstelle gelöscht.
- EXIT=xxxxxxxx
Diese Angabe entspricht der im Programm PCL1001 (vgl. Dokumentation von PCL1001 im Handbuch 'BETRIEB'). Durch diese Angabe wird erreicht, dass auch bei der Analyse von externen Schnittstellen analog zur Folgeeinspeicherung die gleichen User-Exits unterstützt werden.
- NUMMER=nnnnn
Diese Angabe ist wahlfrei und wird mit MULTI ignoriert. Die Zahl nach NUMMER= gibt den Abschnitt der Externen Schnittstelle an, der auf die Schlüssel-Datenbank geladen werden soll. Das Programm PCL1085 zählt die einzelnen Abschnitte von 1 an, wobei jeder Abschnitt mit dem Kopfsatz anfängt, in der Mitte Summensätze besitzen kann und mit einem Endesatz endet.
Beispiel: NUMMER=5
Ab dem 5.Kopfsatz bis zum 5.Endesatz werden die Sätze verarbeitet und auf die Schlüssel-Datenbank geschrieben. Standardannahme ist NUMMER=1.
8 Sonstige Dienstprogramme
8.1 Erstellen von Umbuchungsanforderungen aus einem Umbuchungselement PCL1093
FUNKTIONSBESCHREIBUNG
Das Programm PCl1093 wird nicht mehr unterstützt. Umbuchungsanforderungen für PCL1019 können nur händisch erstellt werden.
8.2 Kopieren von Anforderungen auf sequentielle Dateien PCL1012
FUNKTIONSBESCHREIBUNG
Für BATCH-Auswertungen stehen generell die beiden Programme PCL1003 und PCL1016 zur Verfügung. Die Ausführliche Programmbeschreibung erfolgt im Benutzerhandbuch "BETRIEB 1".
Im Unterschied zu PCL1003 ist PCL1016 in der Lage, die Anforderungsdatenbank hinsichtlich auszuführender Anforderungen auszuwerten.
Das Programm überprüft, ob einmalig oder periodisch auszuführende Anforderungen (Bibliotheken E und P) zur Ausführung fällig sind, und führt ggf. die Auswertungen aus. Im Anschluss daran werden die Anforderungen über das Ausführungsdatum in der Anforderungs-DB als ausgeführt gekennzeichnet.
Wenn bei diesem UPDATE der Dialog aktiv ist, kann dieses zu erheblichen Problemen führen. ASS bietet dazu 2 Alternativen, BATCH-Auswertungen problemlos parallel zum Dialog-Betrieb durchzuführen.
Alternative 1:
Das Auswertungsprogramm PCL1016 wird mit der Vorlaufkartenoption 'NUPDAT' oder 'NUPDATPR' gestartet. In diesem Fall unterbleibt die Markierung der Anforderungs-DB.
Die ausgeführten Anforderungen werden stattdessen in eine Datei geschrieben. Der UPDATE kann mit dem Programm PCL1012 nach Beendigung des Dialog-Betriebes nachgeholt werden.
Alternative 2:
Mit PCL1012 können zur Ausführung anstehende Anforderungen auf eine sequentielle Datei übertragen werden, um sie anschließend mit dem Programm PCL1003, das unabhängig von der Anforderungs-DB arbeitet, ausführen zu lassen.
Die Anforderungen werden bei der Übertragung durch PCL1012 in der Anforderungs-DB bereits als ausgeführt gekennzeichnet.
ABLAUF
Datenflussplan
Dateibeschreibung
Nummer | DD/Linkname | Dateiname ASS-PC | Bedeutung |
---|---|---|---|
1 | ASSCO | $ASSVLK/T1012.VLK | Vorlaufkarte(n) Auf Dummy setzen und nur bei Bedarf aktivieren. |
2 | ASSALI | $ASS/ASSALI | Datei mit den von PCL1016 zur Markierung vorgesehenen Anforderungen. Auf Dummy setzen und nur aktivieren, wenn PCL1016 mit verzögertem Update angewandt wird. |
3 | DST004 | $ASSDB/DST004 | Anforderungsdatenbank |
4 | KARTE | $ASSVLK/KARTE.VLK | Ausgabedatei für auszuführende Anforderungen. Wird mit Vorlaufkartenoption ASSALI gearbeitet, kann KARTE auf Dummy gesetzt werden. |
5 | LISTE | $ASSPTK/PCL1012.PTK | Ablauf- und Fehlerprotokoll |
VORLAUFKARTE
1. Vorlaufkarte ( Alternative 1 )
Die 1. Vorlaukarte wird "nur" dann benutzt, wenn die Markierung in der Anforderungs-DB nachgeholt werden soll.
Dann muss im Spaltenbereich 1-72 die Anweisung "ASSALI" angegeben werden. Wird in der 1. Vorlaufkarte "LOESCHEN" eingegeben, so werden die Elemente der Bibliothek E sofort aus der Anforderungs-DB gelöscht, die Elemente der Bibliothek P jedoch wie bei "ASSALI" markiert.
Die weiteren Vorlaufkarten bleiben leer.
2.- 50. Vorlaufkarte ( Alternative 2 )
In diesem Fall bleibt die 1. Vorlaufkarte leer.
Pro Vorlaufkarte kann im Spaltenbereich 1-72 ein Namensbereich in der Form
******** - ******** ! ! NAME-VON - NAME-BIS
angegeben werden. Die Namensbereiche dürfen sich nicht überlappen. Wird ohne Vorlaufkarte gearbeitet, werden von PCL1012 alle anstehenden Anforderungen bearbeitet.
BEISPIELE
- Der beim Lauf von PCL1016 verhinderte Update soll
nachgeholt werden.
ASSALI
- Alle zur Ausführung anstehenden Anforderungen aus E und P,
deren Namen mit A,B,C oder D beginnen, sollen markiert und
auf eine sequentielle Datei gebracht werden.
1. Vorlaufkarte (leer): 2. Vorlaufkarte : A-D9999999
Wird PCL1012 zur Übertragung aus der Anforderungs-Datenbank (Alternative 2) verwendet oder es wird mit der Vorlaufkarte "ASSALI" gearbeitet, so ist mit dem Programmlauf eine Reorganisation der Anforderungs-DB verbunden. Alle Anforderungen der Bibliothek E, deren Ausführungsdatum weiter als einen Monat zurückliegt, werden dabei gelöscht.
8.3 Modifizierung von Zeitangaben und Ausprägungen in Anforderungen und Formeln PCL1043
FUNKTIONSBESCHREIBUNG
Das Programm PCl1043 wird nicht mehr unterstützt. Systematische Änderungen von ASS-Anforderungen können nur nach Rücksprache mit dem ASS-Team und ev. erforderlichen Programmanpassungen durchgeführt werden.
8.4 Datenbanken initialisieren PCL1050
FUNKTIONSBESCHREIBUNG
Bei der Installation von ASS ist es notwendig, in Abhängigkeit vom DB-System, Datenbanken zu initialisieren. Denn bis auf die Summendatenbank wird auf die Datenbanken nur ändernd oder lesend zugegriffen, aber niemals ladend. Dies trifft auch für die Summendatenbanken zu, die als List-, PM-, Pseudonym-Datenbank oder Anforderungs-Cache verwendet werden.
I.a. wird das Initialisieren von den betreffenden DB-Systemen unterstützt.
In einer VSAM-, DLI- oder ISAM-Umgebung ist das Initialisieren (auch Formatieren genannt) mitunter arbeitsaufwendig. Daher wird von ASS ein Utility zur Verfügung gestellt, das die Initialisierung der betreffenden Datenbanken erleichtert. Die Initialisierung wird vom Programm PCL1050 durchgeführt.
Es ist zu beachten, dass es bei dem DC-System CICS keine SPA-Datenbank gibt, diese wird durch die CICS-Anweisungen für temporäre Dateien realisiert.
PCL1050 lädt folgende Daten (VSAM/DLI):
Auf die Werte-DB wird der Wert 4999 geladen, auf die Schlüssel-DB der Schlüssel 4999 und auf die Steuerungs-DB das Arbeitsgebiet 49. Diese können dann bei Bedarf via ST06 gelöscht werden.
Auf die Anforderungsdatenbank wird die Anforderung AN_49 auf die Bibliothek B geladen. Diese kann via ST31 oder ASS-Excel gelöscht werden.
Auf die Berichtsdatenbank wird die Liste LADESATZ mit der Bibliotheksart L geladen. Diese kann via ST31 zum Löschen gekennzeichnet werden und mittels PCL1094 gelöscht werden.
Auf die SPA-Datenbank wird ein Leer-Element namens **AG mit der Nummer 0 geladen (nur bei IMS- Umgebung). Falls die ASS-Security-Datenbank existiert, so wird dort der SC_49 eingetragen. Er kann später mit der Transaktion ST09 gelöscht werden.
Auf die Text-Datenbank wird ein Text-Satz zur Sprache 'D' mit Textart 'T' und dem Inhalt 'LADESATZ ... ' geschrieben. Er kann später bei Bedarf mit der ST06 gelöscht werden.
Auf die PM-Datenbank wird ein Ladesatz mit dem Usernamen BATCH, dem Elementnamen PM_nnnn (wobei nnnn die Nummer des Arbeitsgebiets mit führenden Nullen ist), dem aktuellen Datum und Zeit, einem einstelligen Kennzeichen und der laufenden Nummer 0000000 geschrieben. Die Nummer des Arbeitsgebiets und das einstellige Kennzeichen sind in dem Include SST1219 definiert. Die PM-Datenbank wird über dieses Include installiert und Einzelheiten entnehme man dem Handbuch Installation unter dem entsprechenden Datenbanksystem.
Auf die Datenbank-Datenbank wird ein Dummy-Satz geschrieben, welcher nicht mehr gelöscht werden kann.
In der Vorlaufkarte wird angegeben, welche Datenbanken initialisiert werden sollen. Existieren bestimmte Datenbanken in einer Installation nicht (z.B. die SPA-Datenbank in einer CICS-Umgebung), so dürfen diese in der Vorlaufkarte nicht genannt werden. Der Aufbau der Vorlaufkarte ist unten unter Optionen beschrieben.
Bei ISAM-Dateien werden keine Daten geladen. Es wird nur ein OPEN OUTPUT und anschließend ein CLOSE durchgeführt. Bei einer ISAM-Umgebung wird auch eine BEFORE-IMAGE-Datei DST006 benötigt, die ebenfalls formatiert werden muss. Sie ist von den Dateimerkmalen identisch zur Werte-Datenbank DST001. Um die DST006 zu formatieren kann also eine Werte-Datenbank unter dem Namen DST006 formatiert werden.
Datenflussplan
Dateibeschreibung
DD-Name | RECFM/LRECL | Dateiname ASS-PC | Beschreibung |
---|---|---|---|
ASSCO | FB 80 | $ASSVLK/T1050.VLK | Vorlaufkarte |
ASSLST | FBA 133 | $ASSPTK/PCL1050.PTK | Protokoll |
DST001 DST011 * DST012 * DST013 * | $ASSDB/DST001 | WE-DB Wertedatenbank | |
DST002 DST021 * DST022 * DST023 * | $ASSDB/DST002 | KY-DB Schlüsseldatenbank | |
DST003 DST031 * DST032 * DST033 * | $ASSDB/DST003 | ST-DB Steuerungsdatenbank | |
DST004 DST041 * | $ASSDB/DST004 | AN-DB Anforderungsdatenbank | |
DST005 * | $ASSDB/DST005 | SPA-DB SPA-Datenbank | |
DST007 DST071 * | $ASSDB/DST007 | TE-DB Text-Datenbank | |
DST008 | $ASSDB/DST008 | HTML-SPA-DB für ASS-Internet | |
DST009 DST091 * | $ASSDB/DST009 | SC-DB Security-Datenbank | |
DSTXX0 DSTXX1 * | $ASSDB/DSTXX0 | LIST-DB Listen-Datenbank | |
DSTnn0 DSTnn1 * | $ASSDB/DSTnn0 | Anforderungs-Cache | |
DSTnn0 DSTnn1 * | $ASSDB/DSTnn0 | Pseudonym-Datenbank |
Bemerkung: Die mit "*" gekennzeichneten Datenbanken sind nur für das DB-System DL/I relevant. Die SPA-Datenbank wird für das DC-System IMS benötigt, aber nicht für CICS.
VORLAUFKARTE
Die Optionen werden ab der 1. Karte angegeben und untereinander durch Kommata getrennt.
ACHTUNG:
Es werden aber nur die ersten 72 Zeichen innerhalb
einer Karte berücksichtigt.
Inhalt | Aktion |
---|---|
WE | Satz in Werte-Datenbank schreiben |
KY | Satz in Schlüssel-Datenbank schreiben |
ST | Satz in Steuerungs-Datenbank schreiben |
AN | Satz in Anforderungs-Datenbank schreiben |
SPA | Satz in SPA-Datenbank schreiben |
TE | Satz in Text-Datenbank schreiben |
HTMLSPA | Satz in SPA-Datenbank für ASS-Internet schreiben |
SC | Satz in Security-Datenbank schreiben |
LISTDB | Satz in Listen-Datenbank schreiben |
ANFCACHE | Satz in Anforderungs-Cache schreiben |
PSEUDONYM | Satz in Pseudonym-DB schreiben |
TEXT-INDEX-1 | Analog zu LOG-DB |
TEXT-INDEX-2 | Analog zu LOG-DB |
TEXT-INDEX-3 | Analog zu LOG-DB |
INDEX-TEXT | Analog zu LOG-DB |
INDEX-DB | Installierte TEXT-INDEX-1, TEXT-INDEX-2, TEXT-INDEX-3 und INDEX-TEXT |
LOG-DB |
PC: DB anlegen und Endesatz zur Optimierung
BS2000: DB anlegen VSAM und DL/I: Ladesatz sonst: ohne Aktion |
DB=... | Diese Angabe ist ab ASS 8.70 obsolet, egal was hinter "=" steht. |
BEISPIEL
// EXEC PCL1050 //DFSURW1 DD UNIT=SYSDA //ASSCO DD * WE, KY, ST //ASSLST DD SYSOUT=*
Bemerkung
Falls in der Prozedur das DD-Statement "DFSURWF1" noch nicht vorhanden ist, muss dieses Statement in einer DLI-Umgebung unbedingt eingefügt werden.
8.5 Arbeitsgebiete sperren PCL1082
FUNKTIONSBESCHREIBUNG
Mit dem Dienstprogramm PCL1082 kann man Arbeitsgebiete für die Auswertung sperren bzw. wieder freigeben. Ein gesperrtes Arbeitsgebiet steht nicht für Auswertungen zur Verfügung. Es ist aber möglich, in gesperrte Arbeitsgebiete einzuspeichern bzw. gesperrte Arbeitsgebiete zu reorganisieren. Von daher ist es sinnvoll, Arbeitsgebiete während Einspeicherungen oder Reorganisationen zu sperren, um zu verhindern, dass vor korrektem Abschluss dieser Maßnahmen Auswertungen auf zwischenzeitlich inkonsistente Daten zugreifen.
Es besteht zusätzlich die Möglichkeit, Arbeitsgebiete für die Folgeeinspeicherung zu reservieren. Hierzu ist in der Vorlaufkarte die Angabe FOLGEEINSP zu machen. Derartig gekennzeichnete Arbeitsgebiete stehen für die Auswertung zur Verfügung, werden jedoch für die Verarbeitung durch die meisten Batch-Utilities (z.B. Reorganisationsprogramme) gesperrt. Hierdurch besteht die Möglichkeit, insbesondere während des Laufes von PCL1001 die Auswertung des zu bespeicherenden Arbeitsgebietes zu ermöglichen. Ein Arbeitsgebiet, dass für die Folgeeinspeicherung reserviert ist, kann im weiteren Verlauf durch einen erneuten Lauf direkt auf "gesperrt" gesetzt werden.
Welche Arbeitsgebiete gesperrt bzw. freigegeben werden sollen, wird über Vorlaufkarten gesteuert.
VORLAUFKARTE
Eine Vorlaufkarte muss die Arbeitsgebietsnummer enthalten und eine Angabe, wie das Arbeitsgebiet zu behandeln ist. Für jedes zu behandelnde Arbeitsgebiet muss eine Vorlaufkarte angegeben werden.
ACHTUNG:
Es werden nur die ersten 72 Zeichen innerhalb
einer Karte berücksichtigt.
FORMAT:
AGNR = 37 , SPERREN AGNR = 04 , FREIGEBEN AGNR = 23 , FOLGEEINSP
Bemerkung
Ist ein Arbeitsgebiet nicht geprüft, so kann kein Sperrkennzeichen gesetzt werden.
Datenflussplan
1 SPA-Datenbank //DST005 //DST051 (DLI) $ASSDB/DST005 (PC) 2 Steuerungs-DB //DST003 //DST031 (DLI) //DST032 (DLI) //DST033 (DLI) $ASSDB/DST003 (PC) 3 Vorlaufkarte //ASSCO $ASSVLK/T1082.VLK (PC) 4 Protokoll //ASSLST $ASSPTK/PCL1082.PTK |
8.6 Formate (MFS) modifizieren ( nur IMS ) PST1053(PCL1053)
FUNKTIONSBESCHREIBUNG
Dieses Programm wird nicht mehr ausgeliefert.
8.7 Transparente Verdichtungsstufen transformieren (nur Installationen mit FOCUS-Zugriff) PCL1048
FUNKTIONSBESCHREIBUNG
Dieses Programm wird nicht mehr unterstützt.
8.8 Transparente Verdichtungsstufen entsorgen (nur Installationen mit FOCUS-Zugriff) PCL1057
FUNKTIONSBESCHREIBUNG
Dieses Programm wird nicht mehr unterstützt.
8.9 Aufruf von MCL0272 aus Assembler MCL0271
8.10 Summensätze aus Basisverdichtungsstufe liefern MCL0272
Dieses Programm ist ein COBOL-Unterprogramm, das von benutzereigenen Batch-Hauptprogrammen aufgerufen werden kann. Es gibt pro Aufruf einen Satz aus der Summendatenbank zurück, der die eingegebenen Suchkriterien erfüllt. Bei jedem Folgeaufruf liefert MCL0272 den nächsten Summensatz zu diesen Suchkriterien (sofern vorhanden).
Die Suchkriterien müssen vom aufrufenden Programm mitgeteilt werden : Zu jedem eingegebenen Schlüssel muss genau ein Inhalt vorgegeben werden, mit dem dann der entsprechende Schlüsselinhalt des Rückgabesatzes übereinstimmen muss. Es wird immer die Basisverdichtungsstufe ausgewertet. Die Reihenfolge der zurückgegebenen Sätze richtet sich nach der Reihenfolge auf der Summendatenbank und somit nach den internen Schlüsselinhaltsnummern.
Mittels dieses Programmes ist es z.B. leicht möglich, mit Hilfe eines vom Benutzer geschriebenen Hauptprogramms beliebige Umbuchungen vorzunehmen. Der Ausgabesatz wird im Format der langen Schnittstelle erstellt.
Dem MCL0272 sind mitzuteilen :
- 1 Arbeitsgebiet
- 1 Zeitraumintervall
- 0 bis 90 Werte
- 0 bis 98 Schlüssel und Schlüsselinhalte
- Opcode (Blank oder 'CLOS')
- PCB-Pointer (nur DL/I)
Das MCL0272 liefert zurück :
- 1 Ausgabesatz im langen Schnittstellenformat
- Returncode und Fehlertext
Schnittstellenbeschreibung s.u..
Zur Programmlogik des MCL0272 :
Es werden alle verwendeten und in der Basisverdichtungsstufe
ausgeprägten Schlüssel samt ihrer aktuellen Ausprägungen
zurückgegeben.
Ferner werden zu den eingegebenen Werten und den Zeitpunkten
im eingegebenen Intervall die Werteinhalte zurückgeliefert,
sofern sie auf der Summendatenbank vorhanden sind.
Wurden keine Werte eingegeben, so werden alle in der
Basisverdichtungsstufe verwendeten Werte ergänzt, die keine
Vorgabewerte sind.
Soll bei Folgeaufrufen des MCL0272 jeweils nur der nächste Summensatz zurückgegeben werden, so muss die Eingabeschnittstelle unverändert bleiben. Werden in der Eingabeschnittstelle nur die Schlüsselinhalte geändert, so wird die Summendatenbank wieder von vorne gelesen, die Parameterdatenbanken werden aber nicht von neuem gelesen. Dies ist wichtig bei Performance-Betrachtungen.
Nach einem CLOSE-Aufruf ( EINTAB.OPC = 'CLOS' ) wird die Summendatenbank von vorne gelesen.
Passen nicht alle Werteeinträge in den Ausgabesatz, so führt MCL0272 Satzsplitting durch: Zunächst werden soviele Werteeinträge zurückgeliefert, wie in den Ausgabesatz passen, beim nächsten Aufruf werden dann die nächsten Werteeinträge zurückgegeben, usw..
Zwischen 2 Aufrufen des MCL0272 sollte der Ausgabeparameter ASSIN01 nicht verändert werden, da nicht alle Felder von ASSIN01 jedesmal neu gefüllt werden.
Zum Begriff der Basisverdichtungsstufe :
Diese kann von den angegebenen Werten abhängig sein.
Schlüssel, die auch in keiner anderen Verdichtungsstufe,
in der einer der eingegebenen Werte verwendet wird, ausgeprägt
sind, können in dieser Basisverdichtungsstufe verdichtet sein,
alle anderen müssen ausgeprägt sein.
MCL0272 kann mehrere Verdichtungsstufen einer
Verdichtungsstufenmenge verarbeiten, die
Verdichtungsstufenmenge jedoch muss eindeutig sein.
Im Falle mehrerer Verdichtungsstufen wird eine nach der anderen
abgearbeitet. Auch wenn sich 2 Verdichtungsstufen zeitlich
überschneiden, werden die Summensätze getrennt zurückgegeben
und nicht aufaddiert.
Verdichtungsstufen, die sich nicht auf einer Summendatenbank befinden ( sequentielle Verdichtungsstufen ), werden nicht berücksichtigt.
Aufrufparameter von MCL0272
In COBOL lesen sie sich so:
01 EINTAB-ALT-L. 05 AG. * Arbeitgebietsnummer 10 AGNR PIC S9(04) COMP VALUE +0. * von-Angabe Zeit 10 ZEIT-VON-EIN-P PIC X(04). * bis-Angabe Zeit 10 ZEIT-BIS-EIN-P PIC X(04). * Anzahl Schlüssel 10 ANZ-SCHL PIC S9(04) COMP. * Anzahl Werte 10 ANZ-WERTE PIC S9(04) COMP. 10 KENR OCCURS 224 PIC S9(04) COMP. * Schlüsselnummern 10 WENR OCCURS 90 PIC S9(04) COMP. 05 KEYS. * Schlüsselinhalte zu den Schl. aus KENR 10 KEINH OCCURS 224 PIC X(60). * Opcode : * 'CLOS' : Close auf Summendatenbank und Parameterdatenbanken * Blank : sonst 05 OPC PIC X(04). * Ausgabesatz 01 CH-W-ASSIN01. * Satzlänge 05 SL PIC S9(04) COMP. * Datenteil 05 DTA. 10 BYTE OCCURS 20000 PIC X. 01 W-ASSIN01 REDEFINES CH-W-ASSIN01. 05 SATZ-LAENGE PIC S9(04) COMP. * Nr. der Schnittstelle 05 SCHNST-NR PIC S9(04) COMP. * ERSTELLUNGSDAT.JJMMTT 05 EDATUM PIC X(06). * Satzart 05 SATZ-ART PIC S9(04) COMP. * Ordnungsbegriff in Ausgabe 05 ORD-BEGR PIC X(30). 05 SCHL-ZAHL PIC S9(04) COMP. 05 WERT-ZAHL PIC S9(04) COMP. 01 CH-W-ASSIN01-2-K REDEFINES CH-W-ASSIN01. 05 FILLER PIC X(46). 05 SCHL-EINTAB OCCURS 224. 10 SCHL-NR PIC S9(04) COMP. 10 SCHL-INH PIC X(12). 01 CH-W-ASSIN01-2-L REDEFINES CH-W-ASSIN01. 05 FILLER PIC X(46). 05 SCHL-EINTAB OCCURS 224. 10 SCHL-NR PIC S9(04) COMP. 10 SCHL-INH PIC X(68).
8.11 Externe ASS-Schnittstelle erstellen PCL1081
Dieses Programm erzeugt aus einer vom Benutzer erstellten Schnittstelle eine externe Schnittstelle für ASS im kurzen Format. Dabei werden Konsistenzprüfungen durchgeführt, wobei die Einträge in der angelieferten Eingabedatei mit den Daten auf den Parameterdatenbanken verglichen werden. Z.B. wird geprüft, ob überhaupt eine passende Verdichtungsstufe zur Einspeicherung vorhanden ist.
Zur Programmlogik
- Es gibt eine Eingabedatei ASSIN01 und zwei Ausgabedateien ASSOU01 und ASSOU02. Wahlweise kann der Kopfsatz auch auf einer gesonderten Datei angeliefert werden, die dann ASSIN02 heißt. Dies wird im Include SST1222 festgelegt (KOPFORT = '1' : ASSIN02 ist aktiv). Alle vier Dateien sind sequentielle Dateien mit variabler Satzlänge. ASSIN01 bzw. ASSIN02 enthält als ersten Satz einen beschreibenden Kopfsatz, dann folgen auf ASSIN01 die eigentlichen Datensätze, die alle gleich aufgebaut sind.
- Die Angabe KOPFORT im Copy SST1222 kann per Vorlaufkarte übersteuert werden. Zusätzlich sind in dieser Version auf ASSIN01 bzw. ASSIN02 auch Eingaben im line-sequentiellen Format erlaubt. Diese Option wird ebenfalls über Vorlaufkarte gesteuert.
- Der Kopfsatz wird eingelesen und geprüft. Hierbei wird auf die ASS-Parameterdatenbanken zugegriffen und geprüft, ob der Kopfsatz für das betreffende Arbeitsgebiet geeignet ist. Der Kopfsatz wird immer auf die Datei ASSFEHL geschrieben.
- Aus jedem Summensatz der Eingabedatei wird ein Summensatz im
externen Schnittstellenformat aufgebaut und auf ASSOU01
ausgegeben, es sei denn, der angelieferte Satz enthält nur
Null-Einträge. Hierbei wird kleinstes und größtes Wertedatum
pro Wert ermittelt.
Auch die Summensätze werden geprüft. Fehlerhafte Summensätze werden auf die Datei ASSFEHL geschrieben. - Der Endesatz der ASS-externen Schnittstelle wird auf ASSOU01 ausgegeben.
- Der Kopfsatz der ASS-externen Schnittstelle wird auf ASSOU02 geschrieben, wobei hier die minimalen und maximalen Zeiträume, die vorher ermittelt wurden, berücksichtigt werden.
Aufbau des beschreibenden Satzes
01 KOPFSATZ, 05 SL BIN FIXED (15), /* SATZLAENGENFELD: ANZAHL EIN- */ /* TRAEGE IN EL_TAB * 12 + 2 */ 05 AGNR BIN FIXED (15), /* NUMMER DER ARBEITSGEBIETS */ 05 EL_TAB (325), /* 325 IST DIE MAXIMALE ZAHL */ /* VON EINTRAEGEN. DIE TAT- */ /* SAECHLICHE ZAHL WIRD AUS DEM */ /* SATZLAENGENFELD BERECHNET. */ 10 EL_ART BIN FIXED (15), /* ART DES EINTRAGES */ /* 1: ORDNUNGSBEGRIFF */ /* 2: SCHLUESSEL (KEY) (REL) (IKY) (JRE) */ /* 3: WERT MIT ZEIT (JJMM) */ /* 4: WERT MIT ZEIT (JJMMTT) */ /* 5: Schlüssel mit Ausprägung ?! (FIX) */ /* 6: Schlüssel nur im Kopfsatz (ADD) */ /* SONST: ELEMENT WIRD IGNORIERT*/ 10 EL_NR BIN FIXED (15), /* BEI SCHLUESSELN SCHLUESSELNR. */ /* BEI WERTEN WERTENUMMER */ /* SONST 0 */ 10 EL_DIST BIN FIXED(15), /* DISTANZ DES EINTRAGS (AUSPRAE-*/ /* GUNG, ORDNUNGSBEGRIFF ODER */ /* WERTEINHALT) IM SUMMENSATZ, */ /* BEZOGEN AUF DEN SATZANFANG */ 10 EL_LTH BIN FIXED (15), /* LAENGE DES EINTRAGS IM SUMMEN-*/ /* SATZ */ 10 EL_DIST_DAT BIN FIXED (15), /* BEI WERTEEINTRAEGEN: */ /* DISTANZ DES ZUGEHOERIGEN */ /* WERTEDATUMS (JJMM/JJMMTT)*/ /* IM SUMMENSATZ */ /* SONST 0 */ 10 EL_WE_ART BIN FIXED (15); /* BEI WERTEEINTRAEGEN: */ /* ZUGEHOERIGE WERTEART */ /* 0 : BESTAND */ /* 1 : BEWEGUNG */ /* SONST 0 */
Aufbau der Summensätze der Eingabedatei
Die Summensätze müssen alle im Kopfsatz angekündigten Datenfelder an der angekündigten Position enthalten. Schlüsselinhalte und Ordnungsbegriff werden im Character-Format erwartet.
Werte werden in gepackter Form erwartet. Die Längenangabe im Kopfsatz gibt die Länge in Bytes an. DEC FIXED(L) ist (L/2 (abgerundet) + 1) Bytes lang. Beispiel: DEC FIXED(5) ist 3 Bytes lang. Ein Wertedatum hat stets das Format CHAR(04) in der Form JJMM.
Beispiel:
Es soll eine externe Schnittstelle erzeugt werden fürArbeitsgebiet 1, Schlüssel LAND, KREIS, BAUSPARTARIF Schlüsselnr. 1 , 11 , 4 Werte BRUTTO_STUECK, BRUTTO_BAUSPARSUMME Wertenr. 3 , 4 Anlieferung Bestand (0) , Bewegung (1)
Der Kopfsatz sieht wie folgt aus:
01 KOPFSATZ, 05 SL BIN FIXED (15) INIT(62), 05 AGNR BIN FIXED (15) INIT(1), /* ARBEITSGEBIET */ /* SCHLUESSEL LAND */ 05 EL_ART_LAND BIN FIXED (15) INIT(2), 05 LAND_NR BIN FIXED (15) INIT(1), 05 LAND_DIST BIN FIXED (15) INIT(1), 05 LAND_LTH BIN FIXED (15) INIT(12), 05 LAND_DIST_DAT BIN FIXED (15) INIT(0), 05 LAND_WE_ART BIN FIXED (15) INIT(0), /* SCHLUESSEL KREIS */ 05 EL_ART_KREIS BIN FIXED (15) INIT(2), 05 KREIS_NR BIN FIXED (15) INIT(11), 05 KREIS_DIST BIN FIXED (15) INIT(13), 05 KREIS_LTH BIN FIXED (15) INIT(12), 05 KREIS_DIST_DAT BIN FIXED (15) INIT(0), 05 KREIS_WE_ART BIN FIXED (15) INIT(0), /* SCHLUESSEL TARIF */ 05 EL_ART_TARIF BIN FIXED (15) INIT(2), 05 TARIF_NR BIN FIXED (15) INIT(4), 05 TARIF_DIST BIN FIXED (15) INIT(25), 05 TARIF_LTH BIN FIXED (15) INIT(2), 05 TARIF_DIST_DAT BIN FIXED (15) INIT(0), 05 TARIF_WE_ART BIN FIXED (15) INIT(0), /* WERT BRUTTO STUECK */ 05 EL_ART_B_STCK BIN FIXED (15) INIT(3), 05 B_STCK_NR BIN FIXED (15) INIT(3), 05 B_STCK_DIST BIN FIXED (15) INIT(27), 05 B_STCK_LTH BIN FIXED (15) INIT(4), 05 B_STCK_DIST_DAT BIN FIXED (15) INIT(31), 05 B_STCK_WE_ART BIN FIXED (15) INIT(1), /* WERT BRUTTO BAUSPARSUMME */ 05 EL_ART_B_SUM BIN FIXED (15) INIT(3), 05 B_SUM_NR BIN FIXED (15) INIT(4), 05 B_SUM_DIST BIN FIXED (15) INIT(35), 05 B_SUM_LTH BIN FIXED (15) INIT(8), 05 B_SUM_DIST_DAT BIN FIXED (15) INIT(43), 05 B_SUM_WE_ART BIN FIXED (15) INIT(1);
Aufbau eines Summensatzes (Datenteil ohne Satzlängenfeld)
Die Ausprägungen obiger Schlüssel seien Bayern, Muenchen, T1, die Werteinhalte 112 und 120233334 zum Datum Jan. 1992 bzw. Februar 1992. Dann sieht der zugehörige Summensatz folgendermaßen aus: (Die Zwischenräume grenzen die einzelnen Einträge in diesem Beispiel nur der Übersichtlichkeit halber ab, darunter sind einige Angaben aus dem Kopfsatz markiert.)
BAYERN MUENCHEN T1 9201 9202 ccecdd444444 decdcccd4444 ef 0012 ffff 00010334 ffff 218595000000 445538550000 31 001c 9201 0002233c 9202 LAND_LTH---- ^ KREIS_DIST ^ B_STCK_DIST_DAT = 12 = 13 = 31
Anforderungen an die Eingabedatei
Sie muss alle Schlüssel des gewünschten Arbeitsgebietes enthalten, die für die geplante Datenübernahme erforderlich sind. Dies sind alle Schlüssel aus allen denjenigen aktiven Verdichtungsstufen, die durch die gewünschte Einspeicherung eines Wertes betroffen sind, in denen der Wert also verwendet wird.
Es muss wenigstens ein Wert des gewünschten Arbeitsgebietes enthalten sein, der in einer nicht stillgelegten Verdichtungsstufe eingespeichert wird. Der Ordnungsbegriff darf fehlen.
Kommt ein Wert in einem Summensatz mehrfach vor, so kann der Wert in diesem Summensatz zu einem Datum nur einmal angeliefert werden. Ein Wert darf entweder nur als Bestand oder als Bewegung vorkommen. Alle Bestandswerte müssen dasselbe Datum enthalten. Mehrere Werte dürfen auf dasselbe Wertedatum Bezug nehmen.
Verwendung einer Metatabelle
Die Beschreibungen der angelieferten Summensätze in der Datei
ASSOU01 können statt aus dem Kopfsatz auch aus einer Tabelle
( = Metatabelle) geholt werden.
Diese Metatabelle kann Informationen aus mehreren
Arbeitsgebieten enthalten. Das für die Erstellung der externen
Schnittstelle relevante Arbeitsgebiet wird dann in der
Vorlaufkarte angegeben.
Ferner können in der Metatabelle Feldformate bestimmt werden.
Z.B. können Werteinhalte nicht nur als dezimal gepackt,
sondern auch in binärer Form oder im Picture-Format angeliefert
werden.
Die Metatabelle wird in der JCL unter dem DD-Namen ASSIN02
angegeben.
Syntax der Metatabelle
Um die Informationen aus dem richtigen Arbeitsgebiet aus der Metatabelle herauszufiltern, muss die Tabelle folgenden Aufbau haben :
AG-Zeile
TAB-Zeile
Beschreibende Sätze
.
.
.
neue AG-Zeile oder Datei-Ende (kennzeichnet Ende der
Information über betreffendes AG )
Leerzeilen sind erlaubt und werden überlesen.
Aufbau der AG-Zeile
Spalte | Inhalt |
---|---|
1 - 2 | 'AG' |
4 - 7 | Arbeitsgebietsnummer, Format PIC '9999' |
9 - 16 | Werteanlieferungsart : 'BESTAND' / 'BEWEGUNG' |
Aufbau der TAB-Zeile
Spalte | Inhalt |
---|---|
1 - 3 | 'POS' (wird als einziges abgefragt) |
4 - 72 | beliebig, z.B.
' LEN KEY TYP FORMAT BEZEICHNUNG POSDAT' |
Aufbau der Beschreibenden Sätze
Spalte | Inhalt |
---|---|
1 - 4 | Position des Feldes in den angelieferten Summensätzen, Format PIC 9999 |
6 - 9 | Länge des Feldes, Format PIC 9999 |
11 - 14 | Nummer des Elements, also Schlüssel- oder Wertenummer |
16 - 18 | Typ des Elements : 'KEY' / 'VAL' / 'VAT' / 'ADD' / 'FIX' / 'ORD' / 'REL' / 'IKY' / 'JRE' |
20 - 25 | Feldformat : 'CHAR' / 'NUMBER' / 'PACKED' / 'BINARY' 'NUMKST' |
27 - 46 | Bezeichnung, wird nicht abgefragt |
48 - 51 | Position des Datums, nur relevant für Werteeinträge ( Typ 'VAL' ), Format PIC 9999 |
Bedeutung der Element-Typen
Typ | Bedeutung |
---|---|
KEY | Schlüssel im ASS-Sinne |
VAL | Wert im ASS-Sinne, Zeit im Format JJMM |
VAT | Wert im ASS-Sinne, Zeit im Format JJMMTT |
FIX | Schlüssel im ASS-Sinne, aber als Ausprägung wird in
den Sätzen der externen Schnittstelle stets die
Pseudoausprägung '?!' eingesetzt. Längen und Positionsangabe brauchen in der Metatabelle nicht angegeben zu werden. |
ADD | Schlüssel im ASS-Sinne, der im betreffenden Arbeitsgebiet
verwendet wird, aber für die Einspeicherung
irrelevant ist, da er in keiner von der Einspeicherung
betroffenden Verdichtungsstufe ausgeprägt ist. Längen und Positionsangabe brauchen in der Metatabelle nicht angegeben zu werden. |
ORD | Ordnungsbegriff |
REL | Relation im ASS-Sinne
Line-Sequential: R Relationsnummer |
IKY | Schlüssel im ASS-Sinne
Nur für Indexschlüssel: Index ausgeben statt Langtextierung Line-Sequential: I Schlüsselnummer |
JRE | Relation im ASS-Sinne
Nur für Indexrelationen: Index ausgeben statt Langtextierung Line-Sequential: J Relationsnummer |
Bedeutung der Feld-Formate
Format | Bedeutung |
---|---|
CHAR | Character(s) |
PACKED | Dezimal gepackte ganze Zahl, maximal 15 Stellen |
BINARY | ganze Zahl im binären Format, maximal 4 Bytes lang. |
NUMBER | Ganze Zahl im Format PIC SZ(n) (COBOL-Notation), 1 <= n <= 15 |
NUMKST | Ganze Zahl im Format PIC SZ(n) (COBOL-Notation), 1 <= n <= 21 mit Kommastellen und Tausenderpunkt |
Beispiel für Metatabelle:
0---+----1----+----2----+----3----+----4----+----5----+---- AG 0032 BESTAND POS LEN KEY TYP FORMAT BEZEICHNUNG POSDAT -------- 2901 ADD CHAR ARTIKEL 0011 0001 1903 KEY CHAR VERTRAGSTYP 0023 0002 1903 VAL BINARY STAT_SUMME 0031 0015 0003 1901 VAL NUMBER ANZAHL 0001 0025 0010 ORD CHAR AG 0033 BEWEGUNG POS LEN KEY TYP FORMAT BEZEICHNUNG POSDAT -------- 2901 ADD CHAR ARTIKEL --------- 1903 FIX CHAR VERTRAGSTYP 0023 0002 1903 VAL BINARY STAT_SUMME 0031 0015 0003 1901 VAL NUMBER ANZAHL 0001
Verwendung vom Line-Sequentiellen Format
PCL1081 kann Eingaben im line-sequential Format verarbeiten. Dabei gelten die gleichen Voraussetzungen, wie bereits beschrieben. Die Unterschiede werden im weiteren Verlauf detailliert beschrieben.
Aufbau des beschreibenden Satzes
01 KOPFSATZ, 05 AGNR * NUMMER DER ARBEITSGEBIETS * 05 EL_TAB (800), * 800 IST DIE MAXIMALE ZAHL VON EINTRAEGEN * 10 EL_ART * ART DES EINTRAGES * * 1: ORDNUNGSBEGRIFF * * 2: SCHLUESSEL (KEY) (REL) (IKY) (JRE) * * 3: WERT, ZEITFORMAT JJMM * * 4: WERT, ZEITFORMAT JJMMTT * * 5: Schlüssel mit Ausprägung ?! (FIX) * * 6: Schlüssel nur im Kopfsatz (ADD) * * SONST: ELEMENT WIRD IGNORIERT * 10 EL_NR * BEI SCHLUESSELN SCHLUESSELNUMMER, * * BEI WERTEN WERTENUMMER * * SONST 0 * 10 EL_SPNR * SPALTENNUMMER IM SUMMENSATZ (BEGINNEND * * AB DER ERSTEN SPALTE) BEZOGEN AUF DEN * * SATZANFANG * 10 EL_DIST * DISTANZ DES EINTRAGS (AUSPRAEGUNG, ORDN- * * UNGSBEGRIFF ODER WERTEINHALT) INNERHALB * * DER SPALTE, BEZOGEN AUF SPALTENANFANG * 10 EL_LTH * LAENGE DES EINTRAGS IN DER SPALTE * 10 EL_SPNR_DAT * BEI WERTEEINTRAEGEN: SPALTENNUMMER IM * * SUMMENSATZ DES ZUGEHOERIGEN WERTEDATUMS * 10 EL_DIST_DAT * BEI WERTEEINTRAEGEN: DISTANZ DES ZUGE- * * HOERIGEN WERTEDATUMS (JJMM/JJMMTT) * * SONST 0 BZW. BLANK * 10 EL_WE_ART * BEI WERTEEINTRAEGEN: ZUGEHOERIGE WERTEART* * 0 : BESTAND * * 1 : BEWEGUNG * * SONST 0 bzw. blank *
Die Angaben werden auf ASSIN01 bzw. ASSIN02 z.B. semikolonsepariert und im Character-Format angeliefert.
Aufbau der Summensätze der Eingabedatei
Alle Inhalte werden im Character-Format erwartet. Die Spaltentrennung erfolgt durch ein geeignetes Trennzeichen (z.B. Semikolon). Anhand dessen werden die Spaltennummern ermittelt und mit denen aus dem Kopfsatz verglichen. Leerspalten sind zulässig. Blanks innerhalb einer Spalte sind möglich. Bei Werten dürfen auch führende bzw. schleppende Nullen vorhanden sein. Kommata sowie Tausenderpunkt werden ebenfalls verarbeitet.
Beispiel für Line-Sequential
Der Kopfsatz für obiges Beispiel sieht wie folgt aus:
1;2;1;1;1;6;;;;3;3;2;1;3;2;4;0;2;4;3;1;8;;;; ...
AGNR;L_ART;L_NR;L_SP;L_DIST;L_LTH;L_SP_DAT;L_DIST_DAT;L_WE_ART; B_STCK_ART;B_STCK_NR;B_STCK_SP;B_STCK_DIST;B_STCK_LTH; B_STCK_SP_DAT;B_STCK_DIST_DAT;B_STCK_WE_ART; ...
Der Summensatz für obiges Beispiel sieht wie folgt aus:
BAYERN ; 1129201 ; MUENCHEN ; ... Spalte1 Spalte2 Spalte3 usw.
Vorlaufkarte
Die Vorlaufkarte wird in der JCL mit dem DD-Namen ASSCO definiert. Unterschiedliche Optionen werden durch Kommata getrennt, Blanks werden überlesen, Semikolon beendet die Eingabe, nach einem Gleichheitszeichen wird eine numerische Eingabe zwischen 0 und 32767 erwartet. Soll ohne Metatabelle gearbeitet werden, so ist in der Vorlaufkarte nur ein Semikolon anzugegeben.
Mögliche Optionen
Option | Bedeutung |
---|---|
METATAB | Beschreibende Informationen für die angelieferten Summensätze werden aus der Metatabelle geholt ( DD-Name ASSIN02 ) |
AGNR=xxxx | Angabe des Arbeitsgebietes, für das
eine externe Schnittstelle erstellt
werden soll. Ist nur für die Option METATAB relevant. |
KOPFORT=x | Kopfsatz befindet sich auf ASSIN01 bzw. ASSIN02 (Include SST1222 übersteuern) |
FORMAT=x | Kopf- und Summensatz werden im angegebenen Format erwartet (Bsp. L für line-seq.). |
KOMMA=x | Angegebenes Zeichen wird als Komma interpretiert. Ist nur für Line-sequentielles Format von Bedeutung. Optional. |
TP=x | Angegebenes Zeichen wird als Tausenderpunkt interpretiert. Nur für Line-sequentielles Format von Bedeutung. Optional. |
TRENNZ=x | Angegebenes Zeichen wird als Trennzeichen bei Line-sequentiell interpretiert. Optional. |
CONT=x | Angegebenes Zeichen wird als Fortsetzungszeichen für Folgesätze im Kopfsatz bei Line-sequentiell interpretiert. Standardmäßig ist dies das /. |
CSV | Ausgabe im csv-Format |
TAB | Als Trennsymbol für die Eingabedatei (line-sequential) und die csv-Ausgabe wird statt des Semikolons der Tabulator verwendet. |
FEHLER=xxxxxxxxxx | Maximale Anzahl fehlerhafter Summensätze, die toleriert werden. |
NO_SUSATZ_OK |
Standard: Fehler ASS7056, wenn nur fehlerhafte
oder gar keine Summensätze geliefert werden,
also kein Wert ausgegeben werden kann.
NO_SUSATZ_OK: Situation wird toleriert und die Werte im Kopfsatz mit Datum der jeweils letzten Einspeicherung pro Wert angegeben |
WE_LEER_OK | Leere Werteinhalte werden ignoriert |
KY_MISS_OK | Schlüssel, die für die Einspeicherung eigtl. relevant sind, dürfen fehlen. In PCL1001 können sie dann z.B. über die Vorlaufkartenoption "INHALT(...)= ..." mit einer Standardausprägung versorgt werden. |
SP_NAME_ANZ = n |
1 <= n <= 100
Die ersten n Zeilen der Eingabeschnittstelle werden ignoriert. So können z.B. Überschriftzeilen überlesen werden, welche sonst als Summensätze interpretiert würden. Nur für FORMAT=L (line-sequentiell) relevant. |
SP_NAME = n |
1 <= n <= 100
s.u. |
BLANK_AU = t |
t kann auch mit ' geklammert werden.
Auszugebende Ausprägungen, die leer sind, werden durch den Ausdruck t ersetzt. Zu lange Inhalte werden abgeschnitten. Bei Relationsinhalten werden alle leeren Teilschlüssel ersetzt. |
BLANK_TXT = t |
t kann auch mit ' geklammert werden.
Auszugebende Textierungen, die leer sind, werden durch den Ausdruck t ersetzt. Zu lange Inhalte werden abgeschnitten. Bei Relationsinhalten gilt dies für die gesamte Relation. |
ORD = t |
t kann auch mit ' geklammert werden.
Ordnungsbegriff für den Kopfsatz (maximale Länge ist 28). |
SP_NAME
:
Nur für FORMAT=L (line-sequentiell) relevant: Normalerweise
müssen die angelieferten Schlüssel, Werte und Wertezeiträume
im Kopfsatz über die Spaltennummer in der Eingabeschnittstelle
identifiziert werden. Werden dort dann die Spalten umsortiert
oder neue eingefügt, müssen jedesmal die Spaltennummern im
Kopfsatz angepasst werden. Einfacher hat man es, wenn es in der
Eingabeschnittstelle eine Überschriftzeile gibt, die jeder Spalte
einen eindeutigen Namen gibt.
Gibt man dann in der Vorlaufkarte SP_NAME = n an (die Überschriftzeile
ist die n-te Zeile der Eingabeschnittstelle), so können (und
müssen) im Kopfsatz die Schlüssel, Werte und Zeiträume über
ihren jeweiligen Spaltennamen identifiziert werden.
Die ersten n - 1 Zeilen werden außerdem wie bei SP_NAME_ANZ
überlesen. SP_NAME_ANZ und SP_NAME können auch gleichzeitig
verwendet werden: Gibt es z.B. 3 Überschriftzeilen, von denen
die 2. die Spaltennamen enthält, so sind SP_NAME = 2 und
SP_NAME_ANZ = 3 anzugeben.
Die angesprochenen Spaltennamen müssen in der Eingabeschnittstelle
eindeutig sein. Führende und abschließende Blanks werden ignoriert und
Kleinbuchstaben werden von Großbuchstaben unterschieden. Bei nicht
angesprochenen Spalten wird der Name nicht überprüft.
8.12 Abzug der Summendatenbank ins Ladeformat transformieren PCL1083
Mit dem Programm PCL1083 kann der Abzug einer Summendatenbank von PCL1024 und PCL1124 transformiert werden zum Laden mit PCL1013.
Beim Einsatz von PCL1124 ist zu beachten, dass nur genau eine Datenbank damit abgezogen werden darf, da PCL1083 nicht zwischen primären und sekundären Summendatenbanken unterscheidet. Das Programm ist also gedacht für die Migration auf ein anderes Datenbanksystem oder das Zurückladen nach einer abgebrochenen Folgeeinspeicherung oder Reorganisation.
Ablauf-Skizze
DD-Name | Dateiname ASS-PC | Beschreibung |
---|---|---|
ASSCO | $ASSVLK/T1083.VLK | Vorlaufkarte, optional |
PROTO | $ASSPTK/PCL1083.PTK | Protokoll (FBA 133) |
ASSAINN | $ASS/AG_SUM.EBC | Summendatenbankabzug von PCL1024/PCL1124 |
ASSAONN | $ASS/AG_SUM.UPD | Ladedatei für PCL1013 (VB 20004) |
Außer der Textdatenbank wird auf keine Datenbank zugegriffen.
Mögliche Optionen
Option | Bedeutung |
---|---|
DB2 | Die erzeugte Ausgabedatei kann anschließned mit dem DB2-LOAD-Utility geladen werden. |
DB2BL | wie DB2, Ausgabedatei wird im festgeblockten Format erstellt |
ADA | Die erzeugte Ausgabedatei kann anschließned mit dem ADABAS-LOAD-Utility geladen werden. |
COBOL | Diese Option wird ignoriert. |
Bei VSAM kann statt PCL1013 auch die Funktion REPRO des IBM-Utility IDCAMS benutzt werden. Bei PCL1083 ist dann die Option ADA anzugeben.
Bei ADABAS kann statt PCL1013 auch das SAG-Utility benutzt werden, das nach PCL1002 zum Laden eingesetzt wird. Nach PCL1083 mit der Option ADA ist dabei als Exit 6 MST0100 anzugeben.
Bei dem Datenbanksystem DL/I kann statt PCL1024 das IBM-Utility DFSURGU0 und statt PCL1083 nebst PCL1013 das IBM-Utility DFSURGL0 benutzt werden.
8.13 Datenbank für Standard-User-Exit laden/bearbeiten/abziehen (PCL1230/PCL1231)
Das Programm PCL1231 kann eine Datenbank zur Textierung
von Anforderungen laden. Diese Datenbank wird dann, falls entsprechend installiert (s. Installationsvariablen MCL0097-AKTIV bzw. AG-TextDB) vom
USER-Exit MCL0097 zum Auswertungszeitpunkt
eingelesen, falls zusätzliche Textierungen angefordert
sind (Inhaltsbezeichnung oder -abkürzung bei Schlüssel bzw. Relation oder &&KSiEn in Überschriften).
Auf diese Weise können Adressen oder Ähnliches in eine Anforderung eingetragen werden.
Die User-Exit-DB wird allerdings nur bei Schlüsseln/Relationen ausgewertet, zu denen kein sonstiger kundeneigener User-Exit
definiert ist (durch MCL0897 oder Änderung von MCL0097 selber durch das Copy SST2165).
Mit PCL1230 kann die User-Exit-DB abgezogen werden (s.u.).
Für die Auswertung unter ASS-Excel ist zu beachten: Die erweiterten Textangaben stehen im Bezüge-Blatt dann zur Verfügung, wenn bei "Zusätze --> Seitenüberschriften" formal der Begriff &&KSiE1 angefordert wurde (also z.B. &&KS2E1 für den zweiten Kopf-/Zeilenschlüssel).
PCL1231
Das PCL1231 lädt dazu aus einer Schnittstelle (s.u. ASSIN) eine speziell eingerichtete Datenbank. In ASS unter 32-Bit-Windows ist dies die DSTTXT, in allen anderen Versionen wird eine Summen-DB verwendet, für die eine Arbeitsgebietsnummer reserviert werden muss, siehe HINSTALL, AG-TextDB. Am PC muss bei einem erstmaligen Laden die VLK-Option DELETE_ALL (s.u.) verwendet werden, damit die Datenbank auch initialisiert wird.
Ablaufplan
Datei-Definitionen
DD-Name | Dateiname ASS-PC | Beschreibung |
---|---|---|
ASSCO | $ASSVLK/T1231.VLK | Vorlaufkarte, darf leer sein |
ASSLST (FBA 133) | $ASSPTK/PCL1231.PTK | Protokoll |
ASSIN (VB) | $ASS/PCL1231.TXT | Eingabedatei, wird nur gelesen. Host: Alte Schnittstellen können durch Dateiverkettung zusammen mit der neuen wieder eingespielt werden. |
Mögliche Optionen
Option | Bedeutung |
---|---|
DELETE_ALL | Die User-Exit-DB wird vor Verarbeitung der Eingabeschnittstelle gelöscht (PC: Open-Output auf DB-Datei; Host: Löschen aller Segmente auf der DB). Die Datenbank wird dann aus der Eingabeschnittstelle neu aufgebaut. |
TRENNER_IM_TEXT | Muss angegeben werden, wenn man Textierungen mit Semikolon einspeichern will. Weitere Infos s.u. Unwirksam (weil unnötig), wenn die Felder der Eingabedatei tabulatorgetrennt sind oder die Datei von PCL1230 erzeugt wurde (da dann das Format über das "V" bzw. "W" im 1. Feld des Kopfsatzes festgelegt wird). |
Satzaufbau von ASSIN:
Alle Einträge der Eingabeschnittstelle sind lesbare Zeichen; die einzelnen Felder werden mit Semikolon oder Tabulator getrennt, was von PCL1231 automatisch erkannt wird: Der Tabulator gilt, wenn der erste Satz der Eingabedatei einen Tabulator enthält, auch wenn dies der von PCL1230 generierte Kopfsatz ist. Führende Leerzeichen werden berücksichtigt.
Zu beachten bei Vorlaufkartenoption "TRENNER_IM_TEXT" (bzw. "V" im 1. Feld des von PCL1230 generierten Kopfsatzes):
- Eine Textierung muss in Gänsefüßchen gesetzt werden, wenn diese ein Semikolon enthält, z.B.
...;"Etwas Text; noch mehr Text";...
- Ein führendes Gänsefüßchen wird nicht zur Textierung gezählt und ein schließendes Gänsefüßchen erwartet.
Steht eine Textierung in Gänsefüßchen, muss jedes Gänsefüßchen, welches zur Textierung gehört, zweimal geschrieben werden, z.B. wird der Text"Ein "";"" in einer Textierung"
alsEin ";" in einer Textierung
auf die DB gespeichert.
Die Sätze in ASSIN sind wie folgt aufgebaut:
Feld | Bedeutung | Max. Länge des Eintrages |
---|---|---|
1 | Schlüssel- oder Relationsnummer. Relationen werden mit "R" gekennzeichnet, z.B. "R100" | - |
2 | Zu textierender Schlüsselinhalt | 50 |
3 | Textierung bei Schlüsselinhaltsbezeichnung | 50 |
4 | Textierung bei Schlüsselinhaltsabkürzung | 50 |
5 | Textierung bei &&KSiE1 (i-ter Kopf-/Zeilenschlüssel) | 100 |
6 | Textierung bei &&KSiE2 (i-ter Kopf-/Zeilenschlüssel) | 100 |
7 | Textierung bei &&KSiE3 (i-ter Kopf-/Zeilenschlüssel) | 100 |
8 | Textierung bei &&KSiE4 (i-ter Kopf-/Zeilenschlüssel) | 100 |
9 | Textierung bei &&KSiE5 (i-ter Kopf-/Zeilenschlüssel) | 100 |
10 | Textierung, wenn beim Schlüssel die Mengenfunktion (NUR_MENGEN) aktiviert ist. | 50 |
Es müssen nicht alle Textfelder belegt werden. Fehlt das 10. Feld, wird bei Schlüsseln mit Mengenfunktion das 3. Feld herangezogen (jedoch nur, wenn das 10. Feld bei allen Inhalten des Schlüssels fehlt).
Beispiel:
00110;1000;;;Baumann;Baumannstr 10;88888 Baudorf;Baum_inter-media.de
00110;1001;;;Hirmer;Hirmerstr 10;88888 Hierdorf;066/1234
00110;1002;;;Krause;Krausstr 10;88888 Krausen;+0 43-(0)66 66 / 123
00110;1003;;;Fiedler, Kl;Fiedlbach 10;88888 Fiedling;Fied_i-m.de
PCL1230
Mit PCL1230 wird die User-Exit-DB abgezogen. Die Ausgabedatei kann wiederum direkt mit PCL1231 geladen werden.
Ablaufplan
Datei-Definitionen
DD-Name | Dateiname ASS-PC | Beschreibung |
---|---|---|
ASSCO | $ASSVLK/T1230.VLK | Vorlaufkarte, darf leer sein |
ASSLST (FBA 133) | $ASSPTK/PCL1230.PTK | Protokoll |
ASSCSV (VB) | $ASS/PCL1231.TXT | Ausgabedatei, wird nur geschrieben. |
Mögliche Optionen
Option | Bedeutung |
---|---|
KEY | Hiermit können statt der gesamten User-Exit-DB die Textierungen zu einzelnen Schlüsseln/Relationen abgezogen werden. Mit "KEY = nnn" wird der Schlüssel mit Nr. nnn abgezogen, mit "KEY = Rnnn" die Relation nnn. Mehrfachnennungen wie "KEY = 123 KEY = 345 KEY = R2" sind möglich, das "=" kann auch weggelassen werden. |
TAB | Statt des Semikolons wird der Tabulator als Trennzeichen verwendet. Wird die erzeugte ASSIN wieder mit PCL1231 verarbeitet, erkennt dieser das Trennzeichen automatisch. |
TRENNER_IM_TEXT | Muss angegeben werden, wenn Textierungen das Semikolon enthalten und TAB nicht angegeben wurde, sonst bricht das Programm mit Fehler ab. Textierungen mit Semikolon oder Gänsefüßchen werden dann in Gänsefüßchen eingeschlossen. Gänsefüßchen, die zur Textierung selbst gehören, werden dann durch jeweils 2 Gänsefüßchen dargestellt. Ein derartiger Abzug wird im 1. Feld der Kopfzeile durch ein "V" statt einem "W" gekennzeichnet, damit PCL1231 die Datei entsprechend verarbeiten kann. Unwirksam, wenn auch TAB angegeben wurde, da Textierungen keinen Tabulator enthalten dürfen und somit keine Verwechslungsgefahr besteht. |
8.14 FTP im Text-Format (PCL1174 und PCL1175)
Beim ftp zwischen Windows und BS2000 ist der binäre Modus nur durch die beiden folgenden Anweisungen zu erreichen:
- --> binary
- --> quote ftype binary
Alternative Lösung für das Übertragen des Textdatenbank- oder
Arbeitsgebietsabzugs:
PCL1174 und PCL1175 können für jede Datei mit fixer Satzlänge (FB)
80, 96 und 166 genutzt werden. Die Übertragung dieser Datei kann
binär oder im Textformat (ASCII ohne Zeilenterminierung) erfolgen,
wobei dies durch eine doppelt so große Ausgabe von PCL1174 erreicht
wird.
- MVS, OS/390 und z/OS
- ASSCO, Vorlaufkarte FB 80
- ASSIN und ASSOUT jeweils FB 80
- ASSI96 und ASSO96 jeweils FB 96
- ASSI166 und ASSO166 jeweils FB 166
- BS2000
- ASSCO, Vorlaufkarte, variabel lang
- ASSIN und ASSOUT fixe Satzlänge 80
- ASSI96 und ASSO96 fixe Satzlänge 96
- ASSI166 und ASSO166 fixe Satzlänge 166
- UNIX und WINDOWS
- ASSCO hat Dateinamen $ASSVLK/T1174.VLK bzw. $ASSVLK/T1175.VLK
- ASSIN hat Dateinamen $ASS/ASSIN.DAT
- ASSOUT hat Dateinamen $ASS/ASSOUT.DAT
- ($ASSVLK und $ASS wie üblich aus ASS.AIN)
Mit der linksbündigen Angabe FB80 oder FB96 oder FB166 wird die
entsprechende Länge festgelegt.
Bei FB80 wird über ASSIN und ASSOUT zugegriffen,
bei FB96 wird über ASSI96 und ASSO96 zugegriffen
und bei FB166 wird über ASSI166 und ASSO166 zugegriffen.
8.15 Interne Schnittstellendatei in festgeblockte Schnittstellendatei umwandeln PCL1200
Datenfluss
1 Interne Schnittstelle //LADE VB 10000 $ASS/AE.DAT 2 Protokoll //PROTO FB 133 $ASSPTK/PCL1200.PTK 3 Ausgabedatei //AUSFB FB 80 $ASS/AEFB.DAT |
Funktionsbeschreibung
In vielen Systemumgebungen können keine variabel geblockten Dateien via Filetransfer übertragen werden. Um nun eine Interne Schnittstelle von ASS nach ASS-PC zu übertragen, muss die Datei in ein festgeblocktes Format umgewandelt werden. Bei der Konvertierung muss darauf geachtet werden, dass sowohl die binären Daten, als auch die Textdaten, erhalten bleiben.
Mit dem Programm PCL1200 kann eine Interne
Schnittstellendatei in ein spezielles festgeblocktes
Dateiformat gebracht werden.
Im Protokoll wird die Anzahl der gelesenen Sätze
protokolliert, sowie die Anzahl der geschriebenen
festgeblockten Sätze. Dabei verteilt sich ein Satz der
Internen Schnittstelle im Allgemeinen über mehrere Sätze der
festgeblockten Datei.
8.16 Externe Schnittstellendatei in festgeblockte Schnittstellendatei umwandeln PCL1203
Datenfluss
1 Externe Schnittstelle //LADE VB <= 10000 (IBM und Siemens) $ASS/ASSINVB Vorlaufkarte //ASSCO $ASSPTK/T1203.VLK 2 Protokoll //PROTO FB 133 $ASSPTK/PCL1203.PTK 3 Ausgabedatei //AUSFB FB 80 $ASS/ASSIN01 |
Funktionsbeschreibung
Um Externe Schnittstellendateien von ASS nach ASS-PC übernehmen zu können, müssen auch diese in ein festgeblocktes Format umgesetzt werden, wenn zur Übertragung in die andere Systemumgebung ein Filetransfer nötig ist.
Mit dem Programm PCL1203 kann eine Externe Schnittstellendatei in ein spezielles festgeblocktes Dateiformat gebracht werden. Da Externe Schnittstellendateien kein Satzlängenfeld innerhalb der logischen Daten enthalten, wertet PCL1203 das Satzlängenfeld aus und übernimmt die Satzlängeninformation in die festgeblockte Ausgabedatei. Wie bei festgeblockten Internen Schnittstellendateien auch, erstreckt sich ein Schnittstellensatz im Allgemeinen über mehrere festgeblockte Sätze.
PCL1203 eignet sich außerdem dazu, die Dateien ASSINKY und ASSINGR für PCL1036 in das festgeblockte Dateiformat umzusetzen, damit Schlüsseltextierungen und Schlüsselgruppierungen vom Host in die ASS-PC Umgebung übernommen werden können.
8.17 Selektiven Arbeitsgebietsabzug erstellen PCL1204
Funktionsbeschreibung
Das Programm PCL204 erstellt - wie PCL1004 - einen
Arbeitsgebietsabzug vom angegebenen Arbeitsgebiet. Hierfür
sichert PCL1204 die Informationen aus Werte-, Schlüssel- und
Steuerungsdatenbank, die das Arbeitsgebiet beschreiben, auf
eine sequentielle Datei.
Aus der Schlüsseldatenbank werden jedoch nur Informationen
zu den Schlüsseln abgezogen, die in der Eingabedatei
AUSPRDAT angegeben sind.
Besonderheiten
Die Datei AUSPRDAT wird im allgemeinen durch das
Programm PCL1001 erstellt.
Das Programm PCL1001 sammelt, bei Angabe der Option PC, in
der Datei ASSKY alle Schlüssel und Schlüsselausprägungen,
die tatsächlich in den angegebenen Externen
Schnittstellendateien vorkommen.
Die Datei ASSKY kann dann, nachdem sie sortiert worden ist,
dem Programm PCL1204 unter dem Linknamen AUSPRDAT übergeben
werden, das dann den selektiven Arbeitsgebietsabzug
erstellt. Für die Sortierung der Datei ASSKY (bzw. AUSPRDAT)
reicht ein einfacher Character-Sort.
Die Ausgabedatei wird mit fester Satzlänge erstellt und kann via Filetransfer in die ASS-PC Zielumgebung überspielt werden. Hier darf bei der Übertragung keinerlei Konvertierung erfolgen.
Datenfluss
1 Werte-DB DST001 DST011 (DLI) DST012 (DLI) DST013 (DLI) 2 Schlüssel-DB DST001 DST021 (DLI) DST022 (DLI) DST023 (DLI) 3 Steuerungs-DB DST031 (DLI) DST032 (DLI) DST033 (DLI) 4 Ausprägungen //AUSPRDT FB 14 $ASS/AUSPRDAT 5 Vorlaufkarte //SYSIN FB 80 $ASSVLK/T1204.VLK 6 Protokoll //PROTO FB 133 $ASSPTK/PCL1204.PTK 7 Ausgabedatei //DATEI FB 166 $ASS/AG.EBC |
Vorlaufkarte:
Inhalt | Bemerkung |
---|---|
PROGRAMM PCL1204 | Standardtext (obligatorisch) |
AGNR=nn | Arbeitsgebietsnummer (obligatorisch) |
Beispiel
Arbeitsgebiet 9 wird mit dem Programm PCL1204
abgezogen.
Inhalt der Vorlaufkarte: PROGRAMM PCL1204,AGNR=09
8.18 Selektiven Arbeitsgebietsabzug laden PCL1205
Funktionsweise
Die Funktionsweise des Programms gleicht im grossen und ganzen der von PCL1005.
Das Programm PCL1205 lädt einen selektiven Arbeitsgebietsabzug, der mit dem Programm PCL1204 am Host erstellt wurde, in die ASS-PC Datenbanken.
Ein weiterer wesentlicher Unterschied zwischen PCL1205 und PCL1005 liegt darin, dass PCL1205 die Eingabedatei nur verarbeiten kann, wenn diese im EBCDIC-Zeichensatz vorliegt. Die Daten aus dem selektiven Abzug werden also i m m e r vom EBCDIC-Zeichensatz in den ASCII -Zeichensatz umgewandelt. ST06-Gruppierungen werden nicht berücksichtigt.
Datenfluss
1 Werte-DB $ASSDB/DST001 Schlüssel-DB $ASSDB/DST002 Steuerungs-DB $ASSDB/DST003 2 Ladebestand $ASS/AG.EBC 3 Vorlaufkarte $ASSVLK/T1205.VLK 4 Protokoll $ASSPTK/PCL1205.PTK 5 Parameter-DB (siehe 1) |
Vorlaufkarte
Inhalt | Bemerkung |
---|---|
PROGRAMM PCL1205 | Muss vorhanden sein als Bestandteil der Vorlaufkartenprüfung. |
AGNR=nn | Muss vorhanden sein als Bestandteil der Vorlaufkartenprüfung. |
DATUM=JJMM | Muss vorhanden sein. Erwartet in der Form JJMM das Datum der letzten Einspeicherung. Muss identisch mit dem Datum im abgezogenen Arbeitsgebiet (PCL1204) sein, das als Datum der letzten Einspeicherung ausgewiesen ist. Wurde noch keine Einspeicherung durchgeführt, lautet der Parameter XXXX. |
,Loeschen | Beim Laden werden sämtliche Konsistenzfelder gelöscht. Das Arbeitsgebiet wird zurückgesetzt. Nach Löschen der zugehörigen Summen-DB kann eine neue Ersteinspeicherung erfolgen. |
,ERSETZ | Alle Schlüssel und Werte des betreffenden Arbeitsgebietsabzugs sollen in der Schlüssel- bzw. Werte-DB vollständig durch die Inhalte des Arbeitsgebietsabzugs ersetzt werden. |
AG_NEU=nn | Der Arbeitsgebietsabzug wird auf das neueste Arbeitsgebiet mit der Nummer nn kopiert. |
Beispiel
Arbeitsgebiet 5 laden und zurücksetzen.
Inhalt der Vorlaufkarte:
PROGRAMM PCL1205,AGNR=05, DATUM=XXXX, Loeschen
Bei aktivem Arbeitsgebietscache muss unbedingt PCL1046 nach abgeschlossener Einspeicherung gestartet werden, bei aktiven Schlüsselcaches muss PCL1089 laufen.
8.19 Arbeitsgebiet inklusive der Summendaten abziehen PCL1304
Funktionsbeschreibung
Mit dem Programm PCL1304 gibt es eine komfortable
Möglichkeit, ein komplettes Arbeitsgebiet mit ausgewählten
Verdichtungsstufen in einem Arbeitsgang komplett abzuziehen
und für ASS-PC verfügbar zu machen.
Die erstellte Abzugsdatei enthält neben den Daten, die das
Arbeitsgebiet beschreiben, auch die Summendaten der
ausgewählten Verdichtungsstufen. Die Abzugsdatei hat feste
Satzlänge und ist in der gleichen Art aufgebaut, wie in
Kapitel 5 beschrieben, die Satzlänge der festgeblockten
Datei beträgt jedoch 8000, bzw. 4000 bzw. 2000 Byte.
Die Ausgabedatei lässt sich via Filetransfer also einfach in die ASS-PC Umgebung einspielen, es dürfen allerdings keine Konvertierungen beim Übertragen vorgenommen werden. In der ASS-PC Umgebung kann man die Datei dann mit dem Programm PCL1305 verarbeiten und hat damit das fertig eingespeicherte Arbeitsgebiet in einem Arbeitsgang in ASS-PC zur Verfügung.
Besonderheiten
PCL1304 bildet automatisch alle Verdichtungsstufenmengen
des Arbeitsgebietes und ergänzt - im Bedarfsfall -
notwendige Verdichtungsstufen automatisch.
Ausgehend von den ausgewählten Verdichtungsstufen werden
dann die notwendigen Daten aus den Parameterdatenbanken
abgezogen und zusammen mit den Summendaten in die
Ausgabedatei gestellt.
Sequentielle Verdichtungsstufen und verteilte Summendatenbanken werden von PCL1304 berücksichtigt. Sequentielle Verdichtungsstufen werden auf die primäre Summendatenbank verlegt, sowie Verdichtungsstufen von sekundären Summendatenbanken. Die Ausgabedatei hat, wie oben bereits erwähnt, feste Satzlänge und darf beim Filetransfer nicht mehr umformatiert werden. PCL1305 erwartet die Daten im EBCDIC-Zeichensatz und in einer der hohen Blockungen von 2/4/8000 Byte.
Datenfluss
1 Werte-DB DST001 DST011 (DLI) DST012 (DLI) DST013 (DLI) Schlüssel-DB DST002 DST021 (DLI) DST022 (DLI) DST023 (DLI) Steuerungs-DB DST003 DST031 (DLI) DST032 (DLI) DST033 (DLI) 2 Summen-DB DST110 DST111 (DLI) bis DST600 (DLI) DST601 (DLI) 3 Vorlaufkarte //VORLAUF FB 80 $ASSVLK/T1304.VLK 4 Protokoll //LISTE FB 133 $ASSPTK/PCL1304.PTK 5 Ausgabedatei //ASSDBAB FB 8000 bzw. //ASSDBA1 FB 2000 bzw. //ASSDBA2 FB 4000 $ASS/ASSDBAB.ALB |
Vorlaufkarte
Inhalt | Bemerkung |
---|---|
PROGRAMM PCL1304 | Muss vorhanden sein als Bestandteil der Vorlaufkartenprüfung. |
AGNR=nn | Muss vorhanden sein als Bestandteil
der Vorlaufkartenprüfung. nn = Nr. des Arbeitsgebiets |
VSTNR=nn,nn,... | Muss vorhanden sein. Erwartet in der Form nn die Nummer der zu sichernden Verdichtungsstufen |
FB2000 oder FB4000 | Mit der Option FB2000 bzw. FB4000 kann das Format der Ausgabedatei beeinflusst werden. Bei FB2000 muss ASSDBA1, bei FB4000 muss ASSDBA2 zugewiesen werden. |
Beispiel
Arbeitsgebiet 1 soll inklusive der
Verdichtungsstufen 1, 3 und 17 abgezogen werden,
Ausgabedatei im FB 2000 Format erstellt werden.
Inhalt der Vorlaufkarte:
PROGRAMM PCL1304, AGNR=01, VSTNR=1, 17, 03, FB2000
8.20 Arbeitsgebiet inklusive der Summendaten laden PCL1305
Datenfluss
Eingabedateien, erstellt mit PCL1304 ASSDBAB.ALB 3 Protokoll $ASSPTK/PCL1305.PTK 4 Parameter-DB's $ASSDB/DST001 $ASSDB/DST002 $ASSDB/DST003 5 Summendatenbank $ASSDB/DSTnnn |
Funktionsweise
Das Programm PCL1305 ist entwickelt worden, um komplette Arbeitsgebiete inklusive einer Auswahl von Verdichtungsstufen mit den zugehörigen Summendaten aus ASS am Host in ASS-PC einzuspielen. Das Programm PCL1305 verarbeitet derzeit nur festgeblockte Eingabedateien mit 8000 Byte Satzlänge, die im EBCDIC-Zeichensatz vorliegen müssen.
Beachte
Bei Fehlern im Ladevorgang, für ein einzelnes Arbeitsgebiet, sperrt PCL1305 das Arbeitsgebiet für die Auswertung. Das Arbeitsgebiet sollte dann nur nach gründlicher Prüfung und gegebenenfalls erst nach Richtigstellung wieder freigegeben werden.
Das Programm PCL1305 arbeitet ohne Vorlaufkarte
und entnimmt die zu verarbeitende Datei der Kommandozeile:
PCL1305 dateiname
8.21 Batchverarbeitung unter Windows WINBAT
1. Allgemeines
- Funktion der WINBAT
WINBAT ist ein Windows-Programm, das die Befehle, die in einer Textdatei eingetragen sind, abarbeitet. Die Befehle, die hier abgesetzt werden können, sind an der DOS-BATCH-Sprache orientiert. Damit wird unter Windows ein Leistungsmerkmal der JCL (Job-Control-Language) am Großrechner imitiert.
- WINBAT als ONLINE- und BATCHVARIANTE
Es wird eine ONLINE- und eine BATCH-Variante der WINBAT ausgeliefert. Die ONLINE-Version "WINBATON.exe" entspricht der alten "winbat.exe" . Der Sprachumfang und die -syntax bleiben unverändert. In der BATCH-Version "WINBATBA.exe" ist der Sprachumfang beschränkt. Es sind nur Schlüsselworte/Befehle erlaubt, die keine Benutzerinteraktion erfordern. N i c h t erlaubt sind PAUSE, ACCEPT, JA_NEIN_FRAGE. Die Batchvariante ist vorwiewiegend für den operatorlosen Betrieb (z.B. für Nachtläufe) gedacht.
- Aufrufmöglichtkeit durch Desktop-Verknüpfungen
Aufgerufen wird WINBAT unter Windows (Ausführen...) mit der zu bearbeitenden Datei. Also beispielsweise:
c:\ass\pgm\winbaton c:\ass\vlk\pcl1004.wbt
Für Standardabläufe von Programmen (Erst- bzw. Folgeeinspeicherung) können auf dem Desktop Icons angelegt werden, die durch doppeltes Anklicken die entsprechende WBT-Datei abarbeiten.
Wird keine Datei angegeben, so nimmt WINBAT die Datei WINBAT.WBT im ASS-Vorlaufkartenverzeichnis ($ASSVLK) als Eingabedatei.
2. Befehle
WINBAT arbeitet Schlüsselwort- und Zeilenorientiert. Im
Allgemeinen wird also eine Zeile in einer WBT-Datei durch
ein Schlüsselwort eingeleitet. Gross- bzw. Kleinschreibung
wird dabei ignoriert. Wird in einer Zeile kein Schlüsselwort
gefunden, so wird sie als Programmaufruf interpretiert.
Ausnahme: Zeilen nach dem Schlüsselwort WRITE-TEXT-DATEI,
siehe unten.
Parameter und Zeitstempel
Analog zur Anforderungssprache von ASS kann die Winbat parametrisiert werden. Für Zeitstempel existieren dazu die Standardparameter
- &&JJ
- &&HH
- &&JJMM
- &&HHMM
- &&JJMMTT
- &&HHMMSS
- &&JJMMTTHH
- &&JJMMTTHHMM
- &&JJMMTTHHMMSS
Sie werden mit dem aktuellen Maschinendatum /-Zeit zum Startzeitpunkt des Programms vorbelegt und können frei überschrieben werden. Falls eigene Parameter definiert werden, so müssen sie ASS-Bezeichner sein. Allgemeine Syntax:
&&PARAM = 'Zuweisung' (; Kommentar)
Beispiel:
&&HUGO = 'Der arme Hugo, der muss leiden'; Strings in Hochkomma
&&JJMMTT = 020307
Falls ein Parameter eingesetzt werden soll, muss er in Hochkomma angeführt werden.
Beispiel:
REN $ASSDB/DST002 $ASSDB/DST002.'&&HUGO'
Windows-Variable
In der Winbat können auch Windows-Variablen benutzt werden.
Der Name muss durch das Prozentzeichen eingeschlossen werden.
Name und einschließende Prozentzeichen werden durch den
betreffenden Inhalt ersetzt.
Beispiel: %temp% wird durch das Temp-Verzeichnis ersetzt.
3. Liste der Schlüsselworte
- REM Kommentar
Diese Zeile wird bei der Verarbeitung ignoriert. - TITEL-TEXT-1 Kommentar
Der Text 'Kommentar' wird im Hauptfenster in Zeile 1 angezeigt. Der Text darf 40 Zeichen lang sein. - TITEL-TEXT-2 Kommentar
Der Text 'Kommentar' wird im Hauptfenster in Zeile 2 angezeigt. Der Text darf 40 Zeichen lang sein. - TITEL-TEXT-3 Kommentar
Der Text 'Kommentar' wird im Hauptfenster in Zeile 3 angezeigt. Der Text darf 40 Zeichen lang sein. - COPY Dateiname1 Dateiname2
Die Datei Dateiname1 wird nach Dateiname2 kopiert. S i e h e auch die Bemerkung zu COPY, RENAME und DELETE. - COPYVER Dateiname1 Dateiname2
Die Datei Dateiname1 wird nach Dateiname2 kopiert. Bei COPYVER (im Sinne von Verify) werden nach dem Kopieren Quell- und Zieldatei durch nochmaliges Lesen auf Gleichheit getestet. COPYVER erfordert daher mehr Rechenzeit als COPY. S i e h e auch die Bemerkung zu COPY, RENAME und DELETE. - REN Dateiname1 Dateiname2 bzw.
RENAME Dateiname1 Dateiname2
Die Datei Dateiname1 wird nach Dateiname2 umbenannt. S i e h e auch die Bemerkung zu COPY, RENAME und DELETE. - DELETE Dateiname
Die Datei Dateiname wird gelöscht. Achtung: Wenn die zu löschende Datei nicht existiert, führt dies zu einer Fehlermeldung und zum A b b r u c h der Batch-Verarbeitung. Im Zweifel sollte man also den unten erklärten Befehl IF EXISTS verwenden.
Mit der folgenden Konstruktion können beliebig viele Textdateien konkateniert werden:
KONKAT-ANF Zieldatei
Dateiname1
Dateiname2
.
.
.
KONKAT-ENDE
Achtung:
Die Quelldateien dürfen nur Sätze mit der maximalen Länge 400 enthalten. Es muss sich bei diesen Dateien um Textdateien (z.B. ASS-Protokolldateien) handeln. Zum Beispiel:
KONKAT-ANF $ASSPTK/EINSP.PTK
$ASSPTK/PCL1024.PTK
$ASSPTK/PCL1004.PTK
$ASSPTK/PCL1001.PTK
$ASSPTK/PCL1002.PTK
$ASSPTK/PCL1046.PTK
KONKAT-ENDE
Bemerkung zu COPY, RENAME, DELETE und KONKAT-ANF: Der/die Dateinamen müssen vollständig sein, Maskierungen, wie DELETE *.PTK oder COPY DST???.IDX *.IDS sind nicht zulässig. ABER: Der Dateiname darf eine Variable %1% o.Ä. sein, siehe unter ACCEPT-1.
STATUS-ON Kommentar
Der Text 'Kommentar' wird in einem Fenster ohne Button
ausgegeben. Durch das Schlüsselwort
STATUS-OFF
wird dieses Fenster wieder geschlossen.
Der Kommentar kann z.Zt. 25 Zeichen lang sein.
Diese Funktion ist gedacht für lang laufende Programme ohne
Bildschirmausgabe. Also z.B.
STATUS-ON PCL1001 läuft ...
c:/ass/pgm/pcl1001
STATUS-OFF
PAUSE Kommentar
Der Text 'Kommentar' wird in ein Fenster mit OK-Button
gestellt. Die Verarbeitung wird fortgesetzt, wenn der
OK-Button angeklickt wird. Der 'Kommentar' kann z.Zt. 40
Zeichen lang sein. Also z.B.:
PAUSE Bitte Protokoll überprüfen
ACCEPT-1 nn KOMMENTAR
ACCEPT-2 nn KOMMENTAR
ACCEPT-3 nn KOMMENTAR
...
ACCEPT-200 nn KOMMENTAR
Der Text KOMMENTAR wird in ein Fenster mit OK- und CANCEL-Button
gestellt. Unter dem Kommentar erscheint ein Eingabefeld, das nn
Zeichen (max. 80) entgegennimmt. Diese Eingaben können
in den folgenden Zeilen unter den Variablennamen %1%, %2%, ...
%200% angesprochen werden. Mit einem IF (siehe auch dort) kann
abgefragt werden, welchen Button der Anwender betätigt hat.
Also z.B.:
ACCEPT-1 65 Bitte Dateinamen eingeben:
IF ACCEPT-CANCEL GOTO weiter end-if if exists %1% notepad %1% goto weiter end-if pause Nicht gefunden: %1% exit
:weiter
In diesem Beispiel wird also ein bis zu 65 Zeichen langer Dateiname angefordert. Danach wird geprüft, ob eine Datei mit diesem Namen existiert. Falls ja, wird sie editiert, falls nicht, wird eine Meldung ausgegeben.
WRITE-TEXT-DATEI Dateiname
Öffnet eine Textdatei namens 'Dateiname'. Die nachfolgenden
Zeilen werden in diese Datei geschrieben. Allerdings dürfen
fen diese Zeilen kein Zeichen in der ersten Spalte haben.
END-WRITE
schließt die zuletzt geöffnete Datei. Beispiel:
WRITE-TEXT-DATEI $ASSVLK\t1016.vlk NUPDAT,BIB=E LDAT - LDAT END-WRITE
:Marke
Mit einem Doppelpunkt wird eine Sprungmarke definiert, die
mit
GOTO Marke
angesprungen werden kann. ACHTUNG: Die Sprungmarke muss in
einer späteren Zeile liegen. Ein GOTO zu einer schon überlaufenen
Marke ist N I C H T möglich.
EXIT
Die Stapelverarbeitung wird abgebrochen.
Ein GOTO oder EXIT ohne IF ist natürlich sinnlos. Es gibt zur Zeit vier IF-Abfragemöglichkeiten:
- Möglichkeit:
IF EXISTS Dateiname
Dieses IF erlaubt die Abfrage der Existenz einer Datei. (z.B. vor ihrer eigentlichen Verarbeitung durch ein anderes Programm). - Möglichkeit
Zuerst wird dem Benutzer eine Frage gestellt:
JA-NEIN-FRAGE Fragetext
Der Text 'Fragetext' wird in ein Fenster mit einem JA- und einem NEIN-Button gestellt. Dann kann mit
IF ANTWORT-JA
oder
IF ANTWORT-NEIN
abgefragt werden, welcher der beiden Buttons betätigt wurde. Zur Zeit kann der Fragetext 50 Zeichen lang sein.Bemerkung: Zwischen dem Statement JA-NEIN-FRAGE und dem Abfragen der Antwort des Benutzers mit IF ANTWORT-JA bzw. IF ANTWORT-NEIN können beliebig viele andere Befehle ausgeführt werden. Bis zur nächsten JA-NEIN-FRAGE bleibt die die zuletzt gegebene Anwort gespeichert.
- Möglichkeit:
IF ASSFEHLER
Vor dem Start eines Programmes erzeugt WINBAT eine Datei namens ASSFEHL.ERR im Verzeichnis $ASS. Wird ein ASS-Programm korrekt beendet, löscht es diese Datei. Mit IF-ASSFEHLER wird die Existenz dieser Datei geprüft. Ist sie vorhanden, wird die im IF-Zweig angegebene Befehlsfolge abgearbeitet.
Diese Möglichkeit ist der unmittelbaren Abfrage mit IF EXISTS vorzuziehen, da hier die ASS-Pfadvariable $ASS automatisch berücksichtigt wird. - Möglichkeit:
Zuerst wird dem Benutzer ACCEPT-n angeboten (siehe oben).
Dann kann mit
IF ACCEPT-OK
oder
IF ACCEPT-CANCEL
abgefragt werden, ob der OK- oder CANCEL-Button betätigt wurde.Die dem IF folgende Reihe von Befehlen wird mit END-IF
abgeschlossen.
Beispiele für die Möglichkeiten 1, 2, 3 und 4:
- Beispiel:
REM ASS-Batchauswertung laufen lassen
c:\ass\pgm\pcl1016
REM Anschauen der Liste:notepad c:\ass\ptk\liste.ptk
REM Frage an BenutzerJA-NEIN-FRAGE Soll LISTE.PTK gedruckt werden? IF ANTWORT-JA c:\ass\pgm\pcl1201.exe c:\ass\ptk\liste.ptk END-IF
- Beispiel:
REM Summendatenbankabzug erstellen:
c:\ass\pgm\pcl1024
REM Existiert die Datei, die anzeigt dass ein Fehler REM aufgetreten ist?IF EXISTS c:\ass\dateien\assfehl.err pause Fehler im PCL1024 notepad c:\ass\ptk\pcl1024.ptk EXIT END-IF
- Beispiel:
REM Initialisieren:ASSFEHLER-INIT
REM Oder besser als im vorigen Beispiel:c:\ass\pgm\pcl1002 IF ASSFEHLER pause Fehler im PCL1002 notepad c:\ass\ptk\}pcl1002.ptk EXIT END-IF
- Beispiel:
REM Initialisieren:ASSFEHLER-INIT
REM Starte Batch mit benutzereingegebenen ParameternREM via ASSDATE ACCEPT-1 4 Akt. Monat (MMJJ): IF ACCEPT-CANCEL GOTO ende END-IF ACCEPT-2 6 Bitte Sparte angeben: IF ACCEPT-CANCEL GOTO ende END-IF WRITE-TEXT-DATEI $ASSVLK\ASSDATE.VLK &&BM = %1% &&SPARTE = %2% END-WRITE $asspgm/pcl1016 IF EXISTS $assptk/liste.ptk notepad $assptk/liste.ptk END-IF exit
:ende PAUSE PCL1016 nicht gestartet
An allen Stellen kann statt eines vollständigen Dateinamens auch eine Datei mit einer ASS-Pfadvariable angegeben werden. z.B.:
COPY $ASSDB\DST001 $ASSDB\DST001S
analog auch bei RENAME, DELETE
WRITE-TEXT-DATEI $ASSVLK\t1016.vlk NUPDAT,BIB=E LDAT - LDAT END-WRITE
notepad $ASSPTK\PCL1004.PTK
8.22 Pseudonym-DB laden/bearbeiten/abziehen (PCL1265/PCL1264)
Seit ASS 8.21 ist es möglich, die Inhalte datenschutzkritischer Schlüssel in Auswertungsergebnissen entweder vollständig zu anonymisieren (d.h. jeder Inhalt wird durch Sterne ersetzt) oder nur teilweise (d.h. für einzelne Inhalte wird ein alternativer Begriff angezeigt). Im letzteren Fall spricht man von "Pseudonymisierung". Siehe hierzu auch Handbuch "Systemdokumentation", Kap. 8.11.
Für die Pseudonymisierung muss dem ASS natürlich mitgeteilt werden, welche Inhalte wie zu pseudonymisieren sind. Diese Regeln werden im ASS in einer eigens dafür reservierten Summen-DB gespeichert (ähnlich wie bei der Berichts-DB oder dem Anforderungs-Cache). Die zugehörige Arbeitsgebietsnummer muss im Copy SST2268 eingetragen werden (S2268-AG-PSEUDONYM-DB) bzw. wird auf Wunsch von der UBA Software GmbH bereits so ausgeliefert. Die Summen-DB muss ggf. mit PCL1050 initialisiert werden, siehe Kap. 8.4 (Option "PSEUDONYM").
Das Bearbeiten dieser Pseudonym-DB geschieht mit PCL1265. Die zu verarbeitenden Pseudonymisierungsregeln müssen in einer sequentiellen, semikolonseparierten Datei angeliefert werden (PC: "$ASS/ASSPSEUDONYM.CSV"; DD-Name Host: "ASSIN01"). Jeder Satz definiert dann eine Regel und muss folgende Form haben:
Feld | Bedeutung |
---|---|
1 | Verarbeitungskennzeichen, Näheres siehe unten |
2 | leer, "B" (s.u.) oder "V" (s.u.) für einen Verweis |
3 | Nummer des Schlüssels, dessen Inhalt pseudonymisiert werden soll; handelt es sich um eine Relation, muss vor der Nummer ein "R" stehen, z.B. "R5", "R005" o.Ä. |
Die folgende Beschreibung gilt für die leere Satzart. "B" und "V" sind unten beschrieben. | |
4 | Zu pseudonymisierender Inhalt; es kann auch ein Intervall definiert werden, indem hier die Von-Angabe und im 5. Feld die Bis-Angabe eingetragen wird. ACHTUNG: Führende Blanks zählen mit! |
5 | Leer oder Bis-Angabe des Intervalls ACHTUNG: Führende Blanks zählen mit! |
6 | Pseudonym, d.h. darzustellender Inhalt ACHTUNG: Führende Blanks zählen mit! |
Die nächsten Felder sind optional. Sie definieren Schlüsselbedingungen für die bedingte Pseudonymisierung, siehe auch Handbuch "Systemdokumentation", Kap. 8.11, "Bedingte Pseudonymisierung". | |
7 | Nummer des Bedingungsschlüssels, dessen Inhalt geprüft werden soll. Es kann auch eine Relation angegeben werden (analog zum 3. Feld). |
8 | Inhalt, den der Bedingungsschlüssel haben muss, damit die Regel greift, d.h. damit der Inhalt aus dem 3. Feld pseudonymisiert wird. Es kann auch ein Intervall definiert werden, indem hier die Von-Angabe und im 9. Feld die Bis-Angabe eingetragen wird. ACHTUNG: Führende Blanks zählen mit! |
9 | Leer oder Bis-Angabe des Intervalls ACHTUNG: Führende Blanks zählen mit! |
10-12 | Analog 7. - 9. Feld, d.h. eine 2. Bedingung |
13-15 | Analog 7. - 9. Feld, d.h. eine 3. Bedingung |
16-18 | Analog 7. - 9. Feld, d.h. eine 4. Bedingung |
19-21 | Analog 7. - 9. Feld, d.h. eine 5. Bedingung |
22-24 | Analog 7. - 9. Feld, d.h. eine 6. Bedingung |
25-27 | Analog 7. - 9. Feld, d.h. eine 7. Bedingung |
28-30 | Analog 7. - 9. Feld, d.h. eine 8. Bedingung |
31-33 | Analog 7. - 9. Feld, d.h. eine 9. Bedingung |
34-36 | Analog 7. - 9. Feld, d.h. eine 10. Bedingung |
Es können also max. 10 Bedingungen formuliert werden. Wenn alle erfüllt sind, greift die gesamte Pseudonymisierungsregel. Zu einem Inhalt (4. Feld) eines Schlüssels (3. Feld) können also mehrere Regeln definiert werden. Allerdings kann dies zu technischen sowie Performance-Problemen führen, weswegen mit ASS 8.50 die Satzart "B" eingeführt wurde (s.u.).
In den Bedingungen einer Regel darf dieselbe Schlüssel- bzw. Relationsnummer nicht zweimal vorkommen.
Das Verarbeitungskennzeichen (1. Feld) bestimmt, ob eine Regel ergänzt ("A" oder "ADD"), ersetzt ("M" oder "MOD") oder gelöscht ("D" oder "DEL") werden soll. Ergänzt wird nur, wenn die Regel noch nicht auf der Datenbank existiert, ersetzt oder gelöscht wird nur, wenn die Regel bereits existiert. Das Feld kann aber auch leer bleiben, dann kommt die Regel in jedem Fall auf die Datenbank (d.h. sie wird ggf. dort überschrieben), es sei denn in der Vorlaufkarte ist eine Standardvoreinstellung definiert, s.u. "Existenz" bedeutet hierbei, wenn auf der Datenbank bereits eine Regel vorhanden ist zum selben Inhalt desselben Schlüssels mit denselben Bedingungen (bei diesen ist die Reihenfolge egal), d.h. Gleichheit in den Feldern 3, 4, 5 und (bis auf Reihenfolge) 7 - 36.
Beispiel:
Feld: | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
---|---|---|---|---|---|---|---|---|---|---|---|---|
150 | MAIER | anonym | R2000 | 000000002 | 130 | FEUER | KFZ | |||||
D | 150 | HUBER | SCHMIDT | anonym |
Die 1. Regel wird auf die DB geschrieben und besagt, dass der
Inhalt MAIER des Schlüssels Nr. 150 genau dann durch das
Pseudonym "anonym" ersetzt wird, wenn (im gleichen Satz) die
Relation 2000 den Inhalt 000000002 und der Schlüssel 130 einen
Inhalt zwischen FEUER und KFZ hat.
Die 2. Regel wird auf der DB gelöscht, wenn sie existiert. Dabei
ist der Inhalt des 6. Felds egal, er kann auch leer bleiben.
Hier werden NICHT alle Regeln auf der DB gelöscht, die einen Inhalt zwischen HUBER und SCHMIDT betreffen, sondern nur (max.) die eine Regel, die das Intervall HUBER bis SCHMIDT zum Schlüssel 150 enthält und (in diesem Fall) keine Schlüsselbedingungen enthält.
Vorlaufkarte:
Inhalt | Aktion |
---|---|
TAB | Felder in Eingabe-Datei sind durch Tabulator getrennt statt Semikolon |
ADD, MOD oder DEL | Voreinstellung für die Satze der Eingabe-Datei mit leerem Verarbeitungskennzeichen |
DELETE_ALL | Die Pseudonym-DB wird gelöscht und aus der Eingabe-Datei neu aufgebaut |
DELETE_KEY = n | Der Schlüssel bzw. die Relation wird von der Pseudonym-DB gelöscht und aus der Eingabe-Datei neu aufgebaut |
Die Satzart V:
Sollen für einen Schlüssel die gleichen Pseudonymisierungsregeln gelten, die bereits bei einem anderen Schlüssel definiert sind, so können diese durch Anlage eines einzigen Satzes übernommen werden, statt alle Regeln auch für den einen Schlüssel zu definieren. Hierzu dient die Satzart "V". Der Schnittstellensatz muss wie folgt aussehen:
Feld | Bedeutung |
---|---|
1 | Verarbeitungskennzeichen, wie bei leerer Satzart |
2 | "V" |
3 | Nummer des Schlüssels, für den die Pseudonymisierungsregeln übernommen werden sollen (Relationen mit führendem "R") |
4 | Verweisart, z.Zt. nur leere Angabe |
5 | Verweis auf Schlüssel oder Relation, deren Pseudonymisierungsregeln übernommen werden sollen |
HINWEIS: Existieren zusätzlich zum Verweis weitere, für diesen Schlüssel definierte Regeln, werden diese ignoriert.
Die Satzart B:
Wie oben beschrieben, kann es zu einer bestimmten Schlüsselnr./Inhalts-Kombination mehrere Pseudonymisierungsregeln geben, die sich nur in deren Schlüsselbedingungen unterscheiden. Diese Bedingungen sind jedoch nicht Teil des Datenbank-Keys auf der Pseudonym-DB, weswegen Regeln, die sich nur in ihren Bedingungen unterscheiden, entsprechend vervielfältigt werden müssen, zur Unterscheidung dient ein Zählfeld im Key.
Damit aber sowohl die Befüllung der Pseudonym-DB wie auch ihre Nutzung in der Auswertung effizient ablaufen kann, dürfen die Sätze nicht zu stark durch Bedingungen vervielfältigt werden. Das Verfahren ist deswegen ungeeignet, wenn ein beliebiger Inhalt eines Schlüssels immer dann pseudonymisiert werden soll, wenn ein anderer Schlüssel bestimmte Bedingungen erfüllt, z.B.:
"Ersetze bei bestimmten Kundennummern das Geburtsdatum durch XX.XX.XXXX"
Die Sätze der Eingabedatei für PCL1265 sähen dann in etwa wie folgt aus (Geburtsdatum=100, Kundennummer=200):
Feld: | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
---|---|---|---|---|---|---|---|---|
100 | ?????????? | XX.XX.XXXX | 200 | 012345 | ||||
100 | ?????????? | XX.XX.XXXX | 200 | 029135 | ||||
100 | ?????????? | XX.XX.XXXX | 200 | 843662 | ||||
100 | ?????????? | XX.XX.XXXX | 200 | 726351 | ||||
usw. |
Bei vielen Kundennummern wird die Regel entsprechend oft vervielfältigt,
und das bisherige Verfahren ist nicht mehr anwendbar wegen Überlauf der
Zählnummer im DB-Key oder sehr langer Laufzeiten.
Deswegen gibt es
für diesen Fall eine neue Satzart "B", die im bisher noch nicht genutzten
2. Feld zu setzen ist. Der Satzaufbau bleibt gleich, muss aber gewissen
Restriktionen genügen:
- Bei den Inhalten sind nur Maskierungen oder einzelne Inhalte definiert, keine Intervalle (d.h. das 5. Feld ist leer)
- Es gibt genau einen Bedingungsschlüssel, bei dem nur einzelne Inhalte (keine Maskierungen oder Intervalle) definiert sind (d.h. alle Felder ab dem 9. Feld sind leer)
- Regeln zum gleichen Inhalt (hier "??????????") eines Schlüssels (hier 100) müssen dasselbe Pseudonym (hier "XX.XX.XXXX") und denselben Bedingungsschlüssel (hier 200) haben
- Alle Regeln eines Schlüssels haben Satzart B oder keine (gilt auch für die Regeln, die bereits auf der Pseudonym-DB gespeichert sind!)
Obige Schnittstelle wäre unter Verwendung der Satzart B dann verarbeitbar und würde wie folgt aussehen:
Feld: | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
---|---|---|---|---|---|---|---|---|
B | 100 | ?????????? | XX.XX.XXXX | 200 | 012345 | |||
B | 100 | ?????????? | XX.XX.XXXX | 200 | 029135 | |||
B | 100 | ?????????? | XX.XX.XXXX | 200 | 843662 | |||
B | 100 | ?????????? | XX.XX.XXXX | 200 | 726351 | |||
usw. |
Bei Verletzung der obigen Regeln in der Schnittstelle bricht PCL1265 ab.
Pseudonym-DB abziehen (PCL1264):
Mit PCL1264 kann die Pseudonym-DB abgezogen werden. Der Abzug erfolgt als sequentielle, semikolonseparierte Datei, die wiederum direkt mit PCL1265 verarbeitet werden kann. Es bietet sich also an, für Änderungen der Datenbank erst einen Abzug zu machen und diesen zu modifizieren, statt die EingabeDatei für PCL1265 komplett neu zu erstellen.
Vorlaufkarte:
Inhalt | Aktion |
---|---|
TAB | Felder mit Tabulator trennen statt mit Semikolon |
KEY = n | Es werden nur die Angaben zum Schlüssel mit Nummer n abgezogen. Für Relationen muss die Relationsnummer mit führendem "R" angegeben werden. Mehrfachnennungen sind möglich, z.B. KEY=123, KEY=234, KEY=R345. Fehlt diese Angabe, wird die gesamte Pseudonym-DB abgezogen. |
8.23 Index-Text-DB laden/bearbeiten/abziehen (PCL1275/PCL1274)
Hier nur technische Beschreibung, mehr Information in Handbuch "Systemdokumentation", Kap. 8.12. Index-Text-DB abziehen
ASSCO DST003 DST007 DST#i# DST#t# |_________ ___________________|_________|_________|_________| | PCL1274 _________|_______________________________________ _________ | | | | ASSLST ASSCSV DST#i# DST#t#
Index-Text-DB laden/bearbeiten
ASSCO ASSIN01 DST002 DST003 DST007 DST#i# DST#t# |_________|_________|_________|_________|_________|_________| | PCL1275 _________| | ASSLST ASSCO $ASSVLK/T1274.VLK bzw. $ASSVLK/T1275.VLK ASSLST $ASSPTK/PCL1274.PTK bzw. $ASSPTK/PCL1275.PTK ASSCSV VB 4004 $ASS/ASSTEXTE.CSV ASSIN01 $ASS/ASSTEXTE.CSV DST#i# D A 109 INDEX-TEXT-DB (Standardkeylänge ist 15) DST#t# D A 109 TEXT-INDEX-DB-1 (Standardkeylänge ist 247) D A 109 TEXT-INDEX-DB-2 (Standardkeylänge ist 100) D A 109 TEXT-INDEX-DB-3 (Standardkeylänge ist 30)
TEXT-INDEX-DB-3 setzt TEXT-INDEX-DB-2 voraus und TEXT-INDEX-DB-2 setzt TEXT-INDEX-DB-1 und INDEX-TEXT-DB voraus. Die Keylänge ist exklusive der drei Verwaltungszeichen. Die TEXTIERUNG-LAENGE (Schlüssel VS08 und VS009, Relation VS042 und VS043) ist exklusive der drei Verwaltungszeichen.
Für DL/I, VSAM und ISAM werden die Datenbank(en) DST#i#/DST#t# mit PCL1050 (Option INDEX-DB) geladen bzw. angelegt. Mit PCL1024 und PCL1013 können diese reorganisiert werden.
PCL1274 kennt die Optionen TAB, KEY und TEXTDB. PCL1275 kennt die Optionen TAB, DELETE_ALL, DELETE_KEY, ADD, MOD, DEL und TEXTDB. Der standardmäßige Trenner ; wird mit TAB zum Tabulator. Mit KEY werden nur die angeforderten Schlüssel und Relationen abgezogen.
CSV-Datei ASSIN01
- Feld Verarbeitungskennzeichen
keines, A/ADD, M/MOD und D/DEL - Feld Satzart
zur Zeit leer - Feld Schlüssel/Relation-Nummer
(R) Nummer - Feld Textierung
- Feld Nummer
für A/ADD, D/DEL und M/MOD relevant und sonst Kommentar
Zur Zeit können maximal 100 Schlüssel und Relationen in einem Lauf verarbeitet werden.
Stichwortverzeichnis
A C D E F G H I K L M O P R S T U V W Z
- A
- Ändern von Zeitangaben und Ausprägungen (PCL1043) 8.3
- User-Exit-DB (PCL1230/PCL1231) 8.13
- Allgemeine Anwendung (PCL1011) 5.3.6
- Analyse externer Schnittstellendateien (PCL1056) 2.8
- Anforderungen auf sequ. Datei kopieren (PCL1012) 8.2
- Anforderungen ausführen
- Anforderungsdatenbank
- Anforderungsdatenbank laden (PCL1045) 3.6
- Anforderungsdatenbank sichern (PCL1044) 3.5
- Anlegen Schlüsselinhalte
- verdichteter Schlüsselinhalt (PCL1088) 6.4
- Anzahl der Monate im ASS-Jahr vergrößern (PCL1011) 5.3.5
- Arbeitsgebiet initialisieren (PCL1097) 6.6
- Arbeitsgebiet zeitlich zurücksetzen (PCL1051) 5.3.1
- Arbeitsgebiete sperren (PCL1082) 8.5
- ASS-Ausgabeschnittstellen 4
- ASS-Output via E-Mail versenden (PCL1125) 4.6
- Aufteilung Zeitaspekt auf verschiedene VST's (PCL1042) 5.3.4
- Ausdruck der ASS-Benutzerhandbücher (PCL1022) 2.1.1
- Ausdruck der ASS-Bildschirmmasken (PCL1023) 2.2
- Ausgabeschnittstellen 4 4.1 4.1.1 4.1.2 4.1.3 4.1.4 4.1.5 4.1.6 4.1.7 4.1.8 4.1.9 4.1.10 4.1.11 4.1.12 4.1.13 4.1.14 4.2 4.2.1 4.3 4.3 4.3 4.3 4.4 4.4
- Auslagern von Zeiträumen (PCL1021) 5.3.2
- AU_GEN (PCL1011) 5.3.9
- AU_GEN_SRT (PCL1011) 5.3.9
- C
- Crossreference von Bibliothekselementen (PCL1049) 2.6.1
- D
- Datenbanken initialisieren (PCL1050) 8.4
- Dateneinspeicherung 3.1 3.1 3.1 3.2 3.3
- Datensicherung 3 3.1 3.1 3.1 3.2 3.3 3.3 3.4 3.4 3.5 3.5 3.6 3.6 3.6.1 3.7 3.8 3.9 3.10
- DB2-Ladeformat (PCL1038) 4.3
- Dokumentation 2.1.1 2.1.2 2.2 2.3 2.3 2.4 2.4 2.5 2.5.1 2.5.1 2.5.2 2.5.2 2.6.1 2.6.1 2.6.2 2.7 2.7.1 2.7.2 2.7.3 2.8 2.8
- Dokumentation Anforderung-DB 2.5
- Dokumentation Anforderungs-DB: Crossreferenz Parameter (PCL1164) 2.6.2
- Dokumentation Arbeitsgebiet (PCL1006) 2.4
- Dokumentation der Anforderungs-DB (PCL1035) 2.5.1
- Dokumentation der Anforderungs-DB nach Sortierkriterien (PCL1139) 2.5.2
- Dokumentation der Parameterdatenbanken (PCL1000) 2.3
- Dokumentation Security-DB (PCL1096) 2.7 2.7.1 2.7.2 2.7.3
- E
- E-Mail 4.6
- Einspeicherungsschnittstelle 2.8 2.8 4.1 4.1.1 4.1.2 4.1.3 4.1.4 4.1.5 4.1.6 4.1.7 4.1.8 4.1.9 4.1.10 4.1.11 4.1.12 4.1.13 4.1.14 7 7.1 7.1 7.2 8.11
- Erstellen von ASS-Druckoutput (PCL1086) 4.5
- Euro-Optionen (PCL1019) 4.1.8
- Externe Schlüssellänge > 12 (PCL1114/PCL1115) 6.7
- Externe Schnittstelle aus Schlüssel-DB (PCL1084) 7.1
- Externe Schnittstelle erzeugen (PCL1081) 8.11
- Externe Schnittstelle in Schlüssel-DB laden (PCL1085) 7.2
- Externe Schnittstellendatei
- Online-Pflege 7
- Extraktion selektierter Summensätze (PCL1019) 4.1 4.1.1
- H
- Hilfsprogramme 6.5 6.6 6.7 8.2 8.2 8.3 8.3 8.3 8.3 8.3.2 8.4 8.4 8.5 8.6 8.7 8.8 8.9 8.10 8.11 8.12 8.13 8.14
- I
- Interne Ausprägungsnummer reorganisieren (PCL1058) 5.4.1
- Interne Schlüssellänge im AG verändern (PCL1011) 5.1.2
- L
- Ladeformat für Summendatenbankabzug (PCL1083) 8.12
- Laden Arbeitsgebiet mit Parameter-DB's (PCL1005) 3.3
- Laden Arbeitsgebiet ohne Parameter-DB's (PCL1015) 3.4
- Laden von Schlüsselausprägungen (line-sequential) (PCL1036) 6.2.1
- Laden von Schlüsselausprägungen (PCL1036) 6.2
- Laden von Schlüsselgruppierungen (PCL1036) 6.2
- LDAT
- Selektion (PCL1034) 4.2.1
- LDAT-Dateiausgabe (PCL1016,PCL1003) 4.2
- Löschen von Ausprägungen und Gruppierungen (PCL1036) 6.3
- Löschen von Verdichtungsstufen (PCL1007) 5.2.2
- O
- Online-Pflege von externen Schnittstellendateien 7
- Option ALLES_ABZIEHEN (PCL1019) 4.1.13
- Option BEWEGUNG_BESTAND (PCL1019) 4.1.5
- Option CSV (PCL1019) 4.1.14
- Option EXECL
- Option FIX_U_MIT
- FIX_U_OHNE
- FIX_N_MIT
- FIX_N_OHNE (PCL1019) 4.1.10
- FIX_N_MIT
- FIX_U_OHNE
- Option SIMULTAN (PCL1019) 4.1.6
- Option SIMULTAN_DIREKT (PCL1019) 4.1.7
- Option VSTNR und BASIS (PCL1019) 4.1.9
- Optionen BEWEGUNG und INVERS (PCL1019) 4.1.4
- P
- Paketierte Listausgabe 4.5
- Parameterdaten
- PC-Formate
4.3
- DB2-Ladeformat 4.3
- PC-Schnittstelle (PCL1038) 4.3
- PCL1000
- Dokumentation der Parameterdatenbanken 2.3
- PCL1003
- LDAT-Dateiausgabe 4.2
- PCL1004
- Sichern Arbeitsgebiet mit Parameter-DB's 3.1
- PCL1005
- Laden / Kopieren Arbeitsgebiet mit Parameter-DB's 3.3
- PCL1006
- Dokumentation Arbeitsgebiet 2.4
- PCL1007
- PCL1011
- Allgemeine Anwendung 5.3.6
- Anzahl der Monate im ASS-Jahr vergrößern 5.3.5
- Hinzufügen eines Schlüssels im AG 5.1.4
- Interne Länge eines Schlüssels im AG vergrößern 5.1.4
- Interne Schlüssellänge im AG verändern 5.1.2
- Reihenfolge der Schlüssel im AG verändern 5.1.3
- Reparatur von Summendaten 5.1.5
- Schlüssel im AG hinzufügen oder löschen 5.1.1
- Tag oder Folgesätze 5.3.7
- Tagesschlüssel 5.3.8
- Verdichtungsstufen im AG verwalten 5.2.1
- Werteverwendung in einer VST verändern 5.2.5
- PCL1012
- Anforderungen auf sequ. Datei kopieren 8.2
- PCL1014
- Sichern Arbeitsgebiet ohne Parameter-DB's 3.2
- PCL1015
- Laden Arbeitsgebiet ohne Parameter-DB's 3.4
- PCL1016
- LDAT-Dateiausgabe 4.2
- PCL1019
- Euro-Optionen 4.1.8
- Extraktion selektierter Summensätze 4.1 4.1.1
- Generierung von Umbuchungsanweisungen 4.1.3
- Gezielte Satzauswahl 4.1.2
- Option #AUS_DATEI 4.1.16
- Option ALLES_ABZIEHEN 4.1.13
- Option BEWEGUNG_BESTAND 4.1.5
- Option CSV 4.1.14
- Option EXCEL
- Option FIX_U_MIT
- FIX_U_OHNE
- FIX_N_MIT
- FIX_N_OHNE 4.1.10
- FIX_N_MIT
- FIX_U_OHNE
- Option SIMULTAN 4.1.6
- Option SIMULTAN_DIREKT 4.1.7
- Option VSTNR BASIS 4.1.9
- Optionen BEWEGUNG und INVERS 4.1.4
- Optionen MCL0169 und MCL0169_PLATZ4.1.15
- PCL1021
- PCL1022
- Ausdruck der ASS-Benutzerhandbücher 2.1.1
- PCL1023
- Ausdruck der ASS-Bildschirmmasken 2.2
- PCL1033
- Sequ. VST's auf Ladeformat umformen 5.2.4
- PCL1034
- Selektion aus LDAT 4.2.1
- PCL1035
- Dokumentation der Anforderungs-DB 2.5.1
- PCL1036
- PCL1038
- PCL1042
- Aufteilung Zeitaspekt auf verschiedene VST's 5.3.4
- PCL1044
- Anforderungsdatenbank sichern 3.5
- PCL1045
- PCL1048
- Transparente VST's transformieren 8.7
- PCL1049
- Crossreferenz von Bibliothekselementen 2.6.1
- PCL1050
- Datenbanken initialisieren (VSAM/DLI) 8.4
- PCL1051
- Arbeitsgebiet zeitlich zurücksetzen 5.3.1
- PCL1055
- Überflüssige Ausprägungen löschen 6.1
- PCL1056
- Analyse externer Schnittstellendateien 2.8
- PCL1057
- Transparente VST's 8.8
- PCL1058
- Interne Ausprägungsnummer reorganisieren 5.4.1
- PCL1078
- Verarbeitung von ASS-Druckoutput 4.4
- PCL1080
- Stichwortverzeichnis 2.1.2
- PCL1081
- Externe Schnittstelle erzeugen 8.11
- PCL1082
- Arbeitsgebiete sperren 8.5
- PCL1083
- Summendatenbankabzug ins Ladeformat transformieren 8.12
- PCL1084
- Externe Schnittstelle aus Schlüssel-DB 7.1
- PCL1085
- Externe Schnittstelle in Schlüssel-DB laden 7.2
- PCL1086
- Paketierte Listausgabe 4.5
- PCL1088
- Anlegen Schlüsselinhalte
- verdichteter Schlüsselinhalt 6.4
- Anlegen Schlüsselinhalte
- PCL1093
- Umbuchungsanforderung erstellen 8.1
- PCL1096
- PCL1097
- Arbeitsgebiet initialisieren 6.6
- PCL1104
- Textdatenbank sichern 3.7
- PCL1105
- Textdatenbank laden 3.8
- PCL1114/PCL1115
- Externe Schlüssellänge > 12 6.7
- PCL1125
- ASS-Output via E-Mail versenden 4.6
- PCL1139
- Dokumentation der Anforderungs-DB nach Sortierkriterien 2.5.2
- PCL1164
- Crossreferenz Parameternamen auf Anforderungs-DB 2.6.2
- PCL1174 8.14
- PCL1175 8.14
- PCL1194
- Security-DB sichern 3.9
- PCL1195
- Security-DB laden 3.10
- PCL1198
- Werte- / SteuerungsDB maschinell pflegen 6.5
- PCL1230
- User-Exit-DB abziehen 8.13
- PCL1231
- User-Exit-DB laden 8.13
- PCL1264
- Pseudonym-DB abziehen 8.22
- PCL1265
- Pseudonym-DB laden/bearbeiten 8.22
- PCL1274
- Index-Text-DB abziehen8.23
- PCL1275
- Index-Text-DB laden/bearbeiten8.23
- PCL1314
- Wertedatenbank abziehen6.9
- PCL1315
- Wertedatenbank laden6.9
- PCL1324
- Steuerungsdatenbank abziehen6.10
- PCL1325
- Steuerungsdatenbank laden6.10
- PST1053
- Formate (MFS) modifizieren (nur IMS) 8.6
- PST1184
- Security-DB sichern für Umstieg auf COBOL 3.9
- R
- Reihenfolge der Schlüssel im AG verändern (PCL1011) 5.1.3
- Reorganisation 3.1 3.1 3.1 3.2 5 5.1.1 5.1.1 5.1.2 5.1.3 5.1.4 5.1.5 5.2 5.2.1 5.2.1 5.2.2 5.2.2 5.2.3 5.2.4 5.2.4 5.2.5 5.2.6 5.2.7 5.2.8 5.2.9 5.3 5.3.1 5.3.1 5.3.2 5.3.2 5.3.2 5.3.3 5.3.3 5.3.4 5.3.4 5.3.5 5.3.6 5.3.7 5.3.8 5.3.9 5.4.1 5.4.1 6.1 6.1
- S
- Schlüssel im AG hinzufügen oder löschen (PCL1011) 5.1.1
- Schlüssel-Datenbank
- Dokumentation 2.3
- Schlüsseldatenbank
- Maschinelle Pflege 6.1
- Security-DB laden (PCL1195) 3.10
- Security-DB Schnittstelle (PCL1195) 3.10
- Security-DB sichern (PCL1194) 3.9
- Security-DB sichern (PST1184) 3.9
- Sequ. VST's auf Ladeformat umformen (PCL1033) 5.2.4
- Sichern Arbeitsgebiet mit Parameter-DB's (PCL1004) 3.1
- Sichern Arbeitsgebiet ohne Parameter-DB's (PCL1014) 3.2
- Steuerungs-Datenbank
- Dokumentation 2.3
- Steuerungsdatenbank maschinell plegen (PCL1198) 6.5
- Stichwortverzeichnis (PCL1080) 2.1.2
- Summendatenbankabzug ins Ladeformat transformieren (PCL1083) 8.12
- T
- Tag oder Folgesätze (PCL1011) 5.3.7
- Tagesschlüssel (PCL1011) 5.3.8
- Textdatenbank laden (PCL1105) 3.8
- Textdatenbank sichern (PCL1104) 3.7
- Transparente VST's (PCL1057) 8.8
- Transparente VST's transformieren (PCL1048) 8.7
- Trennsatz (PCL1086) 4.5
- Tuning 3.6.2
- U
- Überflüssige Ausprägungen löschen (PCL1055) 6.1
- Umbuchungen 4.1.7 8.1
- Umbuchungen: Erstellen Umbuchungsanforderung 8.1
- Umbuchungen: Verarbeiten Umbuchungselement 8.1
- Umsetzung von Verdichtungsstufen (PCL1011) 5.2.1
- USER-Exit (PCL1231) 8.13
- V
- Verarbeitung von ASS-Druckoutput (PCL1078) 4.4
- Verdichtungsstufen im AG verwalten (PCL1011) 5.2.1
- Vorlaufkarte 2.4
- Vorlaufkarte (PCL1000) 2.3
- Vorlaufkarte (PCL1004) 3.1
- Vorlaufkarte (PCL1005) 3.3
- Vorlaufkarte (PCL1007) 5.2.2
- Vorlaufkarte (PCL1011) 5.1.1
- Vorlaufkarte (PCL1012) 8.2
- Vorlaufkarte (PCL1015) 3.4
- Vorlaufkarte (PCL1021) 5.3.2 5.3.3
- Vorlaufkarte (PCL1033) 5.2.4
- Vorlaufkarte (PCL1035) 2.5.1
- Vorlaufkarte (PCL1036) 6.3
- Vorlaufkarte (PCL1038) 4.3
- Vorlaufkarte (PCL1042) 5.3.4
- Vorlaufkarte (PCL1044) 3.5
- Vorlaufkarte (PCL1045) 3.6
- Vorlaufkarte (PCL1045): ANF_CACHE 3.6.2
- Vorlaufkarte (PCL1045): BEARBEITE_HIERARCHIE 3.6.1
- Vorlaufkarte (PCL1049) 2.6.1
- Vorlaufkarte (PCL1050) 8.4
- Vorlaufkarte (PCL1051) 5.3.1
- Vorlaufkarte (PCL1055) 6.1
- Vorlaufkarte (PCL1056) 2.8
- Vorlaufkarte (PCL1058) 5.4.1
- Vorlaufkarte (PCL1078) 4.4
- Vorlaufkarte (PCL1084) 7.1
- Vorlaufkarte (PCL1086) 4.5
- Vorlaufkarte (PCL1139) 2.5.2
- VST's auf sequ. Dateien auslagern (PCL1007) 5.2.3
- W
- Werte-Datenbank
- Dokumentation 2.3
- Wertedatenbank maschinell plegen (PCL1198) 6.5
- Werteverwendung in einer VST verändern (PCL1011) 5.2.5
- Wiedereinlagerung ausgelagerter Zeiträume (PCL1021) 5.3.2
- Z
- Zeitliches Verdichten von Summendaten (PCL1021) 5.3.3