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

C++Builder Discussion :

Plusieurs requ�ts SQL dans un QReport


Sujet :

C++Builder

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre �clair�
    Profil pro
    Inscrit en
    F�vrier 2003
    Messages
    795
    D�tails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : F�vrier 2003
    Messages : 795
    Par d�faut Plusieurs requ�ts SQL dans un QReport
    Bonjour
    Voil� je viens de faire un QRep avec 1 requ�te, �a fonctionne tr�s bien.
    J'ai �galement essay� avec une requ�te dans la bande d�tail et une requ�te dans la bande r�sum� et �a fonctionne impecc aussi. MAIS dans mon cas 2 requ�te dans la bande d�tail, �a ne va pas...

    J'ai une table dans laquelle je vais rechercher des parcelles. Dans cette table, j'ai �galement une Client ID. Je le prend et je souhaiterais afficher �galement les coordonn�es du client.. et c'est l� que ca coince !! Ca m'affiche seulement la derni�re valeur de ma table. Donc en gros, les requ�tes se font bien mais il garde en m�moire seulement mon dernier enrgistrement.

    Voici mon code :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
     
    //On sélectionne toutes les parcelles par ordre de parcelle
     
    ImprimeListeClients->Query2->SQL->Clear();
    ImprimeListeClients->Query2->SQL->Add("SELECT * FROM TReservation ORDER BY right('000' + Parcelle, 3)");
    ImprimeListeClients->Query2->Open();
     
      int i;
    //On regarde le nombre de parcelles
      int NbreParcelle =  ImprimeListeClients->Query2->RecordCount;
    // On se positionne à la première parcelle
      ImprimeListeClients->Query2->First();
    //On fait une boucle, on passe d'une parcelle à une autre
      for (i=0;i<NbreParcelle;i++)
      {
       AnsiString Parcelle = ImprimeListeClients->Query2Parcelle->Value;
       int ClientID =  ImprimeListeClients->Query2ClientID->Value;
       AnsiString SurfaceParcelle = ImprimeListeClients->Query2SurfaceParcelle->Value;
        //Une fois qu'on a tout, on va rechercher les coordonnées du client de la parcelle:
     
            ImprimeListeClients->Query1->Close();
            ImprimeListeClients->Query1->SQL->Clear();
            ImprimeListeClients->Query1->SQL->Add("SELECT * FROM TClient WHERE ClientID=:ClientID");
            ImprimeListeClients->Query1->ParamByName("ClientID")->Value = ClientID;
            ImprimeListeClients->Query1->Open();
            ImprimeListeClients->Query1->Active=true;
     
        // On affiche les coordonnées de la parcelle
             ImprimeListeClients->QRDBText18->DataSet = ImprimeListeClients->Query2;
             ImprimeListeClients->QRDBText18->DataField = "Parcelle";
     
        // On affiche alors les coordonnées du client
             ImprimeListeClients->QRDBText1->DataSet = ImprimeListeClients->Query1;
             ImprimeListeClients->QRDBText1->DataField = "NomHomme";
     
        // On passe à la parcelle suivante
             ImprimeListeClients->Query2->Next();
      }
    // On affiche notre QReport
    ImprimeListeClients->QReport1->Preview();
    Quelqu'un a-t-il une id�e pour que puisse afficher mes 400 enregistrements un en dessous de l'autre dans la bande de d�tail sans passer par une autre table ? Parce que l� j'ai essay� en cr�ant une table, faisant mes requ�tes , les ins�rant dans cette table et afficher, mais �a prend un temps fou � l'affichage et en plus c'est une m�thode barbare que je veux �viter � tout pris !!
    D'avance, Merci

  2. #2
    Membre exp�riment�
    Avatar de lanonyme
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    229
    D�tails du profil
    Informations personnelles :
    �ge : 42
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 229
    Par d�faut
    Bonjour,

    Il faut cr�er une selection multiple et ainsi recup�r� toutes les informations desir� en une seule requete

    Personnellement, je ne me casse pas trop la tete, j'utilise access pour g�n�r� ma requete et puis je l'adapte pour l'inserer dans mon programme .

    Edit :
    Exemple :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    select TABLE1.ID, TABLE2.* from TABLE2 inner join TABLE1 on TABLE1.ID=TABLE2.ID WHERE TABLE2.ID=1" ;
    lanonyme

  3. #3
    Membre �clair�
    Profil pro
    Inscrit en
    F�vrier 2003
    Messages
    795
    D�tails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : F�vrier 2003
    Messages : 795
    Par d�faut
    Qu'entend-tu par s�lection multiple? Une requ�te avec jointure ?
    Aurais-tu un exemple � me proposer que je comprenne un peu mieux avec mon exemple?
    Merci

  4. #4
    Membre exp�riment�
    Avatar de lanonyme
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    229
    D�tails du profil
    Informations personnelles :
    �ge : 42
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 229
    Par d�faut
    Ci dessus, je viens de le rajouter
    Je me disai que ca manquer

    Effectivement,
    Citation Envoy� par arnaud_verlaine
    Une requ�te avec jointure
    Je suis pas specialiste SQL, je connais pas trop bien les termes

    lanonyme

  5. #5
    Membre �clair�
    Profil pro
    Inscrit en
    F�vrier 2003
    Messages
    795
    D�tails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : F�vrier 2003
    Messages : 795
    Par d�faut
    ok je te remercie, je vais essayer cela.
    Mais moi et les jointures �a fait deux...
    Tu sais pas transposer ta requ�te sur mon exemple? Parce que l� je patine un peu...

  6. #6
    Membre exp�riment�
    Avatar de lanonyme
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    229
    D�tails du profil
    Informations personnelles :
    �ge : 42
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 229
    Par d�faut
    Perso pour les r�aliser quand ca devient complexe, j'utilise acess pour l'avoir.

    Je vais y regarder

    lanonyme

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. [MySQL] Ex�cuter plusieurs requ�tes SQL dans un script PHP ?
    Par Ludock dans le forum PHP & Base de donn�es
    R�ponses: 1
    Dernier message: 22/02/2015, 15h35
  2. Afficher plusieurs requ�tes SQL dans une ListView
    Par GYooo dans le forum Composants graphiques
    R�ponses: 4
    Dernier message: 01/02/2013, 02h07
  3. Ex�cution de plusieurs requ�tes SQL dans Oracle
    Par 4rocky4 dans le forum PL/SQL
    R�ponses: 7
    Dernier message: 19/03/2009, 11h12
  4. [Data] [iBATIS] Plusieurs requ�tes SQL dans un <statement> ?
    Par Tourix dans le forum Spring
    R�ponses: 3
    Dernier message: 04/09/2006, 15h40
  5. [SQL] Traitement de plusieurs requ�tes .SQL dans un script PHP?
    Par M4x dans le forum PHP & Base de donn�es
    R�ponses: 5
    Dernier message: 19/03/2006, 19h59

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