Bonjour,
Un petit problème avec la conversion.
J'utilise dans des tables sqlite 3 que des champs caractères même pour des valeurs numériques avec décimales, donc quand j'ai besoin d faire un calcul avec les données numériques j'utilise, par exemple la conversion suivante :mais voila pour une raison que je ne connais pas la valeur XCREDIT déclarée comme variable de type Double ce retrouve avec un nombre important de chiffre après la virgule.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 MCREDIT:=data.bank.FieldByName('CREDIT').AsString; XCREDIT:=StrToFloat(MCREDIT);
Pour essayer de contrer ce problème j'ai essayé une solution qui a fonctionnée par le passé en multipliant le nombre par 100, l'utilisation de la fonction round puis la division par 100 pour retrouver ma valeur
exemple ci-dessous d'une autre application
donc je supprime la conversion pour ne garder que le calcul, ma première application deviententmon application devient
Code : Sélectionner tout - Visualiser dans une fenêtre à part MMOYENNE_P:=FloatToStr(round(100*XMOYENNE_P)/100); ;
Mais je n'obtiens pas le résultat voulu, j'ai toujours de nombreuses décimales.
Code : Sélectionner tout - Visualiser dans une fenêtre à part XCREDIT:=round(100*XCREDIT)/100
Erreur de fonction ou erreur d'écriture ?
Merci d'avance pour votre aide.
Partager