Konfiguration abschließen

Das Abschließen der Konfiguration ist der letzte Schritt des Assistenten, der direkt nach connection configuration folgt. In diesem Schritt kann der Benutzer alle kundenspezifischen Konfigurationen angeben, die in den vorherigen Schritten der Konfiguration nicht enthalten waren. Außerdem können letzte Anpassungen bezüglich der Konfiguration vorgenommen werden, wie z. B. das Erstellen der Senkendatenbank oder das Starten von Task Reactor. Der Einstiegspunkt für diese Phase ist eine Prozedur namens PUBLIC.FINALIZE_CONNECTOR_CONFIGURATION(CUSTOM_CONFIGURATION VARIANT). Diese kann angepasst werden, indem sie in SQL ersetzt wird oder indem FinalizeConnectorHandlerBuilder verwendet wird. Standardmäßig ist die bereitgestellte custom_configuration in der Datenbank nicht persistent. Wenn sie also für den Entwurf benötigt wird, muss die Konfiguration mit einer der Erweiterungsmethoden gespeichert werden (wahrscheinlich FINALIZE_CONNECTOR_CONFIGURATION_INTERNAL).

Zum Aufrufen dieser Prozedur muss dem Benutzer die Anwendungsrolle ADMIN zugewiesen sein.

Der Schritt „Konfiguration abschließen“ besteht intern aus mehreren Phasen. Einige von ihnen sind vollständig anpassbar und tun standardmäßig gar nichts. Die Phasen sind wie folgt:

  1. Validierung des Status

  2. Validierung der Eingabe

  3. Validierung der Quelle

  4. Interner Callback

  5. Aktualisierung des Status

Anforderungen

„Konfiguration abschließen“ erfordert mindestens die folgenden SQL-Dateien, die während der Installation der nativen App ausgeführt werden müssen:

  • core.sql

  • configuration/finalize_configuration.sql

  • Empfohlen: configuration/app_config.sql

Validierung des Status

Um das Abschließen des Konnektors auszuführen, muss der interne Status des Konnektors CONFIGURING sein, mit dem Konfigurationsstatus CONNECTED.

Diese Validierung kann weder durch die Verwendung von FinalizeConnectorHandlerBuilder noch durch das Überschreiben von gespeicherten Prozeduren überschrieben werden. Es ist jedoch möglich, einen kundenspezifischen Handler zu implementieren, der diese Art der Validierung nicht durchführt.

Validierung der Eingabe

Die Eingabe muss ein gültiger Variant-Wert sein. Außerdem gibt es kundenspezifische Validierungen, die erfolgreich abgeschlossen werden müssen. Die gespeicherte Prozedur PUBLIC.FINALIZE_CONNECTOR_CONFIGURATION_VALIDATE(CUSTOM_CONFIGURATION VARIANT) kann vom Benutzer angepasst werden. Standardmäßig gibt diese Prozedur einfach 'response_code': 'OK' zurück. Die Prozedur kann angepasst werden, indem das SQL-Skript überschrieben wird oder indem FinalizeConnectorHandlerBuilder verwendet und eine kundenspezifische Implementierung der FinalizeConnectorValidator-Schnittstelle bereitgestellt wird.

Validierung der Quelle

Sobald die Validierungen abgeschlossen wurden, wird mit der Prozedur PUBLIC.VALIDATE_SOURCE(CUSTOM_CONFIGURATION VARIANT) eine Verbindung zu einer externen Quelle hergestellt. In einigen Fällen kann diese Prozedur dieselbe sein wie die TEST_CONNECTION-Prozedur, die bei der Verbindungskonfiguration ausgeführt wurde. Allerdings ist TEST_CONNECTION nur dazu gedacht, die grundlegende Konnektivität zu überprüfen, während VALIDATE_SOURCE ein Verfahren ist, das einige zusätzliche Konfigurationen erfordern kann, wie z. B. das Überprüfen der Berechtigungen für eine bestimmte Ressource im Quellsystem. Die Standardimplementierung von VALIDATE_SOURCE gibt 'response_code': 'OK' zurück. Diese Standardimplementierung kann mit SQL oder durch Implementierung der Schnittstelle SourceValidator mit FinalizeConnectorHandlerBuilder überschrieben werden.

Interner Callback

Der interne Callback ist ein anpassbarer Schritt, der PUBLIC.FINALIZE_CONNECTOR_CONFIGURATION_INTERNAL(CUSTOM_CONFIGURATION VARIANT) aufruft, das standardmäßig 'response_code': 'OK' zurückgibt. Diese Prozedur ermöglicht es dem Benutzer, zusätzliche Konfigurationen vorzunehmen, die der Konnektor benötigt, wie z. B. das Speichern der bereitgestellten custom_configuration in der Tabelle STATE.CONNECTOR_CONFIGURATION. Die Prozedur kann über das SQL-Skript oder durch Verwendung von FinalizeConnectorHandlerBuilder überschrieben werden, um eine kundenspezifische Implementierung der FinalizeConnectorCallback-Schnittstelle bereitzustellen.

Aktualisierung des Status

Wenn alle oben genannten Phasen erfolgreich abgeschlossen sind, wird der interne Status des Konnektors wie folgt aktualisiert:

{
    "status": "STARTED",
    "configurationStatus": "FINALIZED"
}
Copy

Eine umfassende Abbildung der Zustandsübergänge finden Sie unter Konnektorablauf.

Antwort

Erfolgreiche Antwort

Wenn die Prozedur erfolgreich abgeschlossen wird, gibt sie eine Antwort von der Prozedur FINALIZE_CONNECTOR_CONFIGURATION_INTERNAL zurück: Wir empfehlen die Verwendung des folgenden Formats:

{
  "response_code": "OK"
}
Copy

Fehlerantwort

Im Falle eines Fehlers erfolgt die Antwort in folgendem Format:

{
  "response_code": "<ERROR_CODE>",
  "message": "<error message>"
}
Copy

Mögliche Fehlercodes:

  • INVALID_CONNECTOR_STATUS – Die Prozedur wurde auf einem bereits konfigurierten Konnektor aufgerufen.

  • INVALID_CONNECTOR_CONFIGURATION_STATUS – Die Prozedur wurde aufgerufen, als CONFIGURATION_STATUS anders war als CONNECTED.

  • CONNECTOR_STATUS_NOT_FOUND – Der Datensatz mit dem Konnektorstatus existiert nicht in der Datenbank (unabhängig von den Eingaben des Benutzers in dieser Phase – ein interner Fehler)

  • INTERNAL_ERROR – Es gibt intern eine Problem; die Meldung sollte beschreibend sein.