J'ai un package DTS qui ne comporte qu'une seule tâche VB script. Quand je le lance manuellement pour le tester, j'obtiens bien le résultat attendu: le package fonctionne. 8)
Maintenant, je veux exécuter ce package depuis une procédure T-SQL. Pour cela, j'utilise sp_OACreate et sp_OAMethod :
Là, je n'ai pas d'erreur, mais rien ne se passe. L'objet est bien 'package' est bien chargé, la méthode 'execute' est existe, etc. Mais je n'ai pas le résultat que j'obtiens en exécutant le package manuellement.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 -- création de l'objet DTS Package EXEC @hr = master.dbo.sp_OACreate 'DTS.Package', @object OUT -- chargement du Package EXEC @hr = master.dbo.sp_OAMethod @object, 'LoadFromSQLServer', NULL, 'MonServeur', 'MonLogin', 'MonPassword', '0', NULL, NULL, NULL, 'MonPackage' -- exécution du package EXEC @hr = master.dbo.sp_OAMethod @object, 'Execute'![]()
Quelqu'un a-t-il utilisé ces méthodes sp_OA* avec un lot DTS ?
Y a-t-il qqchose de particulier à gérer au niveau du lot DTS (des propriétés, etc.) pour permettre son exécution de cette manière ?
Partager