Autor Thema: Problem mit FindAndReplace in RT-Feld  (Gelesen 1995 mal)

Offline TheHessian

  • Frischling
  • *
  • Beiträge: 13
  • Geschlecht: Männlich
Problem mit FindAndReplace in RT-Feld
« am: 14.07.09 - 14:29:53 »
Hallo Zusammen!

Ich habe ein Problem mit einem RT-Feld und der Funktion NotesRichTextRange.FindAndReplace.

Kurz zum Hintergrund:
Ich habe eine NotesDocument mit 2 RT-Feldern. In diesen RT-Feldern habe ich Text mit Platzhaltern. Die Platzhalter sehen folgendermassen aus: [#OBJ#OBJITEM#]. Nun möchte ich diese Platzhalter mit Werten aus Objekten ersetzen.

Zunächst suche ich die Platzhalter im RT-Feld:

Code
Function GetPlaceHolder(rtItem As NotesRichTextItem) As String
	Dim rtNav As NotesRichTextNavigator
	Dim rtRange As NotesRichTextRange
	Dim sRetVal As String
	
	Set rtNav = rtItem.CreateNavigator
	Set rtRange = rtItem.CreateRange
	sRetVal = ""
	
	If rtNav.FindFirstString("[#") Then
		Call rtRange.SetBegin(rtNav)
		If (rtNav.FindFirstString("#]")) Then
			Call rtRange.SetEnd(rtNav)
			sRetVal = "[#"+ Mid(rtRange.TextRun,3) + "#]" 
		End If
	End If
	
	Set rtRange = Nothing
	Set rtNav = Nothing
	GetPlaceHolder = sRetVal
	
End Function

Hier ist dann auch schon das Problem. Die Funktion läuft tadellos in einem NotesClient 6.x. In Notes Client 8.0 läuft nix mehr richtig.

Der Inhalt des einen RT-Feld ist:

Versicherung
Company Name
Abteilung: [#CPY#CPYNAME1#]
Postfach xxxx
9001 St. Gallen
Tel.Nr. 0041 71 228 xx xx
Fax-Nr. 0041 71 228 xx xx
xxx@company.net

Normalerweise wäre der Result der Funktion:[#CPY#CPYNAME1#]

SetBegin(rtNav) verändert allerdings das rtItem und schneidet den Rest des Felds weg. Das dürfte nicht passieren.

Kennt jemand das Problem und kann mir dabei helfen?

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz