Domino 9 und frühere Versionen > ND6: Entwicklung
Doclink in UIDoc einfügen
ArcTan:
Hallo,
ich suche nach einer Möglichkeit, über einen Action Button in einer Ansicht ein neues Dokument zu erzeugen, in dessen Body-Feld (ist ein RTF-Feld) ein Doclink auf das Dokument hinterlegt wird, das beim Anklicken des Action-Buttons markiert war. Habe dazu folgenden Scriptcode probiert:
Sub Click(Source As Button)
Dim session As New NotesSession
Dim workspace As New NotesUIWorkspace
Dim uidoc As NotesUIDocument
Dim db As NotesDatabase
Dim collection As NotesDocumentCollection
Dim doc As NotesDocument
Dim rtitem As notesrichtextitem
Set db = session.CurrentDatabase
Set collection = db.UnprocessedDocuments
Set doc = collection.GetFirstDocument()
Set uidoc= workspace.ComposeDocument( "", "", "eintrag" )
Set rtitem = New NotesRichTextItem( uidoc.Document, "body" )
Call rtitem.AppendDocLink( doc, "Link auf Vorgänger" )
End Sub
Ein neues Dokument wird angelegt, allerdings (es wäre zu schön gewesen...) erscheint im Feld "body" nicht der Doclink auf "doc".
Gehts das überhaupt, was ich vorhabe? Und wenn ja, wäre dankbar für eine Idee, wie.
Gruß
ArcTan
koehlerbv:
Du musst das Dokument erst im Backend anlegen, dort auch das RTI und dort den DocLink generieren - und das Dokument dann speichern. Dann kannst Du es für das FrontEnd öffnen.
Bernhard
ArcTan:
Hi Bernhard,
danke für Deinen Tipp. So funktioniert es.
Nur, sollte sich der User nach dem Klicken des Action-Buttons dazu entscheiden, das Dokument (das ja für ihn wie "neu erstellt" aussieht) doch nicht anlegen zu wollen, so muss es wieder gelöscht werden. Das abzufangen (ohne dass er extra eine Hinweisbox bekommt) dürfte schwierig sein, oder?
Gruß
ArcTan
diali:
Wenn Du Notes 6.x einsetzt und das Dokument neu erstellst, dann brauchst Du es nicht zu speichern.
Wenn das Dokument dann geschlossen wird, ohne das der User etwas geändert hat, dann kommt auch keine Abfrage zum Speichern.
ArcTan:
Das scheint bei mir nicht zu funktionieren.
Ohne dass ich das Backend-Dokument abspeichere wird unter Notes 6.5.1 der Doclink nicht im neuen Dokument angezeigt.
Ich verwende nun folgenden Code:
Sub Click(Source As Button)
Dim session As New NotesSession
Dim uidoc As NotesUIDocument
Dim db As NotesDatabase
Dim collection As NotesDocumentCollection
Dim doc As NotesDocument
Dim rtitem As notesrichtextitem
Set db = session.CurrentDatabase
Set collection = db.UnprocessedDocuments
Set doc = collection.GetFirstDocument()
Set newdoc = New NotesDocument ( db )
newdoc.form = "eintrag"
Set rtitem = New NotesRichTextItem( newdoc, "followup" )
Call rtitem.AppendDocLink( doc, "Link auf Vorgänger" )
Call newdoc.Save( True, True )
Dim workspace As New NotesUIWorkspace
Call workspace.EditDocument(True, newdoc)
End Sub
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln