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 :

Dernière ligne requête fonction iif


Sujet :

Requêtes et SQL.

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2008
    Messages
    35
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 35
    Points : 16
    Points
    16
    Par défaut Dernière ligne requête fonction iif
    Bonjour à tous,
    J'ai beau chercher je ne trouve pas la solution à mon problème.

    J'ai ma requête qui en fonction du montantHTCde et du Franco applique ou pas les FraisDePort.

    Tout marche nickel sauf pour la dernière ligne de la requête qui multiplie par 2 les FraisDePort.
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    SELECT Commande.IdCommande, Commande.MontantHTCde, FournisseurPrincipal.Franco, Commande.FraisDePort, 
    Sum(IIf([MontantHTCde]<[Franco],[FraisDePort],"0,00")) AS Expr1, 
    ([Expr1]*1.196)-[Expr1] AS TvaSurFraisDePort
    FROM (FournisseurPrincipal INNER JOIN Produit ON FournisseurPrincipal.FournisseurPrincipal=Produit.FournisseurPrincipal) 
    INNER JOIN (Commande INNER JOIN LigneCde ON Commande.IdCommande=LigneCde.IdCommande) ON Produit.IdProduit=LigneCde.IdProduit
    GROUP BY Commande.IdCommande, Commande.MontantHTCde, FournisseurPrincipal.Franco, Commande.FraisDePort;

    Quelqu'1 peut il m'aider ?
    Merci d'avance
    Mimosa21

  2. #2
    Responsable
    Office & Excel


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 124
    Points : 55 905
    Points
    55 905
    Billets dans le blog
    131
    Par défaut
    Bonjour

    A lire ta requête (tu comprendras que je n'ai pas reproduit les tables), je pense que la requête multiplie tes FP par 2 parce que tu as deux produits sur cette commande. Si tu en avais trois, tu aurais FP * 3, etc.

    Pour moi, le inner join sur les lignes de commande est de trop.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2008
    Messages
    35
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 35
    Points : 16
    Points
    16
    Par défaut
    Merci de m'avoir répondu, je ne pense pas que ça vienne de cela. Je n'ai pas le temps de controler ça ce soir. Je rentre juste du boulot mais je vérifierai demain matin avant de repartir pour le boulot.
    Merci

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2008
    Messages
    35
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 35
    Points : 16
    Points
    16
    Par défaut
    Bonjour tous,
    Je n'ai pas pu me mettre sur mon cas avant aujourd'hui mais effectivement cela vient bien du fait qu'il y ait plusieurs articles en commande.

    Enfin presque !!!

    Partant sur ce principe, je me suis dit que ça s'ajoutait donc cela venait de ma fonction iif
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Sum(IIf([MontantHTCde]<[Franco],[FraisDePort],"0,00")) AS Expr1
    j'ai retiré Sum(). Ce qui me donne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    IIf([MontantHTCde]<[Franco],[FraisDePort],"0,00") AS Expr1
    Et là top moumoute, ça marche !!!

    Merci beaucoup Pierre, vous m'avez beaucoup aidé.
    Ps: Le inner Join vient du mode création qui me lie plusieures table pour obtenir mon résulat.


    Un autre problème à surgit car je n'arrivais plus à mettre le format en 0,00€. Résolu par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    IIf([MontantHTCde]<[Franco],[FraisDePort],"0") AS Expr1, FormatCurrency([Expr1],2) AS Expr2
    Encore une fois merci
    Mimosa21

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

Discussions similaires

  1. Recherche de la dernière ligne en fonction d'un code en debut de colonne
    Par oliver75 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 21/08/2007, 16h01
  2. [MySQL] la fonction PHP qui permet de recuperer la dernière ligne inserée dans bdd
    Par otari dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 06/06/2007, 19h05
  3. [Requête] Fonction "Est Null" et Iif()
    Par lolo25 dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 29/12/2006, 12h41
  4. Réponses: 6
    Dernier message: 09/06/2006, 18h22
  5. requête extraction dernière ligne table
    Par COLOMBAT dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 06/06/2006, 09h57

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