Autor Thema: Mehrere Dokumenten Links erzeugen  (Gelesen 1597 mal)

Offline tfrenz

  • Aktives Mitglied
  • ***
  • Beiträge: 243
  • Geschlecht: Männlich
Mehrere Dokumenten Links erzeugen
« am: 10.08.16 - 16:13:15 »
Hallo, ich will in ein neues Dokument mehrere Dokumenten Links kopieren, und zwar über einen Button.
DIe Auswahl der Dokumte mache im über
    ant = ws.Prompt(7, "Auswahl Systeme", "Für welche Systeme soll die Dokumentation gelten?", arrSystemNamen, arrValues)
Wobei in arrSystemNamen die aktuellen Systemnamen sind, und in arrValues alle verfügbaren Systemnamen.
Dann wird per For-Schleife alle ant (= gewählten System) durchlaufen, und mit
   Set DocCol = vw.Getalldocumentsbykey(strSystemName, True)
   Set Doc = DocCol.Getfirstdocument()
Das Dokument geholt.
Nun soll mit
   Call rtSystemLink.Appenddoclink(Doc, "System: " + arrSystemNamen(x))
der Dokumenten Link hinzugefügt werden.
Im UIDoc ist aber das RichTextFeld leer.
Habt ihr ne Lösung?

Danke
Thomas
Gruß
Thomas

Offline umi

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.062
  • Geschlecht: Männlich
  • one notes to rule'em all, one notes to find'em....
    • Belsoft AG
Re: Mehrere Dokumenten Links erzeugen
« Antwort #1 am: 10.08.16 - 16:27:53 »
Moin

a) Warum verwendest Du Prompt und nicht PickListCollections ?

b) Das hinzufügen wird wohl nur über das Backend funktionieren. Schon mal ein NotesUiDocument.reload() probiert?
Gruss

Urs

<:~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Jegliche Schreibfehler sind unpeabischigt
http://www.belsoft.ch
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~:>

Offline Gutierrez

  • Aktives Mitglied
  • ***
  • Beiträge: 112
Re: Mehrere Dokumenten Links erzeugen
« Antwort #2 am: 18.08.16 - 11:19:14 »
Moin tfrenz,

ich erledige Manipulationen eines RT-Felds immer mit der _undokumentierten_ Funktion notesUIDocument.ImportItem(notesDocument, fieldName$).

Ich hab zwei Varianten in meinem Code gefunden:

Einmal kannst du ein temp. Dokument mit einem RT-Feld erzeugen, dass du dann im Backend manipulierst und speicherst(!). Anschließend setzt du den Cursor in deinem ws.CurrentDocument in das RT-Feld und benutzt o.g. Funktion.
Anschließend solltest du das temp. Dokument wieder löschen.

Ist nicht so toll, da der Benutzer Dokumente erstellen und löschen müssen darf. Ebenfalls musst du ggf. das Dokument sperren, wenn für die Datenbank aktiviert.

Zweite Methode, die ich gefunden habe ist, du erzeugst in dem ws.CurrentDocument.Document (also dem aktuellen Backend-Dokument) ein temp. RT-Item, das du dann manipulierst und mit der o.g. Funktion in ein anderes RT-Feld über das Frontend-Dokument einfügst.

Die o.g. Funktion wird übrigens in der Standard-Mail-Schablone im Bereich der Signaturen verwendet (ob das in R9 immer noch so ist - weiß ich gerade nicht).

Beste Grüße
« Letzte Änderung: 18.08.16 - 11:21:36 von Gutierrez »

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz