Das Notes Forum

Domino 9 und frühere Versionen => ND8: Entwicklung - XPages => Thema gestartet von: bikerboy am 09.04.13 - 12:56:44

Titel: Dokumente über Xpage öffnen die nicht in der gleichen DB liegt
Beitrag von: bikerboy am 09.04.13 - 12:56:44
Hallo,

ich versuche nun mal das kryptische Subject aufzulösen.

Ich bin gerade an meinem ersten Xpage-Projekt nach der Schulung von vor Monaten. Auf dem EC habe ich den JavaScript Lifetime Cycle kennengelernt und bin mir sicher, dass wir Freunde werden. Bevor ich aber auf das Level komme in dem der Lebenszyklus interessant wird, schlage ich mich gerade mit Basics rum.

Ich kann sehr schnell und schön meine Adressedaten aus dem DB1 mit der Xpage in DB2 anzeigen lassen. Will ich nun aber das Dokument öffnen, müsste ich ja DB1 sagen, dass er die Maske mit ner Xpage öffnen soll. Zum einen will ich das nicht, da mit der Maske die Normalos arbeiten sollen. Zum anderen kann ich die Xpage aus DB2 nicht auswählen. Es muss/sollte also noch einen anderen Weg geben.

Ich möchte nicht, die Datenbestände redundant halten und dafür sorgen müssen, dass Sie sich abgleichen.

Freue mich auf Anregungen oder Ernüchterungen

Titel: Re: Dokumente über Xpage öffnen die nicht in der gleichen DB liegt
Beitrag von: Sven Hasselbach am 09.04.13 - 13:10:04
"Verkehrt rum gedacht": Du sagst nicht dem Dokument, wie es sich öffnen soll, sondern der XPage, welches Dokument geöffnet wird.
Das kann man dann über die URL machen, die die definierte Datenquelle der XPage überschreibt:

Code
http://example.com/DB2.nsf/XpageDoc.xsp?databaseName=<SERVER>!!DB1.nsf&documentId=<UNID>&action=openDocument

Du gibst also den Link zur DB1 gar nicht nach draußen, sondern die User arbeiten auf der DB2.
Titel: Re: Dokumente über Xpage öffnen die nicht in der gleichen DB liegt
Beitrag von: bikerboy am 09.04.13 - 14:33:24
Hah genau das ist der Plan.

Wie bekomme ich denn aus der View die UNID des Dokumentes? Sorry für vllt dumme Fragen. Aber wie gesagt erstes Projekt.
Titel: Re: Dokumente über Xpage öffnen die nicht in der gleichen DB liegt
Beitrag von: dnotes am 09.04.13 - 16:45:08
var unid = thisentry.getDocument().getUniversalID();

Wobei "thisentry" der Variablenname ist wie ich ihn unter den Vieweigenschaften eingetragen habe.
Titel: Re: Dokumente über Xpage öffnen die nicht in der gleichen DB liegt
Beitrag von: Sven Hasselbach am 10.04.13 - 08:37:38
Code
thisentry.getUniversalID()
ist kürzer und benötigt keine Dokumenten-Instanz  ;)