Aktivität 'Tabelle abfragen'

Die Aktivität Tabelle abfragen prüft, ob in einer Zeile einer Datenbanktabelle eine Datenbankoperation (Einfügung oder Aktualisierung) durchgeführt wurde. Dazu wird in dem angegebenen Zeitintervall der Status einer speziellen Markierungsspalte überprüft.

Während der Ausführung gibt die Aktivität Tabelle abfragen bei Einfügungs- und Aktualisierungsoperationen die Daten zurück, die in Ihrer Datenbanktabelle geändert wurden, und ordnet diese Daten direkt den Variablen in der Orchestrierung zu. Bei den Aktivitäten Eingefügte Zeilen abrufen und Aktualisierte Zeilen abrufen werden die geänderten Daten dagegen in eine Puffertabelle zurückgegeben, die einer Variablen in der Orchestrierung zugeordnet wird.
Anmerkung: Verwenden Sie die Aktivität Tabelle abfragen anstelle der Aktivitäten Eingefügte Zeilen abrufen, Gelöschte Zeilen abrufen und Aktualisierte Zeilen abrufen nur in solchen Fällen, in denen Sie das Hinzufügen von Triggern zu Ihrer Datenbank vermeiden müssen.
Bevor Sie die Aktivität Tabelle abfragen in Studio konfigurieren, müssen Sie zunächst zwei zusätzliche Datenbankspalten in Ihrer Quellendatenbanktabelle erstellen oder zwei passende vorhandene Datenbankspalten aus Ihrer Datenbanktabelle verwenden. In Ihrer Quellendatenbanktabelle sind folgende Datenbankspalten erforderlich:
  • Eine Sortierspalte des Typs INTEGER - Diese Spalte enthält die Primärschlüssel (eine Sequenz eindeutiger Zahlen: 1, 2, 3 ...).
  • Eine Markierungsspalte des Typs CHAR(1) - Diese Spalte enthält eine Markierung, mit deren Hilfe die Integrationseinheit während der Ausführung ermittelt, ob sie die Zeile verarbeiten soll.

Bevor eine Orchestrierung mit einer Aktivität Tabelle abfragen für die Integrationseinheit ausgeführt wird, müssen Sie auch diese Zeilen in Ihrer Datenbanktabelle füllen. Setzen Sie die Markierungsspalte auf P, wenn die Integrationseinheit die Zeile während der Ausführung nicht verarbeiten soll. Setzen Sie die Markierungsspalte auf null, wenn die Integrationseinheit die Zeile während der Ausführung verarbeiten soll.

In der folgenden Beispieldatenbanktabelle werden zunächst alle Werte in der Spalte Markierung auf P gesetzt, wie in der folgenden Abbildung dargestellt:
Angepasste Abfrage
Achtung: Sie müssen den Zustand der Markierungsspalte verwalten. Nach der Verarbeitung einer Zeile ändert die Integrationseinheit die Markierungsspalte in P (processed = verarbeitet), wie im folgenden Beispielszenario beschrieben:
  1. In die Datenbank wird eine Zeile eingefügt. Die Markierungsspalte für diese Zeile wird auf null gesetzt.
  2. Die Aktivität Tabelle abfragen wird zum ersten Mal ausgeführt und setzt den Markierungswert für diese Zeile auf P.
  3. Dieselbe Zeile wird aktualisiert und die Aktivität Tabelle abfragen wird noch einmal ausgeführt. Die Zeile wird in den zurückgegebenen Daten der Aktivität nicht zurückgegeben, weil die Integrationseinheit die Markierungsspalte geprüft und anhand der Markierung festgestellt hat, dass diese Zeile bereits verarbeitet wurde.

Damit eine Zeile noch einmal von der Integrationseinheit verarbeitet wird, müssen Sie die Markierungsspalte wieder auf null zurücksetzen, bevor ein Orchestrierungsjob mit einer Aktivität Tabelle abfragen ausgeführt wird, der auf dieselbe Quellendatenbanktabelle zugreift.

Aktivität 'Tabelle abfragen' zur Orchestrierung hinzufügen

  1. Erstellen oder öffnen Sie eine Orchestrierung. Eine grafische Darstellung der Orchestrierung wird geöffnet.
  2. Wählen Sie die Registerkarte Aktivitäten aus und erweitern Sie den Ordner Datenbank.
  3. Ziehen Sie die Aktivität Tabelle abfragen auf die Orchestrierung.
  4. Wählen Sie die Aktivität Tabelle abfragen aus.

Datenbankendpunkt erstellen, auswählen oder bearbeiten

  1. Klicken Sie auf die Task Endpunkt auswählen in der Prüfliste und wählen Sie eine der folgenden Aktionen aus:
    • Wählen Sie einen vorhandenen Endpunkt aus:
      1. Wählen Sie Durchsuchen aus. Der Projektexplorer wird geöffnet.
      2. Wählen Sie einen vorhandenen Endpunkt aus und klicken Sie auf OK. Springen Sie zu der Prozedur Auf Datenbankoperationen abzufragende Spalten der Quellentabelle angeben.
    • Wählen Sie einen vorhandenen Endpunkt aus und bearbeiten Sie den Endpunkt:
      1. Wählen Sie Durchsuchen aus. Der Projektexplorer wird geöffnet.
      2. Wählen Sie einen vorhandenen Endpunkt aus und klicken Sie auf OK.
      3. Klicken Sie auf Bearbeiten. Das Teilfenster 'Endpunkt bearbeiten' wird angezeigt.
    • Erstellen Sie einen neuen Endpunkt:
      1. Wählen Sie Neu aus. Das Teilfenster 'Endpunkt erstellen' wird geöffnet.
  2. Erstellen oder bearbeiten Sie einen Datenbankendpunkt.

Auf Datenbankoperationen abzufragende Spalten der Quellentabelle angeben

  1. Klicken Sie in der Prüfliste auf Endpunkt auswählen. Das Teilfenster 'Endpunkt auswählen' wird geöffnet.
  2. Klicken Sie auf Durchsuchen. Das Dialogfeld 'Einzelne Quellentabelle auswählen' wird geöffnet.
  3. Wählen Sie eine Tabelle aus, die während der Ausführung die Aktivität Tabelle abfragen auf Datenbankoperationen abfragt.
  4. Wählen Sie in der Liste Nach Benutzerschema filtern ein Benutzerschema aus.
  5. Wählen Sie Puffer- und Steuertabellen ausblenden aus, um die von der Integrationseinheit verwendeten Puffer- oder Steuertabellen herauszufiltern.
    Anmerkung: Dieser Filter blendet nur Puffer- und Steuertabellen aus, die die Standardnamen verwenden, die in Scripts von Studio generiert wurden.
  6. Wählen Sie in der Liste eine einzelne Tabelle aus:
    • Klicken Sie auf >>, um eine Tabelle hinzuzufügen.
    • Klicken Sie auf <<, um eine Tabelle zu entfernen.
  7. Wählen Sie das Kontrollkästchen Nur Primärschlüssel in Tabellen auswählen aus, wenn die Abfrage auf Datenbankoperationen für Primärschlüsselspalten der Quellentabelle beschränkt werden soll.
  8. Klicken Sie auf OK. Die Spalten der Tabelle werden im Teilfenster 'Tabelle auswählen' angezeigt. (Wenn Sie das Kontrollkästchen Nur Primärschlüssel in Tabellen auswählen ausgewählt haben, werden nur die Primärschlüsselspalten angezeigt.)
  9. Wenn sich die Zeichencodierung dieser Tabelle von der Codierung der Datenbank unterscheidet, müssen Sie mit einer der folgenden Optionen eine andere Codierung eingeben:
    • Wählen Sie in der Liste Codierung einen Standardcodierungstyp aus.
    • Geben Sie Ihren Codierungstyp direkt ein, indem Sie in das Feld Codierung klicken und Ihren Codierungstyp eingeben.
  10. Wählen Sie die Spalten in der Tabelle aus, die die Aktivität Tabelle abfragen während der Ausführung auf Datenbankoperationen (Einfügungen, Löschungen oder Aktualisierungen) abfragen soll.Standardmäßig sind alle Spalten ausgewählt. Wählen Sie das Kontrollkästchen Verwenden für die Spalten ab, die nicht abgefragt werden sollen. Klicken Sie auf Alle verwenden, um wieder alle Spalten auszuwählen.
  11. Klicken Sie auf die Spaltenüberschrift, um die Zeilen nach dem Spaltenwert zu sortieren. Klicken Sie beispielsweise zum Sortieren der Zeilen nach ihrem Spaltennamen auf die Spaltenüberschrift Spaltenname. Rechts neben dem Namen der Spaltenüberschrift wird ein Pfeil angezeigt. Ein Aufwärtspfeil gibt an, dass die Spalte in alphabetischer Reihenfolge sortiert wird, nämlich von a bis z. Ein Abwärtspfeil gibt an, dass die Spalte in umgekehrter alphabetischer Reihenfolge sortiert wird, nämlich von z bis a. Klicken Sie auf den Pfeil, um die alphabetische Reihenfolge umzukehren.
  12. Ändern Sie bei Bedarf die Werte der Optionen Datentyp, Codierung oder Kann Nullwerte enthalten für jeden Eingabeparameter der Abfrage. Klicken Sie auf das Feld, um eine neue Auswahl zu treffen:
    • Datentyp - Der Standardwert ist der Datentyp der Spalte in der Quellendatenbanktabelle. Wenn sich der erforderliche Datentyp der Spalte in der Puffertabelle von dem Datentyp der Quellentabelle unterscheidet, müssen Sie einen anderen Datentyp auswählen. Klicken Sie dazu in der Zelle Datentyp und wählen Sie in der Liste einen anderen Datentyp aus. Sie müssen einen geeigneten Datentyp für die als UNSUPPORTED (nicht unterstützt) markierten Datentypen auswählen.
      Anmerkung: (Datentypen MONEY und XMLTYPE) Bei dem Datentyp XMLTYPE in einer Oracle-Datenbank und den Datentypen MONEY in einer SQL Server-Datenbank ordnet Studio den korrekten Datentyp nicht automatisch zu, sodass Sie den entsprechenden Datentyp manuell auswählen müssen.
    • Größe - Die Größe der in der Tabelle definierten Spalte. Diese Größe wird aus der Datenbanktabelle abgerufen und ist nicht konfigurierbar.
    • Codierung - Der Standardwert ist die aktuelle Standardcodierung, die entweder auf Datenbankebene oder auf Tabellenebene festgelegt wurde. Wenn sich die erforderliche Codierung für die Spalte von der aktuellen Standardcodierung unterscheidet, müssen Sie eine andere Codierung auswählen. Klicken Sie dazu in der Zelle Codierung und wählen Sie in der Liste eine andere Codierung aus.
    • Kann Nullwerte enthalten - Der Standardwert für die Spalte in der Quellendatenbanktabelle ist 'Kann Nullwerte enthalten'. Bei der Einstellung 'nullable=false' muss die Spalte in die Nachricht eingeschlossen werden. Bei Spalten mit der Einstellung 'nullable=false' muss das Kontrollkästchen Verwenden ausgewählt werden. Eine mit 'nullable=false' markierte Spalte darf bei der Ausführung keinen Nullwert enthalten.

