Autor Thema: AppendRTItem meldet "Missing rich text object"  (Gelesen 3521 mal)

Offline Basti07

  • Frischling
  • *
  • Beiträge: 19
AppendRTItem meldet "Missing rich text object"
« am: 03.03.11 - 16:33:32 »
Hallo zusammen,

ich verzweifle schon den ganzen Tag an der Umsetzung einer Kleinigkeit und komme auch mit Hilfe des Forums zu keiner Lösung.

Ich habe eine Maske mit einem RichtTextFeld (RTF), welches vom Anwender mit Attachments gefüllt werden kann.
Im Querysave veranlasse ich, dass der Inhalt des RTF in ein RTF eines neuen Dokuments geschrieben wird und per NewDoc.Send an eingetragene Empfänger versendet wird.

Wenn man jetzt versucht die Maske - mit gefülltem RichtTextFeld - zu speichern, erhält man bei der Zeile "Call rtitemNew.AppendRTItem( rtitemAkt )" den Fehler: Missing rich text object obwohl das RichtTextFeld mit Inhalt gefüllt ist.
Bitte gebt mir einen Tipp was ich falsch mache!

Danke
Gruß Basti

Code
Sub Querysave(Source As Notesuidocument, Continue As Variant)
	
	Dim workspace As New NotesUIWorkspace
	Dim s As New NotesSession
	Dim doc As NotesDocument	
	Dim uidoc As NotesUIDocument
	Dim db As NotesDatabase
	Dim rtitemAkt As NotesRichTextitem
	Dim rtitemNew As NotesRichTextItem
	
	Set doc = Source.Document
	Set uidoc = workspace.CurrentDocument
	Set db = s.CurrentDatabase
	Set newDoc = New NotesDocument( db )
	
	Set rtitemAkt = doc.GetFirstItem( "Anlage")
	Set rtitemNew = New NotesRichTextItem( newDoc, "Body" )
	Call rtitemNew.AppendRTItem( rtitemAkt )
	
	newDoc.Subject = source.FieldGetText("Statusaenderung_Betreff_1") 
	Call newDoc.Send( False, doc.SendTo )
	source.Close(True)
	
End Sub

Offline pram

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.170
  • Geschlecht: Männlich
    • Foconis Object Framework
Re: AppendRTItem meldet "Missing rich text object"
« Antwort #1 am: 03.03.11 - 16:50:30 »
Hallo Basti,

im gegensatz zu normalen Items kannst du auf Richtextitems nicht im Backend zugreifen, so dass die Änderungen sofort im UI sichtbar sind.

Dies geht erst im postSave oder nach einem uiDoc.refresh(true), welches aber auch einige Fallstricke mit sich bringt.

Gruß Roland
Roland Praml

IBM Certified Application Developer - Lotus Notes and Domino 8
Ich verwende das Foconis Object Framework

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: AppendRTItem meldet "Missing rich text object"
« Antwort #2 am: 03.03.11 - 16:52:44 »
RTIs sind die einzigen Item-Types, die erst nach einem expliziten Speichern im Backend zur Verfügung stehen.
Im QuerySave kann Dein Code also nicht funktionieren - die Fehlermeldung beschreibt die reale Situation.
Falsch wäre, im QuerySave jetzt ein Backend-Save durchzuführen - das Backend weiss hinsichtlich RTI in diesem Moment nichts vom Frontend.

Als Alternativen bieten sich die Events PostSave oder QueryClose an. Zu letzterem: Setze ein Item (welches sich auf ein cfd-Feld bezieht), was dem QueryClose sagt, dass real etwas zu tun ist (falls machbar).

HTH,
Bernhard

Offline Basti07

  • Frischling
  • *
  • Beiträge: 19
Re: AppendRTItem meldet "Missing rich text object"
« Antwort #3 am: 03.03.11 - 17:17:07 »
Der Tipp mit dem PostSave hat mir geholfen!

Vielen Danke euch beiden!

Offline Basti07

  • Frischling
  • *
  • Beiträge: 19
Re: AppendRTItem meldet "Missing rich text object"
« Antwort #4 am: 04.03.11 - 14:11:25 »
Jetzt muss ich mich leider doch nochmal zu Wort melden.

Wie schon gesagt, funktioniert der Mailversand mit RTI über das PostSave einwandfrei. Dennoch kommt es sporadisch vor, dass er das Attachment aus dem RTF nicht "richtig" mitverschickt.
Das Mail wird in der Inbox mit der bekannten Büroklammer und auch dem Feld $FILE angezeigt. Im geöffnetem Mail ist das Attachment aber nicht zu sehen...

Wie kann das sein?

Gruß Basti

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz