Das Notes Forum
Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: vlink am 28.03.08 - 11:22:41
-
Hallo,
ich versuche bei einer kleinen Workflowanwendung eine eMail an alle Mitglieder einer bestimmte
Rollen zu senden. Das ganze in Formelsprache.
Soweit ich weiß kann man die Mitglieder nicht direkt adressieren sondern muss über die ACL gehen
und schauen wer Mitglied ist.
Allerdings komme ich codetechnisch nicht weiter :-(
hat jemand sowas schon gemacht und die entsprechenden Codezeilen verfügbar? Wenn möglich
in Formelsprache?
Wäre super!
Gruß
Volker
-
Per Formelsprache ist das (meines Wissens) nicht möglich. Da musst du schon Script bemühen.
-
..und hat hier jemand vielleicht etwas in lotus script?
vielen dank!
-
Fertige Stücke Code wirst du hier von in der Regel von niemandem erhalten. Hier wird dir Hilfe zur Selbsthilfe geboten. Ich umreiße mal kurz den "Algorithmus":
Du besorgst dir die ACL der Datenbank, wo die Mitglieder mit der entsprechenden Rolle vorhanden sind. Dann iterierst du über die Einträge der ACL und prüfst auf die Rolle. Alle Einträge mit der Rolle merkst du dir zB in einer List und anschließend kannst du daraus dann die Mail generieren.
Folgende Klassen werden dir dabei behilflich sein: NotesSession, NotesDatabase, NotesACL, NotesACLEntry für das Lesen der ACL der Datenbank. Für das Verschicken der Mail gibt es in der Schablone von !!HELP!! eine fertige Funktion, die du verwenden kannst.
-
schade..naja ich werde hier was posten..wenn ich es hinbekomme :-(
-
Du kannst natürlich weiter fragen, wenn du auf Probleme stößt. Die Frage ist aber auch, ob du überhaupt schon Erfahrungen mit Script gesammelt hast. Als wertvoll erweist sich eigentlich auch immer die Designerhilfe, da die in meinen Augen sehr gut ist. Vor allen Dingen sind oft gute Beispiele drin, die man mit Anpassungen für sich adaptieren kann.
-
Auf ein paar Dinge muß man noch achten.
Der DEFAULT-Eintrag darf keine Rolle haben oder muß separat betrachtet werden.
Gleiches gilt für alle Einträge der Typen "in eckigen Klammern", Certifier oder Replica-ID. Wenn in der ACL Gruppen stehen, dann ist es vorteilhaft fürs Mailen, wenn es sich dabei nicht um reine Zugriffsgruppen handelt. Ich würde auch nicht versuchen, Einträgen vom Typ SERVER oder SERVERGRUPPE Mails zu senden.
Und siehe da: aus einem kleinen, knackigen Script 10-Zeiler wird flugs ein 100-Zeiler.
Gruß
Norbert
-
Vielen Dank Norbert,
aber sowas hat echt noch nie jemand programmiert und hat da ein wenig Code?
Grüße
Volker
-
Ich kann mir nicht vorstellen, dass ich hier der einzige sein sollte, der das (incl. der Anmerkungen von Norbert) umgesetzt haben sollte. Das heisst aber noch lange nicht, dass sowas kostenfrei zur Verfügung gestellt wird. Es ist nichts anderes als eine Fingerübung (wenn man es denn kann). Auf was dabei zu achten ist, steht auch im Thread.
Bernhard
-
Jetzt auch da:
http://www.spotlight.de/zforen/lts/m/lts-1207118289-15773.html
-
Ohne es selbst auszuprobieren:
ExpandNameList kommt dabei nicht in Frage?
Da gab es eine Längenbeschränkung wenn ich mich recht erinnere?
-
@ExpandNameList kommt nicht in Frage:
1. Undokumentiert (wenn auch von IBM Lotus verwendet, aber ...)
2. Es zielt auf Gruppen und tangiert so Rollen gar nicht.
Wie gesagt: Es ist letztlich nur Handwerk, das auch unter Berücksichtigung möglicher "negativer Umstände" (siehe vor allem Norberts Posting) umzusetzen. Und wer es nicht selber machen will / kann, soll eben die Arbeit eines anderen bezahlen.
Bernhard
-
Der Vollständigkeit halber: an anonymous sollte man auch nicht versuchen, Mails zu versenden.
Gruß
Norbert