... einen aktuellen Datensatz auslesen?
Um einen aktuellen Datensatz aus einer Datenbanktabelle auszulesen, sortieren Sie die Tabelle nach dem Zeitstempelfeld absteigend und transferieren nur einen Datensatz. Die Datenbank muss über einen Time-Trigger im erforderlichen Intervall gepollt werden. In dieser Variante wird bei jedem Aufruf der aktuelle Datensatz übertragen. Um nur einen neuen Datensatz zu übertragen, lesen Sie im nächsten Kapitel weiter.
Sie können selbstverständlich optionale Filterkriterien einstellen, z. B. wenn die Tabelle mehrere Messwertreihen enthält.
Variante 1: Zeitstempelsortierung ohne Filter
Erforderliche Felder/Spalten:
<Zeitstempel> | Zeitstempel vom Typ Datum/Uhrzeit, nach dem sortiert wird |
<Werte> | Spalte(n) mit den relevanten Werten |
Projektieren Sie ein DB-Transferobjekt mit folgenden Eigenschaften:
DB-Anbindung | <Ihre DB-Anbindung aus der Plug-in-Konfiguration> |
Typ | Select |
Registerkarte: Allgemein
Tabelle | <Tabelle, die Ihre Daten enthält> |
Verfügbare Spalten/Verwendete Spalten | <Alle Werte-Spalten> |
Registerkarte: Filter (Abfragen, Aktualisieren, Löschen)
Filter | In dieser Variante keine weiteren Filter |
Registerkarte: Abfrage
Datensätze nicht verändern | Aktivieren, wenn die Datensätze nicht verändert werden sollen |
Transferierte Datensätze markieren | Aktivieren, wenn transferierte Datensätze genutzt werden sollen. In der Spalte zum Markieren können die entsprechenden Datensätze ausgewählt werden. |
Transferierte Datensätze löschen | Aktivieren, wenn transferierte Datensätze gelöscht werden sollen. |
Sortierung nach Spalte | <Zeitstempel-Spalte> |
Sortierreihenfolge | Absteigend (neuester Wert oben) |
Anzahl der Datensätze begrenzen auf | 1 (nur der erste Datensatz = der neueste soll transferiert werden) |
Lesefehler auslösen | nach Bedarf |
Transfer abbrechen | nach Bedarf |

Datenbank Select Transferobjekt
Ihr Transferobjekt sieht in der Verbindung aus wie in der nächsten Abbildung. Im Beispiel wurde die Spalte Value als Wertespalte verwendet. Sie steht jetzt als Datenquelle zur Verfügung. Die Sortierung sehen Sie in der Verbindungsprojektierung nicht:

Transferobjekt
Projektieren Sie noch einen Time-Trigger mit dem erforderlichen Intervall, z. B. 10 Sekunden. Dann wird alle zehn Sekunden der neueste Datensatz aus der Tabelle übertragen, unabhängig davon, ob er bereits übertragen wurde oder nicht.
Variante 2: Zeitstempelsortierung mit weiterem Filter
In dieser Variante enthalte die Tabelle mehrere Messreihen, die jeweils über eine ConfigID definiert werden. Es ist ein zusätzlicher Filter zu projektieren.
Erforderliche Felder/Spalten:
<Zeitstempel> | Zeitstempel vom Typ Datum/Uhrzeit, nach dem sortiert wird |
ConfigID | ID der Messwertreihe |
<Werte> | Spalte(n) mit den relevanten Werten |
Projektieren Sie ein DB-Transferobjekt mit folgenden Eigenschaften:
DB-Anbindung | <Ihre DB-Anbindung aus der Plug-in-Konfiguration> |
Typ | Select |
Registerkarte: Allgemein
Tabelle | <Tabelle, die Ihre Daten enthält> |
Verfügbare Spalten/Verwendete Spalten | <Alle Werte-Spalten> |
Registerkarte: Filter
Filter | „Filter hinzufügen“ legt einen neuen Filter an. |
Filter/Filtergruppe bearbeiten | Spalte: ConfigID Vergleichsoperator: EQUAL |
Vorschau | Hier sollte jetzt stehen: WHERE (ConfigID = ?) |
Registerkarte: Abfrage
Sortierung nach Spalte | <Zeitstempel-Spalte> |
Sortierreihenfolge | Absteigend (neuester Wert oben) |
Anzahl der Datensätze begrenzen auf | 1 (nur der erste Datensatz = der neueste soll transferiert werden) |
Fehler bei leerem Abfrageergebnis | nach Bedarf |
Transfer bei leerem Abfrageergebnis abbrechen | nach Bedarf |

Datenbank Select Transferobjekt
Ihr Transferobjekt sieht wie in der Abbildung aus. Denken Sie daran, den Filter zu mit einem Wert zu füllen, z. B. über ein Konstanten-Objekt. Das DB-Transferobjekt mit Filter erfordert einen zweischrittigen Transfer. Der erste Schritt (blaue Pfeilspitze) definiert den Filter, die zweite, grün, liest den Wert aus. Da das Datenziel beliebig sein kann, sei es hier nur am Rande erwähnt.

Transferobjekt
Projektieren Sie noch einen Time-Trigger mit dem erforderlichen Intervall, z. B. 10 Sekunden. Dann wird alle zehn Sekunden der neueste Datensatz aus der Tabelle übertragen, unabhängig davon, ob er bereits übertragen wurde oder nicht.
Variante 3: Zeitstempelsortierung mit weiterem Filter aus Vorlage
Variante 2 eignet sich auch als Projektierung über eine Verbindungsvorlage.
- Projektieren Sie keine Verbindung, sondern eine Verbindungsvorlage mit denselben Einstellungen für das DB-Transferobjekt wie in Variante 2.
- Ins Konstanten-Objekt tragen Sie dann nicht den Wert ein, sondern eine Vorlagenvariable
{ConfigID}
. - Projektieren Sie den Time-Trigger wie in Variante 2.
- Erzeugen Sie aus der Vorlage eine Instanz und tragen Sie den Wert für die ConfigID ein.
So erzeugen Sie im Handumdrehen Verbindungen für alle vorhandenen Messreihen (=ConfigIDs): Je ConfigID eine Instanz. Abbildung oben: Vorlage; Abbildung unten: Instanz.

Transferobjekt

Transferobjekt

Transferobjekt