Autor Thema: ComposeWithReference in Lotus Scriptsprache?  (Gelesen 3110 mal)

Offline buzi

  • Aktives Mitglied
  • ***
  • Beiträge: 171
ComposeWithReference in Lotus Scriptsprache?
« am: 12.04.16 - 12:25:26 »
Hallo zusammen,

ich möchte in einem Script zum geöffneten Dokument ein Antwortdokument erstellen. Gibt es eine Funktion in Lotus Script, die der Formel ComposeWithReference entspricht? Oder muss man "zu Fuß" das Body-Feld des Antwortdokuments mit dem Link auf das übergeordnete Dokument befüllen?

Danke und Grüße

Offline RunRevilo

  • Junior Mitglied
  • **
  • Beiträge: 51
  • Geschlecht: Männlich
Re: ComposeWithReference in Lotus Scriptsprache?
« Antwort #1 am: 12.04.16 - 15:28:29 »
Hallo,

es gibt die Methode MakeResponse in der NotesDocument Klasse.

Hier der Auszug aus der Notes Hilfe:

MakeResponse method
Makes one document a response to another document. The two documents must be in the same database.

Defined in
NotesDocument

Syntax
Call notesDocument.MakeResponse( document )

Parameters
document

A NotesDocument. The document to which notesDocument becomes a response. If you specify Nothing, this method generates an error.

Usage
You must call Save after this method if you want to save the change you have made.


Hoffe das hilft dir weiter.

Oliver

Grüße aus dem schönen Südtirol
Oliver C

Es gibt keine dummen Fragen, sondern nur dumme Antworten

Laufen ist der ideale Ausgleich zu jeglicher Arbeit, denn beim Laufen muss man nicht Denken.

Offline Thomas Schulte

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: ComposeWithReference in Lotus Scriptsprache?
« Antwort #2 am: 12.04.16 - 15:40:54 »
MakeResponse ist für diesen Fall nicht Zielführend. Es macht ein Dokument nur zum Child eines anderen Dokumentes.  Du wirst das zu Fuß machen müssen wenn du den Link im Body haben willst. Es geht allerdings auch anders.
Dazu brauchst du ein berechnetes TextFeld in deinem Basis Dokument. @documentUniqueId  und einen Platz auf deinem neuen Dokument wo du das anzeigen möchtest.
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 buzi

  • Aktives Mitglied
  • ***
  • Beiträge: 171
Re: ComposeWithReference in Lotus Scriptsprache?
« Antwort #3 am: 13.04.16 - 10:20:59 »
Danke für die Antworten! Mit Hilfe des Eintrags im Best Practice Teil dieses Forums habe ich die gewünschte Lösung hin bekommen.

At Notes Best Practices / Das Arbeiten mit Haupt- und Antwort-Dokumenten

Maßgeblich war die Ersetzung des $Ref-Feldes
Code
		Call antwortDoc.RemoveItem("$Ref")
		Call antwortDoc.MakeResponse(currentDocument)

Denn den Teil für das Body-Feld hatte ich schon:
Code
		Call antwortDoc.RemoveItem("Body") 
		Set rtitem = antwortDoc.CreateRichTextItem("Body")
		Call rtitem.AppendDocLink(currentDocument, "")

Noch eine Frage: Braucht man das Body-Feld überhaupt?

Und noch was: Zeigt man die Antwort-Dokumente in einer eingebetteten Ansicht im Hauptdokument an, so werden diese beim Erstellen mittels Formelsprache (ComposeWithReference) sofort in der Ansicht angezeigt.  Werden die Antwortdokumente per Lotus Script erzeugt, wie bei mir jetzt, so werden sie erst nach erneutem Öffnen des Hauptdokuments in der eingebetteten Ansicht angezeigt. Warum?
« Letzte Änderung: 13.04.16 - 10:23:36 von buzi »

Offline jBubbleBoy

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.290
  • Geschlecht: Männlich
Re: ComposeWithReference in Lotus Scriptsprache?
« Antwort #4 am: 13.04.16 - 17:22:19 »
Im RT-Feld befindet sich der Doc-Link und wird über die Maske angezeigt.
Das Feld brauchst du.

Dein Ansichtsproblem löst du durch ein Refresh, mir fehlt jetzt der Kontext wie ihr Dokumente erstellt/ändert. In der Regel läuft es auf ein NotesView merken im Initialize-Ereignis und ein NotesView.Refresh im Close-Ereignis hinaus.
Gruss Erik :: Freelancer :: KI-Dev, Notes, Java, Web, VBA und DomNav 2.5 / NSE 0.16 / OLI 2.0

--
Nur ein toter Bug, ist ein guter Bug!

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz