Domino 9 und frühere Versionen > ND7: Entwicklung
Eingebettetes Bild in RTF in ein neues Dokument kopieren
Lloyd:
Hallo,
ich komm einfach nicht weiter. Ich habe in einer DB eine Memo-Maske eingebaut und lasse mir Mails dahinschicken. Den Inhalt des Feldes "Body" kopiere ich manuell über eine Schalftläche in ein neues Dokument. Ist in dem Body-Feld ein Bild angehangen, dann wird das RTF-Feld sauber von dokA nach dokB kopiert. Ist aber in dem Body-Feld ein importiertes Bild, dann wird dieses ignoriert und lediglich die Textpassagen von dokA nach dokB kopiert. Wie krieg ich das umgangen. Ich hab hier im Forum schon diverse Beiträge gefunden, aber keiner hat bislang gefruchtet.
Auszug aus dem Script:
Dim itemA As NotesItem
...
Set itemA = docA.GetFirstItem("Body")
Call itemA.CopyItemToDocument(docB,"Body")
...
Gruss
Lloyd
pram:
vielleicht:
dim item2 as new NotesRichTextItem(docB)
call item2.appendRtItem(item1)
call item2.compact 'vermutl unnötig
(untested)
Gruß
Roland
Lloyd:
Nee leider auch nicht.
Ich habs jetzt so probiert:
Dim rtitemA As Variant
Dim rtitemB As NotesRichTextItem
Set rtitemA = docA.GetFirstItem("Body")
Set rtitemB = New NotesRichtextItem(doc,"Body")
Call rtitemB.AppendRTItem(rtitemA)
Immer das gleiche Ergebnis. Angehängte Bilder kommen mit, importierte Bilder nicht.
Lloyd:
Hmm, ich hab noch ein wenig rumprobiert.
Ich habe mir dafür eine neue Maske erstellt und mit dem anfänglichen Script getestet, und siehe da hier geht es.
Also scheint es in meinem Script irgendeine Abhängigkeit zu geben. Dafür hole ich mal ein wenig mehr aus. Ich habe hier im Forum auch Beträge gefunden die von Problemen beim kopieren von RTF-Feldern zwischen Front-End und Backend berichten, daber nachstellen konnte ich das leider noch nicht. Das importierte Bild und alles was an Text davor steht wird abgeschnitte, alles was dahinter kommt wird kopiert.
Ich füge mal noch ein paar mehr Zeilen meines Quellcodes ein, vielleicht hat jemand noch eine Idee?
Set uidoc = ws.CurrentDocument
Set docA = uidoc.Document
Set doc = db.CreateDocument
...
Dim itemA As NotesItem
...
Set itemA = docA.GetFirstItem("Body")
Call itemA.CopyItemToDocument(doc,"Body")
...
Call doc.Save(True,False)
Call uidoc.Save(True,False)
Call uidoc.Close
Call ws.EditDocument(False,doc)
Driri:
Ist das UIDoc ein neues, noch nicht gespeichertes Dokument ?
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln