Developpez.com - Rubrique Access

Le Club des Développeurs et IT Pro

Apprendre à gérer une cave à vin avec Access

Un tutoriel de Claude Leloup

Le 2017-09-24 17:49:24, par ClaudeLELOUP, Rédacteur/Modérateur
Bonjour,

http://claudeleloup.developpez.com/t...ss/cave-a-vin/

Cette application de gestion de cave à vin n'a pas la prétention de rivaliser avec les logiciels existants, même gratuits, que vous pouvez facilement trouver sur la toile.
Voyez plutôt ceci comme un prétexte pour montrer combien il est facile d'utiliser Access pour réaliser des outils bien pratiques : en l'occurrence, une gestion de stock.
En effet, il s'agit de décrire différents articles (les bouteilles) que l'on entre en stock (les achats), que l'on range à un endroit précis (les casiers de la cave), que l'on sort ensuite (les consommations… avec modération) et périodiquement dresser l'inventaire (ce qui reste, valorisé ici au dernier prix d'achat).

C’est aussi l'occasion de montrer quelques réalisations pratiques qui répondent à des questions posées sur le forum :
- construire un formulaire de recherche multicritère (ici, basé sur une requête enregistrée qui est non modifiable) ;
- afficher une image différente pour chaque enregistrement et logeant ces images en dehors de la base ;
- montrer une astuce pour contourner l'absence de mise en forme conditionnelle pour un cadre d'options ;
- décrire une méthode pour cloner un enregistrement et ses dépendants éventuels dans les tables liées à la sienne ;
- construire un état basé sur une requête d'analyse croisée ;
- imprimer un état sur plusieurs colonnes, quand cela permet d'économiser du papier.

Vos commentaires sont les bienvenus.
  Discussion forum
19 commentaires
  • tee_grandbois
    Expert éminent sénior
    Bonsoir Claude,
    tu nous a encore servi un grand millésime avec ce tuto

  • ClaudeLELOUP
    Rédacteur/Modérateur
    À ta santé ! Guy.
  • kabamel
    Membre régulier
    Salut, en voilà le coup du génit.
    Merci Claude
  • User
    Rédacteur/Modérateur
    Merci Claude !

    A consulter sans modération
  • Fabikaz
    Candidat au Club
    Avec vos tutos, la coupe n'est jamais pleine ! Fantastique.

    Merci

    Fabien
  • ClaudeLELOUP
    Rédacteur/Modérateur
  • ClaudeLELOUP
    Rédacteur/Modérateur
    Bonjour hand92,

    En fait, c’est la source de l’état eRepartition qui fait problème : c’est une requête croisée et elle coince lorsqu’il n’y a pas de données pour une de ses colonnes.
    On va un peu ruser pour faire en sorte qu’on trouve une quantité (éventuellement zéro) pour chaque catégorie.
    J’ai ajouté cette requête rRepartition0

    Code SQL :
    1
    2
    SELECT "-" AS Region, tCategories.Categorie, 0 AS NbreBouteilles 
    FROM tCategories;

    Et j’ai créé l’union rRepartitionComplet = rRepartition + rRepartitionO
    Soit :
    Code SQL :
    1
    2
    3
    4
    SELECT tRegions.Region, tCategories.Categorie, Sum(stock([tBouteillesPK])) AS NbreBouteilles 
    FROM tRegions INNER JOIN (tAppellations INNER JOIN (tCategories INNER JOIN (rInventaire INNER JOIN tBouteilles ON rInventaire.tBouteillesFK = tBouteilles.tBouteillesPK) ON tCategories.tCategoriesPK = tBouteilles.tCategoriesFK) ON tAppellations.tAppellationsPK = tBouteilles.tAppellationsFK) ON tRegions.tRegionsPK = tAppellations.tRegionsFK 
    GROUP BY tRegions.Region, tCategories.Categorie  UNION SELECT "-" AS Region, tCategories.Categorie, 0 AS NbreBouteilles 
    FROM tCategories;
    Et, dans la foulée, j’ai modifié la source de l’état :


    Cette fois, on y est :


    La db modifiée est ici : http://claudeleloup.developpez.com/%2699/CaveAvin.zip
  • hand92
    Futur Membre du Club
    Bonjour
    J'ai cherché à remplacer une application de gestion d'une cave à vin développer par MicroApplication et cette BDD répond au besoin. Je ne suis pas un pro d'Access mais avec un peu de persévérance et curiosité j'ai commencé à adapter cette application. Toutefois je me heurte à une erreur sur l'état par région quand par exemple il n'y a aucune bouteille en stock de vin doux naturel une erreur d'exécution 3070 s'affiche. Je ne sais pas si ce problème a déjà été soulevé et suis preneur de toute information. merci d'avance
  • ClaudeLELOUP
    Rédacteur/Modérateur
    Bonjour hand92,

    Bienvenue puisque c’est ton premier message sur dvp.
    Pas sûr que je puisse t’aider ainsi sans ausculter ta base de données.
    Peux-tu poster le zip de ta base en version compatible Access2000 ?
  • hand92
    Futur Membre du Club
    Merci pour la réponse, je joins ma BDD '(caveavinperso)mais je me suis dépanné en supprimant les entêtes dans l'état par contre la base de données du forum (caveavin) plante car il n'y a plus de vin doux naturel
    je l'envoi aussi