Affichage docs d'une base externe dans vue intégrée

Forum destiné aux questions sur le développement : Formules, LotusScript, Java ...

Affichage docs d'une base externe dans vue intégrée

Messagepar camilleB » 09 Mai 2012 à 01:23

Salut,
j'aimerai afficher des docs d'une base externe B dans un doc A via une vue intégrée!De plus j'aimerai que cette vue int soit paramétrable.
d'après mes recherches il n'est pas possible de préciser une référence externe dans la sélection de la vue intégrée.
J'ai trouvé une technique qui consiste à ajouter une icone de la base B sur le bureau de l'utilisateur. Ainsi la vue intégrée pourra y faire référence sans paramétrage particulier.
Donc j'ai commencé par un agent lancé par le QueryOpen du docA:
Code : Tout sélectionner
Dim w As New notesuiworkspace

   Dim dbB As New NotesDatabase( "", "" )
   Dim replicaID As String
   Dim Sserver As String
   Dim docparam As notesdocument
   Set docParam = curdb.GetProfileDocument("Param")
   sReplicaID= docParam.ParamDBPJrepId(0)
   sServer=docParam.ParamDBPJServer(0)
   sFile=docParam.ParamDBPJpath(0)
   Call dbB.OpenByReplicaID(sServer,sReplicaID)
   If Not dbB Is Nothing Then
      If dbB.IsOpen Then
         Call w.adddatabase(sServer, sFile)
      Else
         Msgbox "Ajout base externe impossible au bureau",16,"Erreur ajout base"
      End If
   Else
      Msgbox "Base externe introuvable",16,"Erreur ouverture base"
   End If


confirmez vous la solution et y a t-il une autre option? Merci de votre aide.

Cdt
camille
camilleB
Apprenti-posteur
Apprenti-posteur
 
Message(s) : 176
Inscrit(e) le : 18 Jan 2012 à 23:45

Re: Affichage docs d'une base externe dans vue intégrée

Messagepar Maxime Choucroun » 09 Mai 2012 à 17:05

Xpages peut le faire. mais j'ai quelques soucis pour l'application pratique
Avatar de l’utilisateur
Maxime Choucroun
Apprenti-posteur
Apprenti-posteur
 
Message(s) : 133
Inscrit(e) le : 01 Fév 2008 à 12:06
Localisation : Suresnes 92

Re: Affichage docs d'une base externe dans vue intégrée

Messagepar camilleB » 09 Mai 2012 à 17:12

Salut, je suis encore en v6 côté client!

cdt
camille
camilleB
Apprenti-posteur
Apprenti-posteur
 
Message(s) : 176
Inscrit(e) le : 18 Jan 2012 à 23:45

Re: Affichage docs d'une base externe dans vue intégrée

Messagepar Michael DELIQUE » 09 Mai 2012 à 18:19

salut

la seule solution que j'ai trouvé c'étais d'intégré la vue dans une page et d’appeler la page de la dite base . mais de mémoire c'était sur une solution web
Cordialement

Michael (SMS-Phobique)
----------------------------
"La théorie, c'est quand on sait tout et que rien ne fonctionne. La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi."
Albert EINSTEIN
Avatar de l’utilisateur
Michael DELIQUE
Administrateur
Administrateur
 
Message(s) : 12183
Inscrit(e) le : 16 Déc 2004 à 10:36
Localisation : Paris/Cergy

Re: Affichage docs d'une base externe dans vue intégrée

Messagepar Maxime Choucroun » 10 Mai 2012 à 08:47

En lotus v6, en passant par une frameset...
Cela n'est pas une vue intégrée, mais cela peut le faire....
Avatar de l’utilisateur
Maxime Choucroun
Apprenti-posteur
Apprenti-posteur
 
Message(s) : 133
Inscrit(e) le : 01 Fév 2008 à 12:06
Localisation : Suresnes 92

Re: Affichage docs d'une base externe dans vue intégrée

Messagepar camilleB » 10 Mai 2012 à 21:46

