cciRegisterUserExit

Hierbei handelt es sich um eine Dienstprogrammfunktion, die vom Code des Benutzers während des Aufrufs von bipInitializeUserExits aufgerufen werden kann. Sie wird durch den Code des Benutzers aufgerufen, wenn der Benutzer Funktionen registrieren möchte, die bei jedem Auftreten bestimmter Ereignisse aufgerufen werden sollen.

Syntax

typedef struct cci_UEVft {
    int reserved;
    char StrucId[4];
    int Version;
    cciInputMessageCallback iFpInputMessageCallback;
    cciTransactionEventCallback iFpTransactionEventCallback;
    cciPropagatedMessageCallback iFpPropagatedMessageCallback;
    cciNodeCompletionCallback iFpNodeCompletionCallback;

} CCI_UE_VFT;

void cciRegisterUserExit (
  int*                   returnCode,
  CciChar*    name,
  CciDataContext* userContext,
  CCI_UE_VFT* functionTable);

Parameter

returnCode (Ausgabe)
Erfordert den Rückkehrcode von der Funktion. Mögliche Werte:
  • CCI_DUP_USER_EXIT_NAME

    Der angegebene Name entspricht dem Namen eines zuvor in der aktuellen Ausführungsgruppe registrierten Benutzerexits.

  • CCI_INV_USER_EXIT_NAME

    Der angegebene Name war ungültig. Dies kann auf einen NULL-Zeiger, eine leere Zeichenfolge oder eine angegebene Zeichenfolge zurückzuführen sein, die nicht alphanumerische Zeichen enthält.

name (Eingabe)
Muss einen Zeiger auf eine auf NULL endende Zeichenfolge des Typs 'CciChars' enthalten, der einen Namen für den Benutzerexit angibt. Der Name muss in allen Benutzerexits, die auf dem gleichen Broker installiert werden können, eindeutig sein. Dieser Name wird für die Identifizierung des Benutzerexits in beispielsweise folgenden Elementen verwendet:
  • Benutzertracenachrichten
  • Ausnahmebedingungs- oder Systemprotokollnachrichten
  • Verwaltungsbefehlen (z. B. mqsichangeflowuserexits)
Für den Namen gelten die folgenden Einschränkungen:
  • Er darf nur aus alphanumerischen Zeichen bestehen.
  • Er darf nicht mehr als 255 Zeichen enthalten.
  • Der Name muss in allen Benutzerexits, die auf dem gleichen Broker installiert werden können, eindeutig sein.
userContext (Eingabe)
Dieser Parameter ermöglicht es dem Aufrufenden, einen Kontextzeiger anzugeben, der beim Aufruf der Callback-Funktion an diese übergeben wird. Dieser Parameter darf NULL sein.
functionTable (Eingabe)
Dies ist ein Zeiger auf ein Struct, dessen Felder entweder Zeiger auf Funktionen, die den richtigen Signaturen entsprechen, oder NULL enthalten müssen. Ein NULL-Wert für eines dieser Felder gibt an, dass der Benutzerexit nicht für dieses Ereignis aufgerufen werden darf.

Rückgabewerte

Keine. Wenn ein Fehler auftritt, gibt der Parameter Rückkehrcode den Grund für den Fehler an.

Beispiel

extern "C"{

void bipInitializeUserExits(){

  	int rc = CCI_SUCCESS;
  CCI_UE_VFT myVft = {CCI_UE_VFT_DEFAULT};
  myVft.iFpInputMessageCallback = myInputMessageCallback;
  myVft.iFpTransactionEventCallback = myTransactionEventCallback;
  myVft.iFpPropagatedMessageCallback = myPropagatedMessageCallback;
  myVft.iFpNodeCompletionCallback = myNodeCompletionCallback;
  
  cciRegisterUserExit(&rc,
                      MyConstants::myUserExitName,
                      0,
                      &myVft);

  /*Sie sollten jetzt den RC auf unerwartete Werte prüfen*/
  
  return;
}

}/*Ende des externen "C" */
Zugehörige Konzepte
Benutzerexits entwickeln
Zugehörige Tasks
Benutzerexit entwickeln
Bemerkungen | Marken | Downloads | Bibliothek | Unterstützung | Rückmeldung
Copyright IBM Corporation 1999, 2006 Letzte Aktualisierung: 23. Aug. 2006
as35920_