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

Forms Oracle Discussion :

[forms] Data Block Lov Plusieurs tables jointure


Sujet :

Forms Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Janvier 2005
    Messages
    86
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 86
    Par défaut [forms] Data Block Lov Plusieurs tables jointure
    Bonjour,

    je developpe une application forms. J'utilise les lov et les data block pour afficher les champs que je veux de mes tables. Mon probleme est que je ne peux afficher avec les lov et les data block, des requetes contenant une jointure.

    Par exemple, j ai une table produit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    table produit
    {
    id_produit     integer;
    id_categorie  integer;
    }
     
    table categorie
    {
    id_categorie   integer;
    libelle            varchar2;
    }
    Donc je souhaiterais afficher les infos de mon produit mais remplacer l'id de la categorie par son libelle. Avec les lov, on ma dit que c'était impossible de l'utiliser avec plusieurs tables.

    Je ne sais pa comment faire.
    Avez vous des idées ?? Comment puis-je faire ?

  2. #2
    Expert confirmé
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Par défaut
    Il suffit de faire une jointure entre les 2 tables....

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Select a.nom, b.libelle
    From tableA a, tableB b
    Where a.code = b.code

  3. #3
    Membre confirmé
    Inscrit en
    Janvier 2005
    Messages
    86
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 86
    Par défaut
    Cela fonctionne pour la lov mais le souci, c'est que pour les data block (permettant l'affichage des donnees de la lov), on ne peut pas selectionner plusieurs tables, et donc la jointure est impossible .

  4. #4
    Expert confirmé
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Par défaut
    Il faut utiliser des items non basés et les renseigner dans un trigger POST-QUERY. (lookup items)

  5. #5
    Membre confirmé
    Inscrit en
    Janvier 2005
    Messages
    86
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 86
    Par défaut
    Bonsoir,

    merci pour ta reponse. Je fais des recherches, mais je ne trouve pas d'infos bien precise sur les items non bases.

    As-tu des infos plus precise sur cet element ?

    Merci d'avance.

  6. #6
    Expert confirmé
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Par défaut
    C'est un item comme un autre. La seule différence est qu'il ne pointe sur aucune colonne de table. C'est pourquoi on dit qu'il n'est pas basé (sur une table).

    Donc il suffit d'ajouter un text ou display item, de laisser vide les propriétés relatives au nom de table et nom de colonne, puis de créer un trigger POST-QUERY sur ce block. Le POST-QUERY se déclenche à chaque enregistrement ramené de la base.
    Il suffit d'ajouter un select pour alimenter le champs non basé

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Select libelle
    Into   :block.item_non_base
    Form   la_tableB
    Where ...

Discussions similaires

  1. Requêtes sur plusieurs tables, jointures ?
    Par trifly dans le forum Requêtes
    Réponses: 1
    Dernier message: 08/07/2011, 16h07
  2. Forms (insertion à plusieurs tables) ?
    Par bchbch dans le forum Forms
    Réponses: 1
    Dernier message: 02/04/2006, 18h50
  3. [VB]Utiliser plusieurs table liées avec un contrôle Data
    Par yangoal25 dans le forum VB 6 et antérieur
    Réponses: 25
    Dernier message: 21/02/2006, 15h36
  4. select sur plusieurs table, question sur jointure
    Par Schulman dans le forum Langage SQL
    Réponses: 7
    Dernier message: 03/09/2004, 13h54
  5. jointures de plusieurs tables
    Par ben127 dans le forum Langage SQL
    Réponses: 5
    Dernier message: 09/06/2004, 14h57

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