Quoi, tu ne connais pas PB ? Va falloir parcourir tout le forum alors !

Le forum (ô combien francophone) des utilisateurs de Powerbuilder.

Recherche rapide

Annonce

Certaines rubriques, dont des cours, sont uniquement visibles par les membres du forum ^^.
Dans la rubrique Liens & Références, vous avez accès à un sommaire de téléchargement, profitez-en !
Il existe maintenant un nouveau TOPIC "Votre CV en Ligne" accessible uniquement par demande.

#1 31-03-2010 12:14:54

krimo  
Membre Geek
Date d'inscription: 22-03-2010
Messages: 61
Pépites: 267
Banque: 0

[RESOLU] Convertir un String en décimal

Bonjour,
je suis confronté à un problème dont je connais la cause mais pas comment la résoudre.

sujet:
Je souhaite construire un graphique qui prend donc en paramètre une variable de type décimal.

le problème:
Lorsque l'on personnalise le symbole décimal (de l'O.S windows) dans  la personnalisation des option régionales (Panneau de configuration -> Option régionale et linguistiques) en mettant le symbole décimal à '.', le graph ne fonctionne pas car lorsque l'on construit le graphique, le compilateur ne peut l'interpréter, il attend en effet une décimal avec une virgule.

ma solution apportée:
Tenter de transtyper la variable décimale en un string, puis de remplacer le '.' en une virgule et enffet de le retranstyper en décimal. Mais il me remet un '.' automatiquement.


Quelqu'un sait comment gérer ce cas ou le contourner (peut importe le symbole décimal de l'O.S)???
Merci pour vos réponses

Dernière modification par krimo (08-04-2010 12:37:41)

Hors ligne

 

#2 31-03-2010 13:10:15

erasorz  
Admin
Lieu: Babylone
Date d'inscription: 23-11-2006
Messages: 5121
Pépites: 97,197
Banque: 2,147,483,647

Re: [RESOLU] Convertir un String en décimal

workaround : multiplier par un facteur assez grand (p.ex 1000) afin de faire disparaitre les décimales non significatives
puis dans la requête du graph, diviser par ce même facteur


N'envoyez jamais un humain faire le travail d'un programme.

Hors ligne

 

#3 31-03-2010 13:40:33

buck  
Modérateur
Lieu: Dijon
Date d'inscription: 31-07-2008
Messages: 747
Pépites: 1,028,843
Banque: 171,170,849,654

Re: [RESOLU] Convertir un String en décimal

Bonjour,

C'est un problème connu sur certaine version de PB.

Normalement, ton application ne doit pas se soucier de la configuration du poste et s'adapte automatiquement en fonction d'elle.

Hors ligne

 

#4 31-03-2010 14:22:57

krimo  
Membre Geek
Date d'inscription: 22-03-2010
Messages: 61
Pépites: 267
Banque: 0

Re: [RESOLU] Convertir un String en décimal

euhhh...
Et, peut-on corriger ce problème??

Dernière modification par krimo (31-03-2010 14:32:19)

Hors ligne

 

#5 31-03-2010 15:11:17

buck  
Modérateur
Lieu: Dijon
Date d'inscription: 31-07-2008
Messages: 747
Pépites: 1,028,843
Banque: 171,170,849,654

Re: [RESOLU] Convertir un String en décimal

En téléchargeant le dernier EBF s'appliquant à ta version de Powerbuilder sur le site de Sybase.

Quelle version de PB utilises-tu ? De souvenir, j'ai connu ce problème sur certaine version 9.

Hors ligne

 

#6 31-03-2010 15:20:46

krimo  
Membre Geek
Date d'inscription: 22-03-2010
Messages: 61
Pépites: 267
Banque: 0

Re: [RESOLU] Convertir un String en décimal

Je travaille sur la version 11 et j'ai aussi ce problème sur la version 11.5

Hors ligne

 

#7 31-03-2010 15:44:21

buck  
Modérateur
Lieu: Dijon
Date d'inscription: 31-07-2008
Messages: 747
Pépites: 1,028,843
Banque: 171,170,849,654

Re: [RESOLU] Convertir un String en décimal

Bonjour,

Pour m'enlever un doute, je viens de faire le test => PB 11.2.8542 / Windows 7.

Si je change le séparateur décimal, l'affichage et la saisie des champs décimaux change bien automatiquement en fonction de la configuration des paramètres régionaux du système.

Tu ne fais pas la saisie de ton paramètre dans un champ de type string que tu transformes en décimal par la suite ?

Hors ligne

 

#8 01-04-2010 07:31:34

krimo  
Membre Geek
Date d'inscription: 22-03-2010
Messages: 61
Pépites: 267
Banque: 0

Re: [RESOLU] Convertir un String en décimal

Bonjour,

je fais la saisie du décimal dans un champ texte d'une datawindows. J'utilise la méthode AcceptText() pour faire la transformation par rapport....

Je ne vois vraiment pas comment contourner ce problème...

Hors ligne

 

#9 01-04-2010 08:54:34

buck  
Modérateur
Lieu: Dijon
Date d'inscription: 31-07-2008
Messages: 747
Pépites: 1,028,843
Banque: 171,170,849,654

Re: [RESOLU] Convertir un String en décimal

Bonjour,

Si tu utilises un champ de type décimal tu n'auras pas de problème puisque que la méthode AcceptText acceptera la valeur saisie en fonction du séparateur décimal valide sur la machine.

Hors ligne

 

#10 01-04-2010 10:05:01

krimo  
Membre Geek
Date d'inscription: 22-03-2010
Messages: 61
Pépites: 267
Banque: 0

Re: [RESOLU] Convertir un String en décimal

Salut,
Euhh... alors là je ne comprend plus trop...
Comment utiliser un champs de type décimal? dans ma datawindows, le champ est de type décimal et pourtant ça ne fonctionne pas pour autant..

Hors ligne

 

#11 06-04-2010 13:11:08

krimo  
Membre Geek
Date d'inscription: 22-03-2010
Messages: 61
Pépites: 267
Banque: 0

Re: [RESOLU] Convertir un String en décimal

Bonjour,
Personne pour tenter de me guider sur ce problème?

Hors ligne

 

#12 06-04-2010 13:16:52

erasorz  
Admin
Lieu: Babylone
Date d'inscription: 23-11-2006
Messages: 5121
Pépites: 97,197
Banque: 2,147,483,647

Re: [RESOLU] Convertir un String en décimal

peux-tu poster la syntaxe de ton DWO ?


N'envoyez jamais un humain faire le travail d'un programme.

Hors ligne

 

#13 06-04-2010 13:23:30

buck  
Modérateur
Lieu: Dijon
Date d'inscription: 31-07-2008
Messages: 747
Pépites: 1,028,843
Banque: 171,170,849,654

Re: [RESOLU] Convertir un String en décimal

Bonjour,

Effectivement, il faut que tu nous donnes plus de détails sur ton problème : code source, type de données ...

Je soupçonne que tu passes à un moment ou un autre par une variable de type chaîne.

Hors ligne

 

#14 08-04-2010 12:37:24

krimo  
Membre Geek
Date d'inscription: 22-03-2010
Messages: 61
Pépites: 267
Banque: 0

Re: [RESOLU] Convertir un String en décimal

Bonjour,
Je viens de trouver l'erreur... A un moment du programme, la méthode match est appelé où on recherche une virgule, du coup il suffisait aussi de regarder avec le point... Dur dur de reprendre le code de quelqu'un d'autre...
Merci pour votre aide

Hors ligne

 

Pied de page des forums

Propulsé par FluxBB 1.2.22