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

IHM Discussion :

Intégrer données requête + graphique dans 1 état sans redondance des demandes des critères de la requête [AC-2007]


Sujet :

IHM

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    113
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 113
    Points : 52
    Points
    52
    Par défaut Intégrer données requête + graphique dans 1 état sans redondance des demandes des critères de la requête
    Bonjour,

    Dans un état, je fais apparaitre les données issues d'une requête (par année, les produits vendus et nombre de ventes de ces produits).
    Pour chaque année, le total des ventes pour l'ensemble des produits. Voila ce que ça donne sur l'état :

    1ere année
    produit P1............nbre de vente V1
    produit P2............nbre de vente V2
    total...................V1+V2

    ...

    dernière année
    P1..............V1
    P2..............V2
    total...

    La requête source des données a été crée via l'assistant et une boite de dialogue s'affiche 2 fois au cours de son exécution pour que l'utilisateur indique l'année de début (1ere année) et la dernière année de restitution des données. Simple, ça fonctionne.


    En pied de page, je souhaite intégrer un graphique reportant les volumes vendus par année.
    Via l'assistant, il faut indiquer la requête ressource.

    Le souci est que ça fait réapparaitre une nouvelle fois les 2 boites de dialogue pour demander les 2 années intiale et finale de restitution.

    Il n'y a pas moyen de se baser sur les données du tableau déjà créé juste au dessus pour ne pas avoir à relancer la requête et donc les msgbox ??

  2. #2
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 596
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 79
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 596
    Points : 281 917
    Points
    281 917
    Par défaut
    Bonjour,

    Pour l'instant tu passes les paramètres "année" via tes requêtes.

    Procède plutôt comme ceci :

    - A l'aide de d'un formulaire, demande d'introduire les 2 dates
    - mémorise ces dates dans des variables globales
    - dans tes requêtes tu fais référence à la valeur des ces variables.

    Si en Access2007 (comme ACCESS2000), on ne peut pas se référer à une variable ---> tu écris 2 fonctions qui récupèrent leur valeur.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    113
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 113
    Points : 52
    Points
    52
    Par défaut
    Ok merci, donc dans ma requête actuelle, en critère, je peux faire référence à une variable globale et non à un code du type "[année..]" pour faire apparaitre une msgbox ?

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    113
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 113
    Points : 52
    Points
    52
    Par défaut
    La variable globale, c'est via la création d'un module il me semble ?

  5. #5
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 596
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 79
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 596
    Points : 281 917
    Points
    281 917
    Par défaut
    Deux fois : "oui"

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    113
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 113
    Points : 52
    Points
    52
    Par défaut
    J'ai créé ma variable globale mais la requete ne reconnait pas sa valeur quand je l'indique dans le champs critère de la requete (syntaxe incorrecte).

    Où faut-il créer cette fonction et comment l'appeler dans ma requete ?

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    113
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 113
    Points : 52
    Points
    52
    Par défaut
    Je commence à comprendre le principe (j'ai fait un peu de VB6 mais presque pas d'access).

    J'ai créé une fonction dans le module et je l'appelle via le générateur d'expression de ma requête.

    On peut considérer que c'est résolu, merci

  8. #8
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 596
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 79
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 596
    Points : 281 917
    Points
    281 917
    Par défaut
    Le temps que tu répondes, je préparais ceci :

    Dans un module :

    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
    Option Compare Database
    Option Explicit
     
    Global AnneeDebut As Integer
    Global AnneeFin As Integer
     
    Public Sub Lister()
    AnneeDebut = InputBox("Année Début ""aaaa""")
    AnneeFin = InputBox("Année Fin ""aaaa""")
    Docmd.openReport "Etat"
    End Sub
     
    Public Function GetAnneeDebut()
    GetAnneeDebut = AnneeDebut
    End Function
    Public Function GetAnneeFin()
    GetAnneeFin = AnneeFin
    End Function


    Dans ta requête, là où tu avais =[AnnéeDébut], tu indiques

    =getAnneeDebut()

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    113
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 113
    Points : 52
    Points
    52
    Par défaut
    Merci bien ça confirme ce que j'avais créé en tâtonnant

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 22/05/2009, 22h13
  2. Réponses: 0
    Dernier message: 18/02/2008, 22h05
  3. graphique dans un état access
    Par marieo dans le forum Access
    Réponses: 3
    Dernier message: 03/07/2006, 18h28
  4. Modifier le contenu d'un graphique dans un état
    Par fredeau dans le forum Access
    Réponses: 3
    Dernier message: 04/05/2006, 12h01
  5. Soucis avec les Graphiques dans les états
    Par Chococrocq dans le forum IHM
    Réponses: 27
    Dernier message: 04/01/2006, 19h03

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