Autor Thema: appenddoclink in einem NotesUiDocument möglich ????  (Gelesen 4028 mal)

Offline Scotty67

  • Aktives Mitglied
  • ***
  • Beiträge: 146
Zunächst einmal ein herzliches Hallo an die bestehende Community. :)
Ein deutschsparchig geführtes Forum mit geballtem Content - das gefällt mir ! Hier bleib ich  :D

Vielleicht kann mir jemand bei dieser Problemstellung helfen.

Ich öffene ein Dokument aus einer Datenbank und möchte über einen Button ein neues Dokument anlegen (anderer Formulartyp)...und jetzt kommt's - ich möchte in dieses neu erzeugte Dokument den DocLink von dem zuvor-geöffeneten Dokument übernehmen und dieses Link im neuen Dokument hinterlegen - so dass  man jederzeit auf dieses "Basis-Dokument" zurückkehren kann. Ich meine eine simple Sache - aber ich bin jetzt schon total verzweifelt - kostet mich schon fast 2 Tage - ich check's einfach nicht.


Hier der Action Button Code der das neue Dokument erzeugt. Ich hab schon alles propiert puncto AppendDocLink daher erspare ich euch mein vermurkstes Coding. Also hier einfach nur die Ausgangssituation für das neue Dokument im dem der Link abgelegt werden soll. Am neuen Form ist ein RichTextField namens "DcLink" hinterlegt.

Ich bin eher Admin als Designer - tu mir einfach ein wenig schwer mit dem programmieren - aber es bleibt mir nichts erspart.. :P

Sub Click(Source As Button)
   Dim workspace As New NotesUIWorkspace
   Dim uidoc As NotesUIDocument
   Dim uinewdoc As  NotesUIDocument
   Dim doc As NotesDocument
   Set uidoc = workspace.CurrentDocument
   
   
   Call workspace.EditDocument( True )
   Set uinewdoc = workspace.ComposeDocument( "", "", "SMDoing" )
   
.....

LG/Hannes

Offline ascabg

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.697
  • Geschlecht: Männlich
Re: appenddoclink in einem NotesUiDocument möglich ????
« Antwort #1 am: 30.03.10 - 07:22:56 »
Hallo und Willkommen,

Kleine Frage.
Wo befindet sich der Button? (in einer Ansicht oder im Dokument)

Code
Dim uiws As New NotesUIWorkspace
Dim uidocCur As NotesUIDocument
Dim uidocNew As NotesUIDocument
Dim docCur As NotesDocument
Dim docNew As NotesDocument
Dim rtLink As NotesRichTextItem

Set uidocCur = uiws.CurrentDocument
Set docCur = uidocCur.Document

Set docNew = New NotesDocument(docCur.ParentDatabase)
docNew.Form = "Dein Maskenname"

Set rtLink = New NotesRichTextItem(docNew, "DcLink")
Call rtLink.AppendDocLink(docCur, "Link zur Source", "")

Set uidocNew = uiws.EditDocument(True, docNew)

Beispiel ist ohne Fehlerbehandlung und unter der Voraussetzung, dass der Button sich im Dokument bzw. in der ActionBar des aktuellen Dokumentes befindet.

Andreas

Offline Scotty67

  • Aktives Mitglied
  • ***
  • Beiträge: 146
Re: appenddoclink in einem NotesUiDocument möglich ????
« Antwort #2 am: 30.03.10 - 10:45:15 »
Hallo Andreas !

Danke fürs Willkommen !  :D
Der Action-Bar-Button wird sichtbar sobald man das Dokument öffnet.
Hab in einm Schnellverfahren deine Code in einen neuen ABB(action-bar-button) übernommen.
den docNew.Form Namen hinterlegt.

Das Dokument wird erzeugt - aber im RT-Field "DcLink" kommt nix an - kein Doclink zu sehen.
Was mache ich noch falsch ? Sind an dieses RT-Field bestimmte Anforderungen gestellt ?

LG/Hannes

Offline DerAndre

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.655
  • Geschlecht: Männlich
  • Keep cool!
Re: appenddoclink in einem NotesUiDocument möglich ????
« Antwort #3 am: 30.03.10 - 11:01:01 »
Hi Hannes.

Such bitte mal nach AppdDocLink, nimm Dir eine große Tasse Kaffee oder Tee einen Kuchen Deiner Wahl und amüsier Dich mit den Threads zum Thema RTI.
Als kleiner Tipp, such auch noch nach 'reopen'.
Um es mit Bernhards Worten zu sagen, ein Problem seit Notes 4.6
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 TRO

  • Senior Mitglied
  • ****
  • Beiträge: 296
Re: appenddoclink in einem NotesUiDocument möglich ????
« Antwort #4 am: 31.03.10 - 07:34:25 »
aus den hintersten Winkeln meines Gedächtnisses und völlig ungetestet:

In der Maske für den neuen Formulartyp ein sichtbares Text-Feld vom Typ ComputedWhenComposed einbauen. Formel dafür: @InheritedDocumentID. Die Maske muss natürlich auch das Häkchen bei "Felder übernehmen Werte ...." gesetzt haben.


hth

Thomas

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
Re: appenddoclink in einem NotesUiDocument möglich ????
« Antwort #5 am: 31.03.10 - 09:58:58 »
Richtig. Und ganz wichtig dabei ist Computed When Composed. Bei Computed kann man da wunderbare Seiteneffekte erleben. Man muss das Dokument nur zweimal speichern und zwischendurch einmal schließen.

Ein Textfeld, berechnet, mit @DocumentUniversalID auf dem zugrundeliegenden Dokument und dieses dann vererben funktioniert übrigens auch.

Lustig wird es dann wenn man sich das aus dieser Aktion resultierende Feld mal etwas genauer anschaut. Das ist dann nämlich KEIN Textfeld mehr.
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
Re: appenddoclink in einem NotesUiDocument möglich ????
« Antwort #6 am: 31.03.10 - 23:03:01 »
Sorry wenn ich jetzt hier nicht folgen kann...
Durch das berechnete TEXT-Feld soll in ein bestehendes RICHTEXT-Feld ein DocLink eingefügt werden?
Oder ändert sich das Feld selber dann in einen DocLink?

Gruß
Roland
Roland Praml

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

Offline TRO

  • Senior Mitglied
  • ****
  • Beiträge: 296
Re: appenddoclink in einem NotesUiDocument möglich ????
« Antwort #7 am: 31.03.10 - 23:23:54 »
das Text-Feld selber wird zum Doclink


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
Re: appenddoclink in einem NotesUiDocument möglich ????
« Antwort #8 am: 01.04.10 - 15:10:08 »
Genau und wird dann eine Note Ref List. Ein Zustand für den ich bis jetzt leider keinen anderen Weg gefunden habe den zu erzeugen.
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
Re: appenddoclink in einem NotesUiDocument möglich ????
« Antwort #9 am: 01.04.10 - 16:05:15 »
Interessantes Verhalten, kannte ich bisher noch nicht, allerdings kann ich dir sagen, wie man solche Felder erzeugen kann:

Dazu braucht man ein temporäres Antwortdokument von dem man sich das $REF-Feld herauskopiert:
Code
Dim tmpDoc As New NotesDocument(db)
Call tmpDoc.MakeResponse(linkToDoc)
Dim refItem As NotesItem
Set refItem = tmpDoc.getFirstItem("$REF")
Call refItem.CopyItemToDocument(ws.CurrentDocument.Document,, "TestLink")
Obiger Code erstellt ein Ref-Feld "TestLink" welches auf linkToDoc zeigt.
(allerdings nur, wenn das Dokument nicht im UI geöffnet ist)

Gruß
Roland

/edit:
Hier hätte ich noch was für den OP: http://www.qtzar.com/blogs/qtzar.nsf/d6plinks/DSLH-7NRK85
Geht aber erst ab 8.5! Neben dem Weg über die Zwischenablage ist dies die einzig (einigermaßen) saubere Möglichkeit, die ich kenne, ein RT-Feld im UI ohne Reopen zu ändern.
« Letzte Änderung: 01.04.10 - 16:09:07 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