Zum Hauptinhalt springen

Alle noch nicht übertragenen Datensätze auslesen

Um alle nicht transferierten Datensätze aus einer Tabelle auszulesen, benötigen Sie eine Spalte, in der der OPC Router einen erfolgten Transfer markieren kann. Sie führen eine Abfrage mit einem Filter auf dieser Transferspalte aus.

Gegenüber dem vorigen Beispiel unterscheidet sich die Projektierung in drei Punkten: Es gibt keinen Filter auf eine Messwertreihe, die Anzahl der übertragenen Datensätze wird nicht begrenzt, und die Sortierung ist frei wählbar.

Erforderliche Felder/Spalten:

NameBeschreibung
<Transfer>Spalte, in der ein erfolgter Transfer angezeigt wird (Typ: Int, Standardwert: 0)
<Werte>Spalte(n) mit den relevanten Werten

Projektieren Sie ein DB-Transferobjekt mit folgenden Eigenschaften:

NameKonfiguration
Datenquelle<Ihre Datenbankanbindung aus dem Plug-ins-Bereich>
TypSelect

Registerkarte: Allgemein

NameKonfiguration
Tabelle<Tabelle, die Ihre Daten enthält>
SpaltenAlle benötigten Werte-Spalten von Verfügbar nach Verwendet verschieben.

Registerkarte: Filter

NameKonfiguration
FilterFilter hinzufügen legt einen neuen Filter an.
Filter/Filtergruppe bearbeiten

Spalte:<Transfer>

Vergleichsoperator: EQUAL

VorschauHier sollte jetzt stehen: WHERE (Transfer = ?)

Datenbank Select Transferobjekt

Registerkarte: Abfrage

NameKonfiguration
SortierreihenfolgeWie erforderlich.
SortierungsspalteWie erforderlich.
Datensätze nach durchgeführtem Transfer markierenAusgewählt. Nur mit dieser Option trägt der OPC Router die Transfermarkierung in die Quelltabelle zurück.
Spalte zum Markieren<Transfer>
MarkierungswerteNicht transferiert: 0, Transferiert: 1, Fehler beim Transferieren: 2. Die drei Werte müssen sich unterscheiden.
Anzahl Datensätze begrenzen aufDeaktiviert. Es sollen alle Datensätze mit <Transfer> = 0 übertragen werden.
Verhalten bei leerem AbfrageergebnisTransfer abbrechen – sind keine nicht transferierten Datensätze vorhanden, wird nichts transferiert und kein Fehler ausgelöst.
hinweis

Für die Markierung benötigt die Quelltabelle einen einfachen Primärschlüssel auf der numerischen Spalte ID. Alle Eigenschaften der Registerkarte beschreibt DB Select-Transferobjekt.

warnung

Beim ersten Lauf überträgt der Flow alle Datensätze, deren Transferspalte auf 0 steht – bei einer bereits gefüllten Tabelle also den gesamten Altbestand. Setzen Sie den Altbestand vorher auf den Markierungswert für transferierte Datensätze (1), oder begrenzen Sie für den ersten Lauf die Anzahl der übertragenen Datensätze.

Dieses Transferobjekt filtert also die Daten nach dem Transferkürzel. Für das Transferkürzel muss „0“ eingegeben werden. Legen Sie ein Konstantenobjekt an mit:

Benötigte Konstanten

NameBeschreibung
0für nicht transferierte Datensätze

Verbinden Sie die 0 mit dem Filter-Element Transfer:

Flow

Projektieren Sie einen Time-Trigger, der die Datenbank zyklisch abfragt.

Nach dem Transfer schreibt der OPC Router „1“ in die Spalte Transfer, bei einem Transferfehler „2“. Es werden mit dieser Projektierung jeweils die neuen Datensätze mit Transfer = 0 übertragen. Selbstverständlich können Sie weitere Filter projektieren, z. B. die ID der Messwertreihe aus dem vorigen Beispiel.

Flow abschließen

Bis hierher ist die Datenquelle projektiert. Zum lauffähigen Flow fehlen drei Schritte:

  1. Datenziel anbinden. Verbinden Sie die Elemente des DB-Transferobjekts über Item Links mit dem Transferobjekt Ihres Zielsystems. Welche Zielsysteme zur Verfügung stehen und welche Eigenschaften ihre Transferobjekte haben, steht im Kapitel des jeweiligen Plug-ins: alle Plug-ins von A bis Z.
  2. Produktiv schalten. Wählen Sie in der Ansicht Veröffentlichen die Änderungen aus und klicken Sie auf Änderungen produktiv schalten. Bis dahin arbeitet die Laufzeit mit dem zuletzt veröffentlichten Stand weiter.
  3. Ergebnis prüfen. Die Statusanzeige zeigt, ob der Flow läuft. Im Flow-Status sehen Sie jeden einzelnen Transfer und die übertragenen Werte; die Spalte Transfer der übertragenen Datensätze steht danach auf 1.