Kapitelübersicht



2. Folgeeinspeicherung
  2.1 Verarbeiten der externen Schnittstelle PCL1001
  2.2 Verarbeiten der internen Schnittstelle PCL1002
  2.3 Laden von Summendatenbanken PCL1013
  2.4 Abziehen von Summendatenbanken HSSR / PCL1024/ PCL1124
  2.5 Verzoegerter UPDATE fuer PCL1002 PCL1032







       2.       Folgeeinspeicherung


Kapitelübersicht
Inhaltsverzeichnis
Stichwortverzeichnis


               Die Folgeeinspeicherung laeuft in mehreren Schritten ab:


               1. Schritt:
                  Verarbeiten externe Schnittstellendatei und
                  Erzeugen interne Schnittstellendatei,
                  bestehend aus den Steps


                   - Abziehen Arbeitsgebiet (PCL1004)
                   - Erzeugen interne Schnittstellendatei (PCL1001)


               2. Schritt:
                  Abziehen alte Summendatenbank(en) auf seq. Datei
                  (entfaellt bei Ersteinspeicherung oder falls
                  die interne Schnittstelle direkt eingespeichert
                  wird).
    IBM  DL/I     Regelfall: Alte Summendatenbank mittels HSSR
                  oder DFSURGU0 auf seq. Datei abziehen.
                  Existiert im betreffenden RZ HSSR bzw. DFSURGU0
                  nicht, so kann die alte Summendatenbank mit dem
                  Programm PCL1024 abgezogen werden.
                  Werden Verdichtungsstufen fortgeschrieben, die in
                  mehreren Summendatenbanken gespeichert sind, so
                  muss der Abzug mit dem Programm PCL1124 erzeugt
                  werden.
    SIEMENS
      ISAM        Alte Summendatenbank(en) mit PCL1024/PCL1124
                  abziehen.
    SAG  ADABAS   Alte Summendatenbank(en) mit PCL1024/PCL1124
                  abziehen.


               3. Schritt:
                  Verarbeiten der Internen Schnittstellendatei
                  mit dem Programm PCL1002:
                  Laden Summendatenbank(en) aus interner Schnitt-
                  stellendatei bzw. erzeugen Ladebestand (bzw.
                  Ladebestaende) aus interner Schnittstellendatei
                  fuer PCL1013 (siehe PCL1002).


                  HINWEIS:


                  PCL1002 fuehrt einen UPDATE auf die Steuerungs-DB
                  durch. Beim Laden von grossen Summendatenbanken
                  entsteht daher viel Loginformation.
                  In diesem Fall fuehrt man das Laden besser mit
                  Schritt 5 durch.


               5. Schritt:
                  Einspeicherung in die Summendatenbank(en)
                  (entfaellt, falls Einspeicherung bereits von PCL1002
                  durchgefuehrt wurde).
    IBM           Ladebestand (bzw. Ladebestaende) in
                  Summendatenbank(en) speichern (PCL1013)
    SIEMENS       Ladebestand (bzw. Ladebestaende) in
                  Summendatenbank(en) speichern (PCL1013)
    SAG  ADABAS   Summendatenbank(en) mit ADABAS-Utilities laden unter
                  Verwendung von MST0100 im User-Exit 6.


               6. Schritt:
                  Update auf die Steuerungs-DB (PCL1032)


                  Normalerweise fuehrt PCL1002 einen UPDATE auf die
                  Steuerungs-DB durch. Falls Parallellaeufe von
                  PCL1002 erforderlich sein sollten, kann man diesen
                  UPDATE verzoegern und spaeter vom Programm PCL1032
                  durchfuehren lassen. Einzelheiten s.u..


               HINWEIS:


               Im Programm PCL1002 existiert auch die Moeglichkeit,
               Aenderungen direkt auf die Summendatenbank zu spielen.
               Dies ist jedoch nur moeglich, wenn die externe
               Schnittstelle ausschliesslich Bewegungswerte enthaelt
               und keine aktiven Verdichtungsstufen auf sequentiellem
               Datentraeger vorliegen. Beim Fortschreiben von
               Aenderungen auf die Summendatenbanken verlaengern sich
               die Saetze. Dies fuehrt z.B. in einer DLI-Umgebung zu
               Segmentsplits. Ein direktes Fortschreiben ist also
               nur bei kleinem Aenderungsumfang empfehlenswert.


               Fuehrt man eine Folgeeinspeicherung in der oben
               beschriebenen Form (sechs Steps) durch, so wird die
               betreffende Summendatenbank reorganisiert.


               Hinweis fuer DLI:
               Es versteht sich, dass beim direkten Einspeichern
               von Aenderungen mittels PCL1002 nicht mehr mit einem
               LADE-PCB gearbeitet werden kann, PROCOPT=A ist dann
               fuer die betreffenden Summendatenbanken erforderlich.


     Achtung:  Die Schritte 3 und 4 duerfen nicht vertauscht werden.






       2.1      Verarbeiten der externen Schnittstelle       PCL1001


Kapitelübersicht
Inhaltsverzeichnis
Stichwortverzeichnis


      ASS ist ein in sich abgeschlossenes System.
      Es uebernimmt Daten aus anderen Systemen nur ueber die externe
      Schnittstellendatei.


      Die externe Schnittstelle ist also die zentrale Schnittstelle
      von ASS zu ASS-fremden Datenbestaenden. Alle Statistikdaten,
      die in ASS-Summendatenbanken gespeichert und maschinell
      zur Verfuegung gestellt werden koennen, muessen in externen
      Schnittstellendateien bereitgestellt werden, von wo aus
      sie ihm Rahmen der Folgeeinspeicherung in ASS-Summendatenbanken
      uebernommen werden.


      Der physikalische Aufbau der externen Schnittstelle ist in dem
      Handbuch SYSTEMDOKUMENTATION beschrieben.


      Externe Schnittstellen, die von Schnittstellenprogrammen
      erstellt wurden, werden zunaechst vom Programm PCL1001
      verarbeitet und dabei in eine sogenannte interne Schnittstelle
      umgeformt.


      Bei der Verarbeitung von externen Schnittstellendateien werden
      eine Reihe von Pruefungen durchgefuehrt, um Fehler in der
      externen Schnittstelle oder Fehler im Handling der
      Folgeeinspeicherung erkennen zu koennen.





     Eingaben:
     --------


     1.  Die externe Schnittstellendatei  (ASSIN01).
     2.  Abzug des Arbeitsgebiets, fuer das eine interne
         Schnittstellendatei erzeugt werden soll. Dieser Abzug wird
         mit dem Programm PCL1004 erzeugt. Einzelheiten
         zu diesen Programmen sind dem Handbuch fuer die
         Dienstprogramme zu entnehmen.



     Ausgaben:
     --------


     Der OUTPUT von PCL1001 besteht aus drei Komponenten:


     1.  Eine interne Schnittstellendatei.
     2.  Fortschreiben von Kontrollinformationen in Werte- und
         Schluessel- und Steuerungsdatenbank, u.a.:
         - Aenderungssperre bei Schluesseln setzen
         - Aenderungssperre bei Werten setzen
         - Zeitraeume bei verwendeten Werten setzen
         - Eingespeicherte Zeiten im Arbeitsgebiet setzen
     3.  Evtl. Ergaenzung von Schluesselauspraegungen in der
         Schluesseldatenbank.



     Betriebsmittel:
     --------------


     Da externe Schnittstellen unter Umstaenden einen sehr grossen
     Umfang annehmen koennen, braucht PCL1001 fuer die Verarbeitung
     auch eine gewisse Menge an Betriebsmitteln:
     - temporaere Workdatei  ASSWONN
     - zwei Arbeitsdateien   ASSWK01 und ASSWK01
     - Arbeitsdatei ASSWK03, falls in Vorlaufkarte ASSWK = 3
                             oder ASSWK = 4 angegeben
     - Arbeitsdatei ASSWK04, falls in Vorlaufkarte ASSWK = 4 angegeben



     Um das Verstaendnis der Arbeitsweise des Programms PCL1001
     zu erleichtern, folgt zunaechst ein Datenflussplan.
     Daran anschliessend werden verschiedene Problempunkte
     erlaeutert.




     Ablauf:
     ------



      .---.         .---.         .---.         .---.
    ,'     ',     ,'     ',     ,'     ',     ,'     ',
    !'.___.'!     !'.___.'!     !'.___.'!     !'.___.'!
    !       !     !       !     !       !     !       !
    !  140  !     !  160  !     !  170  !     !  180  !
    !       !     !       !     !       !     !       !
     '.___.'       '.___.'       '.___.'       '.___.'
        !             !             !             !
        !             !             !             !
        !             !             !             !
        !_________    !   __________!             !
                   !  !  !                        !
                   !  !  !   _____________________!
                   !  !  !  !
                   !  !  !  !
   _______         !  !  !  !
  /       !        !  !  !  !
  !  190  !        !  !  !  !                          .---.
  +-------+        V  V  V  V                        ,'     ',
      !          ***************                     !'.___.'!
      +--------->!             !                     !       !
                 !   PCL1001   !-------------------->!  210  !
                 !             !-----+               !       !
                 ***************     !                '.___.'
                  !  !  A  A  A      !
                  !  !  !  !  !      !               ************
                  !  !  !  !  !      +-------------->!          !
                  !  !  !  !  !                      !  220     !
                  !  !  !  !  !                      !      *****
                  !  !  !  !  !                      !     /
                  !  !  !  !  !                      *****
                  !  !  !  !  !
                  !  !  !  !  !_______________________________
                  !  !  !  !                                  !
                  !  !  !  !_____________________             !
         _________!  !  !                        !            !
        !            !  !__________              !            !
        !            !             !             !            !
        !            !             !             !            !
        V            V             V             V            V
      .---.        .---.         .---.         .---.        .---.
    ,'     ',    ,'     ',     ,'     ',     ,'     ',    ,'     ',
    !'.___.'!    !'.___.'!     !'.___.'!     !'.___.'!    !'.___.'!
    !       !    !       !     !       !     !       !    !       !
    !  230  !    !  240  !     !  250  !     !  260  !    !  270  !
    !       !    !       !     !       !     !       !    !       !
     '.___.'      '.___.'       '.___.'       '.___.'      '.___.'





     Dateibeschreibung:
     -----------------


 Lfd.-Nr. !  DD-Name/PGM ! Beschreibung
          !  LINK-Name   !
 ---------!--------------!---------------------------------------------
          !              !
 140      !  //ASSDB     ! Ausgabe von PCL1004
          !              !
 160      !  //ASSIN01   ! Externe Schnittstelle
          !              !
 170      !  //TABL01    ! SHRINK-Tabelle (nur wenn geshrinkte
          !              ! ext. Schnittstellen verarbeitet werden)
          !              !
 180      !  //DST001    ! Werte-DB
          !  //DST011    ! Primaer-Index         (nur DLI)
          !  //DST012    ! Sekundaer-Index 1     (nur DLI)
          !  //DST013    ! Sekundaer-Index 2     (nur DLI)
          !  //DST002    ! Schluessel-DB
          !  //DST021    ! Primaer-Index         (nur DLI)
          !  //DST022    ! Sekundaer-Index 1     (nur DLI)
          !  //DST023    ! Sekundaer-Index 2     (nur DLI)
          !  //DST003    ! Steuerungs-DB
          !  //DST031    ! Primaer-Index         (nur DLI)
          !  //DST032    ! Sekundaer-Index 1     (nur DLI)
          !  //DST033    ! Sekundaer-Index 2     (nur DLI)
          !  //DST006    ! Before-Images  (nur SIEMENS-ISAM / VSAM)
          !              !
 190      !  //ASSCO     ! Vorlaufkarte, auf DUMMY setzen und bei
          !              ! Bedarf aktivieren
          !              !
 210      !  -           ! LOGDATEI  (nur DLI)
          !              !
 220      !  //ASSLIST   ! Ablaufprotokoll PCL1001
          !  //SYSPRINT  !
          !              !
 230      !  //ASSOUNN   ! Interne Schnittstelle, Eingabe fuer PCL1002
          !              ! Satzlaenge=10000
          !              !
 240      !  //ASSFEHL   ! Fehler- und Schwebedatei
          !              ! Satzlaenge=10000
          !              !
 250      !  //ASSWONN   ! Arbeitsdatei
          !              ! Satzlaenge=20000





 Lfd.-Nr. !  DD-Name/PGM ! Beschreibung
          !  LINK-Name   !
 ---------!--------------!---------------------------------------------
          !              !
 260      !  //ASSWK01   ! Workdatei 01, Satzlaenge=20000
          !  //ASSWK02   !    -"-    02, Satzlaenge=20000
          !  //ASSWK03   !    -"-    03, Satzlaenge=20000
          !  //ASSWK04   !    -"-    04, Satzlaenge=20000
          !              !
 270      !  //SORTWK01  ! SORTWORK-Bereich 1    -
          !      bis     !        bis             !> bei IBM
          !  //SORTWKnn  ! SORTWORK-Bereich nn   -
          !  //SORTWK1   ! SORTWORK-Bereich 1    -
          !      bis     !        bis             !> bei SIEMENS
          !  //SORTWKn   ! SORTWORK-Bereich n    -
          !              !
