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 :

Comment utiliser 1 état avec 2 requêtes différentes ?


Sujet :

IHM

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    683
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 683
    Points : 237
    Points
    237
    Par défaut Comment utiliser 1 état avec 2 requêtes différentes ?
    Bonjour,

    J'ai, actuellement, un état qui à pour source une requête utilisant un N° contenu dans un formulaire.

    Je voudrais utiliser cet état avec un autre formulaire et donc une autre requête.

    Tout à l'heure, le site était en maintenance : j'ai cherché sur le Net et j'ai trouvé ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
     
        Private Sub cmdCurrent_Click()
     
            'Filter report to display only Supplier currently showing on frmExample
            ' (by SupplierID field)
            DoCmd.OpenReport "rptSuppliers", acViewPreview, , "SupplierID = " & SupplierID
     
        End Sub
    Cela se rapproche de ce que je veux mais moi, je veux utiliser une autre requête existante selon le formulaire dans lequel je suis.

    Est-ce possible ?

    si oui, comment ?

    Merci

  2. #2
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 331
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 331
    Points : 23 786
    Points
    23 786
    Par défaut
    Tu peux mais il faut que les 2 requêtes aient les mêmes champs, est-ce le cas ?

    Si oui, probablement que tu pourrais faire une requête générique puis n'afficher que ce qui t'intéresses, grâce à l'option de DoCmd.OpenReport

    dans ton exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.OpenReport "rptSuppliers", acViewPreview, , "SupplierID = " & SupplierID
    Ouvre le rapport nommé rptSuppliers en n'affichant que les informations du "Supplier" dont le code correspond à SupplierID.

    Sinon il y a une propriété RecordSource dans les rapports qui précise où il doit aller chercher ses données.

    Tu pourrais essayer de mettre sur "On Load" (Au chargement) ou "On Open" (À l'ouverture) du rapport

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if  not isnull(me.OpenARgs) then
       Me.RecordSource=me.openArgs
    end if

    et mettre dans le code qui ouvre le rapport

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.OpenReport "rptSuppliers", acViewPreview, , ,"NomTaRequete"
    Je n'ai jamais fait cela mais il possible ça marche.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  3. #3
    Rédacteur/Modérateur
    Avatar de Jeannot45
    Homme Profil pro
    Retraité
    Inscrit en
    Octobre 2004
    Messages
    3 871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 871
    Points : 8 489
    Points
    8 489
    Par défaut


    Pour compléter les infos de marot_r voici un article sur Utiliser plusieurs requetes pour un même état

    Bonne lecture
    Jeannot

    Liens Office indispensables à visiter: Cours (Tutos), F.A.Q., Sources VBA

    Ne posez pas de questions par MP, je n'ai pas le temps d'y répondre

  4. #4
    Membre actif
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    683
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 683
    Points : 237
    Points
    237
    Par défaut
    Merci pour vos réponses.

    Mes requêtes sont similaires sauf qu'elles ne portent pas sur les mêmes tables :
    1ére requête : T_Entetes et T_lignes
    2ème requête: T_EntetesArchives et T_LignesArchives

    Les champs pointés sont les mêmes et ont les mêmes caractéristiques : exemple:
    NUMPIECE existe dans T_Entetes et dans T_EntetesArchives.

    Thibault

  5. #5
    Rédacteur/Modérateur
    Avatar de Jeannot45
    Homme Profil pro
    Retraité
    Inscrit en
    Octobre 2004
    Messages
    3 871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 871
    Points : 8 489
    Points
    8 489
    Par défaut


    Tu trouveras la réponse dans le chapitre 3 de l'article que je t'ai conseillé.

    C'est à l'ouverture de ton état que tu vas affecter la nouvelle source.
    En mode création, tu affiches les propriétés de l'état et dans l'onglet évènements, tu cliques dans Sur Ouverture.

    Dans la procédure, tu indiques :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Report_Open(Cancel As Integer)
            Me.RecordSource = "Nom de la requête à utiliser"		
    End Sub
    Dans le tuto, j'explique comment choisir telle ou telle source en fonction du choix dans un formulaire. Voilà de quoi t'ouvrir quelques pistes

    Bonne continuation
    Jeannot

    Liens Office indispensables à visiter: Cours (Tutos), F.A.Q., Sources VBA

    Ne posez pas de questions par MP, je n'ai pas le temps d'y répondre

  6. #6
    Membre à l'essai
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2015
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Octobre 2015
    Messages : 16
    Points : 18
    Points
    18
    Par défaut soucis légèrement différent
    Bonjour,

    Dans le chapitre 3 on veut changer changer la totalité de l'état

    ce que je souhaiterai faire :

    j'ai deux requêtes : une qui calcule la somme des prix, une qui calcule la somme des quantités.

    quand je fait une requête qui correspond au deux j'ai des chiffres astronomique que je ne comprends pas

    du coup je voudrez dans mon état indiquer en même temps les deux requêtes pour le même numéro d'article ce que les sous états ne permettent pas.

    j’essaie d’être clair mais ce n'es pas simple

    les requêtes sont R_PE et R_Q_de_PE.

    merci de vos réponses

    Base etude b.rar clair mais ce n'es pas simple

Discussions similaires

  1. [SoapUI] Comment tester un WebService avec des requêtes différentes
    Par houpli dans le forum Tests et Performance
    Réponses: 0
    Dernier message: 11/05/2012, 13h10
  2. Réponses: 1
    Dernier message: 04/05/2006, 10h45
  3. Ouverture d'un formulaire avec des requêtes différentes
    Par Jérémy VAUTIER dans le forum Access
    Réponses: 3
    Dernier message: 02/03/2006, 07h31
  4. Réponses: 4
    Dernier message: 16/02/2006, 16h28
  5. [CF][PPC/VB.NET] Comment utiliser les Socket avec Pocket PC ?
    Par joefou dans le forum Windows Mobile
    Réponses: 5
    Dernier message: 17/05/2005, 14h24

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