Plusieurs tables dans état(Crystal Report)

majdolina Messages postés 60 Statut Membre -  
NicoDisso Messages postés 231 Statut Membre -
Salut,
Bon voilà j'arrive pas à afficher des champs venant de plusieurs tables quelqu'un sait-il comment?
Configuration: Windows XP
Firefox 3.0.10

18 réponses

  1. kryoportail Messages postés 230 Statut Membre 125
     
    Salut,

    Tape "jointure" ou simplement "JOIN" dans google... Et tu trouveras ton bonheur !

    Exemple
    SELECT `tableA`.`Field2`, `tableB`.`Field5` FROM `tableA` JOIN `tableB` ON `tableA`.`Field1` = `tableB`.`Field1`


    C'est un exemple... la clause ON permet de décrire la méthode utilisée pour joindre les tables...
    Il existe plusieurs types de jointures
    INNER JOIN
    LEFT JOIN
    RIGHT JOIN
    OUTER JOIN
    NATURAL JOIN
    ....
    Ça dépend du SGBD que tu utilises...

    Il est toujours possible... voir recommandé ! d'utiliser comme d'habitude les clauses WHERE, ORDER BY, GROUP BY, HAVING, etc...

    Il est aussi possible de joindre plus de 2 tables en meme temps... Attention qd meme à la taille des tables !...

    Bon courage,

    Amicalement,
    S@M....
    http://kryoportail.ath.cx
    0
  2. majdolina Messages postés 60 Statut Membre
     
    Merci pour ta réponse c'est ce que j'ai fait;
    J'ai fait une jointure voilà le code complet:

    adapt = New SqlDataAdapter("select et.Nom,et.Prenom,e.Note from examen e Join Etudiant et on et.codeetudiant=e.codeetudiant join cours c on c.numcours=e.numcours group by et.nom,et.prenom, e.note", conn)
    adapt.Fill(dt, "exam")
    Dim et As New CrystalReport1
    et.SetDataSource(dt.Tables("exam"))
    Me.CrystalReportViewer1.ReportSource = et

    ça n'affiche rien
    0
  3. NicoDisso Messages postés 231 Statut Membre 32
     
    en plus tu as "DATABASE EXPERT" qui te fait tout tout seul dans crystal.
    ensuite tu peux faire comme le dit kryoportail, et taper les requetes au lieu de le faire visuellement...
    mais le plus simple reste de le faire dans CRYSTAL au début ...
    0
    1. majdolina Messages postés 60 Statut Membre
       
      c'est quoi ce "DATABASE EXPERT" ?
      0
  4. NicoDisso Messages postés 231 Statut Membre 32
     
    C'est l'assistant qui te permet de selectionner ta source de données, ensuite les tables que tu veux inclure dans ton état avec les jointures qui vont bien.
    En fait, il ne fait que créer une connection à une base de données et faire le code que l'on t'a donnée plus haut avec les jointures qui vont bien...
    Quand tu fais un nouveau fichier, et que tu utilises l'assistant, c'est le premier formmulaire que tu vois.
    Sinon, il est acessible dans les menus directement.
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. majdolina Messages postés 60 Statut Membre
     
    c'est l'assistant qu'on voit quand on ajoute un nouvel élément Etat Crystal Report n'est ce pas?
    0
  7. NicoDisso Messages postés 231 Statut Membre 32
     
    qu'elle est ta version de Crystal report ?
    0
  8. majdolina Messages postés 60 Statut Membre
     
    je sais pas je travaille avec vb 2003
    0
  9. NicoDisso Messages postés 231 Statut Membre 32
     
    et voila,
    t'a tout dit ;-)
    0
  10. majdolina Messages postés 60 Statut Membre
     
    comment j'ai pas compris?
    0
  11. NicoDisso Messages postés 231 Statut Membre 32
     
    en fait lorsque tu ajoutes un composant crystal report,
    il te demande quel type d'etat tu veux faire, et comment tu veux le faire...

    Donc si tu utilises l'assistant, c'est effectivement la premiere page qu'il te montre avec les bases de données accessibles...
    donc par exemple si tu veux te connecter à un serveur SQL server, tu fais créer une nouvelle connection dans l'arborescence, tu dis que tu utilises "OLEDB" et tu prends par exemple "microsoft OLE DB provider for SQL server".
    Ensuite tu dis le nom de ton serveur, ton nom et ton mot de passe et la base de données ou se trouve tes données.
    tu fais terminer, et dans ton arborescene du début, tu as ta base de données.
    Tu ouvres les noeuds et la tu selectionnes les tables qui t'interesse
    Si tu en prends 2 et que tu fais suivant, il te demande les liens entre tes tables...
    Et voila ;-)
    0
  12. majdolina Messages postés 60 Statut Membre
     
    mais c ce que j'ai fait j'ai travaillé avec l'assistant j'ai ajouté les tables et les relations ont été faites automatiquement mais je sais pas ou est le problème
    0
  13. NicoDisso Messages postés 231 Statut Membre 32
     
    a ba alors moi non plus :-)

    ta question c'est
    Bon voilà j'arrive pas à afficher des champs venant de plusieurs tables quelqu'un sait-il comment?
    donc si ca ca marche, ta question c'est comment inseré des champs dans l'état Crystal report sous VB ?

    0
  14. majdolina Messages postés 60 Statut Membre
     
    oui mais je suis sûr que ce j'ai fait est juste peut être que le problème est dans le code
    0
  15. NicoDisso Messages postés 231 Statut Membre 32
     
    je ne comprends pas, à l'ecran en design tu as les champs qui sont placés sur l'état ?
    0
  16. majdolina Messages postés 60 Statut Membre
     
    oui j'ai mis les champs dans l'état à l'aide de l'assistant mais quand j'exécute l'état reste vide et même les champs n'apparaissent pas
    0
  17. majdolina Messages postés 60 Statut Membre
     
    svp j'arrive pas à résoudre le problème
    0
  18. snake-d12 Messages postés 258 Statut Membre 57
     
    Salut,
    je vois que dans votre reqûtes vous utilisez 3 tables (etudiant, cours, exam).
    alors, Est ce que vous les ajoutez dans le crystalReport au moment de son création. ??
    0
  19. NicoDisso Messages postés 231 Statut Membre 32
     
    Je comprends pas.
    Il faut les placer dans l etat les champs sinon c est clair que ta page est vide...
    La premiere etape fait que tu est connecte a une base de donnees, ensuite il faut placer les champs et faire la mise en page....
    Deja si en mode design tu as rien forcement ca va pas t afficher grand chose en exploitation ...
    0