Domino 9 und frühere Versionen > ND8: Entwicklung
Maildokumente aus Maildatenbank des Anwenders in andere Datenbank kopieren
Mitch:
Hallo zusammen,
ich bräuchte mal ein paar Anregungen:
Ich habe eine Todo-Datenbank (Eigenbau). Ich möchte nun die Todo-Maske dahingehend erweitern, dass ein Anwender aus dem Todo heraus eine Mail aus seiner eigenen Maildatenbank heraus in die Todo-DB kopieren kann. Diese Mail soll als Anwortdokument des Todos erstellt werden und in einer eingebetteten Ansicht zur Verfügung gestellt werden.
Hintergrund ist, dass oft Anforderungen und Ergänzungen zu einem Todo per Mail ankommen und der Bearbeiter des Todos nicht zwingend der Empfänger dieser Mails ist. Da er schließlich keinen Zugriff auf fremde Mail-Dbs hat, soll er auf diesem Wege die Möglichkeit erhalten, den Verlauf der bisherigen Korrespondenz nachvollziehen zu können.
Die Mailschablone soll dafür nicht angepasst werden, es muss also ein Import aus der Todo-DB passieren. Natürlich muss dieser Import vom Mail-Empfänger selbst gestartet werden.
Mein Problem ist jetzt: Wie kann ich eine vernünftige Auswahlmöglichkeit der Mails anbieten? In der DB können schließlich tausende von Mails liegen. Es können Ordner existieren. Vielleicht will man auch was aus der "Send"-Ansicht haben. Vielleicht möchte man auch die Suche verwenden.
Am liebsten wäre es mir, die komplette Mail-DB quasi als Dialogbox aufpoppen zu lassen, dort Dokumente auszuwählen und das Ergebnis dann entsprechend zu verarbeiten. Dialogboxen funktionieren meines Wissens aber eben nur mit Masken/Teilmasken, sonst würde ich versuchen eine Rahmengruppe aufgehen zu lassen.
Mein momentaner (erfolgloser) Ansatz: Ich öffne via workspace.OpenFrameset eine Rahmengruppe mit zwei Rahmen. Einer enthält das Frameset der Mail-DB, der andere enthält einen Hinweis a la "Bitte Mails auswählen" und einen OK-Button. Über den versuche ich an die markierten Doks der Mail-DB zu kommen.
Das funktioniert aber nicht. Die workspace.CurrentDatabase.Database.UnprocessedDocuments sind natürlich leer, habe da ja auch nichts markiert (der Fokus liegt auf der Todo-DB, da sich der Button praktisch dort befindet). Wenn ich aber die Mail-DB explizit ziehe (mit neuer DB und dann OpenMail) und dort versuche auf die Unprocessed zu gehen, erhalte ich die Meldung "Can't get left-todo-list, Database SERVER/ORGANIZATION!!Mail\xxx.nsf is not the agent's database". Server, Organisation und Mailfilename stimmen aber, dort stehen meine Werte drin.
Hat jemand eine Idee? :)
klaussal:
Ich habe mal so etwas ähnliches (aber nicht mit Mails) gemacht via collection und picklistcollection.
--- Code: ---Set collection = ws.PickListCollection( PICKLIST_CUSTOM, False, dbServer, dbName, strView, "Personenauswahl", "Bitte wählen Sie eine Person aus")
--- Ende Code ---
Mitch:
Ja, technisch wäre das möglich. Ist aber unpraktisch bei einer Mail-Datenbank. Um wirklich alle Dokumente anzuzeigen, müsste ich ja diese "Alle Dokumente"-Ansicht nehmen, aber das wäre eine laaange Liste.
Ich hätte also gerne mehr Komfort. :)
klaussal:
Die Ziege wollte auch......
Dann musst Du eben mehrere Knöpfe machen. Oder innerhalb der Routine verzweigen.
Und ausserdem lese ich immer "vielleicht" möchte man... Da solltest Du ganz klar sagen, das geht oder das geht nicht. Man kann es nicht allen recht machen.
koehlerbv:
Was auf jeden Fall nicht geht, ist "das Mailfile aufpoppen zu lassen".
Ich habe aber selbst in Anwendungen von mir eine Routine zu laufen, die dem Anwender die Ordnerauswahl (nachgebildet!) seines Mailfiles anbietet und dann den entsprechenden Ordner öffnet. Die dann ausgewählte Mail wird dann weiter verarbeitet (auch bei mir als neues response document).
Eine (Volltext-)Suche könnte man natürlich auch noch bauen, aber dann wird das ganze noch komplizierter. Und wenn der Anwender nicht mehr weiss, welches Mail er denn importieren möchte bzw. wo das liegt ... Aber gegen (genügend) Geld würde ich das auch machen.
Vulgo: Gehen tut das. Man darf nur den Aufwand nicht unterschätzen (insbesondere, das Auslesen der Ordner auf Performance zu trimmen!).
Bernhard
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln