Domino 9 und frühere Versionen > ND6: Entwicklung
Mehrfachwerte mehrerer Rückgaben zusammenfassen
Hedwig14:
Ich bekomme aus verschiedenen Gruppen die Members geliefert.
Die möchte ich in einem Wert zusammenschrieben. Von Andrew habe
ich den Tip bekommen es mit AppendArray zu versuchen.
Leider habe ich mit AppendArray noch nicht gearbeitet und meine Probleme beim Aufbau.
Wenn ich die u.a. Routine das erstemal durchlaufen lasse ist das zielArray ja noch nicht vorhaden.
Und kann dem Array auch nichts hinzufügen.
Ich mache beim Aufbau einen Gedankenfehler. Schön wäre wenn jemand neben der Hilfe ein Beispiel hätte. Vielen Dank
Dim werte() As Variant
Redim Preserve werte(anzahl)
Set entry = acl.GetfirstEntry
While Not ( entry Is Nothing )
If ( entry.Level = ACLLEVEL_EDITOR ) Then
werte(number) = entry.Name
number = number + 1
If entry.IsGroup Then
gruppenmitglieder = GebeGruppeAufgeloest(entry.name, "[COMMON]" )
Else
gruppenmitglieder = entry.name
End If
Dim teilArray As Variant
teilArray = gruppenmitglieder
zielArray = Arrayappend(zielArray,teilArray)
End If
Set entry = acl.GetNextEntry( entry )
Wend
koehlerbv:
Vorab: Solange Du weiterhin mit der IsGroup-Property arbeitest, ist Dein Code wertlos. Andrew schrieb das ja bereits.
Weiters: Gib der LS-Function Isempty eine Chance.
Bernhard
Hedwig14:
so hatte ich es schon getestet !
Steh auf dem Schlauch !
Dim teilArray As Variant
teilArray = gruppenmitglieder
If Isempty (zielArray) Then
zielArray = gruppenmitglieder
Else
zielArray = Arrayappend(zielArray,teilArray)
End If
LN4ever:
Liebe Hedwig
DasErsteMal = True
teilArray = gruppenmitglieder
If Not Isempty (teilarray) Then
If DasErsteMal Then
zielArray = gruppenmitglieder
DasErsteMal=False
Else
zielArray = Arrayappend(zielArray,teilArray)
End If
End If
Überleg dir gut, ob du den Weg mit deiner selbstgebastelten Gruppenauflösung gehen willst. Der Code, den ich dir oben vorgeschlagen habe - ergänzt um ein paar fehlende Klammern und Initialisierungen - nimmt dir das alles mit Notes-Bordmitteln ab.
Und die Gruppen werden so behandelt wie du es dir vermutlich vorstellst. Nochmals der Hinweis: IsGroup von einer ACL-entry ist etwas TOTAL ANDERES als was du dir vorstellst. Das sind die Einträge, die ein Gruppierungssymbol haben. Das kann in einem Template auch ein Eintrag ohne Berechtigung wie [Leitung] oder [Vertrieb] sein, der beim Erzeugen einer echten Datenbank aus dem Template in die gleichnamige Gruppe (ohne eckige Klammern) umgewandelt wird. Und ich glaube, daß du mit deinem ISGROUP im moment noch auf der [Leitung] stehst.
Gruß
Norbert
P.S.: wie bekommt man das eigentlich mit den sauberen Einrückungen in Codebeispielen hin ? Ich kann mein Zeugs ja selber kaum lesen, obwohl ich weiß, daß es eigentlich hilft und gut ist.
koehlerbv:
Setz es einfach in code-Tags, Norbert:
--- Code: --- DasErsteMal = True
teilArray = gruppenmitglieder
If Not Isempty (teilarray) Then
If DasErsteMal Then
zielArray = gruppenmitglieder
DasErsteMal=False
Else
zielArray = Arrayappend(zielArray,teilArray)
End If
End If
--- Ende Code ---
Bernhard
Navigation
[0] Themen-Index
[#] Nächste Seite
[*] Vorherige Sete
Zur normalen Ansicht wechseln