Autor Thema: Mustertext (RichText) aus Vorlage in aktuelles Dokument kopieren  (Gelesen 3236 mal)

Offline Keydins

  • Aktives Mitglied
  • ***
  • Beiträge: 163
  • Geschlecht: Männlich
Hallo zusammen,

ich hab ein kleines Problem mit einem Schalter, der mir aus einem auswählbaren Vorlagendokument den Inhalt eines RichText-Feldes in mein aktuell geöffnetes Dokument (neu, nicht gespeichert) kopieren soll. Leider bin ich kein Script-Profi und sehe den vermutlich offensichtlichen Irrtum nicht. :)


Ich habe es mit folgendem Code versucht:

Code
Sub Click(Source As Button)
	
	Dim session As New NotesSession
	Dim workspace As New NotesUIWorkspace
	Dim db As NotesDatabase
	
	Dim doctext As NotesDocument 'Quelle des Richtextfelds
	Dim uidoc As NotesUIDocument
	Dim docantwort As NotesDocument
	
	Dim view As NotesView
	
	Dim rtitem_Source As NotesRichTextItem
	Dim rtitem As NotesRichTextItem
	
	Dim pickView As String
	Dim picklist As Variant
	Dim messagelist As String
	
	Set db = session.CurrentDatabase
	Set view = db.GetView( "Textblöcke" )
	
	pickView = "Textblöcke"
	
	Set uidoc = workspace.CurrentDocument
	Set docantwort = uidoc.Document
	
	
	picklist = workspace.PickListStrings( _
	PICKLIST_CUSTOM, _
	False, _
	db.Server, _
	db.FilePath, _
	pickView, _
	"Mustertext wählen", _
	"Bitte den gewünschten Mustertext auswählen", _
	4) 
	
	Forall plist In picklist
		messagelist = messagelist & plist & Chr(10)
	End Forall
	
	Set doctext = view.GetDocumentByKey( Trim(messagelist) )
	Set rtitem_Source = doctext.GetFirstItem( "TB_RTBody" )
	
	'Set rtitem = rtitem_Source.CopyItemToDocument( docantwort, "TB_Body")
	
	Call docantwort.CopyItem( rtitem_Source, "TB_Body" )
	
	Call uidoc.Refresh
	Call uidoc.Save
	Call uidoc.Reload
	
End Sub

Leider bleibt mein Anzeigefeld für den hineinkopierten Mustertext leer, obwohl das Script ohne Fehlermeldung durchläuft und ich im Debuger auch sehe, dass den beiden rtItems die im Mustertext hinterlegten Inhalte zugewiesen werden.

Ich mache also was falsch und wäre für einen Schubs in die richtige Richtung dankbar.
Gruß Dirk

Aktuelle Notesumgebung
~800 BasicClients 9.0.1 FP9 SHF55
  10 FullClients 9.0.1 FP7 SHF143
    7 DominoServer 9.0.1 FP9 HF 139 / 64 Bit

klaussal

  • Gast
Nimm einfach die DB "PasteInformation" (mal nach suchen) und gut ist.


Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Oder Schubs in die richtige Richtung:
- Vorlagendokument öffnen (EditMode!)
- GotoField
- SelectAll
- Copy
- Vorlagendokument schliessen
- Fokus ist jetzt wieder auf dem Zieldokument
- GotoField
- Paste

Wenn man keinen 486-25SX hat, dann sieht man nicht mal ein flackern.

HTH,
Bernhard

Offline Keydins

  • Aktives Mitglied
  • ***
  • Beiträge: 163
  • Geschlecht: Männlich
Ok, danke für die Tips. Ich setze das dann erstmal klassisch per Formelsprache um.


Nur so aus Interesse: Läßt sich die gewünschte Funktionalität per LS generell nur schwierig umsetzen?

In der Designerhilfe sind einige Beispiele zum Kopieren von RTItems aufgeführt, wobei dort das neue Dokument meist direkt über LS erzeugt wird, wärend es bei mir schon im Client geöffnet ist. Von daher liegt mein Problem wohl bei der Interaktion Frontend <-> Backend.
Gruß Dirk

Aktuelle Notesumgebung
~800 BasicClients 9.0.1 FP9 SHF55
  10 FullClients 9.0.1 FP7 SHF143
    7 DominoServer 9.0.1 FP9 HF 139 / 64 Bit

Offline Thomas Schulte

  • @Notes Preisträger
  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Der Richtext ist ein seltsam Ding ...

Der möchte nämlich wenn er im Frontend erscheinen soll und vorher kopiert wurde gerne das das Dokument in dem er Erscheinen soll erst einmal komplett von der Bildfläche verschwindet. Also uidoc.Close und dann wieder öffnen.
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

Offline pram

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.170
  • Geschlecht: Männlich
    • Foconis Object Framework
Es gibt noch eine interessante (wenn auch undokumentierte!) Funktion dafür:
uidoc.importitem(tmpDoc,tmpRTField)
siehe: http://www.qtzar.com/blogs/qtzar.nsf/d6plinks/DSLH-7NRK85

Verwendung auf eigene Gefahr  ;D
Gruß
Roland
Roland Praml

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

Offline T-LO

  • Frischling
  • *
  • Beiträge: 9
Ich habe auch das Problem mit dem Mustertext und Bernhards Lösung umgesetzt. Das funktioniert auch sehr gut, außer bei Links im Mustertext. Werden die nach dem Einfügen angeklickt, dann stürzt der Client ab (Null Handle).  :(

Hat da jemand eine Lösung für?

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz