Domino 9 und frühere Versionen > ND8: Entwicklung
Stationaries - Hat sich schon mal jemand mit dem Quatsch beschäftigt?
Peter Klett:
Es gibt zwei Gründe, weshalb ich niemals die Maildatenbank oder das Adressbuch anfassen würde.
Der zweite ist, dass es bestimmt keinen Spaß macht ...
Tode:
Ihr habt recht... Die Benutzer hier sind aber halt verwöhnt... Die wissen, dass man fast alles fixen kann, was IBM so verbrochen hat.
Fall irgendjemand jemals über diesen Thread stolpert, hier meine Bugfixes für dieses nervige Verhalten. Natürlich sind noch nicht alle Risiken und Nebenwirkungen geprüft, aber ich poste es trotzdem mal. In der Gemeinsamen Aktion "Werkzeuge\Neue Nachricht mit Vorlage..." und in den Aktionen in der Ansicht (Vorlage)|Stationary "Neu\Nachricht mit Vorlage..." und "Aktionen nur für Classic\mit Vorlage (Classic)" habe ich die Zeile
--- Code: ---Set noteUIEditDocument = uiws.Editdocument(False, noteCursorDoc)
--- Ende Code ---
durch die folgenden Zeilen ersetzt:
--- Code: --- Dim noteNewMemo As NotesDocument
Set noteNewMemo = New NotesDocument( database )
Call noteCursorDoc.CopyAllItems( noteNewMemo )
Call noteNewMemo.RemoveItem("IsMailStationery")
Call noteNewMemo.RemoveItem("MailStationeryName")
Set noteUIEditDocument = uiws.Editdocument(False, noteNewMemo)
--- Ende Code ---
Ausserdem im QueryOpenDocument der besagten Ansicht folgenden Code ergänzt:
--- Code: --- Dim uiws As New NotesUIWorkspace
Dim noteUIEditDocument As NotesUIDocument
Dim ses As New NotesSession
Dim database As NotesDatabase
Dim dc As NotesDocumentCollection
Dim noteNewMemo As NotesDocument
Dim noteCursorDoc As NotesDocument
Set database = ses.CurrentDatabase
If ses.GetEnvironmentString( "MailStEd" ) <> "2" Then
Set dc = Source.Documents
Set noteCursorDoc = dc.GetFirstDocument
If Not noteCursorDoc Is Nothing Then
Set noteNewMemo = New NotesDocument( database )
Call noteCursorDoc.CopyAllItems( noteNewMemo )
Call noteNewMemo.RemoveItem("IsMailStationery")
Call noteNewMemo.RemoveItem("MailStationeryName")
Set noteUIEditDocument = uiws.Editdocument(True, noteNewMemo)
Continue = False
End If
End If
--- Ende Code ---
Damit sollte ich die meisten Fälle abgefangen haben...
Ja, ich weiss, dass es böse ist, in den Mailtemplates rumzufuhrwerken, aber der Kunde ist König ;-)
it898ur:
Hallo,
ich pass diesen Codeteil nun schon seit Notes 5.x an und bin immer wieder fasziniert, dass IBM selbst in 8.5.3 diesen Unsinn nicht ändert. Zum Glück kann man den einmal ordentlich gemachten Code immer wieder mit Copy und Paste übernehmen.
Und ab einer gewissen Nutzeranzahl überwiegt die gesparte Supportzeit deutlich die investierte Entwicklerzeit !
Viele Grüße
André
Navigation
[0] Themen-Index
[*] Vorherige Sete
Zur normalen Ansicht wechseln