Bei einem unserer Benutzer - und nur einem
- hatten wir ein ungewöhnliches und leider auch ziemlich nerviges Phänomen:
Für jede aus dem Internet eingehende E-Mail wurden Empfangsbestätigungen
versendet, und zwar einmal für jeden Benutzer, der sich die E-Mail ansieht
(in der Vorschau ansehen reichte dazu auch aus).
Der Benutzer hat den Notes-Client 8.5.3
Standard auf deutsch, die Mail-Schablone ebenfalls 8.5.3 in deutsch.
Nach Inspektion aller Einstellungen
(inklusive der Profildokumente) in der Mail-Datenbank und im Client und
einigen Testen fiel auf, dass das Verhalten unabhängig von dem Benutzer
und seinem Client, aber immer mit seiner Mail-Datenbank auftrat, also auch,
wenn diese von jemand anderem in einem anderen Client (mit anderer Version)
geöffnet wurde.
Nach dem Ersetzen der Schablone mit einer
aus Version 7 war das Problem weg, aber sobald wieder die deutsche 8.5.3er
Schablone eingespielt wurde, passierte es wieder.
Also musste das Problem und seine Lösung
in der Gestaltung dieser Schablone liegen, obwohl viele Benutzer die gleiche
Schablone ohne dieses Problem nutzen.
Nach längerer Recherche im Web (Wonach
sollte man hier suchen?) fanden wir doch noch den ausschlaggebenden Tipp:
Notes client sends return receipts
even when it was never requested
http://www-01.ibm.com/support/docview.wss?uid=swg21501193
Und tatsächlich, der Benutzer hatte
die Einstellung "Mir eine Empfangsbestätigung senden, wenn Empfänger
von mir gesendete Mails lesen" ("Send me a Return Receipt when
recipients read mail I sent") gesetzt. Aber die Einstellung ist doch
genau für die andere Richtung - ausgehende E-Mails?!?
Das Geheimnis liegt in dem Code, der
dafür sorgt, dass die Vorgabe funktioniert.
In der Teilmaske "DelOptionSubform"
gibt es das Feld "ReturnReceipt". Die Formel des Feldes ist:
getRR := @GetProfileField("CalendarProfile";
"RRDefault");
@If(getRR = "1"; "1";
"")
Das Problem bestand nun darin, dass
es bei eingenden SMTP-E-Mails das Item "ReturnReceipt" nicht
gibt, es also beim Öffnen der E-Mail mit der Memo-Maske erstmalig berechnet
wird. Und da die entsprechende Vorgabe im CalendarProfile gesetzt war,
wurde der Wunsch nach einer Empfangsbestätigung künstlich hinzugefügt.
Eine mögliche Lösung war nun, die Formel
zu erweitern:
getRR := @GetProfileField("CalendarProfile";
"RRDefault");
@If(@IsNewDoc & getRR = "1";
"1"; "")
Da die eingehende SMTP-E-Mail zum Zeitpunkt
des Öffnens kein neues Dokument mehr ist, wird der Feldwert nicht auf "1"
gesetzt, also keine Empfangsbestätigung angefordert.
Hatte der Absender eine Empfangsbestätigung
angefordert, gibt es das Feld schon und es wird beim Öffnen nicht neu berechnet.
Das war's also...