Concatener les documents de 2 bases en une vue

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

Concatener les documents de 2 bases en une vue

Messagepar pandemonium » 21 Jan 2011 à 14:58

Bonjour,

Est-ce qu'il est possible de "concatener" les documents de 2 bases dans une vue en LotusScript ?

Faire un truc du genre :
Code : Tout sélectionner
Dim asession As New NotesSession
Dim cdb As NotesDatabase
Dim cdb2 As NotesDatabase
Dim doc As NotesDocument
Dim vue As NotesView

Set cdb = asession.CurrentDatabase
Set cdb2 = asession.GetDatabase(cdb.Server, "autrebase.nsf")

Set vue = cdb.GetView("dosiierparcode") + cdb2.GetView("dossierparcode")

Set doc = vue.GetFirstdocument
While Not doc Is Nothing
...
Set doc = vue.Getnextdocument(doc)
Wend
pandemonium
Premier posts
Premier posts
 
Message(s) : 16
Inscrit(e) le : 22 Déc 2010 à 09:00

Messagepar Michael DELIQUE » 21 Jan 2011 à 14:59

salut

non !

une vue ne présentera que les documents de la base dans laquelle elle est !
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

Messagepar pandemonium » 21 Jan 2011 à 15:18

Merci pour cette réponse rapide :)

Si je comprends bien le seul moyen est de faire un truc du genre :

Code : Tout sélectionner
Dim asession As New NotesSession
Dim cdb As NotesDatabase
Dim cdb2 As NotesDatabase
Dim doc As NotesDocument
Dim vue As NotesView

Set cdb = asession.CurrentDatabase
Set cdb2 = asession.GetDatabase(cdb.Server, "autrebase.nsf")

'Traitement sur la première base
Set vue = cdb.GetView("dosiierparcode")
Set doc = vue.GetFirstdocument
While Not doc Is Nothing
...
Set doc = vue.Getnextdocument(doc)
Wend

'Traitement sur la deuxieme base
Set vue = cdb2.GetView("dossierparcode")
Set doc = vue.GetFirstdocument

While Not doc Is Nothing
...
Set doc = vue.Getnextdocument(doc)
Wend


je trouve ca domage :/
pandemonium
Premier posts
Premier posts
 
Message(s) : 16
Inscrit(e) le : 22 Déc 2010 à 09:00

Messagepar Michael DELIQUE » 21 Jan 2011 à 15:22

euh c'est quoi ton besoin ?

et puis que viens faire du lotus script dans l'histoire ?
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

Messagepar pandemonium » 21 Jan 2011 à 19:27

mon besoin c'est de fusionner les documents d'une vue d'une base A et les documents d'une vue d'une base B.

C'est un agent qui va s'occuper de "fusionner" ces vue d'où le LotusScript
pandemonium
Premier posts
Premier posts
 
Message(s) : 16
Inscrit(e) le : 22 Déc 2010 à 09:00

Messagepar Michael DELIQUE » 21 Jan 2011 à 19:51

je crois que tu as une mauvaise compréhension de ce qu'est une vue !

ce n'est pas une requête, ca sert juste a viusaliser les documents en fonction de critères.

et le conteneur c'est la notesdatabase.il faut voir la notesdatabase comme un gros sac avec tout tes document dedans. la vue te permet de mettre en ordre ce qu'il ya dans ton sac.

si tu veux qu'une vue d'une basz a vois les document d'une base b il faut rappatrié les document de la base b dans la base a
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

Messagepar pandemonium » 21 Jan 2011 à 21:56

J'ai bien compris ce qu'est une vue etc... j'ai certainement du mal m'exprimer.

J'ai une base A qui a une vue "dossierparcode"
J'ai une base B qui a une vue "dossierparcode" également

Dans un agent j'ai besoin de réunir les documents de ces 2 vues afin de faire des calculs.

Donc pour éviter de devoir faire 2 boucles :
- une boucle qui balaye les documents de la vue "dossierparcode" de la base A pour effectuer un traitement
- et une deuxieme boucle qui fait exactement le même traitement que la première mais cette fois ci avec les document de la vue "dossierparcode" de la base B

J'avais dans l'idée de faire une seule boucle qui balaye les documents de la vue "dossierparcode" de la base A et de la base B
pandemonium
Premier posts
Premier posts
 
Message(s) : 16
Inscrit(e) le : 22 Déc 2010 à 09:00

Messagepar Michael DELIQUE » 22 Jan 2011 à 10:26

ok,

désolé, c'est pas possible. 2 bases 2 boucles
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

Messagepar oguruma » 28 Jan 2011 à 12:35

c'est impossible et pourtant cela pourrait être utile

tu peux envisager de mettre en place des réplications calculées sur une base entralisatrice et il faudra définir les fréquences refraîchissement

attention : Domino => ce n'est pas du SQL qui permet de faire des jointure facilement
Bien à vous

http://www.dominoarea.org/oguruma/

Les téléphones PORTABLES dans les TGV y en a MARRRE de ces voyageurs qui ne respectent pas les autres ! ARRET DES PORTABLES SVP - Merci

Fumeurs ! respectez les non fumeurs !!!
Fumeurs ! respectez la loi de février 2007 et les lieux publics !!! (ie. hall de gares)
Avatar de l’utilisateur
oguruma
Super V.I.P.
Super V.I.P.
 
Message(s) : 4086
Inscrit(e) le : 16 Déc 2004 à 08:50
Localisation : LILLE


Retour vers Développement