SEC_SQLI-Variablen

SEC_SQLI- oder Secure SQL Internal-Variablenobjekte rufen gesichert Werte von der Automation Engine-DatenbankEin relationales Datenbank-Management-System (RDMS), das alle Scheduling-Daten zentral verwaltet. Es enthält Objektdefinitionen, Systemeinstellungen, Statistikdaten, Jobreports, etc. ab.

SQL - Intern Secure

Dieser Variablentyp besitzt dieselbe Funktion wie „SQL - intern“, mit dem Unterschied, dass Variablen in den SQL-Statements immer eingefügt werden können (unabhängig von der Einstellung VAR_SECURITY_LEVEL in der VariableSpeichert oder ermittelt Werte dynamisch zur Laufzeit. Auch ein eigener Objekttyp in der Automation Engine. UC_SYSTEM_SETTINGS). Um Variablen in das SQL einzubinden, sind sogenannte Bind-Parameter zu verwenden. Dabei ist es nicht möglich, SQL-Statements zusammenzusetzen, wodurch eine Gefährdung der DatenbankEine Datenbank ist eine organisierte Sammlung von Daten und wichtigen Datenstrukturen. durch SQL-Injection ausgeschlossen wird.

Wie bei „SQLI intern“ werden die Variablen-Werte direkt aus der Datenbank ermittelt. Ein Datenbank-Agent"Programm, das die Ausführung von Verarbeitungen auf Zielsystemen wie z.B. Rechner oder Geschäftslösungen ermöglicht. Auch ein eigener Objekttyp in der Automation Engine. [Früher ""Executor"" genannt.] Siehe auch ""Host""." ist somit nicht erforderlich.

SQLI SECURE-Variablen sind ebenfalls an die Einstellung SQLVAR_INTERNAL (Variable UC_SYSTEM_SETTINGS) und das Recht „SQL-Internal Variablen anlegen und ändern“ gebunden.

Aus Sicherheitsgründen können SEC_SQLI- oder SQLI-Variablenobjekte nicht standardmäßig erstellt oder modifiziert werden. Dies kann mit der Einstellung SQLVAR_INTERNAL der Systemvariable UC_SYSTEM_SETTINGS geändert werden

Aus technischen Gründen kann nicht geprüft werden, ob nur SELECT-Kommandos im SQL der Variable verwendet werden.

Die maximale Anzahl der zurückgelieferten Zeilen ist mit der Einstellung SQLVAR_MAX_ROWS in der Variablen UC_SYSTEM_SETTINGS festgelegt.

Bei der Verwendung von Datenbankvariablen (Typ SEC_SQLI, SEC_SQL, SQLI, und SQL) werden Binärfelder nicht unterstützt. Liefert die SQL-Abfrage Binärdaten zurück, so kommt es zum Fehler bei der Vorschau oder der Ermittlung der Werte zur LaufzeitDurchführungsdauer einer Aufgabe. Das ist der Zeitraum zwischen Start und Ende. Der Aktivierungszeitraum wird nicht dazugerechnet (siehe auch Aktivierung und Start).!

Beachten Sie, dass das System bei Datenbank-Variablen (Typ SEC_SQLI, SEC_SQL, SQLI, und SQL) aus technischen Gründen nicht prüft, welche SQL-Statements verarbeitet werden. Es ist also theoretisch auch möglich, Records über Variablenobjekte zu verändern oder zu löschen. Aus Sicherheitsgründen wird daher empfohlen, den BenutzerIn einem Automation Engine-System bezieht sich ein Benutzer auf eine Instanz eines Benutzer-Objektes, aber ganz allgemein ist ein Benutzer auch die Person, die mit Automic-Produkten arbeitet. Jedes Benutzer-Objekt hat eine Benutzerkennung und bestimmte Zugriffsrechte auf unterschiedliche Bereiche eines Automation Engine-Systems und der zugehörigen Produktpalette. In der Automation Engine werden die Zugriffsrechte über Rechte und Privilegien, in Decision über Benutzerrollen und EventBase-Rechte und in der ARA-Webanwendung über Objektberechtigungen geregelt. Zentral können diese Zugriffsrechte in den Funktionen der AWI-Benutzerverwaltung geregelt werden. Weitere Informationen sind im Kapitel Unified User Management vorhanden.-Zugriff entsprechend einzuschränken. Bei Variablen, die auf eine externe Datenbank zugreifen (SQL, SQL SECURE), sollte ein Datenbankbenutzer verwendet werden, der nur Leserechte besitzt. Bei internen SQL-Variablen (SQLI, SQLI SECURE), kann der Zugriff auf das ObjektTätigkeiten und Abläufe, welche die Automation Engine steuert, werden mit Hilfe von sogenannten Objekten abgebildet (siehe auch Aufgabe). durch ein Recht (SQL-interne Variablen anlegen und ändern) eingeschränkt werden.

Abhängig vom Datentyp liefern Datenbank-Variablen (Typ SEC_SQLI, SEC_SQL, SQLI, und SQL) den Wert "" (Zeichenfolge, Datum, Zeit, Zeitstempel) oder 0 (Zahl) für NULL-Werte zurück.

PromptSet-Variablen werden in ausgewählten Feldern für Variablen des Typs BACKEND, EXEC, DATEILISTE, SEC_SQLI, SEC_SQL, SQLI, SQL, und XML unterstützt. Die Verwendung von PromptSet-Variablen ist zur Erstellung von PromptSet-Dialoge dynamisch neu laden notwendig.

Feld

Beschreibung

Typ Dieses schreibgeschützte Feld zeigt „SQL - internal“ als Variablentyp. Sie legen den Variablentyp fest, wenn Sie das Objekt erstellen. Dies kann nicht mehr geändert werden, wenn die Variable einmal definiert ist.

Oracle-Statement

SQL Server-Statement

DB2-Statement

SQL-Statements zur Selektion von Einträgen der Datenbank, welche als Variablenwerte zurückgeliefert werden sollen.

Beispiel: select * from OH

Um einen Zellen-Editor für die Eingabe Ihres SQL-Statements zu nutzen, klicken Sie auf das Symbol auf der rechten Seite des Feldes.

Variablen, die im SQL direkt angegeben werden, werden nicht ersetzt. Um Variablen einzubinden, verwenden Sie die Bind-Parameter.

Wenn Sie die Funktion für Combobox-Prompts verwenden, können Sie hier PromptSet-Variablen hinzufügen. Wenn PromptSet-Variablen in dynamischen Variablenobjekten verwendet werden und Sie auf Vorschau klicken, wird Ihnen ein Fehler angezeigt. Der Grund hierfür ist, dass PromptSet-Variablen im dynamischen Variablenobjekt nicht existieren. Die PromptSet-Variablen werden jedoch aufgelöst, wenn Objekte, die PromptSet beinhalten, ausgeführt werden.

Maximale Länge: 4096 Zeichen

Bind-Parameter definieren

Die Tabelle im Abschnitt Bind-Parameter beinhaltet eine Liste von Bind-Parametern. Die Bind-Parameter dienen dazu, Variablenwerte innerhalb der SQL-Statements einzufügen. Dabei können ScriptEigener Objekttyp in der Automation Engine-Variablen, Objektvariablen"Platzhalter für Werte, die einem Objekt in dessen Registerkarte ""Variablen & Prompts"" hinterlegt werden.", vordefinierte Variablen und Platzhalter für VARA-Objekte verwendet werden, die Sie in diese Tabelle eintragen. Jede Zeile repräsentiert einen Bind-Parameter.

Eine Einschränkung durch die Variable VAR_SECURITY_LEVEL (UC_SYSTEM_SETTINGS) ist dabei nicht gegeben.

In den SQL-Statements ist an jeder Stelle, an der der Wert eines Bind-Parameters eingefügt werden soll, das Zeichen „?“ anzugeben. Für jedes „?“ muss ein Bind-Parameter existieren, wobei auf die richtige Reihenfolge (Tabelle) zu achten ist. Die mehrfache Verwendung von Bind-Parametern ist nicht möglich!

Existiert eine angegebene Variable nicht, so kann keine Wertersetzung durchgeführt werden. In diesem Fall wird der Variablenname übernommen. Dies kann zu Fehlern bei der Variablenauflösung führen!

Wenn Sie die Funktion für Combobox-Prompts verwenden, können Sie hier PromptSet-Variablen hinzufügen. Wenn PromptSet-Variablen in dynamischen Variablenobjekten verwendet werden und Sie auf Vorschau klicken, wird Ihnen ein Fehler angezeigt. Der Grund hierfür ist, dass PromptSet-Variablen im dynamischen Variablenobjekt nicht existieren. Die PromptSet-Variablen werden jedoch aufgelöst, wenn Objekte, die PromptSet beinhalten, ausgeführt werden.

Sie können neben Variablennamen für Bind-Parameter auch beliebige Werte angeben.

Für Bind-Parameter werden folgende Feld-Datentypen und Eingabeformate unterstützt:

Andere Feldtypen der Datenbank und andere Formate werden nicht unterstützt! Es erfolgt auch keine Umwandlung von Datentypen (z. B.: von Zeitstempel auf Datum). Wird ein ungültiger Wert eingefügt, kommt es zum Fehler beim Ausführen der SQL-Kommandos.

In der Bind-Parameter-Tabelle arbeiten

Nach: Auszuführende Schritte:
Fügen Sie eine Zeile in der Tabelle hinzu

Klicken Sie im entsprechenden Abschnitt auf die Schaltfläche . Klicken Sie auf die Zellen in der Tabelle, um ihre Werte zu bearbeiten.

Bearbeiten Sie eine Zelle in der Tabellenzeile

Klicken Sie auf die Zelle in der Tabelle und bearbeiten Sie ihren Wert.

Löschen Sie eine von mehreren Zeilen der Tabelle.

Aktivieren Sie die Checkbox der Zeile/n und klicken Sie auf .

Löschen Sie alle Zeilen der Tabelle

Aktivieren Sie die Checkbox „Spaltenüberschrift“ und klicken Sie auf .

Schneiden Sie eine oder mehrere Zeile/n aus und fügen Sie sie zur AWIAutomic-Produkt: Übersichtliche und einfach zu bedienende Weboberfläche, mit welcher der Zugriff auf verschiedene Funktionalitäten der Automation Engine möglich ist.-Zwischenablage hinzu

Aktivieren Sie die Checkbox der Zeile/n und klicken Sie auf .

Kopieren Sie eine oder mehrere Zeile/n und fügen Sie sie zur AWI-Zwischenablage hinzu

Aktivieren Sie die Checkbox der Zeile/n und klicken Sie auf .

Fügen Sie Zeile/n von der AWI-Zwischenablage am Ende der Tabelle ein

Klicken Sie auf .

Daten- und Formatierungseinstellungen festlegen

Spalte

Beschreibung

Datentyp

Der Datentyp bestimmt die Form des Wertes der Variable.

  • Text: Alphanumerische Zeichenkette. Leerzeichen am Ende werden entfernt, führende Leerzeichen bleiben erhalten. Ist die Einstellung Textlänge limitieren nicht gesetzt, so gibt es kein Limit für die Länge der Zeichenkette.

    Sie können die Zeichenkette weiter bearbeiten:

    • Wählen Sie Textlänge limitieren aus, um das Eingabefeld Max. Textlänge aufzurufen, wo Sie die Textlänge begrenzen können.
      Mögliche Werte: 1 bis 1024
    • Wählen Sie Großschreibung erzwingen, um den Text der Variablen in Großbuchstaben umzuwandeln.
  • Nummer: Ganzzahl mit Vorzeichen, z. B. eine Zahl zwischen 0 und 2147483647.

    Sie können die Zeichenkette weiter bearbeiten:

    • Wählen Sie aus der Ausgabeformat-Dropdown-Liste, wie die Nummer angezeigt werden soll.
    • Wählen Sie Minimum festlegen, um das Eingabefeld Min. Wert aufzurufen.
      Mögliche Werte: Maximal 16 Stellen vor und 16 Stellen nach dem Dezimalpunkt.
    • Wählen Sie Maximum festlegen, um das Eingabefeld Max. Wert aufzurufen.
  • Uhrzeit: Das Standard-Zeitformat ist hh:mm:ss. Sie können:
    • Ein anderes Format aus der Dropdown-Liste auswählen.
    • Einen minimalen und maximalen Wert definieren.
  • Datum: Das Standard-Datumsformat ist yyyy-mm-dd. Sie können:
    • Ein anderes Format aus der Dropdown-Liste auswählen.
    • Einen minimalen und maximalen Wert definieren. Beachten Sie, dass Sie kein Datum vor dem 01.01.1980 als Minimalwert definieren können.
  • Zeitstempel: Das Standardformat für Zeitstempel ist yyyy-mm-dd hh:mm:ss. Sie können:
    • Ein anderes Format aus der Dropdown-Liste auswählen.
    • Einen minimalen und maximalen Wert definieren. Beachten Sie, dass Sie kein Datum vor dem 01.01.1980 als Minimalwert definieren können.

Das genaue Format des gewählten Datentyps (Ausnahme: „String“) kann im Feld Ausgabeformat festgelegt werden.

Es wird der Datentyp der Werte in der ersten Spalte überprüft. Bei der Quelle „SQL“ und „SQL intern“ muss der Datentyp der Variable mit dem der ersten Spalte, die durch das SQL-Statement zurückgeliefert wird, übereinstimmen. Die Daten können auch durch spezielle SQL-Statements aufbereitet werden. Unterscheidet sich der Datentyp, so kommt es zu einem Fehler beim Speichern von statischen Variablen bzw. beim Zugriff auf dynamische Variablen.

Für die Änderung des Datentyps von statischen Variablenobjekten, die bereits Werte enthalten, sind folgende Punkte zu beachten:

  • Die Änderung von „Zahl“, „Zeitstempel“, „Zeit“ oder „Datum“ auf „Text“ ist problemlos möglich. Die Werte werden unverändert konvertiert.
  • Nach der Änderung von „Text“ auf „Zahl“, „Zeitstempel“, „Zeit“ oder „Datum“ ist das Ausgabeformat auszuwählen. Beim Speichern des Variablenobjektes wird überprüft, ob die Werte dem Format entsprechen.
  • Die direkte Änderung innerhalb der Datentypen „Datum“, „Zeit“, „Zahl“ und „Zeitstempel“ wird nicht unterstützt. Es ist zuerst eine Umsetzung auf den Datentyp „Text“ erforderlich.

Der Datentyp von „Multi-“, „SQL-“ und „SQL-internen“ Variablen kann beliebig gewechselt werden.

Bei Werten, die mit dem Sprachmittel GET_VAR aus Variablenobjekten mit dem Datentyp „Zahl“ bezogen werden, spielt der Datentyp der jeweiligen Script-VariablePlatzhalter eines Wertes in einem Script. („float“, „signed“, „unsigned“ oder „string“) keine Rolle. Der Wert kann immer gespeichert werden. Dabei werden Vorzeichen und Nachkommastellen entfernt, wenn der Datentyp der Script-Variable dies nicht unterstützt. Ist im Variablenobjekt ein anderer Datentyp eingestellt, werden die Werte an das Script immer als „string“ übergeben.

Ausgabeformat

Mit dieser Einstellung wird das Format festgelegt, in dem die Werte in das Variablenobjekt gespeichert (Quelle: statisch) bzw. von der Datenquelle ermittelt werden (dynamische Variablen).

Der Inhalt dieses Auswahlmenüs ist abhängig vom Datentyp. Für jeden Datentyp außer „Text“ stehen mehrere unterschiedliche Formate zur Verfügung.

Das Ausgabeformat bezieht sich nur auf die erste Spalte! Bei statischen Variablen ist das die Spalte Wert 1, bei Datenbank- und Multi-Variablen die erste Rohspalte. Beachten Sie bei Multi-Variablen, dass die erste Rohspalte als Bezugsspalte dient und sich daher das Ausgabeformat der Quellvariable auf die ermittelten Werte auswirken kann!

Das Ausgabeformat von statischen Variablen innerhalb eines bestimmten Datentyps ist beliebig änderbar. Die Werte werden dabei in das neue Format konvertiert. Entsprechen Werte nicht dem alten Format, so ist eine Umwandlung in ein neues Format nicht möglich.

Das Format in dem Werte in statische Variablen eingetragen werden, spielt keine Rolle, solange es ein von der AE unterstütztes Format des jeweiligen Datentyps ist. Die Werte werden dann in das entsprechende Ausgabeformat umgewandelt.

