Autor Thema: BUG in session.UserGroupNameList!?: Liefert fast nix zurück...  (Gelesen 1719 mal)

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.885
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Ich habe gerade festgestellt, dass UserGroupNameList fast nichts zurück liefert.

Ich habe eine Test- Maske erstellt mit 2 Feldern: Beide haben die Option mehrfachwerte zulassen und sind bearbeitbar:

Feld1: UserGroupNameList, Vorgabewert: nix
Feld2: UserNameList, Vorgabewert: @UserNamesList

Ausserdem im Postopen der Maske folgendes Script:

   Dim ses As New NotesSession
   Dim item As NotesItem
   Set item = Source.Document.GetFirstItem( "Groupnamelist" )
   Forall group In ses.UserGroupNameList
      Call item.AppendToTextList( group.Canonical )
   End Forall

Ergebnis:
Feld1 (durch Script gefüllt):
*/OU=Freiburg/O=Firma/C=DE; */O=Firma/C=DE; */C=DE; LocalDomainAdmins

Feld2 (durch UserNamesList gefüllt):
CN=Torsten/OU=Freiburg/O=Firma/C=DE; Torsten; *; */OU=Freiburg/O=Firma/C=DE; */O=Firma/C=DE; */C=DE; .A.Fuhrpark_FR; .CRM.ReadAll; DEESAdmin; NewDrawingReaders; QuickPlaceAdministratorsSUGroup; .CRM.WriteAll; CompanyMembers; .V.#TLi-Test; ...

Eigentlich sollten doch beide das selbe liefern, oder sehe ich das falsch ?

Tode
Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen... das klingt dann so: "Tooode" (langes O, das r, s und n werden verschluckt, das t wird zum badischen d)

Driri

  • Gast
Habe das gerade mal nachgestellt. Das sieht mir so aus, als wenn UserGroupNameList eine Liste der Gruppen aus dem persönlichen Adreßbuch zurückliefert.

Zumindest bekomme ich hier neben den Certs nur eine Gruppe angezeigt, die in meinem lokalen names.nsf ist und in der ich als Member eingetragen bin.


Ergänzung : Ich deute den Hinweis aus der Designer-Hilfe mal so, daß bei lokaler Ausführung das pers. Adreßbuch zieht.

Zitat
The groups include those to which the user belongs in the Domino Directory or Personal Address Book where the program is running.
« Letzte Änderung: 05.09.07 - 16:26:11 von Driri »

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Bei dieser Property bin ich auch schon mal auf gleiche Resultate wie Torsten gestossen. Da ich aber sowieso bisher immer mehr als die Gruppen brauchte (vor allem auch die Rollen), arbeite ich mit Evaluate über @UserNamesList und habe dies nie weiter verfolgt. Was mich damals schon verwundert hat, dass in der DesignerHelp nicht wenigstens unter Hinweis auf die Unterschiede irgend ein Verweis zu @UserNamesList stand.

In der kBase findet sich auch nix, das Verhalten ist auch unter 6.5.6 oder 7.0.2 zu beobachten, und irgendwie habe ich das Gefühl, dass wir da was missverstehen oder die DesignerHelp eine wichtige Info vorenthält.

Bernhard

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.885
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
ah schön... da sind wir ja alle einer Meinung

@Driri: Offensichtlich erhält die Funktion immer dann die LOKALEN Gruppen, wenn das Script im Client liegt (unabhängig davon, ob die Datenbank auf einem Server liegt oder nicht). Damit ist das vollkommen unbrauchbar, ich will nicht immer mit ag.RunOnServer arbeiten, wenn ich sowas brauche.

@koehlerbv: Ja, genau das habe ich jetzt auch gemacht... Ich versuche zwar Evaluate zu vermeiden, wenn es eine "Echte" Script- Alternative gibt, aber hier ist das ja offensichtlich nicht der Fall.

Was mich auch stört ist, dass UserGroupNameList zu allem Überfluss auch noch ein Array mit NotesNames zurückliefert... Um das Ergebnis irgendwie weiterzuverarbieten (z.B. in ein Feld schreiben), muss ich erst das Array durchlaufen und mir die Canonical- Werte auslesen... Das ist ja auch der vollkommene Quatsch...

Tode
Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen... das klingt dann so: "Tooode" (langes O, das r, s und n werden verschluckt, das t wird zum badischen d)

Driri

  • Gast
Zitat
@Driri: Offensichtlich erhält die Funktion immer dann die LOKALEN Gruppen, wenn das Script im Client liegt (unabhängig davon, ob die Datenbank auf einem Server liegt oder nicht). Damit ist das vollkommen unbrauchbar, ich will nicht immer mit ag.RunOnServer arbeiten, wenn ich sowas brauche.

Das meinte ich mit "lokaler Ausführung". War evtl. nicht ganz deutlich, sorry.

Über Brauchbarkeit brauchen wir nicht weiter reden  ;)

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz