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

SQL Procédural MySQL Discussion :

Fonction de calcul de prix TTC


Sujet :

SQL Procédural MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2005
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Services à domicile

    Informations forums :
    Inscription : Septembre 2005
    Messages : 202
    Par défaut Fonction de calcul de prix TTC
    Bonjour,
    J'ai un petit problème d'arrondis avec la fonction suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    CREATE FUNCTION CalculPrixTTC (p_prix_ht DECIMAL, p_taux_tva DECIMAL) RETURNS FLOAT DETERMINISTIC
    BEGIN
        RETURN ((p_prix_ht / 100) * p_taux_tva) + p_prix_ht;
    END
    Quand j'appele ma fonction comme ceci : SELECT CalculPrixTTC(100, 19.60);
    J'ai 120 en résultat au lieu de 119.60
    Je pense m'être planté dans les types de données...
    Merci pour votre aide

    Stéphane

  2. #2
    Rédacteur/Modérateur

    Avatar de Antoun
    Homme Profil pro
    Architecte décisionnel
    Inscrit en
    Octobre 2006
    Messages
    6 284
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte décisionnel
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2006
    Messages : 6 284
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    CREATE  FUNCTION CalculPrixTTC (
      p_prix_ht DECIMAL(5,2), p_taux_tva DECIMAL(5,2))
    RETURNS float DETERMINISTIC
    BEGIN
        RETURN ((p_prix_ht / 100) * p_taux_tva) + p_prix_ht;
    END ;

  3. #3
    Membre éclairé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2005
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Services à domicile

    Informations forums :
    Inscription : Septembre 2005
    Messages : 202
    Par défaut
    J'ai déjà testé ce que tu me propose et il est vrais que le résultat se rapproche de ce que je recherche mais c'est pas encore ça :
    SELECT CalculPrixTTC(100, 19.60); donne 119.59999847412 alors que ((p_prix_ht / 100) * p_taux_tva) + p_prix_ht utilisé dans une requête me retourne bien 119.6000.....

  4. #4
    Rédacteur/Modérateur

    Avatar de Antoun
    Homme Profil pro
    Architecte décisionnel
    Inscrit en
    Octobre 2006
    Messages
    6 284
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte décisionnel
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2006
    Messages : 6 284
    Par défaut
    Dans ce cas, utilise RETURNS DECIMAL(5,2) au lieu de RETURNS FLOAT.

  5. #5
    Membre éclairé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2005
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Services à domicile

    Informations forums :
    Inscription : Septembre 2005
    Messages : 202
    Par défaut
    J'avais aussi testé avec decimal(5.2) et non decimal(5,2) et forcement j'avais une erreur...

    La ça marche nickel, merci pour ton aide

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

Discussions similaires

  1. [Débutant] Programme de calcul d'un prix TTC. Ok en Int, mais pas en float.
    Par juninho dans le forum C#
    Réponses: 4
    Dernier message: 22/04/2014, 20h53
  2. Formulaire calcul Prix TTC
    Par linuxien_62 dans le forum Développement Web en Java
    Réponses: 10
    Dernier message: 05/07/2013, 11h34
  3. Fonction de calcul de prix (facture) dans un tableau
    Par jeffer dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 13/02/2012, 08h18
  4. [débutant] algorithme de calcul de prix HT/TTC
    Par keren dans le forum Algorithmes et structures de données
    Réponses: 2
    Dernier message: 06/06/2009, 12h14
  5. code calcul prix TTC
    Par rihab007 dans le forum Windows Forms
    Réponses: 1
    Dernier message: 05/06/2008, 23h28

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