Project in Ereignis funktioniert nur teilweise

Hallo,

ich versuche, in einem Skript, das als Ereignis-Handler gerufen wird, auf das Project-Objekt zuzugreifen. Aber weder WScript.Event.Project noch cRM.CurrentProject liefern ein verwendbares Objekt.
MsgBox cRM.CurrentProject.ActiveViews.ActiveView.Name
funktioniert korrekt
MsgBox cRM.CurrentProject.AppDir
oder der Zugriff auf CurrentUser (mein eigentliches Vorhaben) führen zur Fehlermeldung

„Das Objekt unterstützt diese Eigenschaft oder Methode nicht.: ‚cRM.CurrentProject.AppDir‘“
"C:\Program Files (x86)\combit\cRM\Solutions\kavsh\scriptC\gremien_toolbox.vbs in Zeile 120, Position 0:
MsgBox cRM.CurrentProject.AppDir2

Wie komme ich einem Event an den aktuellen User?

ClientSetup habe ich schon laufen lassen, meine Session habe ich auch schon neu gestartet.

Vielen Dank
Michael Wittmer

Hallo Michael,

das Project-Objekt unterstüzt die Eigenschaft AppDir nicht. Die AppDir Eigenschaft ist direkt im cRMApplication Objekt verfügbar. Im Project steht die ProjectDir Eigenschaft zur Verfügung.

Da über den Aufruf cRM.CurrentProject.ActiveViews.ActiveView.Name der ViewName korrekt ausgegeben wird, sollte nach Korrektur des AppDir Aufrufs auch der Aufruf von cRM.CurrentProject.CurrentUser den korrekten Wert ausgeben.

Beste Grüße
Frank

Noch eine kleine Ergänzung der Vollständigkeit halber - auch wenn es hier nicht direkt darum geht:

Bei ansichtsspezifischen Ereignissen (und Folgeverknüpfungsscripte) sollten (müssen) Sie auf cRM.CurrentProject.ActiveViews.ActiveView verzichten und WScript.Event.View benutzen, da je nach Ereignis nicht unbedingt sichergestellt ist, dass die Ansicht, um die es im Ereigniskontext geht, wirklich auch gerade (schon/noch) „AKTIV“ ist. D.h. cRM.CurrentProject.ActiveViews.ActiveView liefert Ihnen u.U. eine „andere“ Ansicht, als die, auf deren Kontext sich das Scriptereignis gerade bezieht.

Hallo und vielen Dank,
mit AppDir habe ich in der Hetze (Deadline) das falsche Property getestet. Aber:
MsgBox cRM.CurrentProject.CurrentUser.LoginName
liefert diesen Fehler:

Objekt erforderlich: ‚cRM.CurrentProject.CurrentUser‘
C:\Program Files (x86)\combit\cRM\Solutions\kavsh\scriptC\gremien_toolbox.vbs in Zeile 126, Position 0:
MsgBox cRM.CurrentProject.CurrentUser.LoginName
Und das ist mein eigentliches Problem…

Vielen Dank
Michael

In welchem konkreten Event wird das Script genau genutzt?

Bei „Datensatz wird gespeichert“ bin ich auf das Problem gestoßen, ein Test hat gezeigt, daß dasselbe Problem bei „Neuer Datensatz…“ auftritt.

MsgBox cRM.CurrentProject.CurrentUser.LoginName

Ich hab’s gefunden: cRM.CurrentProject.CurrentUser enthält bereits den LoginNamen. Es ist kein OBJEKT, sondern „nur“ der String mit dem LoginNamen.

Super, vielen Dank. Manchmal steht man halt leider auf der Leitung (notorisch, wenn die Deadline droht).

Nochmal herzlichen Dank!