Das Notes Forum

Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: heidiweber am 04.06.08 - 15:27:25

Titel: Rich Text Feld leeren
Beitrag 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
Titel: Re: Rich Text Feld leeren
Beitrag von: DerAndre am 04.06.08 - 15:34:24
Wenn das ganze Feld in die Tonne soll:

doc.removeitem

Ich hoffe so heisst es...

Titel: Re: Rich Text Feld leeren
Beitrag von: heidiweber am 04.06.08 - 16:13:21
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
Titel: Re: Rich Text Feld leeren
Beitrag von: Driri am 04.06.08 - 16:15:06
Dann bleiben Attachments aber trotzdem erhalten, wenn mich nicht alles täuscht. Denn die landen ja im Item $FILE.
Titel: Re: Rich Text Feld leeren
Beitrag von: heidiweber am 04.06.08 - 17:34:06
na klasse und wie bekomme ich dann die Attachments/Files weg? Oder wie leere ich das RichTextField korrekt?
Titel: Re: Rich Text Feld leeren
Beitrag von: koehlerbv am 04.06.08 - 18:56:05
André hat es doch bereits geschrieben ... Diese Methode kümmert sich auch um allfällig vorhandene Attachments.

Bernhard
Titel: Re: Rich Text Feld leeren
Beitrag von: heidiweber am 05.06.08 - 08:55:40
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
Titel: Re: Rich Text Feld leeren
Beitrag von: DerAndre am 05.06.08 - 09:03:41
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.


Titel: Re: Rich Text Feld leeren
Beitrag von: heidiweber am 05.06.08 - 09:19:32
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

Titel: Re: Rich Text Feld leeren
Beitrag von: DerAndre am 05.06.08 - 09:29:02
Ja klar, Du speicherst das Frontend.

Mach mal ein

call doc.save

Damit es im Backend gespeichert wird.
Titel: Re: Rich Text Feld leeren
Beitrag von: heidiweber am 05.06.08 - 09:51:13
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
Titel: Re: Rich Text Feld leeren
Beitrag von: DerAndre am 05.06.08 - 09:57:41
Hast Du auch das Frontendspeichern entfernt?

Nur so gefragt?
Titel: Re: Rich Text Feld leeren
Beitrag von: heidiweber am 05.06.08 - 10:27:48
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
Titel: Re: Rich Text Feld leeren
Beitrag von: Alperen15 am 27.05.10 - 10:19:30
.
Titel: Re: Rich Text Feld leeren
Beitrag von: Driri am 27.05.10 - 10:26:04
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.