Différence d'un serveur à un autre

Forum destiné aux questions sur le développement : Formules, LotusScript, Java ...

Différence d'un serveur à un autre

Messagepar seroa » 20 Jan 2011 à 09:17

Bonjour à tous,

J'ai un petit problème avec l'affichage de date.

J'ai une base sur un serveur et un réplica de cette même base sur un autre serveur.

Dans un masque, il existe un champ partagé de type Date qui prend pour valeur une ou plusieurs dates.

Puis un champ calculé qui à partir de ce champ me créer une liste des dates en HTML, et affiche ses dates sous la forme : Thursday, January 20 2011. Tous ça en formule.

Sur la base sur le premier serveur, pas de problème. Mais sur le réplica, il m'affiche 1 jour en moins.

Par exemple au lieu de Thursday, January 20 2011 il va afficher
Wednesday, January 19 2011, et c'est valable pour toutes les dates.


Est-ce que vous avez une idée ?

Merci.
Dernière édition par seroa le 21 Jan 2011 à 09:11, édité 1 fois.
seroa
Posteur expérimenté
Posteur expérimenté
 
Message(s) : 304
Inscrit(e) le : 08 Nov 2007 à 08:36
Localisation : Mâcon

Messagepar abertisch » 20 Jan 2011 à 10:01

Salut,

Je dirais que tu dois avoir un problème de configuration sur le serveur. Il n'est peut-être pas sur le bon fuseau horaire
"Lotus, il n'y a qu'en rouleaux que ça fait pas mal au cul"
abertisch
Roi des posts
Roi des posts
 
Message(s) : 763
Inscrit(e) le : 25 Oct 2006 à 13:51
Localisation : Suisse

Messagepar seroa » 20 Jan 2011 à 10:40

Le serveur du réplica est aux états unis donc fuseau horaire - 6 heures

Mais pourquoi cela modifierais la valeur de mais champs calculés ?

Si mon champ vaut 20/01/2011

Pourquoi sur ma base cela affiche Thursday, January 20 2011
et sur le replica Wednesday, January 19 2011

Cela voudrais dire que les formules @Date et @WeekDay se base sur l'heure du serveur.
seroa
Posteur expérimenté
Posteur expérimenté
 
Message(s) : 304
Inscrit(e) le : 08 Nov 2007 à 08:36
Localisation : Mâcon

Messagepar abertisch » 20 Jan 2011 à 10:46

Ben oui si tes champs sont calculés, les fonctions sont évaluées à chaque ouverture du document.
"Lotus, il n'y a qu'en rouleaux que ça fait pas mal au cul"
abertisch
Roi des posts
Roi des posts
 
Message(s) : 763
Inscrit(e) le : 25 Oct 2006 à 13:51
Localisation : Suisse

Messagepar seroa » 20 Jan 2011 à 10:53

Je ne comprend pas :

Mon champ period qui vaut 20/01/2011, il n'est pas calculé. Il ne change pas.

Voila la valeur de mon champ calculé en gros : (il y a du html en plus normallement)

Code : Tout sélectionner
@If(@Elements(period) > 0;
@For(n:=1; n <= @Elements(period); n := n + 1;
var_duration := @Text(duration[n]);
@Do (var_date := @Date(period[n]);
      var_weekday := @Select(@Weekday(var_date); "Sunday"; "Monday"; "Tuesday"; "Wednesday"; "Thursday"; "Friday"; "Saturday");
      var_day := @Day(var_date);
      var_day2 := @If(var_day < 10; "0" + @Text(var_day);var_day);
      var_month := @Select(@Month(var_date); "January"; "February"; "March"; "April"; "May"; "June"; "July"; "August"; "September"; "October"; "November"; "December");
      var_m := @If(@Month(var_date) < 10; "0" + @Text(@Month(var_date));@Month(var_date));
      var_year := @Year(var_date);
      var_complete := @Text(var_weekday) + ", " +  @Text(var_month) + " " + @Text(var_day) + " " + @Text(var_year);
);


Je ne comprend pas pourquoi var_complete serait différente d'un serveur à un autre car je ne récupère jamais la date ou l'heure courrante.
seroa
Posteur expérimenté
Posteur expérimenté
 
Message(s) : 304
Inscrit(e) le : 08 Nov 2007 à 08:36
Localisation : Mâcon

Messagepar Grey Goda » 20 Jan 2011 à 11:37

Si ton champ "period" est de type "Date/Time" cela peut s'expliquer...

Domino ne stocke pas une "date" mais une "date / horaire" + un fuseau horaire ainsi si tu as le "20/01/2011 00:00:00" en GMT+1, le @Date te renverra bien 20/01/00 par contre sur un serveur US, le même @Date te renverra 19/01/01...

Ce qui est tout à fait normal... et même "puissant", l'utilisateur a une info qui lui est vraiment contextuelle :)
Tout comme Google, l'aide du Designer est ton amie ! Tu la trouveras dans ton répertoire "/data/help" ou ici
Avatar de l’utilisateur
Grey Goda
Posteur néophyte
Posteur néophyte
 
Message(s) : 61
Inscrit(e) le : 12 Mars 2010 à 11:31

Messagepar seroa » 20 Jan 2011 à 14:34

Merci de ta réponse, il s'agit bien de cela.

Le @Date retranche des heures en fonction du fuseau horaire.

Est-ce qu'il existe une variante de @Date ou une astuce pour éviter cela ?
seroa
Posteur expérimenté
Posteur expérimenté
 
Message(s) : 304
Inscrit(e) le : 08 Nov 2007 à 08:36
Localisation : Mâcon

Messagepar seroa » 21 Jan 2011 à 09:11

Bonjour à tous,

Donc le problème de date était bien du aux la formule @Date, @Day, @Weekday... qui calcul le décalage horaire automatiquement en fonction du fuseau du serveur.

Donc je recalcule avec @Adjust la date en fonction du résultat de la formule @Zone, pour retrouver la bonne date.



Merci.
seroa
Posteur expérimenté
Posteur expérimenté
 
Message(s) : 304
Inscrit(e) le : 08 Nov 2007 à 08:36
Localisation : Mâcon

Messagepar Grey Goda » 21 Jan 2011 à 09:44

Merci de nous faire partager ton auto-solution :wink:
Tout comme Google, l'aide du Designer est ton amie ! Tu la trouveras dans ton répertoire "/data/help" ou ici
Avatar de l’utilisateur
Grey Goda
Posteur néophyte
Posteur néophyte
 
Message(s) : 61
Inscrit(e) le : 12 Mars 2010 à 11:31


Retour vers Développement