|
FORUMS PROFESSIONNELS WINDEV, WEBDEV et WINDEV Mobile |
| | | | | |
| Débuté par deaddate, 04 jan. 2005 17:44 - 7 réponses |
| |
| | | |
|
| |
| Posté le 04 janvier 2005 - 17:44 |
bonjour, selon l'aide en ligne de windev, pour gerer une date on doit utiliser ce code:
madate..jour = madate..mois = madate..année =
tout sa me plait bien mais cela me pose un problème. En effet, lorsque ma date de référence et le 01/01/2004 et que je souhaite par calcul trouver le 31/12/2004, je fais
madate..année +=1 madate..jour -=1
pour avoir le 01/01/2005 - 1 = 31/12/2004
le souci c'est que je ne peut pas avoir madate..jour = 0...
Quelqu'un peut m'aider? Merci d'avance |
| |
| |
| | | |
|
| | |
| |
| Posté le 04 janvier 2005 - 17:57 |
IF madate..jour=1 THEN madate..jour = 12; madate..annee -= 1 else madate..jour-=1
"laurent" <deaddate@hotmail.com> a écrit dans le message de news:41daafa0@news.pcsoft.fr...
bonjour, selon l'aide en ligne de windev, pour gerer une date on doit utiliser ce code:
madate..jour = madate..mois = madate..année =
tout sa me plait bien mais cela me pose un problème. En effet, lorsque ma
date de référence et le 01/01/2004 et que je souhaite par calcul trouver le 31/12/2004, je fais
madate..année +=1 madate..jour -=1
pour avoir le 01/01/2005 - 1 = 31/12/2004
le souci c'est que je ne peut pas avoir madate..jour = 0...
Quelqu'un peut m'aider? Merci d'avance
|
| |
| |
| | | |
|
| | |
| |
| Posté le 04 janvier 2005 - 18:15 |
bonjour, selon l'aide en ligne de windev, pour gerer une date on doit utiliser ce code:
madate..jour = madate..mois = madate..année =
tout sa me plait bien mais cela me pose un problème. En effet, lorsque ma date de référence et le 01/01/2004 et que je souhaite par calcul trouver le 31/12/2004, je fais
madate..année +=1 madate..jour -=1
pour avoir le 01/01/2005 - 1 = 31/12/2004
le souci c'est que je ne peut pas avoir madate..jour = 0...
Quelqu'un peut m'aider? Merci d'avance
Salut,
Il faut : 1) convertir la date en entier dateversentier(MaDate) 2) retirer un jour (-1) 3) convertir le résultat en date entierversdate()
Ce qui devrait donner un truc qui ressemble à : EntierVersDate(DateVersEntier(MaDate)-1)
Bon dev+
Stephan |
| |
| |
| | | |
|
| | |
| |
| Posté le 04 janvier 2005 - 18:15 |
Il n'y a aucun problème, Windev gère tout seul le changement de mois et le passage au dernier jour du mois précédent. si tu as : MaDate = "20040101" MaDate..Jour -- donnera : "20031231"
Philippe Pasquali a écrit:
IF madate..jour=1 THEN madate..jour = 12; madate..annee -= 1 else madate..jour-=1 "laurent" <deaddate@hotmail.com> a écrit dans le message de news:41daafa0@news.pcsoft.fr... bonjour, selon l'aide en ligne de windev, pour gerer une date on doit utiliser ce code:
madate..jour = madate..mois = madate..année =
tout sa me plait bien mais cela me pose un problème. En effet, lorsque ma
date de référence et le 01/01/2004 et que je souhaite par calcul trouver le 31/12/2004, je fais madate..année +=1 madate..jour -=1
pour avoir le 01/01/2005 - 1 = 31/12/2004
le souci c'est que je ne peut pas avoir madate..jour = 0...
Quelqu'un peut m'aider? Merci d'avance
|
| |
| |
| | | |
|
| | |
| |
| Posté le 04 janvier 2005 - 18:16 |
oui, je suis d'accord avec le principe sauf que là on aura le 12/01/2003 et pas le 31/12/2004 mais si ma date tombe sur le mois de février et que je ne cherche pas a savoir si j'ai une année bisextile ou pas... je risque de me planter...
n'y a t'il pas de meilleur moyen? pour le moment je passe par une variable entier qui me permet ceci
madate..année += 1 maval = dateversentier(madate) maval -= 1 madate=entierversdate(maval)
sa fonctionne mais je trouve cela très lourd.... Autres proposition?? |
| |
| |
| | | |
|
| | |
| |
| Posté le 04 janvier 2005 - 18:47 |
Génial merci beaucoup céline sa c'est du code comme je l'aime merci encore et bonne année |
| |
| |
| | | |
|
| | |
| |
| Posté le 04 janvier 2005 - 18:52 |
"laurent" <deaddate@hotmail.com> écrivait news:41daafa0@news.pcsoft.fr:
madate..année +=1 madate..jour -=1
pour avoir le 01/01/2005 - 1 = 31/12/2004
le souci c'est que je ne peut pas avoir madate..jour = 0...
Salut,
Le code que tu donnes fonctionne, tu l'as testé ?
Car même si le jour est 1, madate..jour -=1 ne donne pas 0. En effet madate..jour -=1 donne la date moins un jour. Donc dans l'ordre, si madate est le 01/01/2004
madate..année +=1 -> 01/01/2005 (madate..Jour=1, madate..Année 05) madate..jour -=1 -> 31/12/2004 (madate..Jour1, madate..Année 04)
-- En esperant t'avoir aidé. |
| |
| |
| | | |
|
| | |
| |
| Posté le 05 janvier 2005 - 09:46 |
Bonjouir Laurent
"laurent" <deaddate@hotmail.com> a écrit dans le message de news: 41dab706@news.pcsoft.fr...
oui, je suis d'accord avec le principe sauf que là on aura le 12/01/2003 et pas le 31/12/2004 mais si ma date tombe sur le mois de février et que je ne cherche pas a savoir si j'ai une année bisextile ou pas... je risque de me planter...
n'y a t'il pas de meilleur moyen?
Puisque Céline te dit que ça marche tout seul !!!
si madate est 01/02/2004 madate..jour1 et WD s'occupe de mettre 28 ou 29 selon l'année bissextile ou pas
en bref : pour avoir la fin du mois d'une date (quelque soit la date) : madate..jour1
pour avoir la fin de l'année : madate..mois madate..jour1
difficile de faire en moins de ligne, non ?
Jean-Louis MOREL |
| |
| |
| | | |
|
| | | | |
| | |
| | |
| |
|
|
|