Das Notes Forum

Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: guerilla am 23.09.05 - 09:42:43

Titel: Grenzen überschreiten (über 64kB musst Du geh'n)
Beitrag von: guerilla am 23.09.05 - 09:42:43
Hallöchen...

Wieder einmal drückt der Schuh, aber ich weiss nicht, wie ich das hinbekommen kann:

Szenario:
Ein Wiki auf Notesbasis existiert, allerdings drückt der 64kB-Schuh: Ich habe ein RichText-Feld, im dem sehr viel HTML-Code gespeichert wird. Soweit ist das auch kein Problem.

Der HTML-Inhalt muss beim Anzeigen noch "umgerendert" werden, sprich es werden bestimmte Worte verlinkt etc. Ich kann den Inhalt auch mit einem Computed Text rendern, nur macht der eben auch nach 64k schlapp.

Ich habe jetzt versucht, den Inhalt beim Anzeigen per LS-WebQueryOpen in ein zweites RT-Feld zu schreiben, aber nicht mal das funktioniert. Auch nicht als WQ-Save. Problem ist, dass ich mit einem "externen" Agent, das RichtText-Feld auslesen kann und den Inhalt in ein anderes schreiben kann...

Gibt es noch eine andere Möglichkeit, den Inhalt entsprechend zu rendern oder vielleicht sogar zu speichern?

Anbei der Agent der den Feldinhalt transferieren soll...

Code
Sub Initialize
	
	On Error Goto errorcode
	
	Dim xS As New NotesSession
	Dim xDB As NotesDatabase
	Dim xDoc As NotesDocument
	
	Dim xBodyField As NotesRichTextItem
	Dim xBodyFieldValue As String
	
	Dim xRenderBodyField As New NotesRichTextItem(xDoc, "Render")
	
	
	Set xDB = xS.CurrentDatabase	
	Set xDoc = xS.DocumentContext
	
	Set xBodyField = xDoc.GetFirstItem("Body")
	
	xBodyFieldValue = xBodyField.GetUnformattedText
	
	Call xRenderBodyField.AppendText(xBodyFieldValue)
	
	'Call xDoc.Save(True, False)
	
	
exit_sub:
	Exit Sub
	
errorcode:
	Print Error &" , "& Cstr(Erl)
	Goto exit_sub
	
End Sub

Danke schon mal für Anregungen oder Lösungen.
Titel: Re: Grenzen überschreiten (über 64kB musst Du geh'n)
Beitrag von: guerilla am 23.09.05 - 10:00:26
Args... Ich merk grade, dass ich mich ins falsche Forum eingetragen habe... Wäre jemand so freundlich, zu verschieben? :-:
Titel: Re: Grenzen überschreiten (über 64kB musst Du geh'n)
Beitrag von: fritandr am 23.09.05 - 10:09:54
Args... Ich merk grade, dass ich mich ins falsche Forum eingetragen habe... Wäre jemand so freundlich, zu verschieben? :-:
Aber klar doch  ;)

Ist jetzt im Entwicklungsbereich.



Titel: Re: Grenzen überschreiten (über 64kB musst Du geh'n)
Beitrag von: umi am 23.09.05 - 14:10:49
Das Problem scheint, dass der AppendText nicht mehr als 64k erträgt.
Mit getunformatted Text bekommst Du den Inhalt aber ohne die Zeilenumbrüche.
Titel: Re: Grenzen überschreiten (über 64kB musst Du geh'n)
Beitrag von: guerilla am 23.09.05 - 14:19:14
Das es am AppendText liegt, glaube ich weniger. Der Agent macht leider gar nichts. Wenn ich ihn modifiziert starte, sprich nicht aus dem Kontext des Dokuments raus, kann ich die Felder lesen und kopieren. Aber grundsätzlich funktioniert der Agent... Nur halt nicht dort, wo ich ihn starten will.

Allerdings bin ich gerade dabei, das die Renderfunktionen auf LS zu portieren und den Code dann in verschiedene Felder zu splitten. Das sollte sich dann machen lassen...