Event.Data für Relationen-Container entspricht nicht der Dokumentation

Hallo,
laut Dokumentation besteht der Inhalt von WScript.Event.Data aus einem String mit 4 durch „|“ getrennten Elementen (|<RelationFieldName#RelationContainerID>||). In meinem Skript kommen nur die ersten beiden Elemente an und damit fehlt mir die RecordId des Datensatzes für die weitere Verarbeitung.
Der Event hat die ID 32847 (Löschen im Relationen-Container).
Vor dem Löschen brauche ich aber Zugriff auf Inhalte des zu löschenden Datensatzes.
Weiß jemand einen anderen Weg, um an diese Information zu kommen?

Danke!

Sie können per

set oRecord = WScript.Event.View.CurrentInputForm(2).Containers.ItemByName(sContainerID).CurrentRecord

direkt auf den aktuell markierten (und damit betroffenen) Datensatz zugreifen. (Die ContainerID steckt im 2. Token von WScript.Event.Data.)

Es tut mir leid, dass die Beschreibung des Feldnamens und Feldinhalts in der SDK Dokumentation nicht klarer formuliert wurde, wir werden das anpassen:

Der Feldname und Feldinhalt wird nur dann relevant und nur dann gefüllt, wenn der Container-(Kontext-)Menüpunkt im Zusammenhang mit dem konkret angeklickten Feld steht. Also bspw. wenn ein:e Anwender:in per Rechtsklick auf ein im Container angezeigtes Dokument klickt und ‚Dokument mit verknüpfter Anwendung öffnen‘ ausführt, oder bei einem Rechtsklick auf eine Telefonnummer und dort ‚Anrufen‘ ausgeführt wird. Dann wäre der angeklickte Feldname und der Feldinhalt in den Event hineingeliefert worden.

Bei Aktionen, die sich auf den kompletten Datensatz beziehen, wird prinzipbedingt kein Feld und Inhalt mitgegeben. Dann können Sie mit dem CurrentRecord des betroffenen Containers arbeiten.

EDIT 14.12.21: Syntaxfehler in obigem CurrentRecord Zugriffsbeispiel korrigiert.

Hallo Herr Eggstein,

vielen Dank für die schnelle Antwort und den Fingerzeig in die richtige Richtung.
Der Vollständigkeit halber, die Anweisung für den Zugriff auf den CurrentRecord des bearbeiteten Datensatzes lautet:
Set oRecord = WScript.Event.View.CurrentInputForm**(2)**.Containers.ItemByName(sContainerId).CurrentRecord

Viele Grüße
Michael Wittmer

Oh, ja stimmt - das kommt davon wenn man das nur mal so runtertippt, ich muss unbedingt mehr mit Disclaimern arbeiten - ich bitte um Entschuldigung :grimacing: - ich hab es oben nachträglich noch korrigiert.

Von mir braucht’s keinen Disclaimer, ich habe mich über die Hilfestellung gefreut!

1 Like

© combit GmbH