Autor Thema: RichText-Feld beschreiben  (Gelesen 3462 mal)

Offline Lord_Fipsy

  • Frischling
  • *
  • Beiträge: 3
RichText-Feld beschreiben
« am: 03.03.10 - 14:05:36 »
Hallo,
mein Problem sollte eigentlich nicht allzu groß sein... aber irgendwie steh ich grad aufm Schlauch. Hoffentlich könnt ihr mir helfen.

Dies hier ist das Grundszenario und mein Problem:
Ich habe genau zwei Sachen in meiner Testmaske: ein RichText-Feld und eine Schaltfläche. Mit einen Klick auf die Schaltfläche wird etwas in das Richtext-Feld geschrieben und anschließend noch ein Doc-Link hinzugefügt.
In dem Feld sollte jetzt also beispielsweise sowas drinstehen: "xyz yxz <Link>"
Allerdings macht es das nicht. Das Feld bleibt einfach leer. Im Debugger seh ich aber, dass das Valuefeld durchaus mit dem Wert gefüllt wird. Dieser wird aber nicht angezeigt.
Warum nicht bzw. was kann ich machen damit es angezeigt wird?

Vielen Dank für die Hilfe
Philipp

Code
Sub Click(Source As Button)
	Dim workspace As New NotesUIWorkspace	
	Dim uidoc As NotesUIDocument
	Dim doc As Notesdocument	
	Dim rtitem As Variant
	
	Set uidoc = workspace.CurrentDocument	
	Set doc = uidoc.Document
	Set rtitem = doc.GetFirstItem("Test_Feld")	
	'oder etwa:
	'Set rtitem = New NotesRichTextItem( doc, "Test_Feld" )
	If rtitem.Type = RICHTEXT Then
		Call rtitem.AppendText("Feld wurde erfolgreich gefüllt")
		Call rtitem.AppendDocLink( doc, "Link zu CRM" )		
	End If	
	
        'oder (hier weiß ich aber keine möglichkeit einen Link hinzuzufügen):
	'Call uidoc.FieldAppendText("Test_Feld", "Beispieltext")
End Sub

Offline Kadlec

  • Senior Mitglied
  • ****
  • Beiträge: 489
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re: RichText-Feld beschreiben
« Antwort #1 am: 03.03.10 - 14:12:40 »
Wenn das Dein ganzer Code ist fehlt das speichern.

Boris

Offline DerAndre

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.655
  • Geschlecht: Männlich
  • Keep cool!
Re: RichText-Feld beschreiben
« Antwort #2 am: 03.03.10 - 14:22:22 »
Such mal nach re-open.

Richtextfelder sind fies gemein und überhaupt
André

Elterninitiative diabetischer Kinder und Jugendlicher e.V.
-----------------------------------------------------------------------------
Fliegen ist die Kunst auf den Boden zu Fallen, aber daneben.
-----------------------------------------------------------------------------
Etwas mehr Hardware dazu zu kaufen ist viel billiger als
Software besser zu machen. ( Niklaus Wirth )

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: RichText-Feld beschreiben
« Antwort #3 am: 03.03.10 - 14:22:52 »
Da fehlt nicht nur das Speichern, Boris.

Es gibt viele, viele Beiträge hierzu. Hier nur ein Beispiel.

Bernhard

Offline Lord_Fipsy

  • Frischling
  • *
  • Beiträge: 3
Re: RichText-Feld beschreiben
« Antwort #4 am: 03.03.10 - 14:44:29 »
Wenn das Dein ganzer Code ist fehlt das speichern.

Boris

mmh eigentlich soll das Dokument noch nicht gespeichert, sondern nur das Textfeld richtig angezeigt werden. Später soll das RT-Feld benutzt werden um Kundennamen und den passenden Link zum CRM-System anzeigen zu lassen. Da ist ein Speichern nicht wirklich praktisch.

Oder speicher ich nicht das Dokument? Das Backend/Frontend verwirrt mich grade ein wenig...
Sorry arbeite noch nicht so lang mit Notes.

Philipp

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: RichText-Feld beschreiben
« Antwort #5 am: 03.03.10 - 14:53:27 »
Setze den Link doch erst beim Speichern ein, dann umgehst Du den ganzen Stress bzgl. des Widerspruchs "RTI aktualisieren vs. Nicht-zwangsweise-Speichern".

Bernhard

Offline m3

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.102
  • Geschlecht: Männlich
  • Non ex transverso sed deorsum!
    • leyrers online pamphlet
Re: RichText-Feld beschreiben
« Antwort #6 am: 03.03.10 - 14:55:13 »
Aus der Designer-Help, Kapitel "Refresh method":
Zitat
Syntax
Call notesUIDocument.Refresh( [ IncludeRichTextItems ] )
...
The parameter is useful when you use Document and want to be sure the back-end document contains the most current front-end data including rich text. No method exists to get rich text changes from the back-end document into the front-end document. The user must close and reopen the document.

Und dem Kapitel "Writing in rich text items in LotusScript classes":
Zitat
Updates to rich text items accessed through NotesUIDocument are not immediately incorporated into the NotesUIDocument object. You must close and open the document to see the updates.
HTH
m³ aka. Martin -- leyrers online pamphlet | LEYON - All things Lotus (IBM Collaborations Solutions)

All programs evolve until they can send email.
Except Microsoft Exchange.
    - Memorable Quotes from Alt.Sysadmin.Recovery

"Lotus Notes ist wie ein Badezimmer, geht ohne Kacheln, aber nicht so gut." -- Peter Klett

"If there isn't at least a handful of solutions for any given problem, it isn't IBM"™ - @notessensai

Offline Lord_Fipsy

  • Frischling
  • *
  • Beiträge: 3
Re: RichText-Feld beschreiben
« Antwort #7 am: 03.03.10 - 15:19:22 »
Danke für die schnellen Antworten.
Die Hinweise hab ich irgendwie überlesen.

Den Link beim Speichern setzen ist leider auch keine Alternative. Muss das ganze Konzept nochmal ändern und gründlich überarbeiten.
Trotzdem danke schön.

Offline pram

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.170
  • Geschlecht: Männlich
    • Foconis Object Framework
Re: RichText-Feld beschreiben
« Antwort #8 am: 03.03.10 - 18:09:35 »
Aus der Designer-Help, Kapitel "Refresh method":
Zitat
Syntax
Call notesUIDocument.Refresh( [ IncludeRichTextItems ] )
...
The parameter is useful when you use Document and want to be sure the back-end document contains the most current front-end data including rich text. No method exists to get rich text changes from the back-end document into the front-end document. The user must close and reopen the document.
Der Vollständigkeit: Dies ist nicht ganz richtig.
http://www.qtzar.com/blogs/qtzar.nsf/d6plinks/DSLH-7NRK85
(Als weiteren Würgaround kenn ich noch den Weg über Dialogbox + Zwischenablage)

Phillip, mit oben genannter Funktion sollte sich das Problem (zumindest unter 8.5) lösen lassen.
Allerdings ist es immer riskant, undokumentierte Funktionen zu verwenden.

Gruß
Roland

/edit
seh grad dass wir hier im 6er Forum sind...
« Letzte Änderung: 04.03.10 - 09:17:11 von pram »
Roland Praml

IBM Certified Application Developer - Lotus Notes and Domino 8
Ich verwende das Foconis Object Framework

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz