Das Notes Forum
Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: heidiweber am 04.06.08 - 15:27:25
-
Hallo
ich habe auf einem Domukemt ein RichText - Feld. Jetzt möchte ich dieses RichText Feld leeren. Das probiere ich so:
Dim ws As New NotesUIWorkspace
Dim doc As NotesDocument
Set doc = ws.CurrentDocument.Document
' Das ist ein normales Text-Feld --> dies wird geleert
doc.bemWDp_11 = ""
'Das ist das RichText - Feld
Set rtItem = doc.ReplaceItemValue("bemWDp_12 ", "")
ws.CurrentDocument.Save
Alle normalen Textfelder sind danach leer - nur das RichText Feld ist noch gefüllt. Im Richtextfeld sind auch Anhänge - liegt das vielleicht daran?
Vielen Dank
Grüße
Heidi
-
Wenn das ganze Feld in die Tonne soll:
doc.removeitem
Ich hoffe so heisst es...
-
Vielen Dank erst mal.
Ich habe das jetzt über UIDoc gemacht.
Set uiDoc = ws.CurrentDocument
Call uiDoc.FieldSetText("bemWDp_12", "")
Noch einen schönen Tag
Grüße
Heidi
-
Dann bleiben Attachments aber trotzdem erhalten, wenn mich nicht alles täuscht. Denn die landen ja im Item $FILE.
-
na klasse und wie bekomme ich dann die Attachments/Files weg? Oder wie leere ich das RichTextField korrekt?
-
André hat es doch bereits geschrieben ... Diese Methode kümmert sich auch um allfällig vorhandene Attachments.
Bernhard
-
Guten Morgen,
ich habe jetzt RemoveItem probiert. Das Problem ist, dass im Dokument der Inhalt des RichTextFeldes noch ganz normal angezeigt wird.
Wenn ich aber den Button nochmals klicke, soll zuerst das RichTextfeld in ein anderes RichTextfeld auf einem anderen Dokument kopiert werden. Da kommt aber jetzt die Fehlermeldung.
Notes Error: Elelemt des Dokuments nicht gefunden(bemWDp_12)
Also ist das RichTextFeld komplet weg. Nur es wird noch angezeigt? Und es soll ja nicht komplett weg sein, sondern nur der Inhalt soll gelöscht werden, da es noch weietr benötigt wird.
RemoveItem($FILE) kann ich auch nicht so einfach machen, da es noch weitere Attachements im Dokument geben können.
Es kann doch nicht so schwer sein, das Feld korrekt leer zu kriegen...
Dank euch vielmals
Grüße
Heidi
-
Wo wir wieder beim Thema sind: Rich Text Felder sind Böse.
Das item mit copyitemtodocument kopieren
Das alte item mit removeitem löschen ( das passiert im Backend, deswegen ist es im Frontend noch zu sehen )
Dokument speichern ( endweder jetzt, oder beim nächsten Speichern wird das Item wieder angelegt )
Ein ReOpen ( hier gibt es eine Funkton von ata (Anton Tauscher) des Dokumentes zeigt dann das leere Feld.
-
Wie im ersten Posting beschrieben, mache ich das jetzt so:
Dim ws As New NotesUIWorkspace
Dim doc As NotesDocument
Set doc = ws.CurrentDocument.Document
'RichTextFeld kopieren
Set rtItem = doc.GetFirstItem( "bemWDp_12" )
Call rtItem.CopyItemToDocument( newdoc, "bemWDp_12" )
' Das ist ein normales Text-Feld --> dies wird geleert
doc.bemWDp_11 = ""
'Das ist das RichText - Feld
doc.RemoveItem("bemWDp_12")
ws.CurrentDocument.Save
Kopieren funktioniert.
RemoveItem auch.
Es wird auch gespeichert.
Aber der Inhalt des RichTextfeldes wird noch angezeigt - auch wenn ich das Dokument schliesse und wieder öffne.
Klicke ich nochmal auf den Button, so kommt eben diese Fehlermeldung:
Notes Error: Elelemt des Dokuments nicht gefunden(bemWDp_12)
?=(((=)=)/ Hä - ich schnall das nicht
-
Ja klar, Du speicherst das Frontend.
Mach mal ein
call doc.save
Damit es im Backend gespeichert wird.
-
Hab das Backend gespeichert - geht auch nicht - es wird immer noch angezeigt.
Dann ist das File halt noch im Dokument - ist mir jetzt auch egal - Notes/IBM....
Dank euch beiden recht herzlich für eure Geduld.
Wünsche euch noch einen schönen Tag
Grüße
Heidi
-
Hast Du auch das Frontendspeichern entfernt?
Nur so gefragt?
-
Ohne Worte - ich verbeuge mich:)
Man geht das einfach...
Zuerst das Item kopieren.
Dann das RichText im Backend leeren
Dann das RichText im Frontend leeren
Dann das Backend speichern
Dann das Frontend refreshen/reload
Dann das Frontend speichern
Und siehe da....
Vielen Dank nochmal
Grüße
Heidi
-
.
-
Hallo,
a) Bitte mach für neue Fragen auch einen neuen Thread auf. Vor allem, wenn die eigene Frage nur sehr wenig Gemeinsamkeit mit dem Alt-Thread hat (Ich vermute zumindest mal, daß es hier nicht um RichText geht).
b) Mit einer einzigen Codezeile kann in den meisten Fällen nicht geholfen werden. Und falls das der komplette Code ist, empfehle ich dir dringend eine Grundlagenschulung zur Entwicklung.
Sorry, ist nicht böse gemeint. Aber Du wirst mit so einem Post bei vielen nicht unbedingt die Bereitschaft steigern, ihre Hilfe einzubringen.