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 :

Sous-Formulaire basé sur une requête nécessitant des paramètes


Sujet :

Requêtes et SQL.

  1. #1
    Membre régulier Avatar de nicou50
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    131
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 131
    Points : 80
    Points
    80
    Par défaut Sous-Formulaire basé sur une requête nécessitant des paramètes
    salut tout le monde.
    J'ai un formulaire F_ListeClient qui contient un sous-formulaire F_RequeteDansListeClient.
    Ce sous-formulaire a besoin d'informations contenus dans F_ListeClient pour s'afficher ( à savoir le mois et l'année, qui sont contenus dans une liste déroulante de F_ListeClient)
    Le problème est le suivant :
    lorsque je charge le formulaire F_ListeClient, le sous-formulaire demande à l'utilisateur d'entrer les deux paramètres nécessités, avant même de charger F_ListeClient et ainsi lire le contenu du formulaire.
    J'ai cherché pas mal de temps sur ce problème mais je ne vois vraiment pas.

    Indication supplémentaire : le sous-formulaire n'est pas lié à F_Client par un champ père-fils car F_Client n'a pas de source controle. Il doit seulement servir à charger le sous-formulaire.

    Alors comment faire ?...Envoie de paramètres?...Ne pas faire de ss-formulaire ?

    Merci d'avance

  2. #2
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Localisation : Sénégal

    Informations forums :
    Inscription : Juin 2003
    Messages : 1 229
    Points : 1 579
    Points
    1 579
    Par défaut
    Tu peux utiliser la fonction IIF dans la source du sous formulaire.

    Montres nous la source.
    Amicalement

  3. #3
    Membre régulier Avatar de nicou50
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    131
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 131
    Points : 80
    Points
    80
    Par défaut merci du coup de pouce
    J'ai refait ma requête avec des iif grâce à DMboup:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    SELECT T_Client.NoClient, T_Client.NomClient, T_Client.PrenomClient, T_Client.MontantDu, Sum(T_Facture.TotalFacture) AS TotalMois
    FROM T_Client INNER JOIN T_Facture ON T_Client.NoClient = T_Facture.NoClient
    GROUP BY T_Client.NoClient, T_Client.NomClient, T_Client.PrenomClient, T_Client.MontantDu, Month(T_Facture.DateFacture), Year(T_Facture.DateFacture)
    HAVING (((Month([T_Facture].[DateFacture]))=IIf(Month([Formulaires].[F_ListeClient].[ListeMois]) Is Not Null,Month([Formulaires].[F_ListeClient].[ListeMois]),Month([T_Facture].[DateFacture]))) AND ((Year([T_Facture].[DateFacture]))=IIf(Month([Formulaires].[F_ListeClient].[ListeAnnees]) Is Not Null,Year([Formulaires].[F_ListeClient].[ListeAnnees]),Year([T_Facture].[DateFacture]))))
    ORDER BY T_Client.NomClient, T_Client.PrenomClient;
    Ma requête fonctionne, mais mon formulaire affiche tout le temps le résultat comme si mes deux listes déroulantes étaient null.
    Mais elles ne le sont pas !
    Comment faire pour rendre mes listes déroulantes effectives sur ma requête.
    Voici le code qui me permet de créer mes listes:
    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
     
    Private Sub Form_Current()
     
            Static RemplirListe As Byte
            Dim i As Long
            Dim MaDate As Date
     
            RemplirListe = RemplirListe + 1
            If RemplirListe < 1 Then
                With ListeMois
                    For i = 1 To 12
                        MaDate = "2006/" & i & "/01"
                        .AddItem Format(MaDate, "mmmm")
                    Next i
                End With
                With ListeAnnees
                        For i = 2000 To Year(Date)
                        MaDate = i & "/01/01"
                        .AddItem Format(MaDate, "yyyy")
                    Next i
                End With
            End If
     
    ' CES DEUX LIGNES DEVRAIENT INFLUENCER LA REQUETE MAIS NON!!!
            ListeMois = Format(Date, "mmmm")
            ListeAnnees = Format(Date, "yyyy")
    End Sub
    Merci de votre aide !

  4. #4
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Localisation : Sénégal

    Informations forums :
    Inscription : Juin 2003
    Messages : 1 229
    Points : 1 579
    Points
    1 579
    Amicalement

  5. #5
    Membre régulier Avatar de nicou50
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    131
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 131
    Points : 80
    Points
    80
    Par défaut Héhé...
    Ouais...il se trouve que je suis parti de deux problèmes différents pour en arriver au même...Dsl

  6. #6
    Membre éclairé Avatar de ft035580
    Profil pro
    Inscrit en
    Août 2004
    Messages
    689
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 689
    Points : 812
    Points
    812
    Par défaut
    Salut,

    J'ai un formulaire F_ListeClient qui contient un sous-formulaire F_RequeteDansListeClient.
    Ce sous-formulaire a besoin d'informations contenus dans F_ListeClient pour s'afficher ( à savoir le mois et l'année, qui sont contenus dans une liste déroulante de F_ListeClient)
    En lisant ceci,j'imagine que tu as opérer une requête paramétrée alimentant ton sous-Form.

    Auquel cas, dans ton Form F_ListeClient rien ne t'empêche de mettre un Me.F_RequeteDansListeClient.requery sur l'évènement "AfterUpdate" de ta liste.En s'assurant que dans les champs "Mois","Année"de ta requête alimentant ton sous-Form aient comme critères un truc du genre:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Champ:"Mois": critère= Forms![F_ListeClient]![Mois]
    Champ:"Année": critère= Forms![F_ListeClient]![Année]

  7. #7
    Membre régulier Avatar de nicou50
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    131
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 131
    Points : 80
    Points
    80
    Par défaut non plus...
    ça ne fonctionne pas. Dans ma requête, j'avais fait comme tu me suggère avec les critères faisant référence aux champs du formulaire...
    Mais le problème se manifeste même au chargement du formulaire : il charge mon sous-formulaire comme si mes listes déroulantes étaient null.
    Autrement dit, il n'arrive même pas à reconnaître les valeurs dans des listes déroulantes dans mon formulaire. c'est du moins ce que je comprends...

  8. #8
    Membre régulier Avatar de nicou50
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    131
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 131
    Points : 80
    Points
    80
    Par défaut J'ai trouvé comment faire ;)

    J'ai géré mon sous-formulaire autrement. Je me suis débrouillé pour changer les paramètres d'entrées de la requête...


    nicou50

  9. #9
    Membre régulier Avatar de nicou50
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    131
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 131
    Points : 80
    Points
    80
    Par défaut oups...
    J'ai oublié de vous remercier...dsl !
    pour tout!!!


    nicou50

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

Discussions similaires

  1. [AC-2010] Insérer des données à partir d'un formulaire basé sur une requête sélection
    Par xdevel dans le forum Requêtes et SQL.
    Réponses: 7
    Dernier message: 17/10/2014, 13h38
  2. Réponses: 4
    Dernier message: 29/07/2009, 14h19
  3. Réponses: 6
    Dernier message: 08/07/2008, 10h44
  4. Sommer colonnes dans un sous formulaire basé sur une requête
    Par maronnette dans le forum Requêtes et SQL.
    Réponses: 9
    Dernier message: 04/05/2008, 14h11
  5. Ouvrture Formulaire basé sur une requête paramétrée
    Par teffal dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 10/07/2006, 16h04

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