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

XMLRAD Discussion :

valeur virgule flottante incorrecte [Fait]


Sujet :

XMLRAD

  1. #1
    Membre du Club
    Inscrit en
    Août 2002
    Messages
    130
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 130
    Points : 58
    Points
    58
    Par défaut valeur virgule flottante incorrecte
    bonjour,

    j'ai un message d' erreur '75,5 n'est pas une valeur en virgule flottante'. j'obtiens cette erreur suite à une requête ' select sum(valeur) from table' ou valeur est definie en FLOAT. j'utilise firebird 1.5 et les IBX. le parametre regional est defini comme ',' . Ce que je ne comprend pas c'est que sur la même machine tourne la même application mais sur firebird 1.0 et sur un repertoire virtuel different et je n'ai pas de probleme ? De plus ceci se produit sur une machine de production et pas sur ma machine de test...Qqun peut il m'aider pour au moins me dire dans quelle direction chercher ? est ce que ça peut être lié à la DLL client firebird ?

  2. #2
    Membre du Club
    Inscrit en
    Août 2002
    Messages
    130
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 130
    Points : 58
    Points
    58
    Par défaut
    voila un morceau du log...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <LogItem><![CDATA['75,5' n'est pas une valeur en virgule flottante correcte]]></LogItem><LogItem><![CDATA[TXMLInstruction.DoAfterInternalInstruction - Name=COMPTEURMOIS_R]]></LogItem><LogItem><![CDATA[TDBExtract.DoProcess.OpenStatement]]></LogItem><LogItem><![CDATA[TDBExtract.DoProcess - Name=COMPTEURMOIS_R
    select sum(valeur) from stats 
    where numpsi = :User and
    codecompteur = ' H' and
    typepr = 'R' and
    datereal between :debmois and :finmois
    ]]></LogItem><LogItem><![CDATA[TXMLInstruction.Process - Operation=DBExtract Name=COMPTEURMOIS_R]]></LogItem><LogItem><![CDATA[TXMLGram.ProcessXMLInstructions - Name=ListHORAIRES -

  3. #3
    RDM
    RDM est déconnecté
    Membre émérite

    Profil pro
    Inscrit en
    Mars 2002
    Messages
    1 424
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 424
    Points : 2 927
    Points
    2 927
    Par défaut
    le log a l'air de montrer qu'il y a un problème dans le DoAfterInternalInstruction...
    peux-tu donner le code que tu as dans ce gestionnaire d'événement ?

  4. #4
    Membre du Club
    Inscrit en
    Août 2002
    Messages
    130
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 130
    Points : 58
    Points
    58
    Par défaut
    en effet j'ai un bout de code delphi et notamment un strtofloat qui doit poser soucis
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    WSumStr := context.GetValue('SUM');
          if wsumstr = '' then wsumstr := '0';
          // stockage info pour cacul ecart ds procedure afterListhoraires
          if XMLInstruction.Name = 'COMPTEURMOIS_R' then
              WMoisEcartPrv := Strtofloat(WSumStr);
          if XMLInstruction.Name = 'COMPTEURMOIS_P' then
              WMoisEcartPrv := WMoisEcartPrv - strtofloat(WSumStr);
          if XMLInstruction.Name = 'COMPTEURSEM_R' then
              WSemEcartPrv := strtofloat(WSumStr);
          if XMLInstruction.Name = 'COMPTEURSEM_P' then
              WSemEcartPrv := WSemEcartPrv - strtofloat(WSumStr);
    ça vient certainement de la définition d'un format mais je vois pas ou car ça ne plante pas sur mes machines de tests ?

  5. #5
    RDM
    RDM est déconnecté
    Membre émérite

    Profil pro
    Inscrit en
    Mars 2002
    Messages
    1 424
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 424
    Points : 2 927
    Points
    2 927
    Par défaut
    appelle l'application avec l'action XMLC_FormatSettings
    et comparez le DecimalSeparator sur les différents serveur

  6. #6
    Membre du Club
    Inscrit en
    Août 2002
    Messages
    130
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 130
    Points : 58
    Points
    58
    Par défaut
    les 2 applications me renvoient decimalseparator = ','. Par contre je n'ai plus le plantage que j'avais hier ???? même serveur ,même base et mêmes données ???? en effet il semble que le decimal separator varie et que je plantais bien sur l'instruction strtofloat ???? est ce que ça pourrait être du au fait d'avoir 2 applications xmlrad tournant sur le même site IIS dans 2 repertoires virtuels differents avec un seul repertoire 'sharedportal' ?

  7. #7
    RDM
    RDM est déconnecté
    Membre émérite

    Profil pro
    Inscrit en
    Mars 2002
    Messages
    1 424
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 424
    Points : 2 927
    Points
    2 927
    Par défaut
    non rien a voir, les 2 applictions sont bien séparées.
    si l'application replante sur ca, il faut a ce moment prendre la valeur du DecimalSeparator via le XMLC_FormatSettings
    sinon il faut faire une ajouter trace juste avant le StrToFloat pour vérifier le contenu de la variable globale DecimalSeparator qui est utilisée lors de la conversion

  8. #8
    Membre régulier
    Profil pro
    Inscrit en
    Février 2003
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 89
    Points : 78
    Points
    78
    Par défaut
    Mon format décimal est bien la virgule ',';
    Dans un formulaire, l'utilisateur rentre ses valeurs décimales avec le point '.' du clavier numérique;
    je suis obligé de controler que la valeur saisie est correcte : ',' au lieu du '.'.
    N'y a t-il pas un moyen directement à la saise d'imposer la ',' à la place du '.' du clavier numerique ?

  9. #9
    Membre du Club
    Inscrit en
    Août 2002
    Messages
    130
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 130
    Points : 58
    Points
    58
    Par défaut
    je crois avoir résolu le probléme....j'ai simplement reinitialiser les cookies sur le poste (en fait le serveur) sur lequel je lançais l'application et maintenant je n'ai plus de probleme de separateur de decimale. J' avais en effet d'autres comportements qui étaient liés aux cookies sur mon application. par contre je ne comprends pas trop pourquoi l'application n'allait pas lire les bons cookies ???? est ce lié au fait qu' une autre application XMLRAD tourne sur le même site ? et/ou que la nouvelle application soit une copie de l'ancienne ?

  10. #10
    RDM
    RDM est déconnecté
    Membre émérite

    Profil pro
    Inscrit en
    Mars 2002
    Messages
    1 424
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 424
    Points : 2 927
    Points
    2 927
    Par défaut
    Citation Envoyé par pram
    je crois avoir résolu le probléme....j'ai simplement reinitialiser les cookies sur le poste (en fait le serveur) sur lequel je lançais l'application et maintenant je n'ai plus de probleme de separateur de decimale. J' avais en effet d'autres comportements qui étaient liés aux cookies sur mon application. par contre je ne comprends pas trop pourquoi l'application n'allait pas lire les bons cookies ???? est ce lié au fait qu' une autre application XMLRAD tourne sur le même site ? et/ou que la nouvelle application soit une copie de l'ancienne ?
    c'est possible ca dépend du XMLC_CookiesPath utilisait dans l'application
    si plusieurs aplication tourne sur lmême serveur il aut différencier les cookeis pat le path (/MyApplicationBin/MyApplication.dll/)

  11. #11
    Membre du Club
    Inscrit en
    Août 2002
    Messages
    130
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 130
    Points : 58
    Points
    58
    Par défaut
    OK merci

  12. #12
    RDM
    RDM est déconnecté
    Membre émérite

    Profil pro
    Inscrit en
    Mars 2002
    Messages
    1 424
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 424
    Points : 2 927
    Points
    2 927
    Par défaut
    j'en ai profité pour faire une FAQ sur le sujet:
    http://xmlrad.developpez.com/faq/?pa...ntGererCulture

  13. #13
    Membre du Club
    Inscrit en
    Août 2002
    Messages
    130
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 130
    Points : 58
    Points
    58
    Par défaut
    OK merci

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 10/11/2011, 17h28
  2. Operation virgule flottante incorrecte.
    Par petitcoucou31 dans le forum Langage
    Réponses: 4
    Dernier message: 31/10/2011, 13h50
  3. '' n'est pas une valeur en virgule flottante correcte
    Par laala.hamid dans le forum Bases de données
    Réponses: 8
    Dernier message: 22/08/2011, 11h06
  4. Erreur : Opération en virgule flottante incorrecte
    Par [ZiP] dans le forum Langage
    Réponses: 4
    Dernier message: 04/10/2009, 22h47
  5. dbnavigator : erreur valeur flottante incorrecte
    Par cherifdj dans le forum Bases de données
    Réponses: 2
    Dernier message: 26/06/2009, 01h53

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