*         !  //ASSAU     ! nur fuer die Option ASSAU
*         !              ! Host: F B 80, PC: Textdatei



      Restriktionen:
      -------------


      In einem Programmlauf koennen nur die Daten fuer ein
      Arbeitsgebiet uebernommen werden.



      Besonderheiten:
      ---------------


      Wird PCL1001 vorzeitig beendet, so wird ein gezielter
      Programmabbruch erzeugt.
      Vorzeitiges Programmende liegt vor, wenn


       - es durch Angaben in den Vorlaufkarten erzwungen wird
       - wenn mehr als 100 fehlerhafte Summensaetze erkannt werden.
         Der Wert von 100 kann durch Vorlaufkarte uebersteuert
         werden (s.u. Option 'FEHLER=NNNN').


      Die Massnahmen, die beim "gezielten" Programmabbruch
      durchgefuehrt werden, sind im INCLUDE-Member SST1031 festgelegt.
      SST1031 darf installationsabhaengig angepasst werden und ist
      dann in die installationsabhaengige INCLUDE-Bibliothek
      zu uebernehmen.




      Das Datenmengenproblem
      ----------------------


      Das Programm PCL1001 (wie auch das Programm PCL1002) sind
      darauf ausgelegt, grosse Datenmengen zu verarbeiten.
      So gibt es Schnittstellendateien, die mehrere Millionen Saetze
      enthalten. Jeder Satz der Schnittstelle muss intern
      in PCL1001 noch zusaetzlich vervielfaeltigt werden (entsprechend
      der Anzahl der nicht generierbaren Verdichtungsstufen).
      Das entstehende Datenvolumen waere dann noch zu sortieren,
      ein Unterfangen, das von vornherein zum Scheitern verurteilt
      ist.


      Es wurde daher eine portionsweise Verarbeitung der
      Schnittstellendatei realisiert. Es werden n Saetze der
      Schnittstellendatei eingelesen, auf das Format der internen
      Schnittstellendatei gebracht und in die Datei ASSWONN
      geschrieben. Dann wird ein Sort aufgerufen.


      In der Sort-Input-Phase wird die Datei ASSWONN seq. gelesen,
      jeder gelesene Satz wird entsprechend den Anforderungen der
      Verdichtungsstufen vervielfaeltigt und dann dem SORT
      uebergeben.


      In der Sort-Output-Phase erfolgt die Verdichtung. Beim ersten
      Aufruf des Sort werden die verdichteten Summensaetze in eine
      Datei ASSWKnn geschrieben. Bei den Folgeaufrufen werden die im
      vorhergehenden Aufruf erzeugten verdichteten Summensaetze aus
      einer Datei ASSWKnn sofort mit den vom SORT gelieferten Saetzen
      gemischt und verdichtet und das Ganze in eine Datei ASSWKmm
      gestellt. ASSWKnn wird dann im naechsten Aufruf wieder als
      Ausgabedatei verwendet.


      Beim letzten Aufruf des Sort wird auf die Datei ASSOUNN
      ausgegeben.


      Es werden zwei Arbeitsdateien ASSWK01 und ASSWK02 benoetigt.


      Bei kleinen Datenmengen kann der erste Aufruf des Sort
      auch schon der letzte sein. In diesem Fall werden keine
      Dateien ASSWKnn benoetigt. Die Ausgabe erfolgt sofort
      und vollstaendig auf ASSOUNN.




      Fortschreibung stillgelegter Verdichtungsstufen:
      ------------------------------------------------


      Stillgelegte Verdichtungsstufen werden standardmaessig bei der
      Folgeeinspeicherung nicht fortgeschrieben.
      Dies kann mittels der Option VSTNR=nn uebersteuert werden.


      Wenn Sie mit der Option VSTNR arbeiten, muessen Sie alle Ver-
      dichtungsstufen, in die Einspeicherungen vorgenommen werden
      sollen, in der Vorlaufkarte angeben.
      Dabei muss natuerlich auf Datenkonsistenz geachtet werden. So
      duerfen zum Beispiel keine Datensaetze verloren gehen oder
      doppelt eingespeichert werden.


      Um die Regeln zur Auswahl der Verdichtungsstufen zu verstehen,
      muss man den Begriff der Verdichtungsstufenmenge kennen.
      Dazu betrachten wir einen Wert, der bei der Einspeicherung an-
      geliefert wird und dazu alle Verdichtungsstufen, in denen dieser
      Wert verwendet wird.
      Dann bilden jeweils die Verdichtungsstufen, in denen exakt
      dieselben Schluessel ausgepraegt sind und die die gleiche
      Schluesselreihenfolge haben, eine Verdichtungsstufenmenge.


      Folgende Regeln sind nun zu beachten :
      - Aus jeder Verdichtungsstufenmenge (pro angeliefertem Wert)
        darf hoechstens eine Verdichtungsstufe ausgewaehlt werden.
      - Aus jeder Verdichtungsstufenmenge, die eine aktive Ver-
        dichtungsstufe enthaelt, muss genau eine Verdichtungsstufe
        ausgewaehlt werden.
      - Alle aktiven sequentiellen Verdichtungsstufen muessen angegeben
        werden.
      - Stillgelegte sequentielle Verdichtungsstufen werden nicht be-
        ruecksichtigt.




      Generierung von Verdichtungsstufen:
      -----------------------------------


      Der Begriff "GENERIERBARE VERDICHTUNGSSTUFE":


      Eine Verdichtungsstufe V1 ist aus anderen Verdichtungsstufen
      generierbar, wenn die Verdichtungsstufen ungleich V1, in denen
      mindestens die in V1 ausgepraegten Schluessel auch ausgepraegt
      sind, zusammen alle verwendeten Werte von V1 auch verwenden.
      Schluesselrelationen im Arbeitsgebiet sind per Definition nicht
      generierbar.


      Standardmaessig werden waehrend der Verarbeitung der Schnitt-
      stellendatei im Programm PCL1001 interne Schnittstellen-
      saetze nur fuer nicht generierbare Verdichtungsstufen erzeugt.


      Gibt es generierbare Verdichtungsstufen, so stehen am Ende
      der Verarbeitung der Schnittstellendatei die internen
      Schnittstellensaetze fuer nicht generierbare Verdichtungsstufen
      in verdichteter Form in einer Datei ASSWKnn.


      Zur Generierung der generierbaren Verdichtungsstufen
      wird die Datei ASSWKnn sequentiell gelesen, daraus interne
      Schnittstellensaetze (noch nicht verdichtet) erzeugt und in
      ASSWONN gestellt.
      Mit Hilfe des Sort wird dann ASSWONN sortiert und verdichtet,
      mit ASSWKnn gemischt und nach ASSOUNN ausgegeben.
      Hierbei kann es passieren, dass auf die Datei ASSWONN sehr
      viele Saetze ausgegeben werden. Die erzeugte Datenmenge waere
      fuer einen Sort-Aufruf ev. zu gross. In diesem Fall kann
      eine portionsweise Verarbeitung wie bei der Verarbeitung der
      externen Schnittstelle aktiviert werden. Eine portionsweise
      Verarbeitung benoetigt eine dritte Arbeitsdatei ASSWK03.
      Diese muss in der JCL zur Verfuegung gestellt werden
      und via Vorlaufkarte (ASSWK = 3) muss dies dem Programm
      mitgeteilt werden.



      Insgesamt wird durch obiges Verfahren die Anzahl der
      erzeugten (und somit zu sortierenden und verdichtenden)
      internen Schnittstellensaetze i.a. drastisch reduziert.


      Lassen sich generierbare Verdichtungsstufen aus
      unterschiedlichen anderen Verdichtungsstufen generieren,
      so werden zur Generierung die Verdichtungsstufen mit den
      wenigsten Saetzen genommen. Anzahl Saetze pro Verdichtungsstufe
      wird aus SST023CV.CANZSA (Steuerungsdatenbank) entnommen.
      Bei der ersten Folgeeinspeicherung fuer ein Arbeitsgebiet
      existiert CANZSA noch nicht, die Auswahl der Verdichtungsstufen,
      aus denen generiert wird, ist dann rein zufaellig.


      Die Generierung von Verdichtungsstufen kann von aussen
      ausgeschaltet werden (OPTION 'NOVSTGENER' in der Vorlaufkarte).
      Bei Eingabe dieser OPTION werden alle Verdichtungsstufen als
      nicht generierbar angenommen und dementsprechend verarbeitet.




      Verdichtungsstufen aus generierbaren Verdichtungsstufen
      generieren:


      Betrachtet man allein die Menge der generierbaren Verdichtungs-
      stufen, so kann diese Menge wieder in zwei Teilmengen
      zerlegt werden: Verdichtungsstufen, die aus bereits
      generierbaren Verdichtungsstufen generiert werden koennen
      bzw. nicht.


      Beispiel:
      Die Verdichtungsstufe 1 enthalte die Schluessel
      S1, S2, S3 und S4, die Werte W1 und W2.
      Die Verdichtungsstufe 2 enthalte die Schluessel
      S1, S2 und S4, die Werte W1 und W2.
      Die Verdichtungsstufe 3 enthalte die Schluessel
      S1 und S2, den Wert W1.
      Die Verdichtungsstufe 4 enthalte die Schluessel
      S1 und S4, den Wert W2.


      Die Verdichtungsstufen 1 ist nicht generierbar.


      Die Verdichtungsstufen 2, 3 und 4 sind alle generierbar
      (aus Verdichtungsstufe 1).


      Die Verdichtungsstufen 3 und 4 sind jedoch auch aus
      Verdichtungsstufe 2 generierbar.


      Folgendes soll erreicht werden:
      Zunaechst sollen die Daten fuer die nicht generierbaren
      Verdichtungsstufen (im Beispiel Verdichtungsstufe 1) erzeugt
      werden. Dann werden hieraus die Daten fuer die nicht
      generierbaren Verdichtungsstufen, die nicht aus generier-
      baren Verdichtungsstufen generiert werden koennen,
      (im Beispiel Verdichtungsstufe 2) erzeugt und zum Schluss
      hieraus die Daten fuer die generierbaren Verdichtungs-
      stufen, die aus generierbaren Verdichtungsstufen
      generierbar sind (im Beispiel Verdichtungsstufe 3 und 4).


      Das geschilderte Verfahren benoetigt 4 Arbeitsdateien.
      Es wird durch die Angabe ASSWK = 4 in der Vorlaufkarte
      aktiviert.


      Folgende Besonderheiten sind zu beachten:
      Index-Verdichtungsstufen gelten u.U. (s.u.) als
      generierbar. Sie gelten jedoch nie als aus generierbaren
      Verdichtungsstufen generierbar.


      Existieren explizite Generierungsangaben (s.u.), so wird
      das hier geschilderte Verfahren nicht aktiviert.


      Um sicherzustellen, dass bei ASSWK = 4 nicht zu grosse
      Verdichtungsstufen generiert werden, gilt ein
      Verdichtungsstufe als generierbar aus generierbaren
      Verdichtungsstufen, wenn sie nicht zu "gross" ist.
      Eine Verdichtungsstufe gilt als nicht zu "gross",
      wenn ihre Satzanzahl kleiner als ein Zehntel der
      Satzanzahl der groessten Verdichtungsstufe,
      die eingespeichert wird, ist.
      Bei der Ersteinspeicherung in ein Arbeitsgebiet sind die
      genannten Satzanzahlen nicht bekannt. In diesem Fall
      gibt es keine zu grossen Verdichtungsstufen.




      Explizite Generierungsangaben
      -----------------------------


      Die Generierung von Verdichtungsstufen kann explizit ueber
      Vorlaufkarten vorgegeben werden:


      GENVST: Quell-Verdichtungsstufe -> Ziel-Verdichtungsstufe


      Beispiel: GENVST: 17 -> 23
      Die Verdichtungsstufe 23 soll aus der Verdichtungstufe 17
      generiert werden.


      Verdichtungsstufen mit Werten:
      Eine Ziel-Verdichtungsstufe kann aus einer Quell-Verdichtungs-
      stufe generiert werden, wenn alle Schluessel, die in der
      Ziel-Verdichtungsstufe ausgepraegt sind, auch in der
      Quell-Verdichtungsstufe ausgepraegt sind
      und
      alle Werte, die in der Ziel-Verdichtungsstufe enthalten
      sind, auch in der Quell-Verdichtungsstufe enthalten sind
      (unabhaengig von der externen Schnittstelle).


      Index-Verdichtungsstufen:
      Eine Index-Verdichtungsstufe kann aus einer Quell-Verdichtungs-
      stufe generiert werden, wenn alle Schluessel, die in der
      Index-Verdichtungsstufe ausgepraegt sind auch in der
      Quell-Verdichtungsstufe ausgepraegt sind und die Quell-
      Verdichtungsstufe selbst keine Index-Verdichtungsstufe ist.


      Es koennen mehrere GENVST-Angaben gemacht werden,
      wobei jede Angabe vollstaendig in einer Vorlaufkarte
      stehen muss. Zu einer Ziel-Verdichtungsstufe darf nur eine
      Quell-Verdichtungsstufe angegeben, falsch waere also
        GENVST:   17 -> 23
        GENVST:   18 -> 23
      Quell-Verdichungsstufen duerfen nicht als Ziel-Verdichtungs-
      stufen angegeben werden und umgekehrt.


      Folgende Vorlaufkarten-Optionen beeinflussen die GENVST-Angaben:


      Ist CANZSA_GENER_MAX angegeben, so werden bei Verdichtungsstufen
      mit Werten als Quelle nur Verdichtungsstufen akzeptiert,
      die noch nicht eingespeichert sind oder die weniger Saetze
      enthalten, als bei CANZSA_GENER_MAX vorgegeben wurde.


      Index-Verdichtungsstufen werden werden als Ziel nur wirksam,
      wenn auch INDEX_GEN = n angegeben ist, n > 0.
      Als Quelle werden dann nur Verdichtungsstufen akzepiert,
      die weniger als n Saetze enthalten oder noch nicht ein-
      gespeichert wurden.




      Ist NOVSTGENER angegeben, so wirken die GENVST-Angaben nicht.


      Existieren GENVST-Angaben, die nicht aktzeptiert werden,
      so wird das Programm abgebrochen. Soll das Programm nicht
      abgebrochen werden, so ist zusaetzlich die Vorlaufkarten-
      Option GENVST_NICHT_ABBRECHEN anzugeben.
      Grundsaetzlich werden nicht aktzeptierte GENVST-Angaben
      protokolliert.
      Ziel-Verdichtungsstufen, deren GENVST-Angaben nicht
      erfuellbar sind, werden wie nicht generierbare Verdichtungs-
      stufen behandelt.




      Vorzeitiges Programmende:
      -------------------------


      Nach jedem SORT-Aufruf wird geprueft, ob durch Vorlaufkarten-
      Optionen ein vorzeitiges Programmende erzwungen werden soll.
      Die zeitliche Frequenz dieser Pruefung richtet sich also nach
      der Haeufigkeit der SORT-Aufrufe.
      Die Frequenz der Sortaufrufe richtet sich nach der Verarbei-
      tungs-OPTION 'SORTMAX', in der angegeben wird, wieviele Saetze
      pro Aufruf sortiert werden sollen.


      ACHTUNG: Ein Satz aus der Schnittstellendatei ergibt N zu sor-
               tierende Saetze, wobei N die Anzahl der nicht generier-
               baren Verdichtungsstufen ist.


      Ist die Schnittstellendatei vollstaendig verarbeitet, folgt ein
      abschliessender SORT-Aufruf.


      Gibt es generierbare Verdichtungsstufen, so kann es bei der
      Generierung von Verdichtungsstufen zusaetzliche SORT-Aufrufe
      geben.


      Folgende Kriterien fuehren zum vorzeitigen Programmende:
        - Es sind aus der Schnittstellendatei bereits mehr Saetze
          als in der Verarbeitungs-OPTION 'SAETZE' angegeben wurde,
          verarbeitet worden.
        - Die Laufzeit des Programms ist groesser als
          in der Verarbeitungs-OPTION 'MINUTEN' angegeben wurde.


      Wird das Programm PCL1001 aufgrund von Verarbeitungsoptionen
      vorzeitig beendet, wird es abnormal beendet, damit eventuelle
      Folgesteps des aktuellen Jobs nicht mehr ausgefuehrt werden.




      Verzoegerter Update der Parameterdatenbanken
      --------------------------------------------


       Die Update's auf die Parameter-Datenbanken werden erst
      am Programmende von PCL1001 durchgefuehrt (Ausnahme
      Schluessel-Datenbank. s.u.).


       Ist die Option NUPDAT gesetzt, so werden alle Update's
      der Parameterdatenbanken auf die Datei ASSUPD ausgegeben.
      Diese Update's koennen (muessen) dann mit dem Programm PCL1032
      nachgeholt werden.
       Eine Sonderbehandlung erfahren Schluesselauspraegungen.
      Sie werden u.U. (in Abhaengigkeit von Vorlaufkarten-Optionen)
      sofort auf die Schluessel-Datenbank gespeichert.
      Siehe hierzu auch die Beschreibung der Optionen KEYUPDATE
      bzw. KEYZU.




      Implementation der "privaten" Checkpoint-Schreibung
      ---------------------------------------------------


      Checkpoints werden mit dem Programm MCL0699 geschrieben.
      Die Aufrufe auf MCL0699 werden durch die Vorlaufkarten-
      Option CHKP_PRIVAT aktiviert. Checkpoints werden nur dann
      geschrieben, wenn in der betreffenden Installation
      MCL0699 dafuer ausgelegt ist.
      Checkpoints werden nur nach Aenderungen der Parameter-
      Datenbanken geschrieben.
      Werden Schluesselauspraegungen waehrend der Verarbeitung
      der externen Schnittstelle (nicht am Programmende) auf
      die Schluessel-Datenbank ergaenzt, so werden die
      betreffenden Aenderungen mit installationsabhaengigen
      Verfahren fixiert und zwar unabhaengig von der privaten
      Checkpoint-Schreibung.




      Benutzung eines Schreib-cache-Verfahrens zur Erzeugung
      nicht generierbarer Verdichtungsstufen:
      --------------------------------------


      Die Eingabe der OPTION 'VORVERDICHTEN' bewirkt eine andere Art
      der Erzeugung der nicht generierbaren Verdichtungsstufen. Jeder
      von ASSIN01 gelesene Summensatz wird auf internes Format
      gebracht und zunaechst in eine programminterne Tabelle
      gestellt (SCHREIB-cache). Bei jedem weiteren Summensatz wird
      zunaechst versucht, diesen soweit wie moeglich in diesen
      SCHREIB-cache einzuarbeiten.
      Ist dies nicht moeglich (Aenderung des internen Schluessels),
      so wird zunaechst der alte Tabelleneintrag nach ASSWONN
      geschrieben und dann der neue Inhalt aufgenommen.


      Eine Vervielfaeltigung im USER-EXIT E15 entfaellt in diesem Fall.


      Eine Sortierung der Daten von ASSWONN erfolgt immer dann, wenn
      mindestens N Saetze ('SORTMAX=N') auf ASSWONN geschrieben wurden
      und natuerlich bei EOF von ASSIN01.


      Der SCHREIB-cache enthaelt M Eintraege, wobei M die Anzahl der
      nicht generierbaren Verdichtungsstufen ist.


      Die OPTION 'VORVERDICHTEN' empfiehlt sich immer dann, wenn die
      externe Schnittstellendatei sortiert vorliegt. Sortiert heisst
      in unserem Fall: Der hoechste Sortierbegriff ist der
      Schluesselinhalt desjenigen Schluessels, der in der
      zugehoerigen Summen-DB am weitesten links steht (kleinste
      CREPO), ... , niedrigster Sortierbegriff ist der
      Schluesselinhalt desjenigen Schluessels, der in der
      zugehoerigen Summen-DB am weitesten rechts steht (groesste
      CREPO).


      Beim Generieren der generierbaren Verdichtungsstufen wird
      stets mit der obigen Vorverdichtung gearbeitet.
      Ein Ausschalten der Generierung ist voraussichtlich nur in
      wenigen Anwendungsfaellen sinnvoll. Es ist sicherlich dann
      sinnvoll, wenn man bei der Generierung der Verdichtungsstufen
      Platzprobleme auf ASSWONN bekommt.




      Platzbedarf fuer Dateien
      ------------------------


      Auf die Dateien ASSWONN, ASSWK01, ASSWK02, ASSWK03, ASSWK04
      und ASSOUNN werden interne Summensaetze geschrieben. Diese Saetze
      bestehen aus einem Schluesselteil und einer Wertetabelle.
      Der Schluesselteil hat die Laenge des KEYS der zugehoerigen
      Summen-DB + 2. In Abhaengigkeit von Vorlaufkarten-Optionen
      (z. B. VERDICHTEN) ist ein Eintrag der Wertetabelle unter-
      schiedlich lang. Die maximale Laenge betraegt 14 Byte.
      In die Wertetabelle werden i.a. nur Werte ungleich Null
      aufgenommen.


      Beispiel:
      Die externe Schnittstelle enthalte 10 Werte mit gleichem
      Wertezeitraum. Der KEY der Summen-DB habe die Laenge 30.
      Daraus ergibt sich eine maximale Satzlaenge von
      30 + 2 + 10 * 14 = 172 BYTES (+ Satzlaengenfeld).


      Dateigroessen:


      ASSWONN:


      Die Datei ASSWONN kann in zwei Funktionen waehrend des
      Programmlaufes verwendet werden:
      1. Waehrend der portionsweisen Verarbeitung der Ext. Schnitt-
         stellendatei ASSIN01 wird ASSWONN i.a. mehrfach erstellt.
         Die Anzahl der geschriebenen Saetze pro Erstellung
         haengt von diversen Parametern ab (s.u.).
      2. bei der Generierung der generierbaren Verdichtungsstufen
      Damit haengt die Dateigroesse von zwei Faktoren ab:
      (Der Datei-Bedarf ist das Maximum von Punkt 1. und 2..)
      1. SORTMAX-Parameter:
       a.ohne Vorverdichten:
         Anzahl-Saetze = SORTMAX / Anzahl nicht generierbarer
                         Verdichtungsstufen.
       b.mit Vorverdichten:
         Anzahl-Saetze = SORTMAX.




      2. Verdichtungsstufengenerierung
       a.Verdichtungsstufengenerierung ist nicht ausgeschaltet
         (keine Option NOVSTGENER):
         In diesem Fall werden die Saetze aller generierbaren
         Verdichtungsstufen aus ASSWK01 oder ASSWK02 erzeugt und
         nach ASSWONN (mit Vorverdichten) geschrieben.
         Dies kann in Extremfaellen zu sehr grossen Datenmengen
         fuehren und zwar dann, wenn
         - die ausgepraegten Schluessel der generierbaren
           Verdichtungsstufen vorwiegend rechts im KEY der
           zugehoerigen Summen-DB angeordnet sind.
         - ASSWK01/ASSWK02 bereits grosse Ausmasse angenommen haben.
         Eine endgueltige Schaetzung ist in diesem Fall nur schwer
         moeglich.
         Der theoretische WORST-CASE: Anzahl generierbarer
         Verdichtungsstufen * Anzahl Saetze von ASSWK01/ASSWK02.
         Werden mehr als 2 Arbeitsdateien zu Verfuegung gestellt
         (s.o.), so wird das Problem einer zu grossen Datei
         ASSWONN entschaerft. Die Dateien ASSWK03 bzw.
         ASSWK04 enthalten nur Daten von generierbaren
         Verdichtungsstufen. Insbesondere ASSWK04 duerfte nicht
         das Volumen von ASSWK01/ASSWK02 annehmen.


       b.Verdichtungsstufengenerierung ist ausgeschaltet:
         (Option NOVSTGENER):
         Es wird nicht auf ASSWONN geschrieben.



      ASSWK01/ASSWK02:


      Diese Dateien muessen so gross dimensioniert werden, dass sie
      die Endausgabedatenmenge der nicht generierbaren
      Verdichtungsstufen aufnehmen koennen, es sei denn, man arbeitet
      mit 'NOVSTGENER' und so grossem SORTMAX-Parameter, dass sofort
      auf ASSOUNN geschrieben wird.
      In diesem Fall werden ASSWK01 und ASSWK02 nicht benutzt.



      ASSWK03/ASSWK04:


      Diese Dateien werden beim Generieren von Verdichtungsstufen
      benutzt. Je nach Situation muessen sie das Volumen der
      generierbaren Verdichtungsstufen aufnehmen koennen.



      ASSOUNN:


      Diese Datei enthaelt die komplette interne Schnittstelle fuer
      komprimierte Verdichtungsstufen. Eine Schaetzung, wie viele
      Saetze diese Datei enthaelt, ist praktisch nicht moeglich. Der
      Platzbedarf fuer ASSOUNN haengt entscheidend davon ab, wie stark
      die externe Schnittstellendatei verdichtet werden kann.
      Verdichtungsverhaeltnisse von nahezu 1:1 bis 20:1 kommen in
      der Praxis vor.




      Laufzeitprobleme:
      -----------------


      Bei grossen externen Schnittstellendateien und Arbeitsgebieten
      mit mehreren Verdichtungsstufen koennen optimale Vorlaufkarten-
      angaben zu deutlicher Programmlaufzeitverkuerzung fuehren:


      - Der SORTMAX-Parameter sollte nicht zu klein gewaehlt werden.
        Die Voreinstellung von zwei Millionen sollte, wenn die
        SORTWK-Bereiche und ASSWONN hinreichend gross gewaehlt
        werden koennen, nicht verkleinert werden, eher vergroessert.


      - Die Generierung von Verdichtungsstufen sollte hoechstens dann
        ausgeschaltet werden, wenn die externe Schnittstellendatei
        sortiert vorliegt (s.o.) und wenn im Arbeitsgebiet
        hauptsaechlich ueber die Schluessel verdichtet wird, die im
        KEY der zugehoerigen Summen-DB weit rechts liegen (grosse
        CREPO).
        Werden Verdichtungsstufen generiert, so sollte ASSWK03
        und ev. sogar ASSWK04 (s.o.) zur Verfuegung gestellt werden.


      - Das VORVERDICHTEN sollte eingeschaltet werden:
        - wenn es genau eine nicht generierbare Verdichtungsstufe gibt
          oder
        - wenn die externe Schnittstellendatei sortiert vorliegt.




      Adressraumbedarf fuer Auspraegungstabellen
      ------------------------------------------


      Schluesselauspraegungen werden von PCL1001 von der
      externen Darstellung in eine interne Nummer umgeschluesselt.
      Diese Umschluesselung wird mit Hilfe von Auspraegungstabellen
      durchgefuehrt. Fuer jeden verwendeten Schluessel des
      betreffenden Arbeitsgebiets wird programmintern eine Schluessel-
      auspraegungstabelle angelegt. Jede Auspraegung belegt hierbei
      einen Tabellenplatz. Der Platz, der fuer eine Auspraegung
      erforderlich ist, variiert i.a. von Schluessel zu Schluessel
      und ist abhaengig davon, ob mit Zeitpruefung gearbeitet wird.
      Ein Tabelleneintrag ist folgendermassen aufgebaut:


      - interne Nummer        2 Byte (bei interner Laenge 1 oder 2)
                              4 Byte (bei interner Laenge 3 oder 4)
      - Schluesselinhalt      1 bis n Byte in Abhaengigkeit
                              von der externen Laenge des Schluessels.
      - Gueltigkeitsintervall 8 Byte
                              Dieser Eintrag existiert nur, wenn die
                              Zeitpruefung eingeschaltet ist
                              (siehe Option ZEITPRUEF).


      In die oben beschriebenen Tabellen werden alle Schluesselaus-
      praegungen gestellt, die im Arbeitsgebietsabzug enthalten sind.
      Schluesselauspraegungen von Schluesseln der internen Laenge
      3 bzw. 4 werden in Abhaengigkeit der Vorlaufkarten-Option
*     UMSCHLMAX bzw. UMSCHLPLATZ (s.u.) in Tabellen gestellt.
      Auspraegungen, die automatisch ergaenzt werden, werden in
      speziellen Ueberlauftabellen gesammelt. Diese werden
      sortiert verwaltet. Werden sehr viele Schluesselauspraegungen
      ergaenzt, so kann das sortierte Einarbeiten in diese
      Ueberlauftabellen zu erhoehtem CPU-Bedarf fuehren.
      Ueberlauftabellen werden pro Schluessel verwaltet.
      Um nicht zu viel Adressraum zu beanspruchen, wird zunaechst
      mit "kleinen" Ueberlauftabellen gearbeitet. Laeuft eine
      Ueberlauftabelle ueber, so wird eine neue, groessere einge-
      richtet.
      Bei Schluesseln der interne Laenge 3 oder 4 wird
      installationsabhaengig durch die Variable ALC-AU-UE-MAX
      (Text-Datenbank, siehe Handbuch INSTALLATION) die maximale
      Tabellengroesse der Ueberlauftabelle festgelegt.


      Es ist erstrebenswert, nicht zu viele Schluessel-
      auspraegungen ergaenzen zu lassen.
      Eine Reduktion kann durch Einsatz der Option KEYZU erreicht
      werden (siehe entsprechende Beschreibung).




      Zeitpruefung von Schluesselauspraegungen
      ----------------------------------------


      Schluesselauspraegungen koennen in der Transaktion ST06 mit
      zeitlichen Gueltigkeitsintervallen versehen werden (Auspraegung
      ist gueltig von, bis). Beim Pruefen von externen Schnittstellen
      kann gegen diese Zeitintervalle geprueft werden. Ueberprueft
      werden dabei Summensaetze. Es werden hierbei alle Zeitangaben
      zu Werten mit Werteinhalt ungleich 0 ueberprueft. Bei jeder
      aktiven Schluesselauspraegung (d.h. der betreffende Schluessel
      ist in mindestens einer aktiven Verdichtungsstufe ausgepraegt
      und die aktuelle Schnittstelle enthaelt wenigstens einen
      verwendeten Wert dieser Verdichtungsstufe) wird geprueft,
      ob jedes Wertedatum im Gueltigkeitsintervall enthalten ist.
      Die Pruefung entfaellt, wenn die Schluesselauspraegung noch
      nicht in der Schluesseldatenbank enthalten ist.


      Die geschilderte Zeitpruefung ist standardmaessig nicht
      eingeschaltet. Sie muss explizit durch die OPTION ZEITPRUEF
      (s.u.) angefordert werden. Zu beachten ist, dass die Zeit-
      pruefung zusaetzliche Rechenzeit und zusaetzlichen
      Adressraum fuer Schluesselauspraegungstabellen erfordert.


      Die Zeitpruefung erfolgt grundsaetzlich monatsgenau, auch
      wenn in der externen Schnittstelle tagesgenaue Daten
      angeliefert werden.




     VORLAUFKARTE:
     ------------


     Die Optionen in der Vorlaufkarte muessen durch Komma getrennt
     werden. Sie koennen zwischen Hochkommata gestellt werden.
     Beispiel:  NMAXDAT,SORTMAX=1000000
     oder:      'NMAXDAT','SORTMAX=1000000'


     Es werden nur die Stellen 1 - 72 beruecksichtigt.


     Moegliche Optionen:
     ------------------


     Option         ! Bedeutung                  ! Voreinstellung
  -------------------------------------------------------------------
    DRUCK           ! Protokoll maximal erzeugen ! DRUCK
                    !                            !
    NDRUCK          ! Protokoll unterdruecken    ! DRUCK
                    !                            !
    MAXDAT          ! es wird geprueft, ob das   ! MAXDAT
                    ! Wertedatum aufsteigend ist !
                    !                            !
    NMAXDAT         ! Es wird nicht geprueft, ob ! MAXDAT
                    ! das Wertedatum aufsteigend !
                    ! ist                        !
                    !                            !
    MAXDATGLEICH    ! Wertedatum darf <= dem     ! NICHT MAXDATGLEICH
                    ! Datum der letzten Ein-     !
                    ! speicherung sein, muss aber!
                    ! >= dem Datum der ersten    !
                    ! Einspeicherung sein        !
                    !                            !
    UPDAT           ! UPDATE Parameterdatenbanken! UPDAT
                    !                            !
    NUPDAT          ! kein UPDATE der            ! UPDAT
                    ! Parameterdatenbanken       !
                    !                            !
    MINUTEN=NNNN    ! maximale Laufzeit in       ! 1000000
                    ! Minuten                    !
                    !                            !
    SAETZE=NNNNNN   ! Maximal zu verarbeitende   ! 99000000
                    ! Saetze aus Schnittstelle.  !
                    ! 0 bedeutet kein Limit.     !
                    !                            !
    SORTMAX=NNNN    ! maximal pro SORT-Aufruf zu ! 2000000
                    ! sortierende Saetze         !





     Option         ! Bedeutung                  ! Voreinstellung
  -------------------------------------------------------------------
                    !                            !
    AGNR=NN         ! Festlegung, fuer welches   ! fehlt diese Angabe,
                    ! Arbeitsgebiet ASSIN01 gilt ! so wird die Schnitt-
                    !                            ! stellennummer aus
                    !                            ! dem Kopfsatz ge-
                    !                            ! nommen
                    !                            !
    KEYZU           ! Diese Option dient nur     ! nicht KEYZU
                    ! zum Ergaenzen von          !
                    ! Schluesselauspraegungen    !
                    ! aus der Schnittstelle in   !
                    ! die Schluessel-DB. Sie     !
                    ! darf nur fuer Sonderlaeufe !
                    ! hergenommen werden.        !
                    ! Anwendungsfall: Vor Ein-   !
                    ! speicherung Schluesselaus- !
                    ! praegungen auf Schluessel- !
                    ! Datenbank bringen.         !
                    ! SAETZE sollte kleiner als  !
                    ! die Anzahl der externen    !
                    ! Schnittstellensaetze ge-   !
                    ! setzt werden.              !
                    ! Weil das Abbruchkriterium  !
                    ! nur zum Zeitpunkt des      !
                    ! Sortieraufrufs geprueft    !
                    ! wird, ist SORTMAX unter    !
                    ! Beruecksichtigung der Zahl !
                    ! unter SAETZE=...           !
                    ! und den Optionen NOVSTGENER!
                    ! und VORVERDICHTEN geeignet !
                    ! zu waehlen.                !
                    ! KEYZU bewirkt, dass        !
                    ! grundsaetzliche keine in-  !
                    ! terne Schnittstellendatei  !
                    ! erzeugt wird. Es erfolgt   !
                    ! eine optimierte Verarbei-  !
                    ! tung bei der u.a. kein     !
                    ! Sort durchgefuehrt wird.   !
                    ! Weiterhin werden keinerlei !
                    ! Work-Dateien benoetigt.    !
                    ! A c h t u n g: Dement-     !
                    ! sprechend erfolgt eine     !
                    ! unvollstaendige Verarbei-  !
                    ! tung                       !





     Option         ! Bedeutung                  ! Voreinstellung
  -------------------------------------------------------------------
    NOKEYZU         ! Neue Auspraegungen in der  ! nicht NOKEYZU
                    ! externen Schnittstelle     !
                    ! fuehren zu einem Fehler    !
                    ! NOKEYZU impliziert         !
                    ! FEHLER = 0                 !
                    !                            !
    FEHLER=nnn      ! Obergrenze fuer fehlerhafte! 100
                    ! Summensaetze               ! werden mehr fehler-
                    !                            ! hafte Summensaetze
                    !                            ! als maximal zu-
                    !                            ! laessig erkannt, so
                    !                            ! wird PCL1001 vor-
                    !                            ! zeitig beendet.
                    !                            !
                    !                            !
    EXIT=PROGRAMM   ! Bei diser Angabe erwartet  ! keine kuerze
                    ! PCL1001 eine externe       ! Schnittstelle
                    ! Schnittstelle im kurzen    !
                    ! Format. Diese Angabe       !
                    ! muss unbedingt mit dem     !
                    ! tatsaechlichen Format der  !
                    ! Schnittstelle harmonieren. !
                    !                            !
    NOVSTGENER      ! Generierung von            ! Verdichtungsstufen
                    ! Verdichtungsstufen aus     ! generieren
                    ! anderen Verdichtungsstufen !
                    ! ausschalten                !
                    !                            !
    VORVERDICHTEN   ! siehe ausfuehrliche        ! nicht VORVERDICHTEN
                    ! Beschreibung oben.         !
                    !                            !
    CHKP_PRIVAT     ! aktivieren der "privaten"  ! nicht CHKP_PRIVAT
                    ! Checkpoint-Schreibung      !
                    !                            !
    INVERS          ! der Werteinhalt wird mit   ! nicht INVERS
                    ! inversen Vorzeichen        !
                    ! verarbeitet                !
                    ! Anwendungsfall: Fehlein-   !
                    ! speicherungen rueckgaengig !
                    ! machen                     !
                    !                            !
    ZEITPRUEF       ! Zeitpruefung von Schl.-    ! nicht ZEITPRUEF
                    ! auspraegungen einsch. s.o. !
                    !                            !
    KEYLIST         ! neu ueber die ext. Schnitt-! nicht KEYLIST
                    ! stelle hinzugekommene Aus- !
                    ! praegungen zum jeweiligen  !
                    ! Schluessel protokollieren  !




     Option         ! Bedeutung                  ! Voreinstellung
  -------------------------------------------------------------------
    VSTNR=nnn       ! Verdichtungsstufen, in die ! nicht VSTNR
                    ! eingespeichert werden soll,!
                    ! explizit angeben.          !
                    ! Hierbei ist fuer nnn die   !
                    ! jeweilige Verdichtungs-    !
                    ! stufennummer anzugeben.    !
                    ! Beispiel:                  !
                    !  VSTNR=17 , VSTNR=31       !
                    ! Mittels dieser Option kann !
                    ! man Einspeicherungen in    !
                    ! stillgelegte Verdichtungs- !
                    ! stufen vornehmen.          !
    ASSIN=nn        ! Wird z.B. ASSIN=03 ange-   ! keine Angabe
                    ! geben, so werden nachein-  !
                    ! ander die Dateien ASSIN01, !
                    ! ASSIN02, ASSIN03 gelesen u.!
                    ! verarbeitet. Das Verarbei- !
                    ! tungsergebnis entspricht   !
                    ! einer Konkatenierung von   !
                    ! ASSIN01, ASSIN02 und       !
                    ! ASSIN03 unter dem DD-Namen !
                    ! ASSIN01. Diese Option ist  !
                    ! vorwiegend fuer Siemens-   !
                    ! Umgebungen gedacht.        !
                    !                            !
    NOWEPRUEF       ! Diese Option bewirkt       ! WEPRUEF
                    ! folgendes:                 !
                    ! - Eindeutigkeit von Werte- !
                    ! nummer + Wertedatum in     !
                    ! Kopfsaetzen wird nicht mehr!
                    ! geprueft.                  !
                    ! - Wird im Kopfsatz nur ein !
                    ! Zeitraum angekuendigt, so  !
                    ! wird aus den zugehoerigen  !
                    ! Summensaetzen nur der ange-!
                    ! kuendigte Zeitraum ueber-  !
                    ! nommen.                    !
                    !                            !
    MST0169         ! Vor der Verarbeitung eines ! nicht MST0169
                    ! Summensatzes wird der User-!
                    ! Exit MST0169 aufgerufen,   !
                    ! um den aktuellen Summen-   !
                    ! satz vor der Verarbeitung  !
                    ! ev. zu veraendern.         !




     Option         ! Bedeutung                  ! Voreinstellung
  -------------------------------------------------------------------
    VERDICHTEN      ! Diese Option bewirkt, dass ! nicht VERDICHTEN
                    ! Zwischenergebnisse auf     !
                    ! ASSWONN, ASSWK01, ASSWK02, !
                    ! ASSWK03 und ASSWK04 ver-   !
                    ! dichtet gespeichert werden.!
                    ! Sie reduziert dort den     !
                    ! Platzbedarf, erfordert da- !
                    ! fuer jedoch mehr CPU-Zeit. !
                    ! Ebenso wird der Platzbedarf!
                    ! fuer die Sort-Dateien      !
                    ! reduziert.                 !
                    !                            !
    KEYUPDATE       ! Mit dieser Option koennen  ! nicht KEYUPDATE
                    ! mehrere PCL1001 fuer       !
                    ! verschiedene Arbeitsgebiete! bei KEYLUECKE gilt
                    ! parallel laufen. Dabei     ! jedoch KEYUPDATE
                    ! werden Schluesselaus-      !
                    ! auspraegungen, die nicht   !
                    ! im PCL1004-Abzug enthalten !
                    ! sind, sofort in die        !
                    ! Schluesseldatenbank einge- !
                    ! fuegt, sofern sie          !
                    ! dort noch nicht enthalten  !
                    ! sind. Diese Option er-     !
                    ! fordert ein serialisiertes !
                    ! Zugreifen zur Schluessel-  !
                    ! datenbank.                 !
                    ! Diese Option steht zur Zeit!
                    ! nur fuer ISAM und auf      !
                    ! Anforderung fuer DL/I mit  !
                    ! IMS zur Verfuegung.        !
                    !                            !
    KEYLUECKE       ! Beim Ergaenzen von         ! nicht KEYLUECKE
                    ! Schluesselauspraegungen    !
                    ! werden eventuelle Luecken  !
                    ! aufgefuellt.               !
                    ! Impliziert KEYUPDATE       !
                    !                            !
    INDEX_GEN=n     ! Generierung von Indizes    ! INDEX_GEN=0
                    ! (Relationen) aus           !
                    ! Verdichtungsstufen mit     !  bei UMBUCH gilt
                    ! mindestens 1 und hoechstens! jedoch INDEX_GEN=0
                    ! n - 1 Saetzen.             !
                    !                            !
    UMBUCH          ! Umbuchung von              ! nicht UMBUCH
                    ! Bestandswerten aus einer   !  impliziert
                    ! Aenderungsschnittstelle    ! NOVSTGENER
                    ! von dem Dienstprogramm     ! VORVERDICHTEN
                    ! PCL1019.                   ! INDEX_GEN=0
                    !                            ! nicht VSTNR




     Option         ! Bedeutung                  ! Voreinstellung
  -------------------------------------------------------------------
    UMSCHLMAX=n     ! Anzahl Auspraegungen pro   ! UMSCHLMAX=0
                    ! Schluessel mit interner    !
                    ! Laenge 3 oder 4, die in    !
                    ! Hauptspeicher maximal      !
                    ! eingelesen werden          !
                    !                            !
*   UMSCHLPLATZ=n   ! Adressraum in Bytes, in den! UMSCHLPLATZ=0
*                   ! Auspraegungen von          !
*                   ! Schluessel mit interner    !
*                   ! Laenge 3 oder 4 in den     !
*                   ! Hauptspeicher eingelesen   !
*                   ! werden                     !
                    !                            !
    CANZSA_GENER_MAX! Generierung aus Verdich-   ! CANZSA_GENER_MAX=0
      = n           ! tungsstufen mit maximal    ! Steuerung nicht
                    ! n Saetzen                  ! aktiv
    NO_EURO_PRUEF   ! Mit dieser Optionen koennen! Pruefen
                    ! Pruefungen bei Euro-Werten !
                    ! mit Stichtag bei Bestands- !
                    ! fortschreibung durch Bewe- !
                    ! gungsanlieferung ausge-    !
                    ! schaltet werden. Diese     !
                    ! Option ist gefaehrlich. Sie!
                    ! ist nur zulaessig, wenn    !
                    ! sichergestellt ist, dass   !
                    ! in der Schnittstelle       !
                    ! Gegenbuchungen enthalten   !
                    ! sind, die bewirken, dass   !
                    ! sich die Bewegungen nur    !
                    ! auf einen Zeitpunkt aus-   !
                    ! wirken.                    !
                    !                            !
    SICHTEN         ! Diese Option bewirkt, dass ! keine Sichten
                    ! eine aktive Verdichtungs-  !
                    ! stufe betrachtet wird,     !
                    ! wenn die Schnittstelle     !
                    ! einen ausgepraegten        !
                    ! Schluessel dieser Verdich- !
                    ! tungsstufe und einen       !
                    ! verwendeten Wert enthaelt. !
                    ! Betrachtete Verdichtungs-  !
                    ! stufen muessen bzgl. der   !
                    ! Schluessel vollstaendig    !
                    ! bedient werden. Die        !
                    ! erforderlichen Schluessel  !
                    ! koennen auch durch die     !
                    ! Optionen INHALT bzw.       !
                    ! INHALT_ERS geliefert       !
                    ! werden. Diese              !
                    ! Option ist gefaehrlich.    !
                    ! Sie darf nur benutzt wer-  !
                    ! den, wenn im betreffenden  !
                    ! Arbeitsgebiet die Verdich- !
                    ! tungsstufen geeignet defi- !
                    ! niert sind und mit den     !
                    ! Einspeicherungen hierfuer  !
                    ! harmonieren.               !




     Option         ! Bedeutung                  ! Voreinstellung
  -------------------------------------------------------------------
    EXIT_TEXT       ! Es wird eine externe       ! nicht EXIT_TEXT
                    ! Schnittstelle im Textformat!
                    ! erwartet (HSYSDOK,Kap. 5.3)!
  BESTANDSUEBERNAHME! Steuerung der Verarbeitung ! nicht
                    ! externer Schnittstellen    ! BESTANDSUEBERNAHME
                    ! mit Bestandswerten und     !
                    ! Bestandsanlieferung        !
                    ! (siehe auch PCL1002)       !
    GENVST          ! s.o.                       !
    GENVST_NICHT_ABBRECHEN ! s.o.                !
                    !                            !
     NO_END_CNT_VAL ! Zaehler fuer Summensaetze  ! pruefen
                    ! im Endesatz nicht pruefen  !
                    !                            !
    ASSWK = n       ! n = 3 oder 4, Generierung  !
                    ! von Verdichtungsstufen     !
                    ! optimieren (s.o.)          !
                    !                            !
    ISAMSORT        ! nur am PC und dort         ! nicht ISAMSORT
                    ! empfehlenswert             !
                    !                            !
    INHALT (...) =  ... ! Schluesselinhalte via  !
                    ! Vorlaufkarte, s.u.         !
                    !                            !
    INHALT_ERS (...) =  ... ! Schluesselinhalte  !
                    ! via Vorlaufkarte, s.u.     !
                    !                            !
