Domino 9 und frühere Versionen > ND6: Entwicklung

Mehrfachwerte mehrerer Rückgaben zusammenfassen

<< < (2/3) > >>

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