Page 1 sur 1

[Résolu] Batch, validation de date et portée des variables

Posté : 01 avr. 2015 14:22
par Galeokerdo
Bonjour,

Je dois réaliser un script dont la finalité est l'écriture du dumpsql de la veille dans une base de données. Pour des raisons de simplicité et de souplesse, j'articule ça en un fichier principal qui appelle quand nécessaire les sous-parties dont j'ai besoin (FTP, opération avec la base, etc...)

Tout ce qui concerne les traitements se passent bien, à un détail : les dates.

Une sauvegarde de ma base est faite à J-1. Je la en FTP récupère à J pour intégration de mon côté. Pendant les 30 derniers jours du mois ça ne me pose pas de souci. mais le premier : le fichier que je récupère contient la date de la sauvegarde : 31-Mar-2015

Donc, j'éclate ma date en jour, mois et année, puis si le jour est 01, je soustrais 1 au mois :

Code : Tout sélectionner

SET jour=%date:~0,2%

IF %jour% EQU 01 (GOTO premier) else (GOTO suite)

:premier

SET /a mois-=1

if %mois% LSS 10 (SET mois=0%mois%)
J'ai trouvé un script qui est très bien sur SO pour vérifier si une date existe.

Je l'ai modifié pour qu'il reçoive inDate depuis un fichier tiers, et pour qu'il me renvoie un résultat dans une variable :

Code : Tout sélectionner

echo Date correct: %DD%-%MM%-%YYYY%
SET valide=correct
GOTO fin

:dateInvalide
echo Bad date
SET valide=incorrect

:fin
La date est correctement reçue, mais je ne parviens pas à recevoir la variable valide :

Code : Tout sélectionner

echo ----
echo %valide%
echo ----
Ma question est : pourquoi je peux faire passer inDate depuis un fichier tiers, mais je ne peux pas recevoir valide ?

Je vous remercie par avance pour votre aide.

Re: Batch, validation de date et portée des variables

Posté : 13 avr. 2015 15:57
par Galeokerdo
Pour ceux que ça intéresserait, la réponse est dans le setlocal EnableDelayedExpansion du script de SO.

En le déplaçant dans mon script-pilote, et en m'assurant qu'aucun autre setlocal n'était appelé, j'ai résolu mon souci de portée.

Re: [Résolu] Batch, validation de date et portée des variables

Posté : 29 mai 2015 06:56
par Kerryhurb
If I'm interested in further studies. Where to find this information.