Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

Teilprogramme, Transaktionscodes, TAC-Queues und VORGANG-Exits eintragen

Zum Eintragen eines neuen Teilprogramms oder VORGANG-Exits müssen Sie KC_CREATE_OBJECT für den Objekttyp KC_PROGRAM aufrufen.
Zum Eintragen eines neuen Transaktionscodes oder einer neuen TAC-Queue müssen Sie den Objekttyp KC_TAC angeben.

Neue Teilprogramme und VORGANG-Exits können Sie nur dynamisch eintragen, wenn die Anwendung mit Lademodulen (BS2000-Systeme), Shared Objects (Unix- und Linux-Systeme), bzw. DLLs (Windows-Systeme) generiert wurde.

Einem Teilprogramm sollten Sie mindestens einen Transaktionscode zuordnen, damit es aufgerufen werden kann. Den Transaktionscode dürfen Sie erst nach dem Teilprogramm in die Konfiguration aufnehmen. Das Teilprogramm muss also entweder zum Zeitpunkt, zu dem der Transaktionscode mit KC_CREATE_OBJECT erzeugt wird, bereits in der Konfiguration der Anwendung enthalten sein oder in derselben Transaktion vor dem Transaktionscode eingetragen werden. Das Teilprogramm kann sowohl mit KDCDEF generiert als auch in einer eigenen Transaktion eingetragen worden sein.

Sie können also auch bereits in der Konfiguration enthaltenen Teilprogrammen neue Transaktionscodes zuordnen.

Ein neu erzeugtes Teilprogramm kann erst aufgerufen werden, wenn es geladen und ihm mindestens ein Transaktionscode zugeordnet wurde. Zum Laden muss das Teilprogramm übersetzt und in ein mit KDCDEF generiertes Lademodul, Shared Object bzw. DLL der Anwendung eingebunden werden. Anschließend muss dieses Lademodul, Shared Object oder die DLL ausgetauscht werden (siehe KDCPROG im Abschnitt "KDCPROG - Lademodule/Shared Objects/DLLs austauschen" oder KC_MODIFY_OBJECT mit obj_type=KC_LOAD_MODULE im Abschnitt "obj_type=KC_LOAD_MODULE").


Hinweis für BS2000-Systeme:

  • Handelt es sich um eine Lademodul mit Slices und liegt der Public Slice des Lademoduls in einem Common Memory Pool, müssen Sie anschließend noch ein KDCAPPL PROG=NEW oder KC_CHANGE_APPLICATION absetzen, damit dieses Lademodul ausgetauscht wird. Erst dann können Sie den neuen oder geänderten Service nutzen.

  • Ein neues Teilprogramm darf nicht in ein Lademodul eingebunden werden, das statisch zum Anwendungsprogramm gebunden ist (Lademodus STATIC).

Soll einem Transaktionscode, den Sie dynamisch eintragen, ein VORGANG-Exit zugeordnet werden (kc_tac_str.exit_name), dann muss dieser VORGANG-Exit bereits in der Konfiguration der Anwendung existieren oder er muss in derselben Transaktion wie der Transaktionscode eingetragen werden, jedoch vor dem Transaktionscode.

Damit der VORGANG-Exit durchlaufen werden kann, muss das zugehörige Programm geladen sein. Neu eingetragene VORGANG-Exits müssen also wie Teilprogramme in ein Lademodul, Shared Object oder eine DLL der Anwendung eingebunden werden, das dann ausgetauscht werden muss.

Für das Eintragen von Teilprogrammen, Transaktionscodes und VORGANG-Exits gilt allgemein die Regel:

              Teilprogramm(KC_PROGRAM) und VORGANG-Exit (KC_PROGRAM)              
vor Transaktionscodes (KC_TAC)              

Die Transaktionscodes der Event-Services BADTAC, MSGTAC und SIGNON (KDCBADTC, KDCMSGTC, KDCSGNTC) können nicht dynamisch in die Konfiguration eingetragen werden.