OVH Cloud OVH Cloud

Jour et mois en anglais

4 réponses
Avatar
Yves
Le masque de saisie suivant donne le mois et le jour en français .. mais le
client le veut en anglais ! Comment faire ?

'JJJJ JJ MMMM AAAA' ("Jeudi 01 Février 1979" par exemple)

Merci. Yves

4 réponses

Avatar
JBT
Yves a formulé ce jeudi :
Le masque de saisie suivant donne le mois et le jour en français .. mais le
client le veut en anglais ! Comment faire ?

'JJJJ JJ MMMM AAAA' ("Jeudi 01 Février 1979" par exemple)

Merci. Yves



Si tu as juste ça, tu fais une procédure qui remplace les jours / mois
par ceux en anglais. ex :
SI Position(Date, "Lundi", sanscasse)>0 alors Date = Remplace(Date,
"Lundi", "Monday")

il y a aussi un utilitaire windev pour le faire c'set wdint.

--

Avatar
Phil
"JBT" a écrit dans le message de
news:
Yves a formulé ce jeudi :
> Le masque de saisie suivant donne le mois et le jour en français .. mais


le
> client le veut en anglais ! Comment faire ?
>
> 'JJJJ JJ MMMM AAAA' ("Jeudi 01 Février 1979" par exemple)
>


------------------------------------------------------
Bonjour,

Je commence à peine en Windev mais j'aurai bientôt le même problème que vous
à cause des logiciels français/anglais qui seront en production.

Il faut réaliser que la façon d'écrire les dates au long différent selon la
région. Les deux grand formats sont l'Angleterre et les Américains. Le
format américain est du style Wednesday June 23, 2004 pour Mercredi 23 Juin
2004. Si on utilise ce format, il faut donc placer les éléments de la date
autrement.

Dans mon cas, je crois bien que j'utiliserai une Fonction globale utilisée
comme suit;

//En considérant que la date s'affiche dans un champ libellé DateAnglais
//Initialisation de DateAnglais
SI Nation()=3 ALORS
DateAnglaisÚteAuLongAnglais(DateSys())
SINON
DateAnglaisÚteVersChaine(DateSys(),"JJJJ JJ MMMM AAAA")
FIN

//Sous Procedure globale de DateAuLongAnglais
FONCTION DateAuLongAnglais(Dte)
DteEnDate est une Date=Dte
Mois est un tableau de 12 chaînes
Jour est un tableau de 7 chaînes
Mois[1]="January";Mois[2]="February";Mois[3]="March";Mois[4]="April"
Mois[5]="May";Mois[6]="June";Mois[7]="July";Mois[8]="August"
Mois[9]="September";Mois[10]="October";Mois[11]="November";Mois[12]="Decembe
r"
Jour[1]="Monday";Jour[2]="Tuesday";Jour[3]="Wednesday";Jour[4]="Thursday"
Jour[5]="Friday";Jour[6]="Saturday";Jour[7]="Sunday"
SI DateValide(Dte)úux ALORS
RENVOYER "Date ????"
SINON
JourSem est un entier= DateVersJour(DteEnDate)
JourMois est un entier= DteEnDate..Jour
MoisNo est un entier= DteEnDate..Mois
AnnéeNo est un entier= DteEnDate..Année
RENVOYER Jour[JourSem]+" "+Mois[MoisNo]+" "+JourMois+", "+AnnéeNo
FIN

Réal Philippon
Programmation Ultra Ltée -o- www.ultra.ca
Avatar
John
Bonjour,

Sauf erreur, cette gestion est effectuée automatiquement ( avec le changement de
tous les messages de Windev dans différentes langues ) par le module WDINT vendu
par l'éditeur.
Quelqu'un peut confirmer ?

John

--
Utilisez notre serveur de news 'news.foorum.com' depuis n'importe ou.
Plus d'info sur : http://nnrpinfo.go.foorum.fr/
Avatar
Phil
Voici une Fonction beaucoup plus efficace que la premiere suggérée.

FONCTION DateAuLongAnglais(Dte)
SI DateValide(Dte)úux ALORS
RENVOYER "Date ????"
SINON
DteEnDate est une Date= Dte
JourSem est un entier= DateVersJour(DteEnDate)
JourMois est un entier= DteEnDate..Jour
MoisNo est un entier= DteEnDate..Mois
AnnéeNo est un entier= DteEnDate..Année
cMois est une
chaîne=ExtraitChaîne("January,February,March,April,May,June,July,August,Sept
ember,October,November,December",MoisNo,",")
cJour est une
chaîne=ExtraitChaîne("Monday,Tuesday,Wednesday,Thursday,Friday,Saturday,Sund
ay",JourSem,",")
RENVOYER cJour+" "+cMois+" "+JourMois+", "+AnnéeNo+"."
FIN

Réal Philippon
Programmation Ultra Ltée -o- www.ultra.ca