Salut, oui la la frameset est un bon début de piste! Elle permet en effet de sélectionner un élément d'une autre base!
Ce que j'ai fait:
Base B (docB, VueB)
Créer un docB contenant une vue intégrée (vueB).
Base A (docA, FramesetVisu, Docwrapper)
*Créer framesetVisu avec 2 cadres: 1 cadre (nommé cadreVisuDocB) qui va afficher le docB et 1 cadre (nommé Invisible) (taille 0 pixel)
Il est possible de rendre la vue et la base paramétrable par un doc profile. Puis rendre calculable le nom de la base référence et la vue affichée!
*Créer docWrapper (masqué) qui servira à afficher le framesetVisu.
Dans les propriétés du docWrapper --> Onglet Lancement: Agencement de cadres: FramsetVisu et Cadre: Invisible
Dans le docA :
* Créer un éditeur et sélectionner le docWrapper
Au lancement du docA, miracle on affiche une vue intégrée affichant les docB contenus dans une base distante B.
il me reste à voir comment affiché uniquement les docB associés au docA (single catégorie) car pour l'instant je vois tous les docB
En espérant avoir été compris!
Je n'ai pas beaucoup de mérite à part avoir essayer de faire çà:http://planetlotus.org/profiles/don-mcnally_83020
et çà: http://www.intec.co.uk/embedded-view-from-a-different-database-a-scale-alternative/

cdt
camille
camilleB
Apprenti-posteur
Apprenti-posteur
 
Message(s) : 176
Inscrit(e) le : 18 Jan 2012 à 23:45

Re: Affichage docs d'une base externe dans vue intégrée

Messagepar camilleB » 11 Mai 2012 à 22:01

Salut,
Et pour afficher les docB associés au docA il faut passer par une variable d'environnement:
Dans le PostOpen du docA :
Code : Tout sélectionner
strDocuniversalID=source.document.UniversallID
call session.SetEnvironmentVar("DocUniversalID",strDocUniversalID)

et dans le docB
Propriétés de la vue intégrée, on va lire la variable
Code : Tout sélectionner
@environment("DocUniversalId")

Cdt
camille
camilleB
Apprenti-posteur
Apprenti-posteur
 
Message(s) : 176
Inscrit(e) le : 18 Jan 2012 à 23:45

Re: Affichage docs d'une base externe dans vue intégrée

Messagepar camilleB » 15 Mai 2012 à 17:05

Bonjour,
Pour du client lourd Lotus çà va mais j'aimerai faire fonctionner la vue intégrée en web! Comment récupérer une variable d'environnement via un script CGI?
Je n'ai aucune expérience en Web.
Merci de votre aide!
cdt
camille
camilleB
Apprenti-posteur
Apprenti-posteur
 
Message(s) : 176
Inscrit(e) le : 18 Jan 2012 à 23:45

Re: Affichage docs d'une base externe dans vue intégrée

Messagepar roubech » 15 Mai 2012 à 20:55

en web, t'embette pas avec une notion da variable d'environnement
passe ton argument dans l'url et récupère le avec @QueryString
Avatar de l’utilisateur
roubech
Modérateur
Modérateur
 
Message(s) : 4976
Inscrit(e) le : 01 Fév 2007 à 20:22
Localisation : Lille

Re: Affichage docs d'une base externe dans vue intégrée

Messagepar camilleB » 15 Mai 2012 à 21:37

roubech a écrit:en web, t'embette pas avec une notion da variable d'environnement
passe ton argument dans l'url et récupère le avec @QueryString


Salut Roubech, parler dev en web sous lotus c'est comme du Chinois pour moi! lol
Par où commencé?
Je sais qu'il faudra m'y mettre un jour!
cdt
camille
camilleB
Apprenti-posteur
Apprenti-posteur
 
Message(s) : 176
Inscrit(e) le : 18 Jan 2012 à 23:45

Re: Affichage docs d'une base externe dans vue intégrée