Sortier- und Markierungsspalte auswählen

  1. Wählen Sie in der Prüfliste die Option Spalten auswählen aus.
  2. Wählen Sie in der Liste eine Sortierspalte aus. Dies ist die Sortierspalte des Typs INTEGER, die die Primärschlüssel (eine Folge der Zahlen: 1, 2, 3 ...) enthält, die Sie entweder zu Ihrer Quellendatenbanktabelle hinzufügen oder die Sie für vorhandene Spalten in Ihrer Quellendatenbanktabelle verwenden können.
  3. Wählen Sie in der Liste eine Markierungsspalte aus. Eine Markierungsspalte des Typs CHAR mit einer Markierung, die von der Integrationseinheit auf P gesetzt wird, wenn diese die Zeile verarbeitet hat. Die Integrationseinheit prüft mithilfe von Sortier- und Markierungsspalten das Vorhandensein doppelter Nachrichten.Darüber hinaus werden die beiden Spalten und die Einstellung des Kontrollkästchens Zeilen nach der Verarbeitung löschen im Teilfenster Zustellregeln von der Integrationseinheit zur Ermittlung der Aktion für eine Löschanforderung verwendet:
    •  Wenn das Kontrollkästchen Zeilen nach der Verarbeitung löschen ausgewählt ist, setzt die Integrationseinheit die Markierung auf M und löscht dann die Zeile.
    • Wenn das Kontrollkästchen Zeilen nach der Verarbeitung löschen abgewählt ist, setzt die Integrationseinheit die Markierung auf M und anschließend auf P, löscht die Zeile jedoch nicht. Damit eine Zeile noch einmal von der Integrationseinheit verarbeitet wird, müssen Sie die Markierungsspalte wieder auf null zurücksetzen, bevor ein Orchestrierungsjob mit einer Aktivität Tabelle abfragen ausgeführt wird, der auf dieselbe Quellendatenbanktabelle zugreift.
  4. Konfigurieren Sie die Zustellregeln.
    Anmerkung: Wenn Sie in der Task Zustellregeln die Option Genau einmal auswählen, müssen Sie Steuertabellen erstellen, die während der Laufzeit von der Integrationseinheit verwendet werden. Sie erstellen die Steuertabellen, nachdem Sie die Orchestrierung von Studio auf der Integrationseinheit publiziert haben. Sie erstellen die Steuertabellen mithilfe der Webmanagementkonsole (WMC, Web Management Console), bevor Sie das Projekt implementieren.
    Anmerkung: Wenn Sie die Option Genau einmal auswählen, müssen Sie auch die Persistenz aktivieren. Weitere Informationen finden Sie im Abschnitt Persistenz aktivieren.
  5. Konfigurieren Sie die Wiederholungsoptionen.

Ausgabe der Aktivität zuordnen

  1. Wählen Sie die Task Ausgaben zuordnen in der Prüfliste aus. Die Ausgabeparameter der Aktivität werden im Fenster 'Von Aktivität' unter dem Element Zeile angezeigt. Die im Teilfenster 'Von Aktivität' angezeigten Ausgabeparameter entsprechen den Spalten, die Sie in der Task Tabelle auswählen ausgewählt haben. Wenn bei den Zustellregeln die Option Batch ausgewählt wurde, wird neben dem Element Zeile das Symbol für mehrere Vorkommen angezeigt.
    Anmerkung: Während der Ausführung wird der Ausgabeparameter Zeilen der Aktivität Tabelle abfragen nicht mit den Werten für die Sortier- und Markierungsspalte gefüllt. Es werden nur die Spalten zurückgegeben, die in der Task Tabelle auswählen ausgewählt wurden.
  2. Ordnen Sie die erforderlichen Ausgabeparameter Variablen zu. Allgemeine Anweisungen zur Zuordnung finden Sie unter Zuordnung erstellen. Sie brauchen die Ausgabeparameter für diese Aktivitäten nicht zuzuordnen.