Bonjour à tous
Comme vous avez pu le contaster , sur vtom , lors du lancement d’un script par votre agent windows , vtom le lance à partir du répétoire win32 :
Pas pratique du tout quand on souhaite que le script en question travail avec des fichiers qui sont dans le méme répertoire …
Bien évidement on peut s’en sortir en modifiant le script de manière à ce qu’il tienne compte des chemins , bref pas pratique et chiant .
Sur les agents Unix vous noterez que nous ne rencontrons pas ce problème : les scripts sont bien lancés à partir des répertoires ou ils se situent
Alors que faire :
Modifier votre Queue wnt sur votre agent windows 🙂
Comment faire ?
Se connecter sur la machine hébergeant l’agent Aller dans le répértoire contenant les queues (si vous ne savez pas ouvrez une cmd et faite cd %ABM_BIN% et vous serez positionnez dans le bon répértoire ) Ensuite clique droit sur submit_queue_wnt.bat , modifier , puis remplacer le tout par les lignes suivantes : @echo OFF echo ______________________________________________________________________ echo Contexte Visual TOM du traitement echo. echo Machine : %TOM_HOST% echo Utilisateur : %TOM_USER% echo Script : %TOM_SCRIPT% echo Serveur Visual TOM : %TOM_REMOTE_SERVER% echo Traitement : %TOM_JOB% echo Application : %TOM_APPLICATION% echo Environnement : %TOM_ENVIRONMENT% echo Job ID : %TOM_JOB_ID% echo Mode Execution : %TOM_JOB_EXEC% echo Date d’exploitation : %TOM_DATE% echo Valeur de la date : %TOM_DATE_VALUE% echo Log des erreurs : %TOM_LOG_PATH_E% echo Log des sorties : %TOM_LOG_PATH_O% echo Action sur les logs : (%TOM_LOG_ACTION%) echo Directory des logs : %TOM_LOG_DIR% echo _______________________________________________________________________ echo Debut de l’execution du script … date /T time /T echo _______________________________________________________________________ echo. :argloop shift if « %0″== » » goto argend set arg=%arg% %0 goto argloop :argend set dirname= for %%F in (%TOM_SCRIPT%) do set dirname=%%~dpF cd /D %dirname% call « %TOM_SCRIPT% » %arg% set RETCODE=%ERRORLEVEL% if %RETCODE% equ 0 goto TERMINE goto ERREUR :ERREUR %ABM_BIN%\tsend -sE -r%RETCODE% -m »Job en erreur (%RETCODE%) » echo _______________________________________________________________________ echo Fin d’exécution du script date /T time /T echo Exit %RETCODE% donc pas d’acquitement echo _______________________________________________________________________ if not « %TOM_LOG_ACTION% »== » » call Gestlog_wnt.bat exit %RETCODE% :TERMINE %ABM_BIN%\tsend -sT -r%RETCODE% -m »Job termine (%RETCODE%) » echo _______________________________________________________________________ echo Fin d’exécution du script date /T time /T echo Exit 0 donc acquitement if not « %TOM_LOG_ACTION% »== » » call Gestlog_wnt.bat exit 0
Pas besoin de redémarrer l’agent vtom , cependant veillez bien à ce que votre job (traitement ) s’exécute avec la queue wnt .