*   ASSAU           ! Auf die Schluesseldatenbank! nicht ASSAU
*                   ! eingefuegte Auspraegungen  !
*                   ! auf die Datei ASSAU  aus-  !
*                   ! geben.                     !




     Option         ! Bedeutung                  ! Voreinstellung
  -------------------------------------------------------------------
                    !                            !
     BS2000-ANSI    ! Externe Schnittstelle      ! keine Uebersetzung
                    ! von BS2000-EBCDIC nach     !
                    ! ANSI (Unix) uebersetzen.   !
                    !                            !
     MVS_ANSI       ! Externe Schnittstelle      ! keine Uebersetzung
                    ! von MVS-EBCDIC nach        !
                    ! ANSI (Unix) uebersetzen.   !
                    !                            !
     OS2_ANSI       ! Externe Schnittstelle      ! keine Uebersetzung
                    ! von Windows (OS2) nach     !
                    ! ANSI (Unix) uebersetzen.   !
                    !                            !
     BS2000_MVS     ! Externe Schnittstelle      ! keine Uebersetzung
                    ! von BS2000-EBCDIC nach     !
                    ! MVS-EBCDIC uebersetzen.    !
                    !                            !
     MVS_BS2000     ! Externe Schnittstelle      ! keine Uebersetzung
                    ! von MVS-EBCDIC nach        !
                    ! BS2000-EBCDIC uebersetzen. !




   Generierung von Verdichtungsstufen: CANZSA_GENER_MAX=n


   Ist die Vorlaufkartenoption NOVSTGENER nicht angegeben, so
  unterscheidet PCL1001 zwischen generierbaren und nicht generierbaren
  Verdichtungsstufen. Die Einteilung haengt allein von den ausge-
  praegten Schluesseln und Werten ab, d.h. ob sich die Informationen
  aus anderen Verdichtungsstufen (durch Summierung) ergeben.
  Dieses kann in der Praxis dazu fuehren, dass alle Verdichtungs-
  stufen bis auf die Basis generierbar sind und sich ein unguenstiges
  Verhalten bzgl. Platz und Laufzeit ergibt. Durch die Angabe
  von CANZSA_GENER_MAX=n gelten alle Verdichtungsstufen mit 0 oder
  mehr als n Saetzen als nicht generierbar und werden zum Generieren
  auch nicht verwendet. Fuer alle uebrigen Verdichtungsstufen wird
  folgendermassen verfahren: die Verdichtungsstufen werden intern
  nach der Anzahl Saetze, die sie enthalten, sortiert. Eine
  Verdichtungsstufe gilt als generierbar, wenn sich ihre Information
  aus anderen Verdichtungsstufen ergibt. Diese anderen Verdichtungs-
  stufen sind automatisch nicht generierbar.


   Generierung von Indizes (Relationen): INDEX_GEN=n


   Standardmaessig sind Indizes nicht aus anderen Verdichtungsstufen
  generierbar. Ueber die Vorlaufkartenoption INDEX_GEN=n kann dies
  abgeaendert werden, wobei n fuer eine positive Zahl steht, zum
  Beispiel INDEX_GEN=100000. Dann wird zur Generierung eines Index die
  kleinste Verdichtungsstufe genommen, die mindestens einen Satz und
  hoechstens n - 1 Saetze enthaelt. Mit INDEX_GEN=0 (dem Standard) wird
  die Generierung von Indizes deaktiviert. Folglich ist die Angabe der
  Option bei einer Ersteinspeicherung wirkungslos, da dann noch jede
  Verdichtungsstufe leer ist. Des weiteren kann weder eine Verdich-
  tungsstufe noch ein Index aus einem Index generiert werden.
   Intern koennen bei der Generierung von Indizes sogenannte Nullsaetze
  zu den nicht generierbaren Verdichtungsstufen erzeugt werden. Diese
  Nullsaetze sind notwendig: wenn ein Index fuer mehrere Verdichtungs-
  stufen geeignet ist und ein Satz der externen Schnittstelle jedoch
  wegen der verwendeten Werte nicht in die Verdichtungsstufe ueber-
  nommen werden muss aus der der Index generiert wird. Diese Null-
  saetze werden erst durch das Dienstprogramm PCL1002 eliminiert.


   Die Option INDEX_GEN wird bei Angabe der Option UMBUCH ignoriert.




   Umbuchung von Bestandswerten: UMBUCH


   Das Umbuchen von Bestandswerten aus einer Schnittstelle des
  Dienstprogrammes PCL1019 (mit der Angabe AENDERN) erfolgt mit dieser
  Option. Voraussetzung an diese Schnittstelle ist, dass bei
  Bestandswerten wie durch PCL1019 der Folgemonat wieder rausgebucht
  wird.
   Umgebucht werden saemtliche Verdichtungsstufenmengen, die mindestens
  eine aktive Verdichtungsstufe enthalten, selbstverstaendlich ausser
  sequentielle Verdichtungsstufen mit der Art 1, da diese ja nicht
  fortgeschrieben werden koennen. Es werden also auch stillgelegte
  Verdichtungsstufen umgebucht, falls sie in einer Menge enthalten sind
  mit mindestens einer aktiven Verdichtungsstufe. Die eingespeicherten
  Zeiten duerfen sich nur soweit ueberlappen, dass mindestens ein Monat
  jeder Verdichtungsstufe nicht durch andere dieser Menge abgedeckt
  wird. Des weiteren ist zu beachten, dass ueberlappende Zeiten nur in
  einer Verdichtungsstufe umgebucht werden. Deshalb sollte man ueber-
  lappende Zeiten moeglichst vermeiden. Durch das Dienstprogramm
  PCL1042 gesplittete Mengen haben keine ueberlappende Zeiten. Um
  Inkonsistenz zu vermeiden, wird ueberprueft, ob jeder Werteintrag in
  jeder Menge bezueglich der eingespeicherten Zeiten umbuchbar ist.
  Ansonsten wird der Satz als fehlerhaft abgewiesen.


   Die Option UMBUCH impliziert die Optionen NOVSTGENER, VORVERDICHTEN
  und INDEX_GEN=0 auch unabhaengig von gegenteiligen Angaben in der
  Vorlaufkarte. Dagegen fuehrt die Angabe der Option VSTNR zu einer
  Fehlermeldung.
   Die Umbuchung kann auch stillgelegte Verdichtungsstufen betreffen.






   Ergaenzung von Schluesselauspraegungen (Option KEYLUECKE)


   Wenn das Dienstprogramm PCL1001 neue Schluesselauspraegungen
  ergaenzt, so wird standardmaessig als interne Nummer der Auspraegung
  die groesste bisher vergebene Nummer plus eins genommen.
   Durch Umbuchungen (zum Beispiel mit PCL1019) koennen nun
  Schluesselauspraegungen auf der Schluesseldatenbank verbleiben, auf
  die es keinen Bezug aus Verdichtungsstufen mehr gibt. Trifft dies
  fuer sehr viele Auspraegungen zu, so koennen diese mit dem
  Dienstprogramm PCL1055 von der Schluesseldatenbank geloescht werden.
  Die dabei entstehenden Luecken werden jedoch standardmaessig nicht
  fuer neue Auspraegungen wieder benutzt. Diese Luecken kann man
  entweder mit dem Dienstprogramm PCL1058 (dabei muessen jedoch
  saemtliche betroffenen Verdichtungsstufen neu geladen werden)
  schliessen oder mittels der Option KEYLUECKE.
   Die Option KEYLUECKE impliziert die Option KEYUPDATE. Da jedoch fuer
  jede zu ergaenzende Auspraegung saemtliche Auspraegungen zu diesem
  Schluessel nachgelesen werden muessen, werden die Auspraegungen
  zunaechst wie im Standardfall ergaenzt. Erst beim Erreichen der
  Obergrenze werden die Luecken abgesucht.





   Einspeicherung in Schluessel mit interner Laenge > 2


   Schluessel mit interner Laenge > 2 gelten im ASS als Massen-
  schluessel mit vielen Auspraegungen. Daher werden in der Regel
  die Auspraegungen derartiger Schluessel im Rahmen der Einspeiche-
  rung nicht intern in Tabellen verwaltet (Platzproblem). Fuer
  das Ermitteln der internen Zaehlnummer (verdichteter Inhalt) zu
  einem Schluesselinhalt eines Schnittstellensatzes ist daher
  jeweils ein Schluesseldatenbankzugriff erforderlich.
  Kann durch das System hinreichend viel Adressraum zur Verfuegung
  gestellt werden, so kann durch die Angabe von UMSCHLMAX=n
  dieses Verhalten verbessert werden. Zu jedem Schluessel mit
  interner Laenge > 2, wird soviel Adressraum angefordert, dass
  n Auspraegungen darin Platz finden. Das Verfahren wird jedoch
  nur fuer die Schluessel angewandt, deren Auspraegungsanzahl
  hoechstens 4 mal so gross ist wie das angegebene n. Hierdurch
  wird erreicht, dass einerseits nicht unnoetig allokiert wird,
  andererseits jedoch ein Grossteil der Datenbankzugriffe vermieden
  wird. ACHTUNG: Bei Angabe dieser Option darf das Programm PCL1004
  nicht mit der Option OA laufen.






* Analog zu UMSCHLMAX koennen mit der Angabe UMSCHLPLATZ=n die
* Zugriffe auf die Schluesseldatenbank deutlich reduziert werden.
* Mit UMSCHLPLATZ wird vorgegeben, wieviel Adressraum (in Bytes)
* fuer Auspraegungstabellen fuer Schluessel mit interner Laenge > 2
* maximal verwendet werden soll.
* Die Angabe ueber Vorlaufkarte ist erforderlich, da i.a. nicht
* ermittelbar ist, wieviel Adressraum zur Verfuegung steht
* (bestimmter Adressraum muss z.B. fuer Satzpuffer oder den Sort
* freigehalten werden). Pro Schluessel mit interner Laenge > 2
* wird maximal der Platz fuer m Auspraegungen benoetigt, wobei
* m die naechste interne Nummer fuer die Auspraegungen des
* betreffenden Schluessels ist (es wird die naechste interne
* Nummer verwendet, da die Anzahl Auspraegungen nicht bekannt ist).
* Alle Auspraegungen, die in den Arbeitsspeicher eingelesen werden,
* werden via Arbeitsspeicher umgeschluesselt, fuer den Rest wird
* auf die Schluesseldatenbank zugegriffen.
* Platzbedarf fuer eine Schluesselauspraegung:
*  4 Byte fuer die interne Nummer +
*  n Byte fuer den Schluesselinhalt (n = externe Laenge) +
*  8 Byte fuer ein Zeitintervall, falls die Zeitpruefung fuer
*    Schluesselauspraegungen aktiviert wurde (ist i.a. nicht der Fall).
* Die Angaben bei UMSCHLPLATZ sollten mindestens im Megabyte-Bereich
* liegen.
* ACHTUNG: Bei Angabe von UMSCHLPLATZ darf das Programm PCL1004
* nicht mit der Option OA laufen.


* Die Optionen UMSCHLMAX und UMSCHLPLATZ duerfen nur alternativ
* verwendet werden.




*     ASSAU
*     -----
*      Auf die Schluesseldatenbank eingefuegte Auspraegungen werden
*     auf die Datei ASSAU ausgeben. Die Ausgabe erfolgt
*     semikolonsepariert als Textdatei. Die Eintraege bestehen aus
*     folgenden Feldern:
*      - Datum in der Form JJMMTT, Startdatum von PCL1001
*      - Arbeitsgebietsnummer, 3-stellig mit fuehrenden Nullen
*      - Schluesselnummer, 5-stellig mit fuehrenden Nullen
*      - Schluesselbezeichnung, 20 Byte
*      - Schluesselinhalt, 32 Byte
*      - Verdichteter Schluesselinhalt, 9-stellig mit fuehrenden Nullen
*     Am Host haben die Saetze die fixe Laenge 80, am PC das
*     Format line-sequential. Die Ausgabe ist sortiert. Da die Ausgabe
*     im Textformat erfolgt, werden Bitschluessel nicht ausgegeben.
*2    Ist die Option ASSAU gesetzt, so werden auf die Schluessel-
*     datenbank eingefuegte Schluesselauspraegungen nicht im
*     Ablaufprotokoll aufgefuehrt.




      Schluessel via Vorlaufkarte
      ---------------------------
      I.a. muss eine externe Schnittstelle, die in ein bestimmtes
      Arbeitsgebiet eingespeichert werden soll, alle Schluessel,
      die in diesem Arbeitsgebiet gebraucht werden, anliefern.
      Die angekuendigten Werte bestimmen die benoetigten Verdichtungs-
      stufen. Alle in diesen Verdichtungsstufen ausgepraegten
      Schluessel sind die erforderlichen Schluessel.
      Fehlen Schluessel, so koennen diese durch Vorlaufkartenangaben
      ergaenzt werden: INHALT (Schluesselnummer) = 'Schluesselinhalt'
      Einem Schluessel kann hierdurch genau ein (fester)
      Schluesselinhalt zugeordnet werden.
      Die durch INHALT (...) angegebenen Schluessel ergaenzen die
      externen Schnittstelle.
      Werden Schluessel angegeben, die nicht gebraucht werden
      oder die in der externen Schnittstelle bereits enthalten sind,
      so werden diese Angaben ignoriert.


      Sollen die Inhalte eines Schluessel der externen Schnittstelle
      durch einen festen Inhalt ueberschrieben werden, so wird dies
      durch INHALT_ERS (Schluesselnummer) = 'Schluesselinhalt'
      ermoeglicht. Fehlt der betreffende Schluessel in der externen
      Schnittstelle, so wirken die Schluessel von INHALT_ERS wie
      die Schluessel von INHALT.


      Es koennen maximal 90 Schluessel durch INHALT bzw. INHALT_ERS
      versorgt werden.






       2.2      Verarbeiten der internen Schnittstelle        PCL1002


Kapitelübersicht
Inhaltsverzeichnis
Stichwortverzeichnis



      Interne Schnittstellen fuer komprimierte Verdichtungsstufen
      werden vom Programm PCL1002 weiterverarbeitet.


      Hierbei gibt es unterschiedliche Varianten:


      1. Variante: (Ur-) Laden einer bzw. mehrerer Summendatenbanken.


      2. Variante: Alte Summendatenbank(en) auf sequentielle
                   Datei abziehen, mit interner Schnittstelle
                   mischen und wieder auf Summendatenbank(en)
                   speichern.


      3. Variante: Interne Schnittstelle direkt in Summendatenbank(en)
                   einarbeiten.


      4. Variante: Interne Schnittstelle additiv zu(r) bestehenden
                   Summendatenbank(en) dazuspeichern.


      5. Variante: Abgleich von Plandaten.



      Welche Variante zum Einsatz kommt, wird ueber Vorlaufkarte
      gesteuert. Die Moeglichkeiten bei den Vorlaufkarten sind
      weiter unten beschrieben.



      Bevor die Varianten im einzelnen beschrieben werden, sollen
      zunaechst noch einige variantenuebergreifende Bemerkungen
      gemacht werden.


      Der INPUT von PCL1002 besteht aus einer internen Schnittstelle,
      den Parameterdatenbanken DST001, DST002, DST003, mitunter
      aus einem Abzug von Verdichtungsstufen aus Summendatenbanken
      und bei der Variante 2 ev. auch noch aus "alten"
      sequentiellen Verdichtungsstufen.


      Das Verarbeitungsergebnis von PCL1002 besteht aus einem
      UPDATE der Steuerungsdatenbank DST003, von neuen oder
      geaenderten Summendatenbanken und ev. aus neuen sequentiellen
      Verdichtungsstufen.




      Eine Summendatenbank kann in einer DLI-Umgebung mit HSSR
      abgezogen werden. Falls HSSR nicht zur Verfuegung steht
      oder Summendatenbanken nicht in DLI gespeichert sind, muessen
      Summendatenbanken mit dem Programm PCL1024 abgezogen werden
      (Beschreibung siehe unten).
      Werden Verdichtungsstufen in einem Arbeitsgebiet auf mehrere
      Summendatenbanken verteilt und werden in einem Lauf von PCL1002
      Verdichtungsstufen aus mehreren Summendatenbanken fortge-
      schrieben, so muss der Abzug der "alten" Verdichtungsstufen
      mit dem Programm PCL1124 erzeugt werden.


      Werden Summendatenbanken vollstaendig neu erstellt,
      so kann man das Laden entweder direkt vom PCL1002 durchfuehren
      lassen oder aber Ladebestaende erstellen, die anschliessend
      vom Programm PCL1013 geladen werden koennen. Bei grossen
      Summendatenbanken fuehrt man das Laden besser mit PCL1013
      durch, da PCL1013 mit einem reinen Lade-PSB arbeiten kann
      und kein Logging anfaellt. Laedt man mit PCL1002, so kann auf
      das Logging nicht verzichtet werden.
      Das Laden mit PCL1013 ist weiter unten beschrieben.


      Man kann die UPDATE's, die von PCL1002 auf der Steuerungs-DB
      durchgefuehrt werden, auch verzoegern, indem man die
      Datenbankaenderungen zunaechst auf eine Datei schreiben laesst.
      Die Aenderungen aus dieser Datei koennen dann mit dem
      Programm PCL1032 auf die Steuerungsdatenbank gespielt werden.


      Man kann also im Extremfall PCL1002 so laufen lassen, dass
      keine Datenbankaenderungen durchgefuehrt werden.


       Hinweis fuer BMP:
       Laesst man PCL1002 als BMP laufen, so kann man nicht die
      PROCOPT=LS benutzen.


       Hinweis fuer Siemens:
      Werden Summendaten waehrend des ONLINE-Betriebes eingespeichert,
      so sollte das betreffende Arbeitsgebiet vorher gesperrt werden,
      damit nicht parallel Auswertungen versucht werden. Das Sperren
      verhindert im Prinzip nur technische Fehlermeldungen (z. B.
      Fehlermeldungen beim Oeffnen einer Datei). Wird mit verteilten
      Summendatenbanken gearbeitet, so ist das Sperren jedoch unbedingt
      erforderlich, um Ueberholeffekte Einspeicherung/Auswertung
      zu verhindern. Diese Ueberholeffekte muessen auch bei BATCH-
      Auswertungen durch Sperren der betreffenden Arbeitsgebiete
      verhindert werden. Es ist darauf zu achten, dass in der JCL des
      PCL1002 die Parameterdatenbanken mit SHARUPD=YES, die Summen-
      datenbanken dagegen mit SHARUPD=NO angegeben werden.




      Die Varianten im einzelnen:


      1. Variante:
      -----------
      (Ur-) Laden von Summendatenbanken.


      Variante 1a.:


      Wird in einem Arbeitsgebiet eine interne Schnittstelle
      zum allerersten mal verarbeitet, so ergeben sich natuerlich
      noch keinerlei Fortschreibungsprobleme. Daher eignet sich
      diese Variante zum erstmaligen Laden von Daten in die
      ASS-Bestaende.
      Gibt es in einem Arbeitsgebiet Werte vom Typ BESTAND,
      so kann nur die Variante 1 zur Urladung (vollstaendige
      Bestandsuebernahme) herangezogen werden.
      In diesem Fall ist keine Vorlaufkarte erforderlich.


      Variante 1b.:


      Ansonsten kann diese Variante in all den Faellen angewandt
      werden, in denen die interne Schnittstelle die kompletten
      Summenbestaende enthaelt. PCL1002 wird dann mit der
      Option LADEN eingesetzt (betrifft PCL1042, PCL1051 und PCL1058).




      2. Variante:
      -----------


      Alte Summendatenbank(en) auf sequentielle
      Datei abziehen, mit interner Schnittstelle
      mischen und wieder auf Summendatenbank(en)
      speichern.


      Die 2. Variante ist der Standardfall der Folgeeinspeicherung.
      Diese Variante muss gewaehlt werden, wenn aktive
      Verdichtungsstufen auf seq. Datentraegern existieren oder wenn
      in der externen Schnittstelle Bestandswerte angeliefert werden.
      Darueber hinaus empfiehlt sich diese Variante, wenn
      Summendatenbanken reorganisiert werden sollen und wenn die
      interne Schnittstelle im Verhaeltnis zur Summendatenbank nicht
      als sehr klein anzusehen ist.




      3. Variante:
      -----------


      Interne Schnittstelle direkt in Summendatenbank(en)
      einarbeiten.


      Die 3. Variante ist fuer folgenden Anwendungsfall gedacht:
      In einem Arbeitsgebiet gibt es keine Verdichtungsstufen auf
      seq. Datentraegern. Die Werte in den Summendaten werden
      durch Bewegungen fortgeschrieben. Die Anzahl der Bewegungen,
      die auf die Summendaten gespielt werden sollen, ist im
      Verhaeltnis zu den bereits vorhandenen Summendaten klein.
      Eine Folgeeinspeicherung entsprechend Variante 2, die
      technisch moeglich ist, ist fuer diesen Anwendungsfall
      sehr teuer.
      In diesem Fall kann man daher die interne Schnittstelle direkt
      von PCL1002 in die Summendatenbank(en) einarbeiten lassen, und
      zwar durch die Verarbeitungsoption DIREKTSP.


      ACHTUNG:


      I.a. werden Saetze in der Summendatenbank durch Folgeein-
      speicherungen laenger.
      Dies fuehrt z.B. in einer DLI-Umgebung zu SEGMENT-SPLIT's.
      Man kann eine Reorganisation erreichen, wenn man von Zeit zu
      Zeit eine Folgeeinspeicherung gemaess Variante 2 durchfuehrt.


      4. Variante:
      -----------


      Interne Schnittstelle additiv zu(r) bestehenden
      Summendatenbank(en) dazuspeichern.


      Die 4. Variante funktioniert im Prinzip wie die erste
      Variante. Sie setzt nur voraus, dass Summendatenbanken
      bzw. seq. Verdichtungsstufen bereits existieren, die
      vorhandene Schnittstelle aber nur zusaetzliche Summensaetze
      enthaelt, die in den Summendaten ergaenzt werden sollen.
      Bei Einsatz dieser Variante werden die schon in den Datenbanken
      vorhandenen Saetze beibehalten. Es findet nur eine
      Erweiterung statt.


      Die Variante 4 wird durch die Vorlaufkarte  VST_ERGAENZ
      angefordert. Diese Vorlaufkartenoption ist unten bei den
      Vorlaufkarten beschrieben.




      5. Variante:
      -----------


      Abgleich von Vorgabewerten (Plandaten) bzw. Erfasswerten


      Mit dieser Programmfunktion werden die Vorgabe-/Erfasswerte
      eines Arbeitsgebietes durch die Vorgabe-/Erfasswerte aus einem
      Sicherungs-Abzug ersetzt. Der Rest der aktuellen Summendaten
      bleibt dabei unveraendert.


      Diese Variante ist fuer folgendes Problem gedacht:


      In einem Arbeitsgebiet sind Vorgabe-/Erfasswerte definiert und
      auch laufend erfasst worden. Fehler in der Folgeeinspeicherung
      oder Fehler im Schnittstellenprogramm machen es erforderlich,
      fuer einen bestimmten Zeitraum Folgeeinspeicherungen zu
      wiederholen. Hierzu muessen die Summendaten zeitlich
      zurueckgesetzt werden, etwa auf den 10. eines bestimmten
      Monats. Vorgabe-/Erfasswerte wurden aber noch am 11. und 12.
      erfasst. Dies haette zur Konsequenz, dass die
      Erfassungsarbeiten vom 11. und 12. verloren waeren.
      Man kann die Vorgabe-/Erfasswerte des 11. und 12. retten, wenn
      man als allererstes einen Summendaten-Abzug (siehe 2.4)
      der aktuellen Summendaten macht, danach zuruecksetzt
      und die Wiederholungslaeufe durchfuehrt.
      Zum Schluss werden dann die Vorgabe-/Erfasswerte der anfangs
      abgezogenen Summendaten mit der Option V_ABGLEICH / E_ABGLEICH
      unter Angabe eines Arbeitsgebietes wieder auf die reparierten
      Summendaten gespielt.


      ACHTUNG:  Es koennen nur die Werte und Verdichtungsstufen
                behandelt werden, die zum Laufzeitpunkt in der
                Steuerungsdatenbank definiert sind, d.h.
                wurden am 11. oder 12. neue Vorgabe-/Erfasswerte
                in der Steuerungsdatenbank definiert, so sind
                diese Werte verloren.


      Der Abzug der Summendaten wird ueber DBALT eingelesen und
      die aktuellen Summendaten werden direkt angesprochen.




      6. Variante:
      -----------


      Gewoehnlich ist die Uebernahme von Bestandswerten mit Anliefer-
      ungsart Bestand nur Monat fuer Monat zulaessig. Durch Angabe von
      NMAXDAT in PCL1001 werden jedoch die zugehoerigen Pruefungen
      deaktiviert. Werden nun bei der Einspeicherung Monate ausge-
      lassen, so wird das zeitliche Gueltigkeitsintervall eines
      Werteinhalts vergroessert.


      Beispiel:
      ---------
      Eingespeichert sind zu einer Schluesselinhaltskombination zum
      Zeitaspekt 0103 100 Einheiten (Datum letzte Einspeicherung) und
      fuer 0303 zur gleichen Schluesselinhaltskombination werden
      200 Einheiten angeliefert. In diesem Fall liefert die Auswertung
      fuer 0103 und 0203 (!) als Ergebnis 100 Einheiten.


      Durch Angabe der Option BESTANDSUEBERNAHME aendert sich das
      Verhalten. Im selben Beispiel wuerde die Auswertung von 0203
      0 Einheiten liefern. Aehnliches gilt, wenn in einem Lauf mehrere
      Zeitaspekte eingespeichert werden. Auch hier werden in den
      "zeitlichen Luecken" Null-Inhalte erzeugt.


      Bemerkung: Die Behandlung von bereits eingespeicherten Saetzen,
      die in der Schnittstelle nicht angeliefert werden, bleibt unbe-
      ruehrt. Diese (Alt-)Bestaende werden weiterhin durch Null-Setzung
      der betreffenden Bestandswerte zeitlich abgeschlossen.
      Ausserdem ist weiterhin die Anlieferung zu einem Monat nur einmal
      gestattet.


      Ablauf ohne Restart:
      -------------------
    .---.          .---.          .---.          .---.
  ,'     ',      ,'     ',      ,'     ',      ,'     ',
  !'.___.'!      !'.___.'!      !'.___.'!      !'.___.'!
  !       !      !       !      !       !      !       !
  !  100  !      !  110  !      !  120  !      !  130  !
  !       !      !       !      !       !      !       !
   '.___.'        '.___.'        '._ _.'        '.___.'
      !_______       !____     _____!              !
              !           !   !                    !
              !_______    !   !                    !
       _______        !   !   !    ________________!
      /       !       !   !   !   !
      !  140  !       !   !   !   !                        .---.
      +-------+       V   V   V   V                      ,'     ',
            !        ***************                     !'.___.'!
   .---.    +------->!             !                     !       !
 ,'     ',           !   PCL1002   !-------------------->!  160  !
 !'.___.'!---------->!             !                     !       !
 !       !           ***************                      '.___.'
 !  196  !             !  ! ! ! ! !______________________________
 !       ! ____________!  ! ! ! !____________________            !
  '.___.' !               ! ! !________________      !           !
          !               ! + - - - - ->+      !     !           !
          !               !             !      !     V           V
          V               V             !      !   .---.       .---.
        .---.           .---.           !      ! ,'     ',   ,'     ',
      ,'     ',       ,'     ',         !      ! !'.___.'!   !'.___.'!
      !'.___.'!       !'.___.'!         !      ! !       !   !       !
      !       !       !       !         !      ! !  195  !   !  196  !
      !  170  !       !  180  !         !      ! !       !   !       !
      !       !       !       !         !      !  '.___.'     '.___.'
       '.___.'         '.___.'          !      V     +___        !
       _______            !             ! **********     !       !
      /       !           !             ! !        !     !       !
      !  200  !           !             ! !  190   !     !       !
      +-------+           V             ! !      ***     V       V
          !        ***************      ! !     /      *************
          !        !             !      !  *****       !           !
          +------> !   PCL1013   !- - ->!              !  PCL1032  !
                   !             !      !              !           !
                   ***************      !              *************
                          !             !                  !    !
                          !             !           +------+    !
                          V             V           V           V
                    ************      .---.    ************   .---.
                    !          !    ,'     ',  !          ! ,'     ',
                    !   220    !    !'.___.'!  !  320     ! !'.___.'!
                    !      *****    !       !  !      ***** !       !
                    !     /         !  230  !  !     /      !  330  !
                     *****          !       !   *****       !       !
                                     '.___.'                 '.___.'


 Dateibeschreibung:
 -----------------


 Lfd.-Nr. !  DD-Name/PGM ! Beschreibung
          !  LINK-Name   !
 ---------!--------------!---------------------------------------------
 100      !  //DBALT     ! Abzug der Summendatenbank
          !              ! Aktivieren fuer Variante 2 und Variante 5
          !              ! Auf DUMMY setzen fuer Variante 1,
          !              !                       Variante 3 und
          !              !                       Variante 4
          !              !
 110      !  //AE        ! Interne Schnittstelle aus PCL1001
          !              !
 120      !  //DST001    ! Werte-DB
          !  //DST011    ! Primaer-Index       (nur DLI)
          !  //DST012    ! Sekundaer-Index 1   (nur DLI)
          !  //DST013    ! Sekundaer-Index 2   (nur DLI)
          !  //DST002    ! Schluessel-DB
          !  //DST021    ! Primaer-Index       (nur DLI)
          !  //DST022    ! Sekundaer-Index 1   (nur DLI)
          !  //DST023    ! Sekundaer-Index 2   (nur DLI)
          !  //DST003    ! Steuerungs-DB
          !  //DST031    ! Primaer-Index       (nur DLI)
          !  //DST032    ! Sekundaer-Index 1   (nur DLI)
          !  //DST033    ! Sekundaer-Index 2   (nur DLI)
          !  //DST007    ! Text-DB
          !  //DST071    ! Primaer-Index       (nur DLI)
          !              !
 130      !  //ASSCI01   ! Vortragsbestand der sequentiellen Verdich-
          !     bis      ! tungsstufen. Nur die benoetigten Dateien
          !  //ASSCI50   ! muessen zugewiesen werden.
          !              ! Die letzten beiden Ziffern bezeichnen
          !              ! den Ort der Verdichtungsstufe.
          !              !
 140      !  //VORLAUF   ! Vorlaufkarte, auf DUMMY setzen und bei
          !              ! Bedarf aktivieren.
          !              !
 160      !  -           ! LOGDATEI   (nur DLI)
          !              !
 170      !  //ASSCO01   ! Fortschreibung der sequentiellen Verdich-
          !     bis      ! tungsstufen. Nur die benoetigten Dateien
          !  //ASSCO50   ! muessen zugewiesen werden.
          !              ! Die letzten beiden Ziffern bezeichnen
          !              ! den Ort der Verdichtungsstufe.
          !              !
 180      !  //AUS       ! Ausgabe PCL1002,
          !              ! Ladebestand, falls mit PCL1013 (//LADE)
          !              ! oder ADAWAN geladen wird
          !  //AUSnn     ! Ladebestand analog zu //AUS fuer Summen-
          !              ! datenbanken von Verdichtungsstufen, die
          !              ! nicht in der direkt dem Arbeitsgebiet
          !              ! zugeordneten Summendatenbank gespeichert
          !              ! werden (verteilte Summendatenbanken)




 Lfd.-Nr. !  DD-Name/PGM ! Beschreibung
          !  LINK-Name   !
 ---------!--------------!---------------------------------------------
          !              !
 190      !  //LISTE     ! Ablaufprotokoll PCL1002
          !              !
          !  //ASSINFO   ! max. Satzlaenge von VST's (falls angef.)
          !              !
 195      !  //ASSUPD    ! Verzoegerte UPDATE's
 196      !  //ASSUPI    ! Verzoegerte UPDATE's von PCL1001
          !              !
 200      !  //ASSCO     ! Vorlaufkarte, auf DUMMY setzen und auf
          !              ! Anforderung aktivieren
          !              !
 220      !  //LISTE     ! Ablaufprotokoll PCL1013
          !              !
 230      !  //DST110    ! Summen-DB neu  (FUER ARBEITSGEBIET 1)
          !  //DST111    ! Index-DB neu   (FUER ARBEITSGEBIET 1, DLI)
          !     bis      !             bis
          !  //DST600    ! Summen-DB neu  (FUER ARBEITSGEBIET 50)
          !  //DST601    ! Index-DB neu   (FUER ARBEITSGEBIET 50, DLI)
          !              !
 320      !  //LISTE     ! Ablaufprotokoll PCL1032
          !              !
 330      !  //DST003    ! Steuerungs-DB
          !  //DST031    ! Primaer-Index         (nur DLI)
          !  //DST032    ! Sekundaer-Index 1     (nur DLI)
          !  //DST033    ! Sekundaer-Index 2     (nur DLI)




      VORLAUFKARTE:
      ------------


      IBM: Feste Satzlaenge 80 Bytes ungeblockt,


      SIEMENS: Variable Saetzlange, mindestens 72 Stellen, hinten
               mit Blanks auffuellen, maximal 80 Stellen.


      Eintraege sind ab Spalte 1 vorzunehmen.
      Mehrere Eintraege werden durch Kommata getrennt.
      Es wird nur die erste Vorlaufkarte interpretiert.


      Moegliche Optionen:
      ------------------


      Inhalt    ! Aktion
      ----------------------------------------------
      DATEI     ! Ausgabe auf Datei(en), UPDATE Steuerungs-DB.
                ! Ladebestand fuer PCL1013 beziehungsweise fuer das
                ! ADABAS-Ladeutility.
                !
      HSSR      ! Ausgabe auf Datei(en), UPDATE Steuerungs-DB, wobei
                ! diese Option die Option DATEI impliziert.
                ! Ladebestand fuer DL/I mittels DFSURGL0 oder einem
                ! vergleichbarem Produkt.
                !
      HSSR8     ! Diese Option impliziert die Option HSSR.
                ! Ladebestand fuer DL/I ab IMS Version 8, also ohne
                ! Kopfsatz und anderem Endesatz.
                !
      BMC       ! Diese Option impliziert die Option HSSR.
                ! Ladebestand fuer DL/I mittels BMC Load Plus.
                !
      DB2       ! Diese Option impliziert die Option DATEI.
                ! Die Ausgabe erfolgt fuer das DB2 Load Utility.
                !
      ADA       ! Diese Option impliziert die Option DATEI.
                ! Die Ausgabe erfolgt wie in der PL/I-Version mit der
                ! Option DATEI, aber ohne HSSR, BMC und DB2.
                ! Adabas Load Exit 6 MST0100: PCL1002 mit Option DATEI
                !                             PCL1002 mit Option ADA
                ! Adabas Load Exit 6 MCL0100: PCL1002 mit Option DATEI
                ! VSAM Repro: PCL1002 mit Option DATEI
                !             PCL1002 mit Option ADA
                !
      SONST     ! Ausgabe auf Datei(en), Update der Steuerungsdatenbank
                ! wenn nicht die Option NUPDAT gesetzt, Pruefungen
                ! ausgeschaltet.
                !
      NOPRUEF   ! UPDATE der Steuerungs-DB,
                ! Pruefungen ausgeschaltet,
                ! Ausgabe auf Datei(en) oder Summen-Datenbank(en) in
                ! Abhaengigkeit von DIREKTSP.




      Inhalt    ! Aktion
      ----------------------------------------------
                !
      NOCELET1  ! CELET1 (Datum der letzten Einspeicherung)
                ! in SST021CO zunaechst nicht fortschreiben, kann
                ! mit Kommando FREIGEBEN in der Online-Transaktion
                ! ST06 aktiviert werden (vgl. Handbuch Einrichten
                ! eines Arbeitsgebietes)
                !
      DIREKTSP  ! Interne Schnittstelle direkt in
                ! Summen-Datenbank(en) einarbeiten
                !
      KORR      ! Korrekturlauf, ermoeglicht es, Bestands-
                ! werte, die als Bestand angeliefert werden,
                ! zu korrigieren, auch wenn Wertedatum <
                ! CELET1 ist.
                !
      NUPDAT    ! Aenderungen, die normalerweise auf die
                ! Steuerungs-DB durchgefuehrt worden waeren,
                ! in die Datei ASSUPD stellen, um diese
                ! Aenderungen mit dem Programm PCL1032
                ! spaeter auf die Steuerungs-DB spielen
                ! zu koennen.
                !
    VST_ERGAENZ ! Dieser Inhalt ist nur im Zusammenhang
                ! mit Reorganisationsmassnahmen mit
                ! Hilfe des Programms PCL1011 sinnvoll.
                ! Wurden von PCL1011 zusaetzliche
                ! Verdichtungsstufen erzeugt, so
                ! enthaelt die interne Schnittstelle
                ! die neuen Verdichtungsstufen, die von
                ! PCL1002 additiv verarbeitet werden,
                ! d.h. die neuen Verdichtungsstufen
                ! werden in die Summendatenbank(en) dazu-
                ! geladen oder auf seq. Datei(en) ausgegeben
                ! (als Input fuer PCL1013, je nach
                ! Vorlaufkartensteuerung) oder
                ! es entstehen neue sequentielle Ver-
                ! dichtungsstufen.
                ! Die Versionsnummer des betreffenden
                ! Arbeitsgebietes wird in diesem Fall
                ! nicht fortgeschrieben.




      Inhalt    ! Aktion
      ----------------------------------------------
                !
    CHKP_PRIVAT ! "private" Checkpoint-Schreibung
                ! (siehe weiter unten).
                !
    V_ABGLEICH  ! Abgleich von Vorgabewerten (Plandaten)
         = AGNR ! unter Angabe der Nummer des Arbeitsgebiets.
                ! (siehe weiter unten).
                !
    E_ABGLEICH  ! Abgleich von Erfasswerten
         = AGNR ! unter Angabe der Nummer des Arbeitsgebiets.
                ! (siehe weiter unten).
                !
    LADEN       ! Laden der Summendatenbank(en) nach den Dienstpro-
                ! grammen PCL1042 , PCL1051 und PCL1058
                ! (Variante 1.B)
                !
    BESTANDSUEBERNAHME
                ! Steuerung der Uebernahme von Bestandswerten mit
                ! Anlieferungsart Bestand
                !
    ASSINFO     ! Ausgabe der maximalen Satzlaenge von Verdichtungs-
                ! stufen auf die Datei ASSINFO
                !
    DOPPELT_WERT! Verarbeitung von internen Schnitstellen, die von
                ! PCL1011 mit dieser Option erzeugt wurden.
                !
    DOPPELT_DIR ! Verarbeitung von internen Schnitstellen, die von
                ! PCL1011 mit dieser Option erzeugt wurden.





    Beispiele:
    ---------


    NOCELET1
    NUPDAT
    DATEI,NOCELET1
    NOPRUEF
    NOPRUEF,NOCELET1
    SONST
    DIREKTSP
    V_ABGLEICH=44
    E_ABGLEICH=44




     "Private" Checkpoint-Schreibung (PCL1002)
     -----------------------------------------


   Checkpoints werden mit dem Programm MCL0699 geschrieben.
   Checkpoints werden nur dann geschrieben, wenn in der betreffenden
   Installation MCL0699 dafuer ausgelegt ist.


   Die Checkpoint-Schreibung ist nur bei einem direkten UPDATE der
   Summendatenbank moeglich, also bei gewaehltem Parameter 'DIREKTSP'
   in der Vorlaufkarte. Die Aktivierung erfolgt dann ueber den
   weiteren Parameter 'CHKP_PRIVAT' in der Vorlaufkarte. Checkpoints
   koennen nach Zugriffen auf die Summendatenbank geschrieben werden.




   Unterstuetzung von BMC Load Plus und Unload Plus fuer DL/I
   ----------------------------------------------------------


    Mit der Option BMC wird die Summendatenbank nicht direkt geladen,
   sondern ein Ladebestand erzeugt, der mit Load Plus anschliessend
   geladen werden kann. Der Ladebestand fuer Load Plus ist identisch
   mit dem sogenannten HSSR-Format fuer das Utility DFSURGL0, ausser
   dass der erste und letzte Satz fehlt.
    Die Option BMC impliziert die Optionen DATEI und HSSR.


    Entsprechend kann statt dem Dienstprogramm PCL1024 Unload Plus
   benutzt werden. Dabei ist darauf zu achten, dass der Aufbau dem
   HSSR-Format entspricht, ausser dass der erste und letzte Satz fehlt.
   Dieses Manko kann behoben werden, in dem der BMC-Abzug mit je einem
   Dummy-Kopf- und Endesatz verkettet wird.






    2.3      Laden von Summendatenbanken                      PCL1013


Kapitelübersicht
Inhaltsverzeichnis
Stichwortverzeichnis


   Mit PCL1013 werden die von PCL1002 geschriebenen Summendaten
   (Datei "AUS" bzw. "AUSnn") in die betreffende Summendatenbank
   geladen. Der Ablaufplan ist in 2.2 integriert.


   In der Vorlaufkarte muss angegeben werden, fuer welche Summen-
   datenbank ein Ladelauf durchgefuehrt werden soll.
   Inhalt: AGNR=nn, wobei  01 <= nn <= 300 (bzw. <= Maximalzahl
   zulaessiger Arbeitsgebiete).
   nn gibt die Nummer der zu ladenden DB an. Diese Nummer ist die
   jeweilige Arbeitsgebietsnummer, wenn nicht mit verteilten
   Summen-Datenbanken gearbeitet wird.



   Beispiel fuer IBM/MVS:
   //ASSCO   DD *
   AGNR=17



   Beispiel fuer SIEMENS/BS2000:
   /FILE dateiname,LINK=ASSCO
   wobei die Datei mit Dateiname einen Satz mit dem Inhalt
   AGNR=17
   enthaelt.


   PCL1013 kann benutzt werden, wenn eine Summendatenbank
   vollstaendig neu geladen wird oder wenn mit VST_ERGAENZ erzeugte
   Verdichtungsstufen additiv zu einer Summendatenbank dazugeladen
   werden sollen.


   ACHTUNG:
   --------
   In einer PC-Umgebung (Windows / Unix) muss
   in dem Fall, wenn kein vollstaendiger Ladebestand auf der Eingabe-
   datei steht (PCL1002 mit Option VST_ERGAENZ), das Programm PCL1013
   ebenfalls mit der Option VST_ERGAENZ gestartet werden, da andern-
   falls kein additives Laden der Daten erfolgt, die Altdaten auf
   der Summendatenbank mithin geloescht werden.


   ACHTUNG:
   -------
   Bei Folgeeinspeicherungen nach Variante 1 oder 2 ist darauf
   zu achten, dass die betreffende Summendatenbank vor dem Ladelauf
   leer ist. Dies kann mit DB-Systemabhaengigen Utilities
   erreicht werden, z.b. DELETE/DEFINE CLUSTER bei DLI.


   ACHTUNG bei ADABAS:
   ------------------
   ADABAS-Summendatenbanken werden nicht mit PCL1013 geladen, sondern
   mit dem ADABAS-Utility ADAWAN. Hierbei ist darauf zu achten, dass
   beim USER-EXIT 6 das ASS-Programm MST0100 angegeben wird.
   Zuvor muss jedoch MST0100 uebersetzt und gelinkt werden.


   Vorlaufkarte:
   -------------


   Werden Summensaetze geladen, die von einem anderen Betriebssystem
   stammen als dem, unter dem PCL1013 laeuft, so ist es u. U.
   erforderlich dass der Kopfsatz der Summendaten an einen anderen
   Code (Translation) angepasst wird.
   Hierfuer stehen folgende Optionen bereit:


   BS2000_ANSI  : Uebersetzen von BS2000-EBCDIC nach ANSI (Unix)
   MVS_ANSI     : Uebersetzen von MVS-EBCDIC    nach ANSI (Unix)


   Im Kopfsatz muessen nur Ziffern angepasst werden (i.w. Datumsan-
   gaben). Daher ist das Translate-Problem vergleichsweise
   einfach: BS2000-EBCDIC und MVS-EBCDIC unterscheiden sich
   bei Ziffern nicht. Gleiches gilt fuer Windows und Unix.


   Mit der Option FB wird festgelegt, dass die Summensaetze
   aus einer Datei mit fester Satzlaenge von 80 Byte gelesen
   werden sollen. Dies ist insbesondere bei Migrationen erforderlich:
   Summensaetze werden am Host mit PCL1024 und der Option FB
   auf eine Datei mit fester Satzlaenge von 80 Byte abgezogen,
   anschliessend folgt ein File-Transfer und dann ein Ladelauf
   von PCL1013 mit den Optionen FB und z.B. BS2000_ANSI.






    2.4      Abziehen von Summendatenbanken      HSSR/PCL1024/PCL1124


Kapitelübersicht
Inhaltsverzeichnis
Stichwortverzeichnis



   Unter dem Abziehen einer Summendatenbank wird das vollstaendige
   sequentielle Lesen dieser Summendatenbank und das Schreiben
   aller Segmente (Saetze) in eine sequentielle Datei verstanden.


   Bei DLI-Datenbanken gibt es ein Utility (HSSR), das sehr schnell
   Datenbanken abziehen kann.
   Steht HSSR nicht zur Verfuegung, koennen Summendatenbank-Abzuege
   mit dem Programm PCL1024 oder dem Programm PCL1124
   oder dem DLI-Utility DFSURGU0 durchgefuehrt werden.


   Hinweis: Mit dem Programm PCL1083 kann ein Summendatenbank-Abzug,
           der mit diesen Programmen erstellt wurde, ins Ladeformat
           tranformiert werden. Er kann dann mit dem PCL1013 wieder
           geladen werden (vgl. HBetrie2)


   Das Programm PCL1124 besitzt im Gegensatz zum Programm PCL1024
   mehr Intelligenz und kann dazu benutzt werden, die Summensaetze
   zu Arbeitsgebieten abzuziehen, die auf mehrere Summendaten-
   banken verteilt sind. In diesem Fall muss es auch benutzt werden.


   Summendatenbank-Abzuege werden vom Programm PCL1002 bei den
   Varianten 2 und 5 benoetigt (siehe 2.2).




   Vorlaufkarte


    In der Vorlaufkarte (DD-Name ASSCO mit Format FB 80) gibt man ab
   Spalte 1


   AGNR=nn


   an, wobei nn die Nummer des Arbeitsgebiet ist, dessen
   Summendatenbank abzuziehen ist.


       Hinweis fuer Siemens:
      Werden Summendaten waehrend des ONLINE-Betriebes abgezogen,
      so sollte das betreffende Arbeitsgebiet vorher gesperrt werden,
      damit nicht parallel Auswertungen versucht werden. Das Sperren
      verhindert im Prinzip nur technische Fehlermeldungen (z. B.
      Fehlermeldungen beim Oeffnen einer Datei). Auswertungen anderer
      Arbeitsgebiete sind moeglich. Es ist darauf zu achten, dass in
      der JCL des PCL1024 die Parameterdatenbanken mit SHARUPD=YES, die
      Summendatenbanken dagegen mit SHARUPD=NO angegeben werden.


   Mehrere Summendatenbanken auf eine Datei abziehen    PCL1124
   ============================================================


   Einem Arbeitsgebiet koennen mehrere Summendatenbanken zugeordnet
   sein. Fuer jede Verdichtungsstufe mit Art ' ' (aktiv) oder '3'
   (nicht aktiv) wird die zugehoerige Summendatenbank durch den Ort
   definiert.
   Mit PCL1124 ist es nun moeglich, alle Summendatenbanken, die zu
   einem Arbeitsgebiet gehoeren, auf eine Datei abzuziehen.
   Dieser Abzug kann ganz analog wie der PCL1024-Abzug weiterverwendet
   werden, z.B. zur Folgeeinspeicherung via PCL1002.
   Abgezogen werden Verdichtungsstufen und Relationen, die folgende
   Kriterien erfuellen:
   a) Die Art muss ' ' oder '3' oder 'J' (Relation) sein.
   b) Die Anzahl der Saetze (laut AG) muss > 0 sein.
   c) Falls die Option NUR_AKTIV angegeben wird, muss die
      Verdichtungsstufe sich auf einer Summendatenbank befinden, die
      mindestens eine aktive Verdichtungsstufe enthaelt.


   Verdichtungsstufen, die diese Kriterien nicht erfuellen oder gar
   nicht im Arbeitsgebiet definiert sind, sich aber auf einer Summen-
   datenbank befinden, werden ueberlesen.




   Eingaben :
   ==========
   Vorlaufkarte,           DD-Name ASSCO,  Format  FB 80
   Schluesseldatenbank  DST002
   Steuerungsdatenbank  DST003
   Summendatenbanken    DSTxxx , die abgezogen werden sollen



   Ausgaben :
   ==========
   Summendatenbankabzug,   DD-Name AUS,      Format  VB 10039
   Protokoll,              DD-Name LISTE,    Format  FBA 133



   Vorlaufkarte:
   =============
   Optionen werden durch Kommata getrennt, Blanks werden ueberlesen,
   Semikolon bedeutet das Ende der Eingabe, nach dem Gleichheitszeichen
   muss eine numerische Eingabe kommen.
   Nur die ersten 72 Zeichen werden beruecksichtigt.


   Option           I      Bedeutung
   --------------------------------------------------------------------
   AGNR = xx        I Arbeitsgebietsnummer ist xx,
                    I muss angegeben werden und zwischen 1 und
                    I CARNR_MAX (definiert im Include SST1127) liegen.
   NUR_AKTIV        I Nur aktive Summendatenbanken werden abgezogen,
                    I d.h. Summendatenbanken, die mindestens eine
                    I aktive Verdichtungsstufe enthalten.



   Beispiel:
   =========
     AGNR = 13   ,  NUR_AKTIV


   Stillgelegte Verdichtungsstufen verlagern            PCL1124
   ============================================================


    Stillgelegte Verdichtungsstufen, die in der primaeren Summen-
   datenbank gespeichert sind, belasten u.U. die Folgeein-
   speicherung. Sie muessen bei jeder Folgeeinspeicherung (nicht
   DIREKTSP) abgezogen und wieder neu geladen werden. Befinden
   sich jedoch stillgelegte Verdichtungsstufen auf einer sekundaeren
   Summendatenbank und in der betreffenden Summendatenbank
   befinden sich nur stillgelegte Verdichtungsstufen, so koennen
   Folgeeinspeicherungen ohne Entladen/Laden dieser Verdichtungs-
   stufen durchgefuehrt werden. Es leuchtet sofort ein, dass
   hierdurch Einsparungen bei der Folgeeinspeicherung erzielt
   werden koennen.


    Mit Hilfe von PCL1124 steht ein Verfahren zur Verfuegung, um
   stillgelegte Verdichtungsstufen von der primaeren Summen-
   datenbank auf sekundaere Summendatenbanken zu verlagern.


    In der Vorlaufkarte von PCL1124 wird angegeben, welche
   stillgelegten Verdichtungsstufen verlagert werden sollen und
   wohin. Es stehen hierfuer zwei Moeglichkeiten zur Verfuegung:
      VDST nr1 > ort    (Mehrfachangabe)
    oder
      VDST_STILL > ort  (Einzelangabe)


    Mit der ersten Methode koennen eine oder mehrere stillgelegte
   Verdichtungsstufen mit den Nummern nr1 auf eine sekundaere
   Summendatenbank mit dem Ort ort verschoben werden und mit der
   zweiten Methode koennen saemtliche stillgelegten Verdichtungsstufen
   auf eine sekundaere Summendatenbank verschoben werden.
   Es koennen nur Verdichtungsstufen mit mindestens einem Satz von der
   primaeren Summendatenbank auf eine sekundaere Summendatenbank
   verschoben werden.
   Bei der Mehrfachangabe muss bei allen zu verlagernden
   Verdichtungsstufen der gleiche Ort angegeben werden.


    PCL1124 erzeugt zwei Abzugsdateien, AUS fuer die primaere
   Summendatenbank und AUS2 fuer die sekundaere Summendatenbank.
   Die erforderlichen Aenderungen der Steuerungsdatenbank
   (Ort der stillgelegten Verdichtungsstufen anpassen und ev.
   ein DUMMY-Arbeitsgebiet anlegen) werden zunaechst auf die
   Datei ASSUPD ausgegeben. Sie muessen zum Schluss noch
   mit PCL1032 auf die Steuerungsdatenbank gespielt werden
   (verzoegerte Update).


    Die Abzugsdateien koennen mit PCL1083 zum Beispiel fuer PCL1013
   (ISAM) oder das DB2-Loadutility konvertiert werden.
   Anschliessend werden die einzelnen Summendatenbanken geladen.
    Damit haben PCL1124 und PCL1083 nur lesenden Zugriff und das
   Arbeitsgebiet muss nur fuer PCL1032 und das Laden der einzelnen
   Summendatenbanken gesperrt werden.


   Vereinfachter Ablaufplan:

       ASSCO    Para-DB    SU-DB
         !_________!_________!
                   !
                PCL1124
          _________!_________
         !         !         !
       ASSUPD     AUS       AUS2
         !         !         !
         !         !         !
         !      ASSAINN   ASSAINN
         !         !         !
         !         !         !
         !      PCL1083   PCL1083
         !         !         !
         !         !         !
         !      ASSAONN   ASSAONN
         !         !         !
                                     Sperrung des Arbeitsgebiet
         !         !         !
       ASSUPD      !         !
         !      primaere sekundaere
      PCL1032    SU-DB     SU-DB
         !       laden     laden
         !
       DST003
                                     Arbeitsgebiet entsperren



   Beispiel:
   =========
     AGNR = 13
     VDST 31 > 122
     VDST 32 > 122


   Die beiden Verdichtungsstufen 31 und 32 des Arbeitsgebiets 13
   sollen auf den Ort 122 (sekundaere Summendatenbank) ausgelagert
   werden.






    2.5      Verzoegerter UPDATE fuer PCL1002                 PCL1032