Beim Datentyp „Text“ wird die Combobox ausgeblendet.

Datentyp Verfügbare Formate Standardformat

Zeitstempel

  • YYYYMMDDHH24MISS
  • YYYY-MM-DD HH:MM:SS

YYYY-MM-DD HH:MM:SS

Datum

  • DD-MON-YYYY
  • DD-MON-RR
  • MM-DD-YYYY
  • YYYYMMDD
  • MMDDRR
  • DDMMRR
  • MM-DD-RR
  • MM/DD/RR
  • YYMMDD
  • YY.MM.DD
  • YY-MM-DD
  • YYYYMMDD
  • YYYY.MM.DD
  • YYYY-MM-DD
  • DDMMYY
  • DD.MM.YY
  • DD-MM-YY
  • DDMMYYYY
  • DD.MM.YYYY
  • DD-MM-YYYY
  • MMDDYY
  • MMDDYYYY
  • MM/DD/YY
  • MM/DD/YYYY

YYMMDD

Zeit
  • HHMMSS
  • HH:MM:SS
  • HHMM
  • HH:MM
  • MMSS
  • MM:SS

HHMMSS

Zahl
  • 0.00
  • +0.00
  • -0.00
  • 0
  • +0
  • -0
  • 16-stellig
16-stellig

Manche Datumsformate enthalten „RR“ als Platzhalter für das abgekürzte Jahr. Der Unterschied zwischen „YY“ und „RR“ ergibt sich durch die unterschiedlichen Arten, Jahrhunderte zu zählen (erste zwei Stellen der abgekürzten Jahreszahl).
YY - Liegt die Zahl zwischen 00 und 80 wird das aktuelle Jahrhundert verwendet. Im Bereich 81 - 99 das vorherige. 
„RR“ - Befindet sich die Zahl zwischen 00 und 49 so wird das aktuelle Jahrhundert verwendet. Im Bereich 50 - 99 das vorherige.

Zum Beispiel:
Datumsformat TTMMJJ und die daraus resultierenden Daten:
010305 - bedeutet 1. März 2005
010365 - bedeutet 1. März 2065
010380 - bedeutet 1. März 2080
010385 - bedeutet 1. März 1985

Zum Beispiel:
Datumsformat TTMMRR und die daraus resultierenden Daten:
010305 - bedeutet 1. März 2005
010365 - bedeutet 1. März 1965
010380 - bedeutet 1. März 1980
010385 - bedeutet 1. März 1985

Beim Datentyp „Zeit“ bzw. „Zeitstempel“ muss der Wert für die Uhrzeit entweder eine vierstellige oder eine sechsstellige Zahl sein. Kommastellen werden entfernt. Eine vierstellige Zahl wird dabei auf Stunden und Minuten umgesetzt.

Beispiele:
Datentyp: Zeit
Ausgabeformat: HH:MM:SS
Wert des Benutzers bzw. der Datenquelle: 1234, 1234.5, 123400, 12:34, 12:34:00
Resultierender Variablenwert: 12:34:00

Datentyp: Zeitstempel
Ausgabeformat: YYYY-MM-DD HH:MM:SS
Wert des Benutzers bzw. der Datenquelle: 20110325 2201, 20110325 2201.5, 20110325 220100
Resultierender Variablenwert: 2011-03-25 22:01:00

Minimum festlegen

Min. Wert

Erzwingt einen Minimalwert.

Beim Datentyp „Text“ werden diese Felder nicht angezeigt.

Maximum festlegen

Max. Wert

Erzwingt einen Maximalwert.

Beim Datentyp „Text“ werden diese Felder nicht angezeigt.

Textlänge limitieren

Max. Textlänge

Erzwingt eine maximale Anzahl an Zeichen.

Erlaubte Werte: 1 bis 1024

Ist diese Option deaktiviert, so gibt es kein Limit.

Die Key-SpalteSpalte bei statischen Variablen-Objekten, über die auf Werte einer bestimmte Zeile zugegriffen werden kann. von statischen VARA-Objekten besitzt ein maximales Limit von 200 Zeichen. Dieses Limit ist immer vorhanden und kann nicht erhöht bzw. deaktiviert werden.

Die Resultat-Spalte von dynamischen Variablen besitzt kein Limit. Die Größe hängt von den Wertespalten ab.

Diese Beschränkung bezieht sich bei statischen und dynamischen Variablen auf die erste Wertespalte. Die Key- bzw. Resultat-Spalte wird nicht überprüft.

Werte, welche die max. Länge überschreiten, werden ausgegrenzt.

Diese Felder werden nur beim Datentyp „Text“ angezeigt.

Großschreibung erzwingen

Kleinbuchstaben in Variablen-Werten werden automatisch in Großbuchstaben umgewandelt. Dies betrifft nur die erste Werte-Spalte.

Dieses Feld wird nur beim Datentyp „Text“ angezeigt.

Resultat-Format

Definition des Inhaltes der Resultat-Spalte.

Die erste in der Vorschau angezeigte Spalte ist die „Resultat-Spalte“. Die anderen Spalten enthalten die einzelnen Werte der Datenbank-Spalten, die durch die SQL-Abfrage zurückgeliefert werden. Die Resultat-Spalte kann aus einer Kombination von Werte-Spalten und beliebigen anderen Zeichen bestehen, wobei dies mit dem Resultat-Format festzulegen ist.

Spaltennummern, die in { }-Klammern im Feld Resultat-Format angegeben sind, werden durch den Wert der jeweiligen Spalte ersetzt.

Zum Beispiel:
Werte-Spalte 1: JOB1
Werte-Spalte 2: WIN01
Resultat-Format: {1}_{2}
Resultat-Spalte: JOB01_WIN01

Wird kein Resultat-Format angegeben, entspricht die Resultat-Spalte der ersten Wertespalte.

Die Variablen-Beschränkungen (Min. Wert , Max. Wert, Textlimitierung) haben auf die Resultat-Spalte keinen Einfluss, sondern nur auf die erste zurückgelieferte Spalte. Überschreiten Werte dieser Spalte den erlaubten Bereich, so werden die jeweiligen Zeilen übersprungen und sind nicht über das Variablenobjekt verfügbar.

Gültigkeitsbereich

Definiert den Gültigkeitsbereich der Variablen. Diese Einstellung dient dazu, das Script zu vereinfachen, mit dem Werte in Variablen geschrieben oder ausgelesen werden. Normalerweise muss der Key als Parameter im Script-Sprachmittel :PUT_VAR oder GET_VAR angegeben werden. Dadurch ist es aber aufwendiger, bestimmte Werte eindeutig abzuspeichern. Ist im Script kein Key vorhanden, so wird automatisch ein Key anhand der Einstellung im Variablenobjekt ausgewählt, beispielsweise der Name des Agenten in einem JobVerarbeitung auf einem Zielsystem. Auch ein eigener Objekttyp in der Automation Engine..

Einstellungen für den Script-Zugriff festlegen

Mit dem Optionsfeld Wenn Key nicht gefunden können Sie festlegen, was passiert, wenn ein Key nicht gefunden wird.

Nach:

Auswählen:

Es wird eine Fehlermeldung ausgegeben, wenn ein Objekt per Script auf einen Eintrag zugreifen will, der zur Laufzeit nicht vorhanden ist Fehler zurückliefern
Das Ergebnis des Ausgabeformats nicht verwenden, wenn es „ “ ist. Initialwerte zurückliefern

Vorschau von Kommandos

Um das Kommando auszuführen, wählen Sie es aus und klicken Sie auf Vorschau. Führt die SQL-Statements aus und stellt das Ergebnis dar. Dadurch kann die Funktion der SQL-Statements überprüft und andere Fehler (zum Beispiel: Datentyp des Variablenobjektes und der Datenbank stimmen nicht überein) erkannt werden.

Im Beispiel oben wird das folgende SQL-Statement in das Feld SQL Server-Statement eingegeben. Der Wert der Bind-Variable ersetzt das Zeichen „?“.

select ah_name as ObjectName,ah_timestamp1 as ActivationTime,ah_timestamp2 as StartTime,ah_timestamp4 as EndTime from ah

where ah_client = ?

and ah_otype = ?

and ah_deleteflag = ?

and ah_hostdst = ?

order by ah_name asc