|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Nouveau Membre du Club
![]() Inscription : novembre 2002 Messages : 92 ![]() |
Bonjour,
Je voudrais changer le format d'affichage des nombres pour le format US. J'ai créé mon projet en 7P1, depuis j'ai mis à jour XMLRad et je suis actuellement en version 7.0.8.708, je suppose que ca correspond à la version 7P8. Ensuite j'ai du créer un projet et regarder quels fichiers il n'y avait pas dans le projet sur lequel je travaille, j'y ai donc ajouté les deux fichiers Cultures.xml et Cultures.Locales.xml. J'utilise le initparam XMLC_Culture avec comme valeur EN mais ca ne fonctionne pas. |
|
|
00
|
|
|
#2 |
|
Membre éclairé
![]() |
As-tu bien mis à jour la DLL de ton ancien projet avec celle générée pour le nouveau projet ?
Ou as-tu recompilé ton projet ? Si c'est le cas, donne nous d'autres infos sur ton problème...
__________________
Nicolas |
|
|
00
|
|
|
#3 |
|
Nouveau Membre du Club
![]() Inscription : novembre 2002 Messages : 92 ![]() |
J'ai :
1- Recompilé 2- Copié les deux fichiers dans le même dossier que mon .dpr 3- Ajouté dans InitParams XMLC_Culture, valeur EN J'utilise une chaine de formatage sur le float dans mon XMLGram : %.2f |
|
|
00
|
|
|
#4 |
|
Membre Expert
![]() |
C'est normal que ca ne marche pas actuellement. seul les dates sont prises en compte par XMLC_Culture actuellement. les flotants devraient l'être prochainement.
__________________
RDM Tout Est Relatif Rubrique XMLRAD: http://xmlrad.developpez.com FAQ XMLRAD: http://xmlrad.developpez.com/faq/ |
|
|
00
|
|
|
#5 |
|
Nouveau Membre du Club
![]() Inscription : novembre 2002 Messages : 92 ![]() |
Merci,
En fait j'ai installé mon application sur un Windows 2000 Version US. Il semble que par défaut ce soit la culture de la machine qui soit utilisée car même après avoir choisit dans les paramètres régionaux le format français les float sont affiché avec le point comme séparateur décimal. Existe il un moyen de changer le séparateur décimal pour la virgule ? |
|
|
00
|
|
|
#6 |
|
Membre Expert
![]() |
XMLC_OSCulture devrait quand meme t'aider:
dans InitParams, positionne le paramètre XMLC_OSCulture à EN cela forcera a prendre pour les formats non pas ceux de l'OS mais ceux qui sont définis dans Cultures.xml Attention c'est la valeur dans la culture que tu as choisi pour XMLC_OSCulture qui sera envoyée au serveur SQL. cela peut poser d'éventuels problèmes
__________________
RDM Tout Est Relatif Rubrique XMLRAD: http://xmlrad.developpez.com FAQ XMLRAD: http://xmlrad.developpez.com/faq/ |
|
|
00
|
|
|
#7 |
|
Nouveau Membre du Club
![]() Inscription : novembre 2002 Messages : 92 ![]() |
Cela me pose déjà des problèmes car dans un de mes services j'ai :
- Deux instructions SQL successives - La première sert à arrondir un nombre saisi par un utilisateur - La seconde utilise ce nombre arrondi pour mettre à jour la base de données Etant donné que mon serveur est un windows 2000 US et que j'ai choisi l'affichage en FR, le résultat de la première instruction est un float avec comme séparateur la virgule, je dois donc reconvertir cette valeur en US avant de mettre à jour la base Interbase. Et si tu vas voir dans un de mes autres messages je dois ensuite tester dans le code delphi le résultat de ma deuxième instruction pour voir si une des valeurs (un float au format FR) est égale à zéro car le XSL travaillant en US le test n'est pas possible |
|
|
00
|
|
|
#8 |
|
Membre régulier
![]() |
Attention !!! (si tu utilise Ole DB ...)
il y a un invité surprise dans la gestion des cultures .... c'est la culture de l'utilisateur IUSR_NomMachine. en effet, lors de la connexion à la base, c'est le séparateur de décimale de l'utilisateur IUSR_NomMachine qui est pris en compte pour les dialogues IIS-BDD. je te recommande donc de bien mettre le même séparateur pour l'utilisateur, XMLC_OSCulture, et XMLC_Culture, car sinon, tu vas devoir créer des fonctions de conversion assez lourdes à appliquer...
__________________
Renaud W2003 / XP /VISTA SQL SERVER / ORACLE ADO |
|
|
00
|
|
|
#9 |
|
Invité de passage
![]() Inscription : janvier 2003 Messages : 3 ![]() |
Une autre possibilté, forcer les regional Settings en modifiant la base de registre comme ci-dessous :
Windows Registry Editor Version 5.00 [HKEY_USERS\.DEFAULT\Control Panel\International] "iCountry"="33" "iCurrDigits"="2" "iCurrency"="3" "iDate"="1" "iDigits"="2" "iLZero"="1" "iMeasure"="0" "iNegCurr"="8" "iTime"="1" "iTLZero"="1" "Locale"="0000040C" "s1159"="" "s2359"="" "sCountry"="France" "sCurrency"="F" "sDate"="/" "sDecimal"="," "sLanguage"="FRA" "sList"=";" "sLongDate"="dddd d MMMM yyyy" "sShortDate"="dd/MM/yyyy" "sThousand"="*" "sTime"=":" "sTimeFormat"="HH:mm:ss" "iTimePrefix"="0" "sMonDecimalSep"="," "sMonThousandSep"="*" "iNegNumber"="1" "sNativeDigits"="0123456789" "NumShape"="1" "iCalendarType"="1" "iFirstDayOfWeek"="0" "iFirstWeekOfYear"="0" "sGrouping"="3;0" "sMonGrouping"="3;0" "sPositiveSign"="" "sNegativeSign"="-" Radical non ? |
|
|
00
|
|
|
#10 |
|
Membre régulier
![]() |
C'est en effet ce que je fais lors de l'installation de mes applis
et c'est radical en effet ... mais pour accueillir des utilisateurs du monde entier, c'est un peu trop ! car mine de rien, il faut réelleent gérer le séparateur de décimale et SURTOUT le format des langues car XMLRAD gère bien le formatage, mais si on reprend la man dans le code et que l'on veut manipuler des valeurs date contenues dans le contexte, cela se complique vraiment (car delos n'a pas encore développé, à ma connaissance, de fonctions de transformation automatique des dates.
__________________
Renaud W2003 / XP /VISTA SQL SERVER / ORACLE ADO |
|
|
00
|
|
|
#11 |
|
Membre Expert
![]() |
en fait si, elles existent mais il faut savoir d'où vienne les valeurs:
si une date vient du coté utilisateur, pour la convertir en TDateTime il faut utiliser XMLUtils.StrToDateTimeDef() (XMLC_Culture) si la valeur vient du serveur SQL: XMLUtils.OSStrToDateTimeDef (XMLC_OSCutlure) une fois que l'on a la valeur en TDateTime pour la transformé en chaine de caractère: XMLUtils.FormatCultureDateTime (XMLC_Culture) pour l'avoir coté utilisateur SysUtils.DateTimeToStr (XMLC_OSCulture) pour lenvoyer vers le Serveur SQL
__________________
RDM Tout Est Relatif Rubrique XMLRAD: http://xmlrad.developpez.com FAQ XMLRAD: http://xmlrad.developpez.com/faq/ |
|
|
00
|
|
|
#12 |
|
Membre régulier
![]() |
Autant pour moi, je n'avais pas vu.
Super info. Merci.
__________________
Renaud W2003 / XP /VISTA SQL SERVER / ORACLE ADO |
|
|
00
|
|
|
#13 |
|
Membre Expert
![]() |
C'est pas forcément evident. J'ai regardé dans XMLGram.pas pour trouver cela. Dans le TDBExtract.DoProcess.FormatFieldValue et dans le TDataInsturction.FillParams
__________________
RDM Tout Est Relatif Rubrique XMLRAD: http://xmlrad.developpez.com FAQ XMLRAD: http://xmlrad.developpez.com/faq/ |
|
|
00
|
|
|
#14 |
|
Nouveau Membre du Club
![]() Inscription : novembre 2002 Messages : 92 ![]() |
Quand est ce que le support complet des cultures sera disponible dans XMLRad ?
Je n'arrive pas vraiment à m'en sortir avec le formatage des nombres ... si je force XMLC_Culture et XMLC_OSCulture à EN sur une machine FR (et inversement) j'ai une erreur lors de l'exécution du XMLGram car j'utilise une chaîne de formatage %.2f (si je me souviens bien en Delphi pour formater on passe directement d'un float à une chaîne, XMLRad semble passer par une chaîne intermédiaire). J'avais supprimé XMLC_Culture et XMLC_OSCulture car ce n'était pas si grave de voir des points à la place des virgules mais du coup je ne peux pas maîtriser l'affichage des dates, surtout que les chaînes de formatage ne sont pas encore supportées pour les dates. La machine sur laquelle je fais tourner mon application est chez AMEN or ils utilisent des serveur Windows 2000 US ... HELP ! |
|
|
00
|
|
|
#15 |
|
Membre Expert
![]() |
Dans le prochain build, m'a dit Kurt Crawford d'e-delos ! Ils ont rajoutés des méthods similaires au formatage de dates. Par contre je n'ai pas d'info sur la date du prochain build, car ils sont encore en train de travailler sur la refonte des statistiques avec pleins de nouveautés de ce coté là !!
__________________
RDM Tout Est Relatif Rubrique XMLRAD: http://xmlrad.developpez.com FAQ XMLRAD: http://xmlrad.developpez.com/faq/ |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com