Messagepar roubech » 16 Mai 2012 à 16:53

si j'ai bien compris, dans ta base A, tu as une frameset avec en haut un doc A et en bas une vue d'une base B restreinte à une catégorise, basée sur une valeur du docA
et bien je ne sais pas d'où tu viens avant, mais j'imagine que tu viens d'une vue de la base A, tu cliques sur un lien qui ouvre le docA. Avec la propriété du masque, ce docA s'ouvre dans le frameset prévu et au niveau du onload du docA, tu viens définir la page à afficher dans la frame du base avec un truc du genre (ça fait longtemps que j'ai pas fait) : document.frameBas.href="cheminBaseB.nsf/vueB?OpenView&RestrictedToCategory=Valeurcle"
Avatar de l’utilisateur
roubech
Modérateur
Modérateur
 
Message(s) : 4976
Inscrit(e) le : 01 Fév 2007 à 20:22
Localisation : Lille

Re: Affichage docs d'une base externe dans vue intégrée

Messagepar roubech » 16 Mai 2012 à 16:54

sinon, si tu n'as pas déjà mis en place le frameset, tu peux inclure une iframe directement dans le docA ...
Avatar de l’utilisateur
roubech
Modérateur
Modérateur
 
Message(s) : 4976
Inscrit(e) le : 01 Fév 2007 à 20:22
Localisation : Lille

Re: Affichage docs d'une base externe dans vue intégrée

Messagepar camilleB » 18 Juin 2012 à 19:53

roubech a écrit:sinon, si tu n'as pas déjà mis en place le frameset, tu peux inclure une iframe directement dans le docA ...


Salut, je reviens à la charge avec mon truc tordu mais qui fonctionne super bien (en client lourd)!
Mais pour l'instant je n'ai pas réussi à le faire fonctionner en web. J'avoue prise de tête! :?
Je me demande si c'est possible de récupérer le docunid du docA et de le passer au docB par un moyen ou autre. Cela me permettrai d'éviter la variable d'env. (notes.ini) pour le single category, et de ce fait le faire fonctionner en web! :D
Dois bien avoir une solution!
Pour mémoire: j'ai retenu le truc comme çà!
DocA <-contient-> Editeur intégré <-qui contient-> docWrapperA -affiché dans- FramesetA <-qui contient-> [ frameVueint -affiche- docBVueInt et frameInvisible -affiche-docWrapperA]

merci pour vos avis et aide.
cdt
camille
camilleB
Apprenti-posteur
Apprenti-posteur
 
Message(s) : 176
Inscrit(e) le : 18 Jan 2012 à 23:45

Re: Affichage docs d'une base externe dans vue intégrée

Messagepar roubech » 18 Juin 2012 à 20:18

comme je te l'ai dit le mois dernier, soit dans le onload du docA tu définis la page que tu veux afficher dans la frameVueint avec un bout de code JS du genre document.frameVueint .href="cheminBaseB.nsf/vueB?OpenView&RestrictedToCategory=Valeurcle"
et pour la clé, dans ton cas le UNID du doc A, dans l'entête du masque A, tu peux positionner une variable JS en la calculant en @formule
"var docunid='" & @documentUniqueID & "';"

sinon, comme je l'ai dit ensuite, tu peux mettre une iframe directement dans ton masque A ...
Avatar de l’utilisateur
roubech
Modérateur
Modérateur
 
Message(s) : 4976
Inscrit(e) le : 01 Fév 2007 à 20:22
Localisation : Lille

Re: Affichage docs d'une base externe dans vue intégrée

Messagepar camilleB » 18 Juin 2012 à 21:39

Merci de ta réponse!
Bon je vais revoir ta première solution!
Pour l'iframe comment tu procèdes (la propriété source etc...)? Je suis preneur de toutes ces techniques web...

cdt
camille
camilleB
Apprenti-posteur
Apprenti-posteur
 
Message(s) : 176
Inscrit(e) le : 18 Jan 2012 à 23:45

Suivant

Retour vers Développement