Kapitelübersicht
Inhaltsverzeichnis
Stichwortverzeichnis



   Wie bereits oben erwaehnt, kann man PCL1002 so laufen lassen,
   dass keine DB-Aenderungen durchgefuehrt werden. Die erforderlichen
   Aenderungen in der Steuerungs-DB werden dann nicht direkt auf
   die Steuerungs-DB geschrieben, sondern in die Datei ASSUPD.
   Die Aenderungsanweisungen aus der Datei ASSUPD muessen dann
   zeitlich verzoegert mit dem Programm PCL1032 nachgetragen werden.


   Der Ablaufplan ist in 2.2 integriert.
   Die Aenderungsanweisungen bestehen hauptsaechlich aus der
   Aenderung der Versionsnummer der Summendatenbank und der Anzahl der
   Saetze pro Verdichtungsstufe (Eintrag auf der Steuerungsdatenbank).


   PCL1032 kennt auch noch eine Vorlaufkartendatei.
   LINK-Name bzw. DD-Name ist ASSCO, bei Windows bzw. Unix
   wird der Name aus '$ASSVLK/T1032.VLK' gebildet.
   Das Dateiformat ist analog zur Vorlaufkartendatei von PCL1001.
   Die Vorlaufkartendatei macht nur im Zusammenhang mit dem
   Protokoll-Arbeitsgebiet Sinn (Siehe hierzu HSYSDOK).
   Sie sollte standardmaessig auf Dummy gesetzt werden.





Vorheriges Kapitel: 1. Betrieb der Verwaltung der Parameterdatenbanken

Nächstes Kapitel:   3. Auswertungen im BATCH einschliesslich PCL1003/ Aufbau der Datei LDAT PCL1016