Domino 9 und frühere Versionen > ND6: Entwicklung
Problem mit Gruppenauflösung
koehlerbv:
--- Zitat von: jo@chim am 22.02.07 - 17:38:40 ---Ich würde das gerne einfach über eine Eingabeumsetzung lösen, verschachtelte Gruppen benutzen wir mW nicht.
--- Ende Zitat ---
Wirkliche Programmierer verwenden solcherart Konjunktive nicht, sondern rechnen immer mit dem schlimmsten!
Die Eingabeumsetzung kannst Du auch mit Script benutzen: Das PostRecalc Event ist Dein Freund.
Wenn Du doch mit @functions arbeiten willst:
Schleifen mit Formelsprache sind incl. Beispielen in der DesignerHelp sehr gut erklärt.
Bernhard
jo@chim:
--- Zitat ---Wirkliche Programmierer
--- Ende Zitat ---
Komm mal runter, Junge.
--- Zitat ---PostRecalc Event
--- Ende Zitat ---
Danke für den Hinweis, daran habe ich nicht gedacht.
jo@chim:
Wusst ich doch, dass das auch mit schlappem Skript funktioniert ;D
Hier das Ganze noch einmal fürs Forum:
--- Code: ---tmpFieldName:=NamensfeldUmDasEsGeht;
tmpGroupMembers:=@IfError(@DbLookup("":"NoCache"; @Subset (@DbName; 1):"names.nsf"; "($Users)"; tmpFieldName; "Members"); "");
tmpPerson := "";
@For(n := 1; n <= @Elements(tmpFieldname); n := n + 1;
@If(@DbLookup("":"NoCache"; @Subset (@DbName; 1):"names.nsf"; "($Users)"; tmpFieldName[n]; "Members")="";tmpPerson:=tmpPerson:tmpFieldName[n];""));
@If(tmpFieldName!="";@Trim(@Unique(@Name([CN];@If(@Subset(@DbName;1)="";tmpFieldName;tmpPerson:tmpGroupMembers))));"")
--- Ende Code ---
Die Formel löst in der Eingabeumsetzung eines Namensfeldes die Gruppe(n) in die jeweiligen Usernamen auf und entfernt die Bezeichnung der Gruppe selbst; Einzelnamen werden übernommen. Known Limitations: wie B. schon richtig erwähnt hat, funktioniert das bei verschachtelten Gruppen nicht. Wenn man von einer lokalen Replik aus arbeitet, wird die Gruppe erst beim nächsten Recalc von einer Server-Replik aus aufgelöst. Und die "names.nsf" muss natürlich auch im Zugriff sein.
koehlerbv:
Klar kriegt man sowas ab R6 auch mit @functions hin - ich hatte ja genau darauf hingewiesen. Und wenn man den Code noch unleserlicher / unwartbarer machen will: Damit geht sogar Rekursion (in diesem Fall) ;D
Eine Frage noch: Warum kommt das
--- Code: ---@If (@Subset (@DbName; 1) = ""
--- Ende Code ---
erst, wenn eigentlich schon alle Messen gelesen sind? Die Operation sollte doch eigentlich gleich abgebrochen werden, wenn auf eine lokale DB "NAMES.NSF" zugegriffen wird ...
--- Zitat von: jo@chim am 22.02.07 - 19:40:05 ---Komm mal runter, Junge.
--- Ende Zitat ---
Was das angeht: Ich bin kein "Junge". Ich stehe aber zu meiner Aussage.
Bernhard
dirk_2909:
..und noch so als Info:
@ifError gibt es ab R7 nicht mehr (funktioniert aber noch) 8)
Es macht auch den Code unübersichtlich ???
Navigation
[0] Themen-Index
[#] Nächste Seite
[*] Vorherige Sete
Zur normalen Ansicht wechseln