Se connecter avec
S'enregistrer | Connectez-vous

[Résolu] Batch dos et calcul de variable

Dernière réponse : dans Programmation

bonjour
dasn un bat
j'essaye d'incrémenter une variable b dépendant d'un compteur de boucle afin de calculer a+2000 pour le passer en paramètre d'une execution
le pb c'est que b n'est pas calculé

où ai-je faux?

Merci


les autres paramèrtres sont renseigné par des set avant dans le .bat

  1. for /L %%a in (0, 2000, %maxna% - 2000) do (
  2. set /A b = %%a+1999
  3.  
  4. call sqlplus %DBA_LOGIN%/%DBA_PASSWORD%@%DBA_DATABASE% @toto.sql %SYST% %%a %b%
  5. )
Lassé par la pub ? Créez un compte

j'ai trouvé moi même

il faut utiliser
setlocal enabledelayedexpansion
et passer la variable avec !b! au lieu de %b%

ce qui donne

  1. setlocal EnableDelayedExpansion
  2.  
  3. for /L %%a in (0, 2000, %maxna% - 2000) do (
  4. set /A b = %%a+1999
  5.  
  6. call sqlplus %DBA_LOGIN%/%DBA_PASSWORD%@%DBA_DATABASE% @scripts\rke2dke_na.sql %SYST% %%a !b!
  7. )
Lassé par la pub ? Créez un compte
Tom's guide dans le monde