Bonjour.

J'ai un soucis avec une exécution d'un procédure à distance via un vbs, qui ne s'exécute pas en entier, mais si je mets le vbs sur le serveur SQL ça fonctionne!

J'explique, ma procédure fait ca:

EXEC sp_configure 'show advanced options', 1
-- To update the currently configured value for advanced options.
RECONFIGURE
-- To enable the feature.
EXEC sp_configure 'xp_cmdshell', 1
-- To update the currently configured value for this feature.
RECONFIGURE

-- Création du fichier d'export
EXEC master..xp_cmdshell 'bcp "ma_req_sql" queryout "d:\test.tx"'
-- Compression du fichier
EXEC master..xp_cmdshell '7z a -tzip d:\test.zip d:\test.txt'

-- To disable the feature.
EXEC sp_configure 'xp_cmdshell', 0
-- To update the currently configured value for this feature.
RECONFIGURE
-- To disable advanced options to be changed.
EXEC sp_configure 'show advanced options', 0
-- To update the currently configured value for advanced options.
RECONFIGURE


Donc, elle :
- active le paramètre avancé xp_cmdshell
- lance un bcp grâce à xp_cmdshell
- compresse le fichier en zip via 7-zip et xp_cmdshell
- désactive le paramètre xp_cmdshell

Mon problème, c'est que lorsque je place le vbs qui exécute cette procédure sur un serveur distant, l'activation et le bcp se font bien, mais rien d'autre n'est exécuté!!!

le lancement de la procédure dans le vbs est réalisé comme ceci:
Dim connection
Set connection = CreateObject("ADODB.Connection")
connection.connectionString = connectionString
connection.CommandTimeout = 600
connection.ConnectionTimeout = 600
connection.Open
connection.Execute("exec Proc_Stock 'param1', 'param2','param3'")

Pour info :
- je me log avec un user sql qui est sysadmin
- si la requete executé par le bcp est très courte tout marche même à distance (donc pas de problème de droits)

Avez-vous une idée?

Merci d'avance.