dms.CreateOsEvent

Legt ein neues OS-Event an.

Dieser Job greift direkt auf die interne Scripting-Infrastruktur von enaio® zu. Falsch konfigurierte Events können auf Client- oder Serverseite zu unerwartetem Verhalten bis hin zu schwerwiegenden Fehlfunktionen führen.

1. Eingabeparameter

Name Typ Pflicht Beschreibung

EventCode

INT

Ja

Ereignistyp des neuen Events.
Vollständige Wertebeschreibung: Event-Code-Liste

OsClassName

STRING

Nein

Zielobjekttyp: type_id als String oder "Application".
Beschreibung: Feld os_class_name

OsEventParams

STRING

Nein

Kontext-Parameter — Inhalt abhängig vom EventCode (Feld-GUID, Job-Name oder Bibliotheksname).
Mapping: os_event_params — Mapping

VBCode

BYTE[]

Ja

Ausführbarer Scriptcode des Events (JavaScript oder VBScript), als BYTE[] (BASE64) übergeben. Die Bytes als UTF-8 mit BOM kodieren — der Server erkennt UTF-8 ausschließlich am führenden BOM und speichert dann den vollen Unicode-Bereich. Ohne BOM werden die Bytes als Legacy-Windows-1252 (cp1252) interpretiert. Gilt unabhängig von is_js und davon, ob das System ein Unicode-System ist.
Beschreibung: Feld vb_code

AppClass

STRING

Nein

Zielplattform: 1 = Client · 2 = Server · 3 = WebClient.
Mapping: Feld app_class

2. Ausgabeparameter

Name Typ Abhängigkeit Beschreibung

OsEventID

INT

ID des neu angelegten Events. Entspricht dem Feld id in der JSON-Rückgabe von dms.GetOsEvents.

Der Server erzwingt Eindeutigkeit über die Kombination aus EventCode, OsClassName und OsEventParams. Ein Aufruf mit einer bereits existierenden Kombination wird abgewiesen (Os event already exists). Soll ein bestehendes Event geändert werden, ist je nach Änderung dms.UpdateOsEvent zu verwenden (nur vb_code änderbar) oder das Event zu löschen und neu anzulegen.

Die Schreibweise des id-Parameters ist über die OS-Event-Jobs nicht einheitlich: dms.CreateOsEvent liefert ihn als OsEventID zurück, dms.DeleteOsEvent erwartet ihn als OsEventID, dms.UpdateOsEvent hingegen als OsEventId (kleines d). Auf die exakte Schreibweise achten.

3. Rückgabe

(INT): 0 = Job erfolgreich, sonst Fehlercode
Vollständige Fehlerliste