Das Notes Forum
Domino 9 und frühere Versionen => ND8: Entwicklung => Thema gestartet von: v_haderer am 29.10.12 - 13:59:08
-
Hallo Zusammen!
Ich möchte gerne an einer definierten Stelle in einem RTF (via Platzhalter) den Inhalt eines Dokumentes (tmpDoc) einfügen.
Prinzipiell funktioniert folgender Befehl ja auch -> Call tmpdoc.renderToRTItem(RTitem) jedoch werden die Objekte des Dokuments tmpdoc immer am Ende meines RTFs eingefügt.
Nun versuche ich schon einige Zeit mich mit NotesRichTextNavigator bzw NotesRichTextRange hinzutricksen...leider ohne Erfolg >:( ->
platzhalter = ("[[" & DesElem & "]]")
Set rtnav = rtitem.CreateNavigator
rc = rtnav.FindFirstString (platzhalter)
If rc Then
Set rtrange = rtitem.CreateRange
Call rtrange.SetBegin(rtnav)
Call rtrange.SetEnd(rtnav)
Call rtnav.SetPosition (rtrange)
Call rtitem.BeginInsert (rtrange, False)
rtitem.AddNewline 1
Call tmpdoc.renderToRTItem(RTitem)
rtitem.AddNewline 1
Call rtitem.EndInsert
Call rtitem.Update
End If
Fehlermeldung rednerToRTItem 4507: First finish insert!
Wenn ich den Befehl nach dem EndInsert ausführe,...werden meine Objekte wieder am Ende des RTFs eingefügt und ich eigentlich nix erreicht.
Könnte mir bitte irgendjemand sagen wo genau ich meinen Denkfehler hab bzw wie ich "mich" im RTF richtig positionieren kann damit renderToRTItem funktioniert?! ???
vielen herzlichen Dank
Viktor
-
RenderToRTItem GEHT NICHT an einer bestimmten Stelle. Das zu erreichen, was Du willst, geht über verschiedene Wege, aber immer mit recht hohem Aufwand.
Eine Möglichkeit ist der DXL- Export, eine andere die Benutzung der API- Funktionen, wieder eine andere die Verwendung eines Temp- Dokumentes, das man für Nanosekunden im Frontend zeigt und per Zwischenablage befüllt (copy & paste), um es dann sofort wieder zu schliessen. Und noch eine wäre, erst das Zeug VOR der Textstelle in ein neues Feld zu rendern, dann Dein renderToRTItem und dann den Rest anhängen.
Wie gesagt: Alles (leider) high sophisticated Zeug...