Bonjour,
J'ai un problème assez complexe d'appel de .bat depuis un script dans mon job BODS.
Je vais essayer de vous expliquer mon raisonnement le plus simplement possible.
Mon script s'exécute en tête de job, il doit convertir des .xlsx en .xls pour qu'ils soient utilisés dans le job.
Ceux ci sont converti via une procédure de mon cru : un .bat appel un .vbs qui copie/rename.
Code du .bat
Code du .vbs
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 ECHO OFF c:\windows\system32\cscript.exe chemin1\xlsx2xls.vbs "chemin2\tur6B.xlsx" "chemin2\tur6B.xls" EXIT
Et voici le code du script BODI (Toto.bat contient un CALL vers le premier .bat, c'était un test mais ça marchait alors que l'appel direct au premier bat ne fonctionne pas) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 Set objExcel = CreateObject("Excel.Application") Set objWorkbook = objExcel.Workbooks.Open(Wscript.Arguments(0), null, true, null, null, null,null,null,null,null,null,null,null,null,null) MsgBox("OK") objExcel.Application.Visible = False objExcel.Application.DisplayAlerts = False objExcel.ActiveWorkbook.SaveAs Wscript.Arguments(1), 56 objExcel.ActiveWorkbook.Close objExcel.Application.DisplayAlerts = True objExcel.Application.Quit WScript.Quit
Le problème maintenant : Quand je double clic sur toto.bat, tout se passe bien, la conversion, etc.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 begin exec('cmd', 'chemin2\toto.bat', 8); sleep(10000); end
Quand je lance depuis BODS, ca ne marche pas.
Je tente un truc : Je change le contenu du premier .bat en mettant un ECHO vers fichier au lieu de l'appel au VBS. Le double clic marche (normal), mais l'exécution depuis BODI aussi !
Ma question est donc de savoir si quelqu'un sait pourquoi dans un cas ca marche et dans l'autre non, y a-t-il une limite en profondeur de l'appel, est-ce un problème de passage de paramètres dans les cmd,...
Je précise qu'il n'y a aucune erreur à l'exécution dans BODS, et le sleep je me suis dit que peut être qu'il n'avait pas le temps de convertir avant de faire la suite, mais ça change rien.
Merci d'avance à tout ceux qui auront eu le courage de lire
PS : sinon s'il y en a qui savent comment gérer les .xlsx avec cette version j'achète aussi ça sera vachement plus simple
Guillaume
Partager