[Résolu] - Problème variables

Une difficulté, une précision posez vos questions

Modérateur : WIN32-[GG]

Répondre
SiSMik
Batcheur occasionnel
Messages : 3
Enregistré le : 10 oct. 2008 12:56

[Résolu] - Problème variables

Message par SiSMik »

Bonjour,
Ceci est mon premier post sur ce site, bien qu'il m'ait été extrêmement utile par le passé, la je bloque sur une variable, cela ne doit pas être grande chose, mais bon...
En gros j'ai un fichier GRADES composé de plusieurs lignes, j'arrive à récupérer toutes les lignes, mais ce que je voudrais faire, c'est récupérer les 4 premiers caractères de chaque lignes afin de générer ma requête sql.

Code : Tout sélectionner

FOR /f %%j IN (GRADES) DO ( 
echo %%j 
set VAR=%%J
SET GRADE=%VAR:~0,4%
ECHO update tgrade set DATMODIF = SYSDATE, ETAT = 'M' WHERE ID_GRADE = %GRADE% >> temp.sql
)
pause
le me renvoit bien ma ligne, mais par contre

Code : Tout sélectionner

SET GRADE=%VAR:~0,4%
ne fonctionne pas et me retourne

Code : Tout sélectionner

:~0,4
mais je bloque à ce niveau là...

Si il y a une âme charitable pour me sortir de la merde dans laquelle je suis...

Merci
Fabien


EIDT: C'est bon j'ai trouvé

Code : Tout sélectionner

@echo off
setlocal EnableDelayedExpansion
set grade=
for /f %%i IN (GRADES) do ( 
set grade=%%i
echo  UPDATE TGRADETS SET DATMODIF = SYSDATE, ETAT = 'M' WHERE ID_GRAETS = '!grade:~0,4!'; >> sql.sql
)
pause
Merci flox pour l'astuce du DelayeExpansion :)
Avatar du membre
flox
Administrateur du site
Messages : 158
Enregistré le : 18 janv. 2008 22:05

Re: [Résolu] - Problème variables

Message par flox »

c'est toujours utile @ + sur le forum
Répondre