Le forum (ô combien francophone) des utilisateurs de Powerbuilder.
Bonsoir à tous,
nous venons de migrer en PB 11.5.1 build 4740 et étions avant en 10.5.1 6021.
Nous sommes principalement sous Windows Xp et travaillons avec les SGBD SQL 2000/2005/2008 et Oracle 9/10.
Notre paramétrage numérique est français (séparateur de milliers : <espace>, séparateur de décimales : <,>).
Nous n'utilisons pas les kit locaux de Sybase c'est à dire pas le kit français.
Nous venons de nous rendre compte que la gestion des décimales avait changé entre les 2 versions.
En effet, l'expression suivante retourne des valeurs différentes selon les versions :
Dec("24.3") PB 10.5.1 : 24.3 PB 11.5.1 : 0 Dec("24,3") PB 10.5.1 : 243 PB 11.5.1 : 24,3
Est-ce quelqu'un a expérimenté quelque chose de semblable et a une solution ?
Par avance merci
Razorback
Hors ligne
Salut
tu as fait des testes en jouant avec les paramètres régionaux du poste ?
au cas ou ...
Hors ligne
Salut
J'ai fais des tests avec:
PB 10.51 build 6565
PB 10.52 build 7016
PB 12.1 build 6518
j'ai obtenu pour tous:
Dec("24.3") = 0
Dec("24,3") = 24.3
J'ai par la suite changé mes paramètres régionaux pour Anglais (Canada) et j'ai obtenu:
24.3
243
dans les 3 cas
Hors ligne
Pour info, y'a un moyen astucieux de connaitre le séparateur décimal au runtime : http://pbadonf.fr/forum/viewtopic.php?pid=20936#p20936
IF pos(string(1/2), ".") > 0 THEN messagebox("point", ".") ELSE messagebox("virgule", ",") END IF
Hors ligne
Bonjour à tous,
merci de vos réponses et désolé de répondre si tard.
Pour répondre à JCZ, nous avons essayé en passant en paramétrages numériques anglais et voici les résultats :
Dec("24.3") PB 10.5.1 : 24.3 PB 11.5.1 : 24.3 Dec("24,3") PB 10.5.1 : 243 PB 11.5.1 : 243
Ce qui aurait tendance à faire penser que ça marche bien en paramétrages numériques anglais.
Chuck65, tu dis que tu as fais des tests sur plusieurs versions, et ton résultat était toujours bon.
Est-ce que tu récupères les kit français de PowerBuilder ? Me conseillez vous de faire ça ?
Enfin, merci à erasorz pour le moyen pour déterminer le séparateur décimal.
Razorback
Hors ligne