IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Designer Discussion :

Jointure entre 2 univers


Sujet :

Designer

  1. #1
    Nouveau membre du Club
    Inscrit en
    Février 2006
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 38
    Points : 36
    Points
    36
    Par défaut Jointure entre 2 univers
    Bonjour à tous,

    dejà, je tiens à préciser que je découvre BO depuis peu... j'essaie de faire une jointure entre 2 univers. Dans un premier univers, j'ai des code clients en surveillance, et j'ai besoin de recup dans le second univers toutes les informations des clients des codes surveillé du premier univers.

    J'ai fait une jointure, j'ai donc 'lier" mes 2 dimensions des 2 univers différents sur le code client. Mon soucis est le suivant :
    le report me donne tous les codes client du deuxieme univers qui n'ont pas de code client dans le premier, ce qui ne m'interesse pas du tout. Je veux juste les code client qui sont sur les 2, une jointure quoi !!!

    merci pour votre aide !!!!!!

  2. #2
    Rédacteur
    Avatar de Bruno2r
    Homme Profil pro
    Exploitation des données
    Inscrit en
    Décembre 2006
    Messages
    2 566
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Exploitation des données
    Secteur : Santé

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 566
    Points : 4 780
    Points
    4 780
    Par défaut
    Salut Dans ce cas pourquoi ne pas faire dans Requête 2
    En condition :
    Clients DansListe
    Sélectionner les résultats d'une requête
    Reqête 1 Clients
    A tester ...

  3. #3
    Nouveau membre du Club
    Inscrit en
    Février 2006
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 38
    Points : 36
    Points
    36
    Par défaut
    Citation Envoyé par Bruno2r Voir le message
    Salut Dans ce cas pourquoi ne pas faire dans Requête 2
    En condition :
    Clients DansListe
    Sélectionner les résultats d'une requête
    Reqête 1 Clients
    A tester ...
    mon collegue est peu plus expérimenté que moi, m'a demandé de trouver une solution via l'outils propremendit, cad sans utiliser le requeteur, est ce que tu vois ce que je veu dire ?? je sais je suis compliqué !!!!
    en fait, c un inner join right que je voudrait alors qu il me fait un inner join left, est ce que je ne peux pas modifier ca ???


  4. #4
    Rédacteur
    Avatar de Bruno2r
    Homme Profil pro
    Exploitation des données
    Inscrit en
    Décembre 2006
    Messages
    2 566
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Exploitation des données
    Secteur : Santé

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 566
    Points : 4 780
    Points
    4 780
    Par défaut
    Citation Envoyé par tom78 Voir le message
    mon collegue est peu plus expérimenté que moi, m'a demandé de trouver une solution via l'outils propremendit, cad sans utiliser le requeteur, est ce que tu vois ce que je veu dire ??
    Sans modifier la requête ?
    Et ton collèque un peu plus il saurait expliquer comment on dit à BO de changer son mode de synchronisation ?

    Bon je vais chercher si y'a pas une astuce ....
    Moi j'ai l'habitude de faire des requêtes qui répondent au besoin Quelle sale manie !


    Bon allez soyons sérieux !
    Je suppose que tes requêtes sont synchronisées
    Que tu as mis dans le même tableau Clients et données de requêtes 1 et 2
    Tu as donc tous les codes clients même pour ceux qui ne sont pas présents dans l'autre requête. Rpère bien le nom de cette variable Clients qui a des manques c'est sur elle qu'on va poser un filtre ... magique
    Cliquer en dehors du tableau (sur le fond blanc) pour tout déselectionner
    Clic droit Formater les filtres
    Sélectionner le dossier correspondant au tableau
    Cliquer sur Ajouter
    Dans Variables à filtrer Choisir La variable Clients (à trous)
    Cliquer sur Définir
    Entrer la formule suivante
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =Non (EstNul(<ClientsUnivers1>))
    Et voili Et voilà C'est quasiment Noël

  5. #5
    Nouveau membre du Club
    Inscrit en
    Février 2006
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 38
    Points : 36
    Points
    36
    Par défaut
    Merci Bruno2r !!!pour ta rapidité de reponse et ta pertinence !!!!!!!!!

    j'avais pas pensé à cette soluce simple et rapide !!! je vias la mettre a execution tout de suite, par contre, si tu trouve comment faire la jointure correctement.

    est ce que tu vois bien ce que je veux dire ?? j'ai bien refait le test et y a vraiment un pb lorsque tu fais ta jointure entre 2 univers sans passer par la requete SQL (cad par le gestionnaire de donnée, onglet définition).

    D'ailleurs, autre question, pour faire ma jointure entre les 2 univers par requete SQL, comment je fais ? je mets la meme requete dans les 2 fournisseur de donnée ??

  6. #6
    Rédacteur
    Avatar de Bruno2r
    Homme Profil pro
    Exploitation des données
    Inscrit en
    Décembre 2006
    Messages
    2 566
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Exploitation des données
    Secteur : Santé

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 566
    Points : 4 780
    Points
    4 780
    Par défaut
    Une requête un seul univers !
    D'ailleurs tu ne pourrais pas afficher deux listes d'objets ...

    Si les deux univers pointent sur une seule et même bas, on peut récupérer le sql de chaque requête et le combiner en un sql à la carte (faut peut être avoir quelque expérience en sql et connaître le shéma de la base)

    Sinon eh bien ce que je te disais ironiquement de demander à tes collègues ...
    BO choisit comment il synchronise et on n'y peut rien !
    Lui ne veut pas perdre d'enregistrement donc il établi une liste exhaustive des clients puis ramène pour chacun les infos lorsqu'elles existent un peu du style
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    Select R.Client, R1.infos, R2.Infos
    FROM
    R2, R1, 
    (Select client from R1
    union
    Select client from R2) R
    WHERE R.CLIENT = R1.CLIENT(+)
    AND R.CLIENT = R2.CLIENT(+)

  7. #7
    Nouveau membre du Club
    Inscrit en
    Février 2006
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 38
    Points : 36
    Points
    36
    Par défaut
    Citation Envoyé par Bruno2r Voir le message
    Une requête un seul univers !
    D'ailleurs tu ne pourrais pas afficher deux listes d'objets ...

    Si les deux univers pointent sur une seule et même bas, on peut récupérer le sql de chaque requête et le combiner en un sql à la carte (faut peut être avoir quelque expérience en sql et connaître le shéma de la base)

    Sinon eh bien ce que je te disais ironiquement de demander à tes collègues ...
    BO choisit comment il synchronise et on n'y peut rien !
    Lui ne veut pas perdre d'enregistrement donc il établi une liste exhaustive des clients puis ramène pour chacun les infos lorsqu'elles existent un peu du style
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    Select R.Client, R1.infos, R2.Infos
    FROM
    R2, R1, 
    (Select client from R1
    union
    Select client from R2) R
    WHERE R.CLIENT = R1.CLIENT(+)
    AND R.CLIENT = R2.CLIENT(+)
    je suis d'accord avec ton code sql, c bien une union qu'il fait, mes 2 univers pointe sur 2 base de donnée différente(2 instance oracle), si je comprends bien ce que tu me dis, je ne peu rien y faire alors, c bete je trouve.

  8. #8
    Rédacteur
    Avatar de Bruno2r
    Homme Profil pro
    Exploitation des données
    Inscrit en
    Décembre 2006
    Messages
    2 566
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Exploitation des données
    Secteur : Santé

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 566
    Points : 4 780
    Points
    4 780
    Par défaut
    Soit se satisfaire du filtre dit complexe
    Soit un sql à la carte sur une base infocentre dans laquelle tu te crées deux vues oracle pointant en db_link sur chaque base
    C'est ca que je fais tous les jours.
    A +

Discussions similaires

  1. [VxiR2] Copier Jointure entre Univers
    Par bastoonet dans le forum Designer
    Réponses: 11
    Dernier message: 29/03/2011, 15h49
  2. Jointure entre deux tables et résultat
    Par Asdorve dans le forum Langage SQL
    Réponses: 2
    Dernier message: 02/06/2004, 14h50
  3. [jointure]requete possible de double jointure entre 2 tables
    Par akira_le_gaucher dans le forum Langage SQL
    Réponses: 4
    Dernier message: 11/05/2004, 15h03
  4. Jointure entre 2 tables et OR
    Par PyRoFlo dans le forum Requêtes
    Réponses: 2
    Dernier message: 02/02/2004, 18h42
  5. jointure entre deux requete
    Par Youssef dans le forum Langage SQL
    Réponses: 21
    Dernier message: 15/01/2004, 15h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo