Deine Anwendung ist derart interessant und sauber strukturiert programmiert, daß ich nur noch ein paar Kleinigkeiten einstreue, die eine Abrundung bringen können und die mir aufgefallen sind:
Es war möglich, die gleiche Anwendung zweimal zu initialisieren. Damit enthält die Anwendung 2 (gleiche) Agenten.
Der in die Applikation kopierte Agent sucht die Letterengine auf dem Server, der im Konfigurationsdokument angegeben ist. Vorschlag: zuerst auf dem Server der Applikation suchen, danach auf dem, der im Konfigurationsdokument der Letterengine angegeben ist. Damit wird es möglich, daß auch in internationalem Umfeld oder in lokalen Anwendungs-Repliken diese Funktionen zur Verfügung stehen. Die Auslagerung der Anhänge in Shares halte ich eigentlich für die schlechtere Variante.
Du mußt dann auf jeden Fall die ReplikID mit ins Konfigurationsdokument schreiben und den ersten Öffnungsversuch auf jeden Fall auch als OPENBYREPLICAID durchführen.
Die Idee, die du umgesetzt hast, ist ganz stark ausschließlich auf Serienbriefe mit vielen Empfängern ausgerichtet - und da hast du völlig recht, daß man das eine Dokument, das mit 187 Kundendaten bestückt ist, nicht an 187 Notes-Datensätze anhängen sollte.
Meine erste Idee der Nutzung ist aber ganz überwiegend ausgerichtet auf einen (Serien)Brief mit nur einem Empfänger. Will man beide Fälle abdecken, kann man evtl folgendermaßen vorgehen: wenn der Count der Collection=1 ist, dann wird das erstellte document an dieses erste und einzige Dokument angehängt (als Attachment), ansonsten in ein neues Dokument in der Applikation gepackt und in jedes Dokument der Collection ein Link darauf gesetzt. Dann bräuchtest du noch
eine View für diese Serienbriefdokumente
eine Teilmaske, die das Feld für den Dokumentenlink enthält.
Kannst du dir vorstellen, die Letterengine bei OpenNTF einzustellen ?
Gruß
Norbert