Sowohl in SQL-Abfragen als auch in SQL-Befehlen können zusätzliche Parameter verwendet werden. Mithilfe dieser Parameter können Sie Abfragen dynamisch gestalten oder Bedingungen schaffen, die den Ergebnisraum erweitern bzw. einengen. Bei Befehlen können Sie mit Parametern Signalwerte in eine Datenbank schreiben.
Grundsätzlich können Parameter nur Werte ersetzen.
Parameter definieren Sie in den SQL-Anweisungen und verknüpfen sie mit Signalen in ibaPDA. Dabei gehen Sie wie folgt vor:
-
Schreiben Sie eine SQL-Anweisung, die Parameter enthält. Parameter werden bei den verschiedenen Datenbanksystemen unterschiedlich mit dem ersten Zeichen im Parameternamen gekennzeichnet.
-
Bei SQL Server, PostgreSQL und MySQL ist es "@".
-
Bei Oracle und SAP HANA ist es ":".
-
-
Klicken Sie anschließend auf den grünen Pfeil zwischen den Fenstern. Im nachfolgenden Beispiel SQL-Abfrage in Abhängigkeit von der Produkt-ID mit einem Parameter "myProduct_Ident".
Alle Parameter in der Anweisung werden in die Tabelle im rechten Fenster übernommen. Sollten sich bereits Parameter dort befinden, werden Sie gefragt, ob überzählige Parameter gelöscht werden sollen.
-
In der Spalte ibaPDA-Signal können Sie nun ein Signal auswählen, das den Wert des Parameters bestimmen soll. Zulässig sind alle gängigen Signaltypen: Analogsignale, Digitalsignale und Textsignale.
-
Bei Bedarf können Sie einzelne Parameter aus der Liste löschen. Klicken Sie auf den gewünschten Parameter und anschließend auf den Button <X> in der Spalte SQL-Parameter.
Das ausgewählte Signal liefert den Wert für den Parameter bei Ausführung der Anweisung.
Damit eine Anweisung ausgeführt werden kann, z. B. beim Testen oder bei der Validierung zum Start der Messung, können Sie in der Spalte Testwert einen Wert eintragen. Geben Sie den Wert einfach als Text ein. Anhand des Typs des zugewiesenen Signals wird der Testwert korrekt interpretiert.
Digitalsignale haben die Werte 0 oder 1.
Hinweis |
|
|---|---|
|
Beim Testen einer Anweisung können in der Parametertabelle mehr Parameter enthalten sein als die, die in der Anweisung verwendet werden. Beim Testen werden überzählige Parameter ignoriert und es erfolgt nur ein Warnhinweis. Vor dem Starten der Erfassung müssen Sie aber alle nicht verwendeten Parameter aus der Tabelle löschen, da sie bei der Erfassung nicht ignoriert werden und es dadurch zu Fehlern kommen kann. |
|
Hinweis |
|
|---|---|
|
Beachten Sie bei der Verwendung von Parametern in einer Abfragebedingung (WHERE-Anweisung), dass bei einer Änderung des Parameterwerts im Betrieb mehr oder weniger Zeilen im Ergebnis sein können, als ursprünglich bei der Konfiguration des Moduls vorgesehen. In diesem Fall stimmen Anzahl Ergebnisse und Anzahl Signale nicht mehr überein. Enthält das Ergebnis mehr Zeilen als entsprechende Signale vorhanden sind, werden die überzähligen Ergebnisse nicht berücksichtigt. Enthält das Ergebnis weniger Zeilen als entsprechende Signale vorhanden sind, werden einige Signale nicht aktualisiert. |
|

