AE und BS2000

Dieses Thema gibt einen Überblick darüber, wie Sie BS2000 auf Ihrem AE-System einsetzen können. Es beschreibt, wie Sie BS2000-Dateien auf Ihr System herunterladen, transportieren und extrahieren. Der BS2000-Agent, der alle Funktionen des FileTransfers unterstützt, ermöglicht es Ihnen, bestimmte Attribute festzulegen und Remote Function Calls zu verwenden. Beispiele zeigen, wie Sie BS2000-Befehle durch Script-Objekte ausführen.

Hinweis: Diese Integrationsfunktion kann, wie alle Integrationen von Automic system, Service-Orchestrierung-Workflows unterstützen. Solche Workflows koordinieren automatisierte Prozesse, die auf unterschiedlichen Plattformen, Domänen und Anwendungen ausgeführt werden, um einen bestimmten IT-Dienst bereitzustellen. Weitere Informationen finden Sie unter Info zur Dienst-Orchestrierung.

Diese Seite beinhaltet Folgendes:

Programm BS2-TAR und BS2000 Text-Archiv (TAR-Datei)

Die Downloads-Seite stellt den BS2000-Agenten und BS2000 CallAPI-Dateien für den Download als BS2000-Textarchiv (TAR-Datei) bereit. Dieses Textarchiv ist eine Sammlung von BS2000-Dateien, die verschiedene Dateitypen wie SAM, ISAM, PAM und PLAM enthalten können. Mit diesem Textarchiv transportieren Sie die bereitgestellten BS2000-Dateien auf Ihr System. Das Programm BS2-TAR dient dann dazu, sie zu extrahieren.

Programm BS2-TAR herunterladen und extrahieren

BS2-TAR finden Sie in IMAGE:TOOLS\BS2_TAR. Dieses Programm extrahiert das Textarchiv unter Ihrer eigenen Benutzer-ID und wird für alle Übertragungen benötigt, die mit Textarchiven durchgeführt werden.

Für die Verwendung von BS2-TAR stehen zwei Optionen zur Verfügung:

  • BS2-TAR.BIN
  • Diese Datei enthält das Programm BS2-TAR. Dieses Programm wurde per FTP im Binärmodus in den Bildordner übertragen und kann wie folgt per FTP wieder in den BS2000 übertragen werden:

    FTP

    OPEN
    BS2000-Computer

    Benutzer-ID (TSOS)

    Passwort

    Konto


    BIN

    PUT BS2-TAR.BIN

    BYE

    Im BS2000:

    /CAT BS2-TAR.BIN,BS2-TAR,STATE=U,SHARE=YES,ACCESS=READ

  • BS2-TAR.TAR
  • Diese Datei enthält die neueste Version des Programms BS2-TAR im TAR-Format. Um es nutzen zu können, muss BS2-TAR bereits auf dem BS2000-Rechner installiert sein.

    Die Datei wird mit einem beliebigen FileTransfer im Textmodus ins BS2000 übertragen und dort mit BS2-TAR entpackt:

    /FILE BS2-TAR.TAR,LINK=TAR
    /EXEC BS2-TAR

Programm BS2-TAR verwenden

Die bereitgestellten TAR-Dateien, deren Namen NK4 enthalten, sind für NK4-Pubsets vorgesehen. Sie können eine TAR-Datei mit den folgenden Befehlen extrahieren:

/FILE aus Datei , LINK=TAR
/EXEC BS2-TAR

BS2000-Agent - Unterstützung bei FileTransfers

Der BS2000-Agent unterstützt alle FileTransfer-Funktionen, wie beispielsweise Übertragung von Text- und Binärdateien oder den teilqualifizierten FileTransfer.

Dateiattribute für die Zieldatei bei FileTransfers

Geben Sie Dateiattribute für das Ziel in den Objekteigenschaften des FileTransfers an. Weitere Informationen finden Sie unter FileTransfers (JOBF). Es sind alle File-Attribute möglich, die dem File-Kommando entsprechen. Geben Sie sie in das Feld Dateiattribute im Abschnitt Zieleinstellungen des FileTransfer-Objekts ein. Wenn Sie mehrere Datei-Attribute angeben, müssen Sie diese durch ein Komma trennen. Folgende Attribute werden dabei standardmäßig verwendet:

  • Textmodus
  • FCB=SAM,LINK=UCEXSAM,SPACE=(300,300)

  • Binärmodus
  • SPACE=(300,300),BLKSIZE=STD,BLKCTRL=NO,FCB=PAM

Explizit angegebene Attribute ersetzen die Defaultwerte bzw. werden dem obigen Kommando hinzugefügt.

Wichtig! Sie können einen FileTransfer verwenden, um ISAM-Dateien zu erstellen.

Beispiel:

FCB=ISAM,BLKCTRL=DATA,RECFORM=V,KEYPOS=5,KEYLEN=8

Bibliothekselemente als Quelle und Ziel

Elemente von LMS-Bibliotheken (PLAM) können Quelle und Ziel eines FileTransfers sein.

  • Bibliothekselemente können zwischen zwei LMS-Bibliotheken transferiert werden.
  • Ein Bibliothekselement kann als Datei in ein beliebiges Zielsystem transferiert werden.
  • Textdateien aus beliebigen Zielsystemen können in eine LMS-Bibliothek transferiert werden.

Verwenden Sie das folgende Format, um das Element anzugeben:

*LIB(Bibliothek,Element(Version),Typ )

Die Elementversion ist optional. Wenn Sie keine Version definieren, liest die Quelldatei die höchste Version, oder die Zieldatei schreibt die Version @.

Beispiele:

*LIB($RS.LMS.LIB,MY.ELEMENT,S)

*LIB($RS.LMS.LIB,MY.*,S)

Originalattribute beibehalten

Um die Attribute von Quelldateien für die Zieldateien zu übernehmen, verwenden Sie die Option Original-Datei-Attribute beibehalten in den Ziel-Einstellungen der Seite FileTransfer. Weiters müssen Quell und Zielplattform übereinstimmen.

Wichtig! Wenn Sie diese Einstellung verwenden, dürfen Sie keine zusätzlichen Attribute für die Zieldatei angeben, da dies zu einem Fehler führen würde.

Die folgenden Dateiattribute können in BS2000-FileTransfers beibehalten werden:

  • Attribute Catalog-Macro
    • ACCESS
    • ACLPROT
    • BASACL
    • BACKUP
    • CCS
    • DESTROY
    • EXDATE
    • GROUPAR
    • GUARDS
    • LARGE
    • OTHERAR
    • OWNERAR
    • RETPD
    • SHARE
  • Attribute File-Macro
    • BLKCTRL
    • BLKSIZE
    • DUPEKY
    • FCBTYPE
    • KEYLEN
    • KEYPOS
    • RECFORM
    • RECSIZE
    • RETPD
    • SPACE

Einschränkungen beim FileTransfer mit PAM-Dateien

Wichtig!

  • Wenn der BS2000-Agent die Datei sendet: Alle Seiten werden gelesen, wenn die PAM-Datei im Non-Key-Format (NK) verfügbar ist, ohne dass ein Ende markiert wird.
  • Wenn der BS2000-Agent die Datei erhält: Beim Erstellen einer PAM-Datei wird eine Endpunktmarkierung (ein zusätzlicher logischer Block) angefügt. Dieser Block kann gelegentlich Dateistrukturen zerstören.

Dienstprogramm für Remote Function Call (RFC) Tasks

Unter den Auslieferungsdateien des BS2000-Agenten befindet sich auch das Dienstprogramm für RFC-Task namens UCYBRFC?.

Die INI-Datei des Agenten enthält den Abschnitt [RFC] mit dem Parameter LOGON für den Agent BS2000. Hier können Sie den Parameter 1 so einstellen, dass die Benutzer-ID beim FileTransfer berücksichtigt wird. In diesem Fall generiert der Agent einen Batch-Job für diese Benutzer-ID. Dieser Batchjob ruft das Dienstprogramm UCYBRFC? auf, das sich mit TCP/IP über den Port verbindet, der im Abschnitt [RFC] mit dem Parameter PORT definiert wurde. Dadurch kann der Agent über diese Verbindung die Zugriffsrechte auf die Datei mit dem eingetragenen Benutzer überprüfen.

Das Anlegen dieses Batchjobs führt zu einem Performanceverlust für den Agenten. Daher werden die RFC-Tasks für weitere FileTransfers aufrecht erhalten. Die RFC-Aufgabe endet automatisch nach einem bestimmten Zeitraum (Parameter TIMEOUT=), wenn er keine weiteren Anfragen mehr erhält. Bei der Beendigung des Agenten werden auch alle dazugehörigen RFC-Aufgaben beendet.

Wichtig! Die Datei UCYBRFC? muss shareable sein, wenn der RFC-Mechanismus aktiviert wird.

Beispiele

BS2000 OS Befehl

