Lundi, 24. Juillet 2006

PermaLinkFormat de date

En ce moment je termine une application web destinée à être utilisée par des utilisateurs de nombreux pays. Lors des tests, par mis les bugs remontés (ben oui j'en fait ) il y en avait un concernant les formats de date affichés dans les vues. Voici la vue affichée :



Les formules de colonnes date étaient tout ce qu'il y avait de plus classique :
@Text(@Date(dateRetour))

Si j'ouvre les documents, les valeurs affichées dans le masque sont bien au format européen. Le problème se situe donc exclusivement au niveau des vues...

En fait après recherche il se passe le phénomène suivant :
Lorsque l'on ouvre un masque, Domino va chercher le format de la date à afficher dans les propriétés de son champ. Il est donc très facile de contrôler et uniformiser leur format. Tout le monde connaît les propriétés d'un champ date :



Dans une vue, Domino s'appuit aussi sur des propriétés de colonne identique à celle des champs (merci philippe) a condition de supprimer le @text devant le @date. Si l'on ne précise rien dans la vue, Domino applique les préférences de l'utilisateur ayant créé le document.
Ce que j'ai encore du mal à comprendre c'est ou est stocké cette information... Même ScanEz ne peux m'en dire plus.

Tout va bien pour nos vues sauf lorsque l'on veut associer du texte à notre date. Par exemple lorsqu'on veut catégoriser la premiere colonne sur la concaténation du nom de l'utilisateur et de la date (c'était le cas dans mon application). Là du coup on ne peut plus appliquer les préférences de colonne...

Pour résoudre mon problème, je n'ai trouvé que la solution suivante pour que quelque soit l'utilisateur on ait le même format de date :
Temp1:=@Text(@Year(dateRetour));
Temp2:=@Text(@Month(dateRetour));
Temp3:=@Text(@Day(dateRetour));
Temp2:=@Right("0"+Temp2; 2)
Temp3:=@Right("0"+Temp3; 3)
Temp3+"/"+_Temp2+"/"+Temp1


Ben je sais c'est pas très classe mais je n'ai rien trouvé de mieux ! En tout cas ça fonctionne...

 Commentairesv

1. philippe  24/07/2006 23:20:12


Ne pourrais tu pas utiliser les propriétés de date de la colonne accessibles depuis le 4ème onglet des propriétés de la colonne en sélectionnant Date/heure dans la liste qui apparait ?
On retrouve alors les mêmes options que pour un champ de masque.


2. philippe  24/07/2006 23:38:39


Juste une petite astuce.
on peut remplacer :
Temp2:=@If(@Length(Temp2)=1;"0"+Temp2;Temp2);
par
Temp2:=@Right("0"+Temp2; 2);


3. julien  25/07/2006 07:34:09


Merci philippe.
Effectivement je n'avais pas pensé au @Right.
Concernant les propriétés de colonne, elle n'ont eu aucun effet dans mon cas mais je suis peut-être passer à côté de quelque chose...


4. julien  25/07/2006 08:14:25


Ca y est j'ai trouvé ce qui cloché. Ce soir je vais retravailler ce post car il en a pas mal besoin. Merci Philippe.


5. Smicky  25/07/2006 18:24:59


C'est quoi la case qu'il faut cocher dans designer pour avoir l'effet comme sur la colonne Requester ?


6. YoGi  25/07/2006 22:26:49


Sauf erreur de ma part, le format des dates retournées dans les vues est liées aux préférences de langage de l'utilisateur, issues du document personne (dans le NAB) ou de l'entête HTTP Accept-Language (et dans je ne sais plus trop quel ordre).


7. PFD  25/06/2007 13:40:10


Il y a bien une autre solution : 2 champs.
1 pour le display format texte
1 avec la date codé en format texte aaaammjj qui servira au vrai calcul pour l'application.
Ainsi les inversions ne sont plus possibles.


 Saisir un commentaire^















Se souvenir de mes informations    

A propos

Ce site est destiné à faire connaître mon travail d'expert Domino indépendant et à vous faire partager mes analyses, découvertes et humeurs autour de Lotus Domino et bien d'autres sujets.

Hébergé sur ma Dedibox

Bonne visite.
A propos de moi

Prénom: Julien
Nom: Bottemanne
Adresse: Toulenne (33)

Originaire du Lot et Garonne, j'habite depuis maintenant 2 4 ans en Gironde. J'aime énormément cette région et je savoure avec ma femme et mes deux filles sa qualité de vie.

email - julien@domlike.net

 Monthly Archive
 Search
Contrat

Tous le contenu de ce site est mis à disposition sous un contrat Creative Commons.

Contrat Creative Commons

Paypal

RSS et autres

Lotus Domino ND6 RSS News Feed RSS Comments Feed Geo URL RSS Validator Blog Admin Lotus Geek Open Notes Picture Database OpenNTF BlogSphere