Partage
  • Partager sur Facebook
  • Partager sur Twitter

problème requête Access

je comprend pas mon erreur

Sujet résolu
    11 mai 2011 à 14:41:08

    Bonjour,

    J'ai une base de donnée (avec plein de tables, requêtes et formulaire) qui fonctionne bien, elle sert a gérer le nombre de défauts.

    Je veux rajouter une requêet permettant de faire le calcul du taux= nbr de défauts*1000000/production sur un mois.

    Je fais donc une somme sur les quantité pour toutes les entrées du mois et pareil pour la production. Je créé ensuite le champ Taux : [SommeDeQuantité ajustée]*1000000/[SommeDeProduction]

    Je vous met le SQL de la reuête en entier si ça peu vous permettre de m'aider.
    Je vois pas du tout où j'ai fait une erreur. Mon problème est que quand j'exécute la requête Access ouvre une fenêtre de messagerie pour que je renseigne SommeDeQuantité ajustée et SommeDeProduction; mais si je met n'importe quoi j'ai quand même les bon résultat dans ma requête.

    SELECT [Enregistrements Requête].Année, [Lignes de montage].Appareil, Composants.Composant, Détails.Détails, Sum([Enregistrements Requête].[Quantité ajustée]) AS [SommeDeQuantité ajustée], Sum([Production hebdomadaire].Production) AS SommeDeProduction, [SommeDeQuantité ajustée]*1000000/[SommeDeProduction] AS Taux
    FROM [Production hebdomadaire] INNER JOIN ([Lignes de montage] INNER JOIN (Détails INNER JOIN (Composants INNER JOIN [Enregistrements Requête] ON Composants.[Code Composant]=[Enregistrements Requête].[Code composant]) ON Détails.[Code détails]=[Enregistrements Requête].[Code détails]) ON [Lignes de montage].[Code ligne]=[Enregistrements Requête].[Code ligne]) ON ([Production hebdomadaire].Appareil=[Lignes de montage].Appareil) AND ([Production hebdomadaire].Semaine=[Enregistrements Requête].Semaine) AND ([Production hebdomadaire].Année=[Enregistrements Requête].Année)
    WHERE ((([Enregistrements Requête].Semaine) Between DatePart("WW",DateSerial(Year(Date()),Month(Date())-1,1),2,2) And DatePart("WW",DateSerial(Year(Date()),Month(Date()),1)-1,2,2)))
    GROUP BY [Enregistrements Requête].Année, [Lignes de montage].Appareil, Composants.Composant, Détails.Détails
    HAVING ((([Enregistrements Requête].Année)=Year(Date())-1))
    ORDER BY [SommeDeQuantité ajustée]*1000000/[SommeDeProduction] DESC;

    Si vous pouvez m'aider, merci beaucoup.
    Kantin.
    • Partager sur Facebook
    • Partager sur Twitter
      17 mai 2011 à 15:50:28

      A parament on ne peut pas faire un tri sur un champ calculé du coup j'ai créer une autre requête reprenant les données de celle là et permettant de faire le tri.
      • Partager sur Facebook
      • Partager sur Twitter

      problème requête Access

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown