Das Notes Forum
Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: BEamer am 19.12.03 - 09:38:57
-
Hallo Forum,
ich habe folgendes Problem:
Ein Button soll mir aus einen anderen Dokument ein paar Inforamtionen holen. So weit so gut. Nun aber das Problem. In dem Document exestiert ein Richtextfeld, welches mit diesen Daten und einen DokLink auf das eben ausgelesene Dokument gefüllt werden soll.
Laut der NotesHilfe auch kein Problem. Mach ich es also und siehe da, das Feld zeigt nichts an. Nach genauen schauen mit dem Debugger, sehe ich auch nur, dass es eigentlich laufen sollte.
Ich schaue mir die Inhalte des Dokumentes an (ALT+Enter) und sehe 2Richtextfelder. Eines enthält Daten, das andere nicht. Ok, denke ich mir, speichere mal ab und schaue dann nocheinmal nach, aber das Ergebnis ist ein leeres Feld und das Zweite ist auch nicht mehr da.
Kann mir vielleicht hierzu jemand helfen???
Mit freundlichen Gruss
Björn
-
Du willst also in ein UIDoc Daten aus einem anderen Doc holen und Doclink auf doc2 in UIDoc einfügen? Oder aus der Ansicht heraus - ach neee, ist ja ein Buhtong im Spiel.
Vielleicht magst Du ja mal den Code posten.. :)
-
hier ein kleiner Ausschnitt, vielleicht hilft es ja:
Dim UIWorkspace As New NotesUIWorkspace
Dim UIDoc As NotesUIDocument
Dim rtitem As NotesRichTextItem
Set UIDoc = UIWorkspace.CurrentDocument
Set doc = UID.Document
Set rtitem = doc.GetFirstItem ( "Produkte" )
'... holen der Informationen...
'...speichern der Informationen in das RTFeld
If rtitem.Type = RICHTEXT Then
Call rtitem.AppendText _
( "Book is 64 pages, full color." )
' Call newrtitem.Update
End If
Des weiteren, in einer Maske ist ein Feld (dieses RTF) und daneben ein Button, welcher in dieses Feld Informationen eintragen soll. Wie gesagt, die Informationen kommen ja auch, sie werden nur nicht eingetragen. Wenn das mit den DockLink in einen normalen Feld ginge, wäre das kein Problem.
Grüsse Björn
-
Hhhm, ich hatte das auch schon einmal ähnlich probiert. Die Notes-Hilfe sagt ja auch aus, daß Änderungen von RTF in einem UIDoc nicht sofort übernommen werden, sondern erst nach Speichern des uidoc.document und Schließen plus erneutem Öffnen des uidoc. Du Darst natürlich das Backend-Doc nicht mit dem uidoc wieder überschreiben. ("Willst Du speichern???" => NEIN) oder saveoptions = "0"
Das funktioniert dann auch:
Sub Click(Source As Button)
Dim UIWorkspace As New NotesUIWorkspace
Dim UIDoc As NotesUIDocument
Dim rtitem As NotesRichTextItem
Set UIDoc = UIWorkspace.CurrentDocument
Set doc = UIDoc.Document
Set rtitem = doc.GetFirstItem ( "Produkte" )
'... holen der Informationen...
'...speichern der Informationen in das RTFeld
If rtitem.Type = RICHTEXT Then
Call rtitem.AppendText _
( "Book is 64 pages, full color." )
End If
Call rtitem.update
Call doc.save(True,False)
End Sub
Grüße
René
-
Hallo BEamer!
>>Set UIDoc = UIWorkspace.CurrentDocument
>>Set doc = UID.Document
Sollte die 2. Zeile nicht:
Set doc = UIDoc.Document
heissen?
Mit "Option Declare" oder "Option Explizit" wäre das nicht passiert.
Gruss
Manfred
-
Mein Entkäferer hat's gemerkt , aber auf jeden Fall kann ich mich Manfred nur anschließen :)
-
heist natürlich UIDoc...war nur ein Schreibfehler von mir.
Gruss Björn
-
hm ... jetzt funktioniert es, aber gibt es denn keine Möglichkeit, dass Item dazu bewegen, den Inhalt auch schon vorher anzuzeigen?
Gruss Björn
-
Ui, Entkäferer, da hast Du wieder mal was, das Du im Fachwörterbuch hättest angeben können .... ;D
Falls Dus noch nicht gesehen hast:
AtNotes Fachwörterbuch (http://www.atnotes.de/index.php?board=12;action=display;threadid=12535)
Weitere Vorschläge sind dort jederzeit willkommen.
-
Habs übrigens gelöst, danke für den Tip mit den SaveOptions. Daran hats dann auch gelegen. Es wurde halt alles überschrieben.
Gruss Björn
-
@semaphoros ;D Hab es schon mal gesichtet - Danke für den Tip
@BEamer: machst du noch den LDNO (linken Daumen nach oben) ;)