Domino 9 und frühere Versionen > Entwicklung

angepasste Mailschablone, Attachments löschen

(1/1)

Pavel:
Hallo,

kann mir vielleicht jemand bei einem kleinen Problem helfen?
Folgender Scriptcode funktioniert scheinbar nicht fehlerfrei.
Ich habe den Code in das Queryclose meiner Mailschablone eingebaut.
Es tritt nun folgender Effekt auf. Beim Schreiben einer neuen eMail mit Dateianhang im Body und folgendem Absenden, wird der Dateianhang nicht gelöscht.
Wenn ich dieselbe Mail nochmal öffne und einfach wieder schließe, wird der Dateianhang entfernt. Wo liegt der Fehler? Es sollte doch eigentlich beides mal der Dateianhang entfernt werden oder?
Ich würde gern auch auf dem selben Wege ein bestimmtes Attachment wieder anhängen, quasi austauschen.

Kann mir jemand erklären was verkehrt ist? ???

Hier der Quelltext:

Sub Queryclose(Source As Notesuidocument, Continue As Variant)
   Call cMemoObject.QueryClose(Continue)
   Dim s As New notessession
   Dim doc As NotesDocument
   
   Set doc=source.document
   If doc.hasembedded Then
      
      Forall rtitem In doc.items
         If (rtItem.type=RICHTEXT) Then
            If Not Isempty(rtitem.embeddedobjects) Then
               Forall obj In rtItem.embeddedobjects
                  If obj.type=embed_attachment Then
                     
                     Call obj.remove
                     
                  End If
               End Forall
            End If
         End If      
      End Forall
      Call doc.save(True,True,True)   
   End If   
End Sub

Driri:
Hi,

ich meine, daß das Problem hier schon öfters diskutiert wurde. Das hängt, soweit ich mich erinnere, damit zusammen, daß das RTF erst nach dem Speichern/Neuöffnen korrekt zur Verfügung steht.
Such mal nach Reopen, Ata hatte da ne Funktion für geschrieben.

MartinG:
...oder noch besser auf Notes6 migrieren, da ist diese Funktion standardmässig beim Client eingebaut...

koehlerbv:
Driri hat vollkommen wahr.
Das Dokument wird zwar bereits im QuerySave gespeichert, aber im FrontEnd.
Deine QueryClose-Aktion läuft aber im BackEnd, was noch von nix weiß.

Bernhard

Navigation

[0] Themen-Index

Zur normalen Ansicht wechseln