Autor Thema: RichText mehrere Doclinks anhängen  (Gelesen 1962 mal)

Offline Heiko

  • Frischling
  • *
  • Beiträge: 24
  • Geschlecht: Männlich
  • I love YaBB 1G - SP1!
RichText mehrere Doclinks anhängen
« am: 01.09.10 - 14:24:54 »
Hallo zusammen,

ich möchte in ein RichText-Feld mehrere Doclinks einfügen.
Hab mir das wie folgt gedacht (Codeschnipsel):

Code
If rtitem Is Nothing Then
   Set rtItem = New NotesRichtextitem(backdoc, "ADUserLnk" )
Else
   Set rtitem = backdoc.GetFirstItem("ADUserLnk")	
End If		
Call rtitem.AppendDocLink( doc, db.title)

Der Docklink wird jedoch jedes mal überschrieben, wenn der Button das zweite mal gedrückt wird. Sprich, mein Else-Zweig zieht gar nicht.

Freue mich über jede Hilfe.

Heiko
Viele Grüße
Heiko

Offline Peter Klett

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.713
  • Geschlecht: Männlich
Re: RichText mehrere Doclinks anhängen
« Antwort #1 am: 01.09.10 - 14:50:25 »
Hast Du mal versucht, rtitem global zu definieren?

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: RichText mehrere Doclinks anhängen
« Antwort #2 am: 01.09.10 - 15:05:56 »
Das globale Definieren wird nichts nützen. Ich vermute, dass das ganze im Frontend passiert und nach dem DocLink-Anhängen nicht gespeichert wird. Damit bleibt aus dem Frontend das RTI leer, so dass immer der erste Zweig durchlaufen wird.

Das nur so als Tipp ins Blaue. Heiko kann dazu mehr sagen.

Bernhard

Offline Peter Klett

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.713
  • Geschlecht: Männlich
Re: RichText mehrere Doclinks anhängen
« Antwort #3 am: 01.09.10 - 15:14:43 »
naja, uidoc und backdoc müssten dann sicher auch global definiert werden, damit die nicht mit Betätigen der Schaltfläche neu initialisiert werden.

Da Heiko schreibt, dass der Link immer wieder überschrieben wird, scheint es zumindest beim ersten Klick zu funktionieren, dass das Richtextitem im Frontend (also sichtbar) verändert wird.

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: RichText mehrere Doclinks anhängen
« Antwort #4 am: 01.09.10 - 15:16:36 »
Ich sag ja: Nicht verzagen, Heiko fragen!  ;D

Hilsen til Norge,
Bernhard


Offline Heiko

  • Frischling
  • *
  • Beiträge: 24
  • Geschlecht: Männlich
  • I love YaBB 1G - SP1!
Re: RichText mehrere Doclinks anhängen
« Antwort #5 am: 01.09.10 - 16:58:16 »
@Bernhard
Richtig vermutet, der Button ist natürlich im Frontend  :)

Speichern und wieder öffnen mache ich. Muss ich ja, damit die Geschichte überhaupt funktioniert.

@Peter
Das globale Definieren hat leider nicht geholfen.
Wenn ich jetzt den Code poste und mich somit als "Cosmosianer" oute muss ich natürlich die Gelegenheit nutzen, und dem "Erfinder ein herzliches Hallo" sagen ;) wie der Zufall so spielt...

Code
Sub Click(Source As Button)
	Dim ws As New NotesUIWorkspace
	Dim uidoc As NotesUIDocument   
	Set uidoc = ws.currentdocument
	Dim s As New NotesSession
	Dim db As NotesDatabase
	Dim col As NotesDocumentCollection
	Dim doc As NotesDocument
	Dim backdoc As NotesDocument
	Dim rtitem As NotesRichTextItem
	Set db = s.CurrentDatabase
	Set backdoc = uidoc.document
	Set col = ws.PickListCollection(1,True,"YK000700S700","Cosmos\\Auftrag\\personal.nsf","0. UVB\alle\nach Dokumentart","Personalaufträge","Wählen Sie ein Dokument")
	
	If col.Count = 0 Then
		Msgbox ("Sie haben kein Dokument ausgewählt")
		Exit Sub
	End If
	
	Set doc = col.getfirstdocument
	
	If rtitem Is Nothing Then
		Set rtItem = New NotesRichtextitem(backdoc, "vb_ADUserLnk_3" )
	Else
		Set rtitem = backdoc.GetFirstItem("vb_ADUserLnk_1")	
	End If		
	
	Call rtitem.AppendDocLink( doc, db.title)
	
	REM Das aktuelle Dokument schließen und wieder öffnen...
	Call ReOpen(backdoc)
	
End Sub


Heiko
Viele Grüße
Heiko

Offline Peter Klett

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.713
  • Geschlecht: Männlich
Re: RichText mehrere Doclinks anhängen
« Antwort #6 am: 01.09.10 - 20:01:37 »
ja, die Welt ist klein ...

M.E. fehlt das Initialisieren des rtitem

Set rtitem = backdoc.GetFirstItem("vb_ADUserLnk_1")   
If rtitem Is Nothing Then
   Set rtItem = New NotesRichtextitem(backdoc, "vb_ADUserLnk_3" ) (-> wieso 3? Müsste 1 sein!)
End If




Offline Heiko

  • Frischling
  • *
  • Beiträge: 24
  • Geschlecht: Männlich
  • I love YaBB 1G - SP1!
Re: RichText mehrere Doclinks anhängen
« Antwort #7 am: 02.09.10 - 09:47:01 »
That's it!

   Set rtItem = New NotesRichtextitem(backdoc, "vb_ADUserLnk_3" ) (-> wieso 3? Müsste 1 sein)
natürlich _1 - kam vom vielen hin und her kopieren.

Vielen Dank und schönen Tag
Heiko
Viele Grüße
Heiko

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz