So sieht das ganze in einem Browser aus...
Eingegangene eMails ohne und mit angezeigter Empfangsbestätigung:

Die eMails mit angeforderter Empfangsbestätigung markieren:

Die Aktion "Werkzeuge -> Empfangsbestätigung löschen" ausführen:

Danach sind die Empfangsbestätigungsanforderungen gelöscht:

Dazu müssen folgende Modifikationen vorgenommen werden:
- Im Ordner ($Inbox) eine Aktion "Werkzeuge\Empfangsbestätigung löschen", die nur im Browser sichtbar ist, mit folgendem JavaScript-Code erstellen:
if (window.location.host=="127.0.0.1:89") {
alert("Diese Aktion ist nicht verfügbar, wenn Domino Off-Line Services verwendet werden.");
}
else {
var pathname = window.location.pathname;
var path = pathname.substring(0,(pathname.lastIndexOf('.nsf')+5));
var url = path + 'wReturnReceipt?OpenAgent&UNIDs=';
var docs = getSelectedDocs();
if (docs.length != 0) {
for (var i = 0; i < docs.length; i++) {
url += '%%' + docs[i];
}
url += "&Return="+pathname + window.location.search;
window.location.replace(url)
}
else {
alert("Sie müssen zuerst ein oder mehrere Dokumente auswählen.");
}
}
- Einen Agenten ("Manually From Agentlist" und "Run Once...") mit dem Namen "wReturnReceipt" und folgendem LotusScript-Code erstellen:
Abschnitt: (Options)
Option Public
Option Declare
Option Compare Nocase
Use "Common"
Abschnitt: (Declarations)
'wReturnReceipt:
Dim docCtxt As NotesDocument
Dim viewNAB As notesview
Dim viewMAIL As notesview
Abschnitt: Initialize
Sub Initialize
Dim query_string As String
Dim strUNIDS As String
Dim strUNID As String
Dim agentLog As New NotesLog("Agent Log")
Call agentLog.OpenAgentLog
Set session = New NotesSession
Set db = session.CurrentDatabase
Set docCtxt = session.DocumentContext
query_string = docCtxt.getitemvalue("Query_String")(0)
If Instr(query_string, "&UNIDs=%%") Then
'We are called by Delete Return Receipt
strUNIDS = Strright( query_string, "&UNIDs=%%")
strUNIDS = Strleft( strUNIDS, "&Return=")
Call agentLog.LogAction("strUNIDs: " + strUNIDs)
strUNID = Strleft(strUNIDS, "%%")
While Not(strUNID = "")
Call agentLog.LogAction("Processing: " + strUNID)
Set docCtxt = db.GetDocumentByUNID( strUNID )
If (docCtxt.ReturnReceipt(0) = "1") Then
docCtxt.ReturnReceipt = "0"
Call docCtxt.Save(True, False, True)
End If
strUNIDS = Strright(strUNIDS, "%%")
strUNID = Strleft(strUNIDS, "%%")
Wend
Call agentLog.LogAction("Processing: " + strUNIDs)
Set docCtxt = db.GetDocumentByUNID( strUNIDs )
If (docCtxt.ReturnReceipt(0) = "1") Then
docCtxt.ReturnReceipt = "0"
Call docCtxt.Save(True, False, True)
End If
End If
Print "[" & Strrightback(query_string, "&Return=") & "]"
Call agentLog.Close
End Sub
Na dann viel Spaß...
|