PC SOFT

FOROS PROFESIONALES
WINDEVWEBDEV y WINDEV Mobile

Inicio → WINDEV 2025 → calcul date comportement bizarre
calcul date comportement bizarre
Iniciado por roumegou, 18,oct. 2019 15:06 - 4 respuestas
Publicado el 18,octubre 2019 - 15:06
Bonjour
je viens de planter là dessus

madate est une date
madate=Datesys()

madate..mois=madate..mois+3

boum je plante car je suis en octobre donc cela fait 13.
Ah bon ! il est sensé se débrouiller non ?
je remplace par
madate..mois+=3

et là ça passe ????

c'est quoi la raison ???
comprends pas ?

bon c'est du code en wd19 mais je ne pense que cela soit un pb de vs ?
Je vous remercie par avance de vos explications

--
Roumegou Eric

--
L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel antivirus Avast.
https://www.avast.com/antivirus
Miembro registrado
116 mensajes
Publicado el 18,octubre 2019 - 15:45
Bonjour Eric,

C'est indiqué dans l'aide, en cas d'affectation directe le mois doit forcément être compris entre 1 et 12

Voir remarques en bas de page

https://doc.pcsoft.fr/fr-FR/?2512052&name=mois_propriete
Publicado el 18,octubre 2019 - 16:36
Bonjour,
MaDate...mois = MaDate..mois + 3

En Octobre :
MaDate..mois = (MaDate..mois) +3
MaDate..mois = 10 +3
MaDate..mois = 13

13 n'est pas compris entre 1 et 12

Cordialement,
Publicado el 18,octubre 2019 - 17:34
"Séb" a émis l'idée suivante :
Bonjour,
MaDate...mois = MaDate..mois + 3

En Octobre : MaDate..mois = (MaDate..mois) +3
MaDate..mois = 10 +3
MaDate..mois = 13

13 n'est pas compris entre 1 et 12

Cordialement,


merci de vos réponses
oui je sais que 13 n'est pas un mois valide lol

Effectivement c'est écrit dans l'aide cette particularité
mais je ne comprends pas pourquoi
a=a+6 peut toujours s'écrire a+=6; les deux façons donnent la même
chose

mais pas pour les propriétés de la date ??

je ne vois pas la logique de cela mais bon je fais avec, pas de pb !!!

--
Roumegou Eric

--
L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel antivirus Avast.
https://www.avast.com/antivirus
Miembro registrado
2.682 mensajes
Publicado el 20,octubre 2019 - 19:00
a=a+6 peut toujours s'écrire a+=6; les deux façons donnent la même chose


Ce n'est pas du tout la même opération qui est effectuée.

Dans le cas x=x+6, on réalise une affectation à une variable, on lui dit que a est égal à cette valeur.

Dans le cas x += 6, on réalise une incrémentation. on dit donc ajoute 6 à x. Dans le cas des mois, à l'incrémentation Windev vérifie que le mois est inférieur à 12, si ce n'est pas le cas, ça incrémente l'année de 1 et ça ajoute le nombre de mois restants.

--
Cordialement,

Philippe SAINT-BERTIN