Domino 9 und frühere Versionen > ND8: Entwicklung

Weblink auf ersten Dateianhang

<< < (2/2)

it898ur:
Hallo,

als Alternative kannst Du über einen Webagenten gehen in der Form
http:/server/db/redirectagent?openagent&targetunid=...

Im Script des Agenten kannst Du dann das Zieldokument holen und den ersten Anhang ermitteln und daraus die eigentliche Adresse (am besten mit relativen Pfad) ermitteln. Wenn Du dann über ein Print-Statement diese Adresse in eckigen Klammern ausgibst, macht Notes sofort ein Redirect von dem die Zielapplikation nichts mitbekommt.

Gruß

André

jr:
Hallo André,

geniale Lösung. Auch wenn ich es noch nicht beim Kunden testen konnte. Aber so wie es aussieht, wird mit dieser Lösung überhaupt keine Umleitung vorgenommen, sondern es ist schlicht das Ergebnis der URL. Habe es jetzt hier sofort umgesetzt und beim mir getestet. Funktioniert einwandfrei. Es wird nicht einmal ein extra Fenster aufgemacht.

Wenn es interessiert, hier die Umsetzung des Agenten:

--- Code: ---Sub Initialize
Dim session As New NotesSession
Dim ctx As NotesDocument
Dim doc As NotesDocument
Dim view As NotesView
Dim rtItem As NotesRichTextItem
Dim param List As Variant
Dim i As Integer

Set ctx = session.DocumentContext
i = GetURLParam(ctx.Query_String_Decoded(0), param)

Set view = session.CurrentDatabase.GetView("viewLookupByKey")
Set doc = view.GetDocumentByKey(param("ID"), True)

If (doc Is Nothing) Then Print "<h1>Not Found</h1>The requested URL was not found on this server." : Exit Sub

Set rtItem = doc.GetFirstItem("rtFile")
Print "[" & Strleftback(ctx.Path_Translated(0), "/") & "/" & doc.UniversalID & "/$File/" & rtItem.EmbeddedObjects(0).Name & "]"
End Sub
--- Ende Code ---

GetURLParam berechnet nur eine Liste der Parameter in der Form [PARAM] := Wert.

Der Agentenaufruf erfolgt dann so:

--- Code: ---http://server/db/OpenFile?OpenAgent&id=primärschlüssel
--- Ende Code ---

Vielen Dank für die Hilfe.

Gruß,

Joachim

Navigation

[0] Themen-Index

[*] Vorherige Sete

Zur normalen Ansicht wechseln