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 :

requête seuil d'alerte pour gestion des stocks


Sujet :

Requêtes et SQL.

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 105
    Points : 38
    Points
    38
    Par défaut requête seuil d'alerte pour gestion des stocks
    bonjour,

    j'ai créé une base de gestion des stocks qui fonctionne très bien avec entrées et sorties de stocks etc... mais je souhaite créer un seuil d'alerte sur mon stock de produits. En dessous d'un certain seuil (j'ai créé un champ "stockmini" dans ma table produits) je voudrais qu'une alerte m'avertisse que le produit est inférieur à celui que j'ai défini.

    j'ai créé une requête avec les champs suivants :

    -nom du produit
    -champ calculé avec le total de mes entrées pour chaque produit
    -champ calculé avec le total de mes sorties pour chaque produit
    -champ calculé (totalstock) avec total de mes entrées - total de mes sorties
    -stockmini
    -champ calculé avec la formule suivante : Alerte: Vrai/Faux (totalstock=< StockMini ; « Alerte » ; « OK »)

    ce dernier champ dont j'ai trouvé la formule sur le forum ne fonctionne pas car j'ai le message suivant : l'expression entrée comporte un point (.) non valide ou un point d'exclamation (!) ou des paranthèses () non valides.

    merci de votre aide.

  2. #2
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Développeur VBA/C#/VB.Net/Power Platform
    Inscrit en
    Juillet 2007
    Messages
    14 598
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur VBA/C#/VB.Net/Power Platform
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 598
    Points : 34 283
    Points
    34 283
    Par défaut
    bonjour,
    peux-tu nous indiquer le code SQL qui correspond actuellement à ta requête stp ?
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  3. #3
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 219
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 79
    Localisation : France

    Informations professionnelles :
    Secteur : Services à domicile

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 219
    Points : 1 707
    Points
    1 707
    Par défaut
    salut,
    2 erreurs syntaxes
    essayes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Alerte: VraiFaux(totalstock<= StockMini ; " Alerte " ; " OK ")

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2009
    Messages : 32
    Points : 16
    Points
    16
    Par défaut
    Ou alors tu crees une requete select en affichant uniquement les noms de produit dont le stock est inferieur au seuil de reappro. Pour ma base, cela donne le code suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT Produits.[Nom du produit], Produits.Stock, Produits.[Seuil de réapprovisionnement]
    FROM Produits
    WHERE ((([Produits]![Stock])<=[Produits]![Seuil de réapprovisionnement]));
    Et ca marche tres bien normalement

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 105
    Points : 38
    Points
    38
    Par défaut
    tout d'abord, merci de votre aide.

    voici le code SQL de ma requête (sans le dernier champ calculé)


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SELECT Tbl_produits.nomarticle, (SELECT Nz(Sum(tbl_stock.entree),0) FROM Tbl_stock WHERE rid_produits=id_produits) AS [Total Entrées], (SELECT Nz(Sum(tbl_commande.quantite),0) FROM Tbl_commande WHERE rid_produits=tbl_produits.id_produits) AS [Total Sorties], (SELECT Nz(Sum(tbl_stock.entree),0) FROM Tbl_stock WHERE rid_produits=id_produits)-(SELECT Nz(Sum(tbl_commande.quantite),0) FROM Tbl_commande WHERE rid_produits=tbl_produits.id_produits) AS totalstock, Tbl_produits.stockmini
    FROM Tbl_produits;

    LE VIEUX, concernant ta ligne " Alerte: VraiFaux(totalstock<= StockMini ; « Alerte » ; « OK ») ", j'ai le message suivant : la syntaxe de l'expression entrée n'est pas correcte.

    TPRUN, j'essaierai cette procédure si je n'arrive pas autrement mais je pense que ce que j'ai fait n'est pas mal si ce n'est que le champ calculé dans ma requête est incorrecte.

  6. #6
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 219
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 79
    Localisation : France

    Informations professionnelles :
    Secteur : Services à domicile

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 219
    Points : 1 707
    Points
    1 707
    Par défaut
    re,

    la syntaxe est bonne chez moi - ce qui m'interpelle c'est tes quillements qui doivent poser problème c'est cela qu'il faut " et non « - comment as-tu

    rentrer le texte dans ta requête ?

    c'est ma faute j'ai recopier ton expression et j'ai oublié de modifier les guillemets reprend avec ce code /
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Alerte: VraiFaux(totalstock<= StockMini ; "Alerte" ; "OK")
    as-tu essayé avec le générateur d'expression ?

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 105
    Points : 38
    Points
    38
    Par défaut
    super, ça marche.

    stupide que je suis. dans mon champ calculé totalstock, au lieu de faire [entrées]-[sorties], j'ai recopié toute la ligne du champ entrée - toute la ligne du champ sorties. le résultat s'affichait bien mais c'est pour ça que la ligne :

    Alerte: VraiFaux(totalstock<= StockMini ; " Alerte " ; " OK ")


    ne fonctionnait pas.

    merci beaucoup.

    juste une petite précision, comment faire pour que le mot "ALERTE" apparaisse en rouge ou modifier la taille de la police pour que ça saute bien aux yeux.

    merci encore

Discussions similaires

  1. [AC-2007] Création d'une base de données pour Gestion des stocks
    Par manovo31 dans le forum Modélisation
    Réponses: 1
    Dernier message: 25/10/2012, 22h38
  2. Base de donnee access2003 pour gestion des stocks
    Par Eymins dans le forum Modélisation
    Réponses: 1
    Dernier message: 02/05/2010, 10h07
  3. Création d'une base de données pour gestion des stocks
    Par samaaantha dans le forum Modélisation
    Réponses: 8
    Dernier message: 08/05/2008, 21h13
  4. requête pour gestion des stocks
    Par dodie84 dans le forum Requêtes et SQL.
    Réponses: 11
    Dernier message: 10/04/2008, 13h55
  5. choix de table pour gestion des stocks
    Par Piloupilou999 dans le forum Access
    Réponses: 1
    Dernier message: 28/01/2007, 20h49

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