Das Erzeugen, die Bereitstellung und die Bearbeitung einer Datensequenz ist ein komplexer Prozess, bei dem Script-Funktionen und -Anweisungen sowie spezielle Objekte eng zusammenwirken. Das folgende Beispiel beschreibt einen BS2000 OS-Befehl, der von einem Script-Objekt ausgeführt wird. Das Ergebnis wird Zeile für Zeile in das Aktivierungsprotokoll des Scripts geschrieben.

  1. Starten Sie das Scriptobjekt SC.PROCESS.BS2000CMD mit dem folgenden Script:
  2. :SET &HND# = PREP_PROCESS ('C70', 'BS2000CMD',,'CMD=/STA P','UC_LOGIN=Admin')

    :PROCESS &HND#

    : SET &LINE# = GET_PROCESS_LINE (&HND#)

    : PRINT &LINE#

    : ENDPROCESS

    Dieses Script ruft die Funktion PREP_PROCESS auf, welche die Datensequenzverarbeitung vorbereitet. Die folgenden Parameter werden zugewiesen:

    • Host
      Name des Agenten, auf dem ein Ereignis-Job ausgeführt werden soll - in diesem Fall: C70.
    • EventJob
      Der Job, der ausgeführt werden soll - in diesem Fall EVENT.BS2000CMD.
      Die Angabe von BS2000CMD bewirkt, dass der Job EVENT.BS2000CMD gestartet wird.
      Hinweis: Standardmäßig enthält der Mandant 0000 die folgenden Ereignisjobs im Ordner PREP_PROCESS der Process Assembly-Perspektive: EVENT.BS2000CMD, EVENT.BS2000UCON, EVENT.UNIXCMD, EVENT.UNIXFS and EVENT.WINCMD. Sie können sie unverändert verwenden oder für Ihre eigenen Ereignis-Jobs anpassen.
    • Filter
      Dieser Parameter wird nicht verwendet. Daher wird der Defaultwert "*" verwendet, und es werden alle Output-Zeilen vom Konsolen-Kommando berücksichtigt.
    • Aktion
      Der Wert /STA P wird der Script-Variablen &CMD des Ereignis-Jobs zugewiesen.
    • UC_LOGIN=
      Der Ereignis-Job führt diesen Befehl unter Verwendung des Login (LOGIN) ADMIN aus.
  3. Der Job EVENT.BS2000CMD wird gestartet.
  4. Wichtig! Aktivieren Sie auf der Seite "Attribute" im Abschnitt Laufzeitparameter das Kontrollkästechen Zeige Attribut-Dialog. Dies stellt sicher, dass das Include-Objekt ATTRDIA.BS2000 gelesen wird. Alle Attribute, die im Script des Include-Objekts ATTRDIA.BS2000 aufgelistet sind, können nun mit Werten versorgt werden. Der Attributdialog wird nicht angezeigt, da die Übergabe der Variableninhalte intern erfolgt.

  5. Der Job EVENT.BS2000CMD kann sich nun anmelden, um das Konsolen-Kommando auszuführen.
    • Das auszuführende Kommando "/STA P" wird in die Script-Variable "&CMD" eingelesen.
    • Das SYSOUT wird in eine Ausgabedatei umgeleitet und das Kommando durchgeführt.
  6. Die Ausgabedatei wird zur Automation Engine übertragen und steht als Datensequenz zur Verfügung. Die Ausführung des Jobs "EVENT.BS2000CMD" ist damit beendet.

  7. Im Script-Objekt SC.PROCESS.BS2000CMD gibt die Script-Funktion PREP_PROCESS nun einen Wert zurück. Sie bezieht sich auf die Administrationsdaten der zu verarbeitenden Datensequenz.
  8. Dieser Wert wird der Script-Anweisung :PROCESS als Startparameter übergeben. :PROCESS und :ENDPROCESS bilden eine Prozess-Schleife, die hier solange durchlaufen wird, bis das Ende der Datensequenz erreicht ist. Mit jedem Schleifendurchlauf wird eine neue Zeile dieser Datensequenz aus dem Arbeitsspeicher geholt. Unter Verwendung des aktuellen Wertes kann die Script-Funktion GET_PROCESS_LINE den Zeileninhalt der Datensequenz abrufen.

    Das Script schreibt die aktuelle Konsolenzeile in das Aktivierungsprotokoll.

BS2000 Console-Kommando

Das Erzeugen, die Bereitstellung und die Bearbeitung einer Datensequenz ist ein komplexer Prozess, bei dem Script-Funktionen und -Anweisungen sowie spezielle Objekte eng zusammenwirken. Das folgende Beispiel beschreibt ein BS2000 Console-Kommando, das von einem Script-Objekt ausgeführt wird. Das Ergebnis wird Zeile für Zeile in das Aktivierungsprotokoll des Scripts geschrieben.

Wichtig: Um einen BS2000-Konsolenbefehl ausführen zu können, muss das Dienstprogramm UCYEBXXZ auf dem Host installiert sein. Siehe Agenten für BS2000 installieren

  1. Starten Sie das Script-Objekt SC.PROCESS.BS2000UCON mit dem folgenden Script:
  2. :SET &HND# = PREP_PROCESS ('C70', 'BS2000UCON',,'CMD=BCDSIP DISP=O')

    :PROCESS &HND#

    : SET &LINE# = GET_PROCESS_LINE (&HND#)

    : PRINT &LINE#

    : ENDPROCESS

    Dieses Script ruft die Funktion PREP_PROCESS auf, welche die Datensequenzverarbeitung vorbereitet. Die folgenden Parameter werden zugewiesen:

    • Host
      Name des Agenten, auf dem ein Ereignis-Job ausgeführt werden soll - in diesem Fall: C70.
    • EventJob
      Der Job, der ausgeführt werden soll - in diesem Fall EVENT.BS2000UCON.
      Die Angabe von BS2000UCON bewirkt, dass der Job EVENT.BS2000UCON gestartet wird.
      Hinweis: Standardmäßig enthält der Mandant 0000 die folgenden Ereignisjobs im Ordner PREP_PROCESS der Process Assembly-Perspektive: EVENT.BS2000CMD, EVENT.BS2000UCON, EVENT.UNIXCMD, EVENT.UNIXFS and EVENT.WINCMD. Sie können sie unverändert verwenden oder für Ihre eigenen Ereignis-Jobs anpassen.
    • Filter
      Dieser Parameter wird nicht verwendet. Daher wird der Defaultwert "*" verwendet, und es werden alle Output-Zeilen vom Konsolen-Kommando berücksichtigt.
    • Aktion
      Der Wert BCDISP DISP=O wird der Script-Variablen &CMD des Ereignis-Jobs zugewiesen.
    • UC_LOGIN=
      Der Ereignis-Job soll diesen Befehl der Konsole ausführen und damit alle eröffneten Anwendungen auflisten.
  3. Der Job EVENT.BS2000UCON wird gestartet.
  4. Wichtig! Aktivieren Sie auf der Seite "Attribute" im Abschnitt Laufzeitparameter das Kontrollkästechen Zeige Attribut-Dialog. Dies stellt sicher, dass das Include-Objekt ATTRDIA.BS2000 gelesen wird. Alle Attribute, die im Script des Include-Objekts ATTRDIA.BS2000 aufgelistet sind, können nun mit Werten versorgt werden. Der Attributdialog wird nicht angezeigt, da die Übergabe der Variableninhalte intern erfolgt.

  5. Der Job EVENT.BS2000UCON kann sich nun anmelden, um das Konsolen-Kommando auszuführen.
    • Das Dienstprogramm UCYEBXXZ startet in der Benutzer-ID, die im Anmeldeobjekt angegeben ist, das Sie im Job EVENT.BS2000UCON verwenden.
    • Es versucht, eine der Konsolenverbindungen einzurichten die auf der Seite Prozess des Jobs enthalten ist.
      Siehe folgendes Beispiel, bei dem der erste Parameter die Benutzer-ID und der zweite das Passwort ist:
    • CON CON1,CON1
      CON CON2,CON2
      CON CON3,CON3
      CON CON4,CON4
      CON CON5,CON5
      CON CON6,CON6
      CON CON7,CON7
      CON CON8,CON8

    • Der Befehl BCDISP DISP=O wird ausgeführt, sobald die Verbindung zur Konsole erfolgreich hergestellt wurde.
    • Die Ende-Meldung des Konsolen-Kommandos oder die festgelegte Timeout-Zeit beenden die Verbindung. Standardmäßig enthält der Job EVENT.BS2000UCON das Kommando TIM 120.

    Die Ausgabedatei wird zur Automation Engine übertragen und steht als Datensequenz zur Verfügung. Die Ausführung des Jobs "EVENT.BS2000UCON" ist damit beendet.

  6. Im Script-Objekt SC.PROCESS.BS2000UCON gibt die Script-Funktion PREP_PROCESS nun einen Wert zurück. Sie bezieht sich auf die Administrationsdaten der zu verarbeitenden Datensequenz.
  7. Dieser Wert wird der Script-Anweisung :PROCESS als Startparameter übergeben. :PROCESS und :ENDPROCESS bilden eine Prozess-Schleife, die hier solange durchlaufen wird, bis das Ende der Datensequenz erreicht ist. Mit jedem Schleifendurchlauf wird eine neue Zeile dieser Datensequenz aus dem Arbeitsspeicher geholt. Unter Verwendung des aktuellen Wertes kann die Script-Funktion GET_PROCESS_LINE den Zeileninhalt der Datensequenz abrufen.

    Das Script schreibt die aktuelle Konsolenzeile in das Aktivierungsprotokoll.