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

Access Discussion :

Listes déroulantes pour variables dans un état


Sujet :

Access

  1. #1
    Membre chevronné Avatar de Oluha
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 183
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 183
    Points : 1 967
    Points
    1 967
    Par défaut Listes déroulantes pour variables dans un état
    Bonjour

    Je ne connais pas très bien Access mais on m'a demandé de l'utiliser pour créer des états depuis ma base SQL Server. J'ai donc fais la connexion depuis access et réalisé un état à l'aide de l'assistant en appelant une procédure stockée qui me fait un select en fonction de 3 variables passées en paramètres. Donc quand j'esecute l'état il me demande bien la valeur de ces 3 variables.
    Mon problème c'est que les personnes qui vont utiliser ces états ne connaissent pas par coeur les ID à passer en paramètres et j'aurai donc aimé que cette sélection se fasse à l'aide de liste déroulantes dans lesquelles j'ai les libellés des ID.
    Mais je vois pas du tout comment faire. J'ai bien vu en mode création de mon état qu'on pouvait mettre des listes déroulantes mais après j'arrive pas à relier une liste au paramètre souhaité de ma procédure stockée.

    Quelqu'un pourrait m'aider ?

    Merci

  2. #2
    Expert éminent sénior
    Avatar de Dolphy35
    Homme Profil pro
    Responsable Systemes d'Information
    Inscrit en
    Octobre 2004
    Messages
    4 373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable Systemes d'Information
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 373
    Points : 11 218
    Points
    11 218
    Par défaut
    Salut ami(e) Rennais(e)

    Je ne suis pas expert dans les états mais je pense qu'il serait plus simple de créer un Formulaire en format Dilogue pour effectuer tes filtres puis ouvrir ton Etat.

  3. #3
    Membre chevronné Avatar de Oluha
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 183
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 183
    Points : 1 967
    Points
    1 967
    Par défaut
    oui mais je ne connais pas plus les formulaires
    T'aurais un tuto à me passer pour faire ca ?

    Merci

  4. #4
    Expert éminent

    Avatar de Maxence HUBICHE
    Homme Profil pro
    Développeur SQLServer/Access
    Inscrit en
    Juin 2002
    Messages
    3 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur SQLServer/Access

    Informations forums :
    Inscription : Juin 2002
    Messages : 3 842
    Points : 9 197
    Points
    9 197
    Par défaut
    Ta solution se fait en 3 Etapes:
    1 Design général
    2 Codage
    3 Finitions

    Etape 1 : Design Général
    Tu vas dans la liste des formulaires.
    Tu demandes à créer un formulaire en mode création
    Tu affiches (menu affichage) la boîte à outils (si elle ne l'est pas déjà)
    Tu vérifies que le bouton assistant (le 2°) est enfoncé.
    Tu cliques une fois sur le contrôle "zone de liste déroulante (des fois intitulé 'zone de liste modifiable')
    Tu cliques une fois dans le formulaire.
    Un assistant se lance.
    =>> Données proviennent d'une table
    =>> Choix de la table
    =>> Choix du champ ID et du champ de libellé
    =>> Terminé
    Dans la boîte à outils, tu choisi le bouton de commande (un clic)
    Tu cliques une fois dans le formulaire
    Un assistant se lance
    =>> Opération sur Etat
    =>> Ouvrir un état
    =>> Choix de l'état
    =>> Choix de l'image/texte à afficher
    =>> Terminé

    Etape 1 terminée.
    Tu as maintenant une liste et un bouton

    2 Codage
    La phase de codage est minimale, car la majeure partie du code a été générée.
    Il va juste falloir faire une toute petite modification dans ce qui a été généré.
    D'abord, collecter des informations :
    Doubles cliquer sur la liste =>> apparition de la fenêtre des propriétés.
    Cliquer dans l'onglet Autres
    Modifier la propriété nom. Mettre : cboID
    Cliquer sur le bouton généré dans le formulaire
    Cliquer dans l'onglet évènements de la fenêtre des propriétés
    Trouver l'évènement 'Sur Clic'
    Cliquer une fois dessus
    Cliquer une fois sur le bouton [...] situé tout à droite.
    On arrive dans une page de code.
    Il s'agit maintenant de demander à Filter l'état, et non pas à tout afficher.
    pour cela, modifier la ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Docmd.OpenReport stDocName, acPreview
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Docmd.OpenReport stDocName, acPreview,,"TonChampID="&cboID
    Etape 2 terminée.
    Passons aux finitions

    3 Finitions
    Il faut maintenant rendre le formulaire "Look-Like" une boîte de dialogue.
    Afficher les propriétés du formulaire en cliquant droit à l'angle d'intersection des 2 règles.
    Cliquer sur l'onglet Format, et modifier les propriétés suivantes:
    Barres défilement=> Aucune
    Diviseur Enr. => Non
    Légende => Sélectionner le xxx à imprimer
    Sélecteur => Non
    Boutons de déplacement => Non
    Auto Centrer => Oui
    Taille Ajustée => Oui
    Style de Bordure => Trait double fixe
    Cliquer sur l'onglet Autres, et modifier les propriétés suivantes :
    Fen Independante => Oui




    voilà !
    Plus qu'à enregistrer, fermer, puis ...
    ouvrir pour tester !

  5. #5
    Membre chevronné Avatar de Oluha
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 183
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 183
    Points : 1 967
    Points
    1 967
    Par défaut
    merci beaucoup !

    Je vais tester ca dès que j'aurai le temps

  6. #6
    Membre chevronné Avatar de Oluha
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 183
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 183
    Points : 1 967
    Points
    1 967
    Par défaut
    salut

    J'ai essayé ton tuto mais j'ai quelque petits problèmes...

    Quand j'essaye de passer 2 paramètres à mon état ca ne compile pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.OpenReport stDocName, acPreview, , "REGLE_REMISE=" & remise&" and ABONNEMENT.PUBLI_NUM="&publication
    Quand j'essaye avec seulement un paramètre (la remise qui est un champ texte), j'ai le sablié et ca bloque tout, je pense donc qu'il me sélectionne toute la table (qui est assez énorme) et que le where ne fonctionne pas.

    Aurais-tu une idée ?

    Merci

    EDIT : j'ai fais des petits tests et en effet on dirait qu'il ne prend pas en compte le "WhereCondition" même quand la valeur est en dur

  7. #7
    Membre chevronné Avatar de Oluha
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 183
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 183
    Points : 1 967
    Points
    1 967
    Par défaut
    j'ai fini par trouver : il ne faut pas appeler une vue ou une procédure stockée dans l'état mais copier directement la requete dedans

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

Discussions similaires

  1. [AC-2007] Appliquer filtre dans une liste déroulante selon variable
    Par robyseb dans le forum VBA Access
    Réponses: 15
    Dernier message: 28/07/2011, 09h01
  2. Réponses: 8
    Dernier message: 17/06/2011, 22h32
  3. Réponses: 16
    Dernier message: 19/05/2011, 09h36
  4. Réponses: 5
    Dernier message: 18/11/2009, 11h25
  5. Réponses: 2
    Dernier message: 10/04/2007, 11h58

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