Skript Objekt Interface¶
Das Objektinterface für Raptor-Skripte ermöglicht es einem Skript, Werte aus den Informationsblöcken eines Objekts abzurufen. Dieses Skript-Interface wird vom Expertensystem und verschiedenen Subsystemen und Erweiterungen verwendet. Das Objektinterface stellt die folgenden Eigenschaften und Funktionen zur Verfügung:
Eigenschaft / Funktion |
Beschreibung |
---|---|
|
Der Typ des Objekts als String. |
|
Der Name des Objekts als String. |
|
Der Kontext des Objekts als String. |
|
Prüft, ob ein Informationsblock mit dem angegebenen Namen für das aktuelle Objekt verfügbar ist. Gibt true zurück, wenn der Block vorhanden ist. |
|
Greift auf den Informationsblock mit dem angegebenen Namen zu. Du erhältst ein Informationsblock-Objekt als Ergebnis. Siehe den nächsten Abschnitt für eine Beschreibung des Informationsblock-Objekts. |
Informationsblock¶
Jeder Informationsblock enthält alle Werte als Eigenschaften. Der Typ jeder Eigenschaft im Skript hängt vom Werttyp im Raptor-System ab. Siehe den nächsten Abschnitt „Wertdarstellung“ für Details, wie jeder Raptor-Werttyp im Skript zugänglich ist.
Um auf einen bestimmten Wert zuzugreifen, verwende die Eigenschaften wie im folgenden Beispiel gezeigt:
object.<informationsblockname>.<wertname>
Zum Beispiel, wenn du auf den Wert accountDisabled aus dem Informationsblock ActiveDirectoryOR zugreifen möchtest, sieht das so aus:
if (object.ActiveDirectoryOR.accountDisabled == false) {
// ...
}
Wertdarstellung¶
Die Wertdarstellung im Skript ähnelt dem Format, das im Raptor-Protokoll verwendet wird, da dieselben Mechanismen zum Konvertieren der Werte verwendet werden. Die folgende Tabelle und Abschnitte enthalten Beschreibungen für alle verschiedenen Raptor-Werttypen und wie sie im Skript dargestellt sind.
Typ |
Skript Repräsentation |
---|---|
|
Der Boolesche Wert wird als nativer Boolescher Wert dargestellt. |
|
Der Datums-Wert wird als natives JavaScript Date Objekt dargestellt. |
|
Ein Integer-Wert wird als nativer Number dargestellt. |
|
Der Programmwert wird als Objekt mit zwei String-Eigenschaften label und program dargestellt. |
|
Der String-Liste-Wert wird als natives JavaScript Array Objekt dargestellt, das String-Werte enthält. |
|
Der String-Wert wird als nativer String dargestellt. |
|
Der Tabellenwert wird als komplexes Objekt dargestellt. Siehe Tabelle für Details. |
Tabelle¶
Der Tabellenwert wird als komplexes Objekt dargestellt. Es besteht aus den folgenden Eigenschaften und Strukturen:
table.columns
: Ein Array mit Spaltenobjekten, die Informationen über die Spalten der Tabelle enthalten.table.rows
: Ein Array von Arrays, das die Tabellenwerte in Zeilen und Spalten organisiert.table.columns[column].label
: Das Label der angegebenen Spalte.column
ist der Index der Spalte im Arraytable.columns
.table.columns[column].type
: Der Raptor-Typ der angegebenen Spalte als String.column
ist der Index der Spalte im Arraytable.columns
.table.rows[row][column]
: Der Wert der angegebenen Zelle in der Tabelle.row
undcolumn
sind die Indizes der Zeile und Spalte im Arraytable.rows
.
Mit diesen Eigenschaften und Strukturen kannst du auf die Informationen einer Tabelle zugreifen und sie in deinem Skript verwenden. Zum Beispiel, um die Werte einer bestimmten Zeile und Spalte in der Tabelle zu erhalten, verwende table.rows[row][column]
.
In dem folgenden Beispiel wird das Tabellenobjekt table
verwendet, um auf die Zeilen und Spalten der Tabelle zuzugreifen. Die Werte der angegebenen Spalte targetColumn
werden in der Schleife summiert, und die Gesamtsumme wird am Ende zurückgegeben.
1// Angenommen, das Tabellenobjekt ist in der Variable "table" gespeichert
2// und wir möchten die Werte der Spalte mit dem Index "targetColumn" summieren.
3
4let targetColumn = 1; // Zum Beispiel die zweite Spalte (Indizes beginnen bei 0)
5let sum = 0;
6
7for (let row = 0; row < table.rows.length; row++) {
8 // Stelle sicher, dass der Wert in der Zelle ein numerischer Wert ist
9 if (typeof table.rows[row][targetColumn] === "number") {
10 sum += table.rows[row][targetColumn];
11 }
12}
13
14return sum