Im Groben funktioniert das jetzt ( die zu ersetzende Information beschränkt sich auf kurzen, formatierten Text )
Ich mache einen Export des RTFeldes, in das ich den Inhalt eines anderen RTFeldes einfügen möchte; die Einfügemarke steht im ersten Feld als TAG <<RT:RTONE>>.
Das Ergebnis des Exports streame ich in ein temporäres RichTextFeld.
Jetzt exportiere ich das Document, dessen RTFeld eingefügt werden soll mit dem DXLExporter.
Nun kann ich in dem Export nach dem Feld suchen, das ich brauche ( hier RTONE ) Die Position ermittele ich mit
SearchItem = "<item name='RTONE'><richtext>"
StartTagAt = Instr(buffer$, SearchItem ) + Len ( SearchItem )
StartTagAt enthält nun die Position des ersten Zeichens hinter SearchItem.
EndTagAt = Instr(buffer$, "</richtext></item>" )
length = ( EndTagAt - StartTagAt )
ermittele ich analog.
Mittels Msgbox Mid$ ( buffer$ , StartTagAt , Length ) erhalte ich den Inhalt des RTONE mit allen Formatierungen.
Ein FindAndReplace im temporären RTFeld fügt den Inhalt von buffer$ anstelle des Tags <<RT:RTONE>> ein.
Wie gesagt, das funktioniert mit einfachen Texten; bei Attachments und eingefügten Screenshots ist das nicht ganz so einfach ( aber auch nicht unmöglich )
Bei Screenshots z.B wächst die Größe von buffer$ enorm an. Ebenso bei Attachments. Da kommt man mit einfachen Stringoperationen nicht mehr zum Ziel.
Zudem wird bei einem Attachment auch noch ein weiterer Node geschrieben:
<item name='$FILE' summary='true' sign='true' seal='true'><object><file hosttype='msdos'
compression='none' flags='storedindoc' name='binary.gif' desiredcompression='huffman'>
<created><datetime dst='true'>19960820T192900,00+02</datetime></created>
<modified><datetime dst='true'>19960820T192900,00+02</datetime></modified><filedata
>
R0lGODdhEAAQAIcAAAAAAIAAAACAAICAAAAAgIAAgACAgMDAwMDcwKbK8AD/AP//AAAA//8A/wD/
/////wAAAIAAAACAAICAAAAAgIAAgACAgMDAwICAgP8AAAD/AP//AAAA//8A/wD//////wAAAIAA
AACAAICAAAAAgIAAgACAgMDAwICAgP8AAAD/AP//AAAA//8A/wD//////wAAAIAAAACAAICAAAAA
gIAAgACAgMDAwICAgP8AAAD/AP//AAAA//8A/wD//////wAAAIAAAACAAICAAAAAgIAAgACAgMDA
wICAgP8AAAD/AP//AAAA//8A/wD//////wAAAIAAAACAAICAAAAAgIAAgACAgMDAwICAgP8AAAD/
AP//AAAA//8A/wD//////wAAAIAAAACAAICAAAAAgIAAgACAgMDAwICAgP8AAAD/AP//AAAA//8A
/wD//////wAAAIAAAACAAICAAAAAgIAAgACAgMDAwICAgP8AAAD/AP//AAAA//8A/wD//////wAA
AIAAAACAAICAAAAAgIAAgACAgMDAwICAgP8AAAD/AP//AAAA//8A/wD//////wAAAIAAAACAAICA
AAAAgIAAgACAgMDAwICAgP8AAAD/AP//AAAA//8A/wD//////wAAAIAAAACAAICAAAAAgIAAgACA
gMDAwICAgP8AAAD/AP//AAAA//8A/wD//////wAAAIAAAACAAICAAAAAgIAAgACAgMDAwICAgP8A
AAD/AP//AAAA//8A/wD//////wAAAIAAAACAAICAAAAAgIAAgACAgMDAwICAgP8AAAD/AP//AAAA
//8A/wD//////wAAAIAAAACAAICAAAAAgIAAgACAgMDAwICAgP8AAAD/AP//AAAA//8A/wD/////
/wAAAIAAAACAAICAAAAAgIAAgACAgMDAwICAgP8AAAD/AP//AAAA//8A/wD//////wAAAIAAAACA
AICAAAAAgIAAgP/78KCgpICAgP8AAAD/AP//AAAA//8A/wD//////ywAAAAAEAAQAAAIbgANCBxI
sKDBgwgTGhzAsCFDhAMeSJS44OFCig8WPIg44CLGigBCFhygseSBBScBYCAYcQEBAhkJoFTJ0qVE
AgdwLqA5MKJOmTIP8BRIMihOnUMNtHx5MmhSkiejoty5smfIq1iTGsDAtavXlQEBADs=
</filedata></file></object></item>
Den muss man auch noch in das Zieldocument einfügen. Hier reicht es aber aus, diese Informationen an das Ende des DXLExports zu schreiben, also vor dem </document> einzufügen.
Abschließend kann man aber sagen, daß die Aufgabenstellung mit Notes Boardmitteln zu lösen ist.