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

Bases de données Delphi Discussion :

[Access] Importer le résultat d'une requête dans Access en Delphi


Sujet :

Bases de données Delphi

  1. #1
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2019
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2019
    Messages : 5
    Points : 3
    Points
    3
    Par défaut [Access] Importer le résultat d'une requête dans Access en Delphi
    Bonsoir à tous,
    J'ai vraiment besoin de votre aide,
    J'ai créer des tables dans Access (Article, reception_des_articles, sortie_des_article)
    Et j'ai fait une requête SQL dans Access qui m'affiche la quantité en stock (entrées- sorties) et elle marche très bien, maintenant j'ai créer un DBLookupComboBox en delphi et j'ai ramené les codes des articles de la table Article dans ce dernier, maintenant je veux créer un champ qui m'affiche la quantité en stock de l'article choisi dans le DBLookupComboBox, sachant que j'ai créer une requête dans Access qui m'affiche ça.
    Merci pour m'aider et me dire comment faire pour avoir ce résultat dans delphi.

  2. #2
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 046
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 046
    Points : 40 962
    Points
    40 962
    Billets dans le blog
    62
    Par défaut
    Bonjour,

    À ma connaissance on n'importe pas une requête Access, on utilise un composant (ADOQuery) et l'on ouvre l'ensemble de résultats obtenus (Open ou Active:=True)
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  3. #3
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2019
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2019
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par SergioMaster Voir le message
    Bonjour,

    À ma connaissance on n'importe pas une requête Access, on utilise un composant (ADOQuery) et l'on ouvre l'ensemble de résultats obtenus (Open ou Active:=True)

    Merci Monsieur, donc est ce que je peux obtenir le résultat de cette requête? dans le ADOQuery, ou bien la créer à nouveau dans le ADOQuery,
    je m'excuse je suis une débutante dans la programmation DELPHI c'est pour ça je pose cette question.

  4. #4
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 046
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 046
    Points : 40 962
    Points
    40 962
    Billets dans le blog
    62
    Par défaut
    Vous posez un TADOquery sur votre forme (connecté bien sûr à un TADOConnection), vous mettez le SQL que vous avez testé avec Access dans la propriété SQL
    soit par code
    comme ceci : Adoquery1.SQL.Text:='SELECT * FROM TABLE WHERE ....';ou encore
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    ADoquery1.SQL.Clear;
                  ADOQuery1.SQL.Add('SELECT *');
                  ADOQuery1.SQL.Add('FROM TABLE');
                  ADOQuery1.SQL.Add('WHERE ...');
    , soit directement dans la propriété
    et vous ouvrez ensuite cette requête par ADOQuery1.Open ou ADOQuery1.Active:=True


    P.S. je ne comprends qu'en Algérie on persiste à enseigner Delphi en préconisant ADO et Access (les deux étant mes bêtes noires) alors qu'il y a des SGBDs et des composants beaucoup plus performants
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  5. #5
    Membre éprouvé Avatar de BuzzLeclaire
    Homme Profil pro
    Dev/For/Vte/Ass
    Inscrit en
    Août 2008
    Messages
    1 606
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Dev/For/Vte/Ass

    Informations forums :
    Inscription : Août 2008
    Messages : 1 606
    Points : 1 113
    Points
    1 113
    Par défaut
    Citation Envoyé par KawtharWhite Voir le message
    Bonsoir à tous,
    ....un champ qui m'affiche la quantité en stock de l'article choisi dans le DBLookupComboBox, sachant que j'ai créer une requête dans Access qui m'affiche ça..
    Bonjour,

    Si ta requête dans Access affiche la quantité, du moins ce que tu souhaite afficher, pourquoi ne pas uniquement utiliser cette requête ? (que tu pourrais afficher avec autre chose qu'un DBLookupComboBox)

    Et puis en terme de stock, il serait plus judicieux :
    1. d 'avoir un champ StockPhysique directement dans la table article que tu mettrais à jours à chaque mouvement entrée/sortie/inventaire
    2. d 'utiliser une table mémorisant les mouvements d'entrée/sortie avec la date et un compteur, le type de mvt, la quantité mouvement, la quantité résultante "le stock permanent", je te laisse réfléchir pourquoi.



    A+

  6. #6
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 046
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 046
    Points : 40 962
    Points
    40 962
    Billets dans le blog
    62
    Par défaut
    Bonjour Buzz tu reprends du service

    d 'avoir un champ StockPhysique directement dans la table article que tu mettrais à jours à chaque mouvement entrée/sortie/inventaire
    autant je suis d'accord pour QTE entrée/sortie/inventaire autant je ne le suis pas pour stockphysique qui est une donnée calculée inventaire+entrees-sorties

    pour le point 2, d'accord aussi mais avec des bémols en terme de volume de table
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  7. #7
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2019
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2019
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par SergioMaster Voir le message
    Vous posez un TADOquery sur votre forme (connecté bien sûr à un TADOConnection), vous mettez le SQL que vous avez testé avec Access dans la propriété SQL
    soit par code
    comme ceci : Adoquery1.SQL.Text:='SELECT * FROM TABLE WHERE ....';ou encore
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    ADoquery1.SQL.Clear;
                  ADOQuery1.SQL.Add('SELECT *');
                  ADOQuery1.SQL.Add('FROM TABLE');
                  ADOQuery1.SQL.Add('WHERE ...');
    , soit directement dans la propriété
    et vous ouvrez ensuite cette requête par ADOQuery1.Open ou ADOQuery1.Active:=True


    P.S. je ne comprends qu'en Algérie on persiste à enseigner Delphi en préconisant ADO et Access (les deux étant mes bêtes noires) alors qu'il y a des SGBDs et des composants beaucoup plus performants
    Merci Monsieur,
    C'est exactement ça ce que je cherchais, j'avais l'idée mais j'ai pas pu l'appliquer comme je suis débutante mais ce code va m'aider. je vais l'appliquer et vous informer si je trouve un problème.
    L'application que je suis entraine de créer est une application de gestion de stock. J'ai créer des tables pour tous les documents(fiches d'inventaire, bon de réception, bon de sortie, bon de commande...etc) et j'ai fait des tables pour les fournisseurs et clients, mais comme je suis débutante en DELPHI j'ai trouvé un problème dans les champs calculés comme le stock de sécurité, le point de commande et la quantité économique malgré que je connais ses formules.

  8. #8
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2019
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2019
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par BuzzLeclaire Voir le message
    Bonjour,

    Si ta requête dans Access affiche la quantité, du moins ce que tu souhaite afficher, pourquoi ne pas uniquement utiliser cette requête ? (que tu pourrais afficher avec autre chose qu'un DBLookupComboBox)

    Et puis en terme de stock, il serait plus judicieux :
    1. d 'avoir un champ StockPhysique directement dans la table article que tu mettrais à jours à chaque mouvement entrée/sortie/inventaire
    2. d 'utiliser une table mémorisant les mouvements d'entrée/sortie avec la date et un compteur, le type de mvt, la quantité mouvement, la quantité résultante "le stock permanent", je te laisse réfléchir pourquoi.



    A+
    Bonjour Monsieur,
    Merci pour toutes ces idées proposées.
    pour les tables qui enregistrent les sorties et entrées j'ai créer des tables pour l'affichage de l'historique des entrées et sorties ordonnées par dates et d'autres pour l'enregistrement des documents(bons de réception, bons de commande client, bons de commande magasin,bons de sortie et fiches d'inventaire).

    Maintenant comme cette application focalise beaucoup plus sur la gestion des stocks je veux utiliser quelques indicateurs, j'ai créer une forme qui contient un DBLOOKUPCOMBOBOX qui contient tous les articles, je veux que la quantité en stock de l'article choisi dans ce dernier sera affichée dans un Edit dés que je le sélectionne, ainsi que son stock de sécurité, point de commande, quantité économique et stock Min mais j'ai trouvé des difficultés vu que je ne suis pas professionnelle en programmation.

    Merci pour vos idées proposées et votre aide à l'avance.

  9. #9
    Membre éprouvé Avatar de BuzzLeclaire
    Homme Profil pro
    Dev/For/Vte/Ass
    Inscrit en
    Août 2008
    Messages
    1 606
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Dev/For/Vte/Ass

    Informations forums :
    Inscription : Août 2008
    Messages : 1 606
    Points : 1 113
    Points
    1 113
    Par défaut
    Citation Envoyé par SergioMaster Voir le message
    Bonjour Buzz tu reprends du service

    autant je suis d'accord pour QTE entrée/sortie/inventaire autant je ne le suis pas pour stockphysique qui est une donnée calculée inventaire+entrees-sorties

    pour le point 2, d'accord aussi mais avec des bémols en terme de volume de table
    Coucou Serge comment tu vas,

    Je lis souvent en fait mais je suis tellement blindé... comme beaucoup d'entre-nous.

    autant je ne le suis pas pour stockphysique
    En fait dans un logiciel géré par un éditeur de renom (que je ne nommerai pas), voilà comment cela se passe :

    - Une Table Article avec un champs StockPhys (qui représente la quantité total en stock à l'instant même) quelques soit les dépôts (hé oui le mutli-dépot)
    - Une Table Stock, où il y a le détail du StockPhys par dépôt, les champs : codearticle/codedepot/stockphys (pour faire simple)
    - Une Table Mouvements qui comporte absolument tous les mouvements (entrée :Bon de réception, saisie manuelle, etc... sortie : Facture, saisie manuelle etc..., inventaire) avec chronoDate et Chrononumérique afin d'avoir la quantité en stock connue à une DateT (pouvoir sortir une quantité en stock au 31/12 quelques soit l'année ou une autre date d'ailleurs...)

    Je ne développe pas ici la notion de sérialisation , gestion de Lot, les Gammes (exemple Taille et couleur) qui nécessiterait d'autre table bien sur. Je gère "sur 3 dossiers" des millions de lignes chaque année ainsi... depuis 15 ans (avec le bémol que tu évoques... lool)

    Je sais bien qu'on enregistre rarement des champs calculés dans une table, beurk pas bien ..., mais dans une base Access cela t'évite des requêtes qui font perdre du temps (qui peuvent même planter ... tu connais les lacunes d'Access ??).

    Le problème, c'est si jamais tu enregistres dans ta table mouvement un mouvement quelconque et qu'au moment de mettre à jour les tables stock ou article tu plantes... là tu t'amuses mais cela reste assez rare...

    Oups j’oubliais également la gestion des reliquats de commandes achat ou vente...

Discussions similaires

  1. Réponses: 3
    Dernier message: 05/04/2019, 15h13
  2. Réponses: 4
    Dernier message: 01/08/2018, 19h52
  3. [XL-2007] Importer le résultat d'une requête Access dans une feuille excel (via Excel)
    Par CrasherSEP dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 29/06/2017, 15h07
  4. Réponses: 2
    Dernier message: 27/09/2011, 14h40

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