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 :

Création automatique d'une requête basée sur le dernier enregistrement d'une table [AC-2010]


Sujet :

Access

  1. #1
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2009
    Messages
    106
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2009
    Messages : 106
    Points : 97
    Points
    97
    Par défaut Création automatique d'une requête basée sur le dernier enregistrement d'une table
    Bonjour, je joins un fichier Word pour démontrer plus efficacement ce que j'essai d'accomplir, en résumé, si un nouvel enregistrement est créé dans la table Produits, ayant comme ID le 433, j'aimerais qu'une requête soit créée automatiquement qui porterait le nom Produits433 et qui ne contiendrait que les informations de ce dernier enregistrement.
    Confus, svp, regarder mon document Word qui vous fournis des détails imagés.

    Claude
    Montréal, Québec

  2. #2
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    12 620
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 12 620
    Points : 56 862
    Points
    56 862
    Billets dans le blog
    40
    Par défaut
    bonjour,

    je ne comprend pas le besoin de créer une requête par produit

    Pourquoi ne pas créer une seule requête enregistrée et paramétrée avec le numéro du produit:

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    PARAMETERS [Identifiant produit] long;
    SELECT Produits.ID, Produits.Barcode, Produits.PrixVente, Produits.VentesGL, Produits.CaisseGL, Produits.StockageGL, Produits.AchatsGL, Produits.TPSGL, Produits.TVQGL, Produits.ChargéGL, Produits.VisaGL, Produits.MastercardGL, Produits.DiscoverGL, Produits.CarteDébitGL, Produits.CarteCréditAutreGL, Produits.ChèquesGL, Produits.ClientLCMGL FROM Produits 
    WHERE Produits.ID= [Identifiant produit]

    non ?

  3. #3
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2009
    Messages
    106
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2009
    Messages : 106
    Points : 97
    Points
    97
    Par défaut Plusieurs boutons de commande ont une requête par produit
    Merci f-leb de ta réponse rapide.
    La réponse est la suivante, sur plusieurs formulaires, j’ai des boutons qui ont un code VBA qui utilise ces requêtes pour extraire des informations relatives à un produit spécifique, par exemple, le bouton plante à fleurs 500 g contient le code VBA suivant :
    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
    28
    29
    30
    31
    32
    Private Sub Commande530_Click()
    Dim dbs As DAO.Database
    Dim rst As DAO.Recordset
    Set dbs = CurrentDb
     
    Set rst = dbs.OpenRecordset("TransactionsCaisseTemporaire", dbOpenDynaset)
    Set rst2 = dbs.OpenRecordset("Produits194", dbOpenDynaset)
     
    If txtDisplay.Caption = 0 Then
            MsgBoxOKOnly ChoisirQuantité
     
            Exit Sub
        End If
     
     With rst
            Call ClipBoard_SetData(txtDisplay.Caption)
            DoCmd.GoToControl "QuantitéVendue2"
            DoCmd.RunCommand acCmdPaste
            txtDisplay.Caption = 0
            DoCmd.GoToControl "NomProduit"
            NomProduit = rst2.Barcode
            DoCmd.GoToControl "PrixVendant"
            PrixVendant = rst2.PrixVente
            RéfProduit = rst2.ID
            PrixAvantEsc = PrixVendant
            DoCmd.GoToControl "Quantité1c"
            Refresh
            DoCmd.GoToRecord , "", acNewRec
     
        End With
     
    End Sub
    CE CODE retourne les informations contenues dans la requête « Produits194 »
    Comme tu vois, c’est que tous ces boutons contiennent une source de données différentes dans le code.

    J’espère que c’est assez explicite, merci encore

  4. #4
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    12 620
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 12 620
    Points : 56 862
    Points
    56 862
    Billets dans le blog
    40
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set rst2 = dbs.OpenRecordset("Produits194", dbOpenDynaset)
    en poursuivant sur l'idée de la requête paramétrée précédente (nommée "ReqProduit" par exemple):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Dim qdf As DAO.QueryDef
     
    Set qdf = dbs.QueryDefs("ReqProduit")
          qdf.Parameters("[Identifiant produit]") = 194
     
      Set rst2 = qdf.OpenRecordset
    tu obtiens le même résultat mais avec une seule requête enregistrée au préalable.

  5. #5
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2009
    Messages
    106
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2009
    Messages : 106
    Points : 97
    Points
    97
    Par défaut Merci Andrey
    Mon problème a été résolu rapidement même s'il n'était pas simple à première vue, j'écris ici le code qui a fait que tout a fonctionné, sans oublié de presser le bouton de balises comme indiqué par le modérateur... merci de me le rappeler
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    Dim dbs As Database
    Dim strSQL As String
    Dim strQueryName As String
    Dim qryDef As QueryDef
    Dim CurrentID%
    Set dbs = CurrentDb
    CurrentID = Me.ID.Value
    strQueryName = "Produits" & CurrentID
    strSQL = "SELECT Produits.ID, Produits.Barcode, Produits.PrixVente, Produits.VentesGL, Produits.CaisseGL, Produits.StockageGL, Produits.AchatsGL, Produits.TPSGL, Produits.TVQGL, Produits.ChargéGL, Produits.VisaGL, Produits.MastercardGL, Produits.DiscoverGL, Produits.CarteDébitGL, Produits.CarteCréditAutreGL, Produits.ChèquesGL, Produits.ClientLCMGL FROM Produits WHERE Produits.ID=" & CurrentID
    DoCmd.ShowAllRecords
    Set qryDef = dbs.CreateQueryDef(strQueryName, strSQL)
    Set qryDef = Nothing
    Set dbs = Nothing

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

Discussions similaires

  1. Réponses: 7
    Dernier message: 21/04/2010, 19h27
  2. une liste ou requête basée sur deux fichiers
    Par chapeau_melon dans le forum WinDev
    Réponses: 8
    Dernier message: 12/11/2007, 20h00
  3. Réponses: 1
    Dernier message: 14/09/2007, 18h04
  4. [SimpleXML] comment faire une requête basée sur un namespace d'un attribut ?
    Par hansaplast dans le forum Bibliothèques et frameworks
    Réponses: 7
    Dernier message: 03/09/2007, 01h18
  5. une requête basée sur un seul critère ?
    Par rangernoir dans le forum Access
    Réponses: 5
    Dernier message: 07/09/2005, 18h53

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