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

Requêtes et SQL. Discussion :

Résultat d'une requete dans un controle de type texte


Sujet :

Requêtes et SQL.

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Résultat d'une requete dans un controle de type texte
    Bonjour,
    Je bloque sur un problème depuis quelques temps et les exemples trouvés ici ne correspondent pas tout à fait :
    J'ai donc une table "Employés" et une table "Ventes". chaque vente réalisée par un employé génère un enregistrement dans la table "Ventes" avec le code de l'employé, la date de la vente et le montant de la vente
    Je voudrais faire des stats sur les montants des ventes par employé et par année.
    Je crée donc un formulaire avec
    - une listbox contenant tous les employés
    - une listbox contenant les années
    - un bouton "Statistiques"
    - un champ texte "Montant > 10K€"
    - un champ texte "Montant < 10K€"

    Lorsque je choisis un employé et une année, un clic sur le bouton "Statistiques" doit me remplir
    - le champ texte "Montant > 10K€" avec le nombre de ventes réalisées par l'employé choisi, au cours de l'année choisie et dont le montant est supérieur à 10K€
    - le champ texte "Montant < 10K€" avec le nombre de ventes réalisées par l'employé choisi, au cours de l'année choisie et dont le montant est inférieur à 10K€

    Les requetes devraient ressembler à ca :
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    select count(*) from ventes where ventes.IDemploye=[employe choisi] and ventes.année=[annee choisie] and ventes.montant > 10000;
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    select count(*) from ventes where ventes.IDemploye=[employe choisi] and ventes.année=[annee choisie] and ventes.montant < 10000;

    Mais comment affecter le résultat de ces requetes à mes champs texte du formulaire ?
    Merci par avance

  2. #2
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 006
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 006
    Points : 24 598
    Points
    24 598
    Par défaut
    Bonjour,

    Plusieurs solutions sont possibles, via recordset (voir le tuto DAO pour la mise en application).

    En utilisant une fonction de domaine. Dlookup(), Dmax()...

    En modifiant légèrement l'interface, remplace la zone de texte par un zone de liste (non déroulante) qui te permet d'affecter la requete à la propriété source de celle-ci.

    Je crois qu'on a fait le tour des possibilités.

    Cordialement,
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  3. #3
    Nouveau membre du Club
    Inscrit en
    Avril 2006
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 27
    Points : 29
    Points
    29
    Par défaut
    Bonjour.

    Si la requete SQL est lancee dans un module VBA, ne peut on pas ecrire :

    Me!text2="select........" ?

    Normalement, ca doit afficher le contenu desire dans le champ texte.

    Cdlt.
    Jeannot2.

  4. #4
    Membre actif Avatar de Gary_Stoupy
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    244
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 244
    Points : 232
    Points
    232
    Par défaut
    je ne suis pas sur que cela fonctionne jeannot2... maintenant je ne suis pas expert mais a mon humble avis, ton controle texte contiendra exactement "Select...." et non pas le résultat de la requete...
    (\ _ /)
    (='.'=) Voici Lapinou. Aidez le à conquérir le monde
    (")-(") en le reproduisant.

  5. #5
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Suit les conseils de LOUFAB, un textbox ne peux interpréter une requête SQL, il faut soit

    1 - Affecter le résultat du requête par des recordset
    2 - Ou les fonctions de domaine (cette fonction remplacera ton select)

    Starec

  6. #6
    Nouveau membre du Club
    Inscrit en
    Avril 2006
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 27
    Points : 29
    Points
    29
    Par défaut
    Je pensais que ca devait marcher.

    Dans ce genre de cas, j'utilise toujours des requetes classique d'Access et recupere les donnees dans les champs respectif et, enfin, les affiche sans probleme dans des zones texte. Ce ne sont donc pas des requetes SQL en tant que tel dans mon cas.
    Donc gestion par DAO, ouverture de la requete contenant le resultat etc.

    Cdlt.
    Jean.

  7. #7
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    Voila la solution à mon problème :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    Dim strSQL as string
    Dim rst As New ADODB.Recordset
    strSQL = "SELECT count(*) FROM ventes " & _
                 "WHERE ventes.IDemploye=[employe choisi] AND " & _
                           "ventes.année=[annee choisie] AND " & _
                           "ventes.montant > 10000;"   
    rst.Open strSQL, CurrentProject.Connection, adOpenStatic
    Mon_Champ_Text.Value = rst.Fields(0)
    Merci pour l'aide

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 7
    Dernier message: 02/05/2006, 16h28
  2. [MySQL] affichage du résultat d'une requete dans une page
    Par blackbird1 dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 08/03/2006, 14h07
  3. placer une résultat d'une requete dans un champs
    Par valaidnew dans le forum Access
    Réponses: 5
    Dernier message: 03/03/2006, 10h34
  4. Réponses: 3
    Dernier message: 25/11/2005, 14h51
  5. Réponses: 6
    Dernier message: 27/09/2005, 16h19

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