Kann jemand einige Informationen zum Ausführen eines Integration Services-Pakets auf einer SQL Server 2005-Instanz von Visual Basic 6 bereitstellen?Wie wird ein SSIS-Paket von Visual Basic 6 ausgeführt?
Jede Hilfe wird sehr geschätzt.
Kann jemand einige Informationen zum Ausführen eines Integration Services-Pakets auf einer SQL Server 2005-Instanz von Visual Basic 6 bereitstellen?Wie wird ein SSIS-Paket von Visual Basic 6 ausgeführt?
Jede Hilfe wird sehr geschätzt.
Sie müssen xp_cmdshell
aktiviert haben, wenn nicht, führen Sie: sp_configure 'xp_cmdshell', '1'
in SSMS auf Ihrem Server.
ein Geschäft Prozedur, erstellen und in den folgenden Code setzen:
DECLARE @SSISPackage VARCHAR(1000)
DECLARE @cmd VARCHAR(max)
DECLARE @variable_value1 varchar(255)
DECLARE @Result int
SET @SSISPackage = 'C:\path_to_the_package\package_name.dtsx'
SET @cmd = 'dtexec /F "' + @SSISPackage + '"'
// if you have variables in the package that need to be set up
// add them here
SET @cmd = @cmd + ' /SET \Package.Variables[User::somevariable1].Properties[Value];"' + @variable_value1 + '"'
SET @cmd = @cmd + ' /SET \Package.Variables[User::somevariable2].Properties[Value];"' + @variable_value2 + '"'
SET @cmd = @cmd + ' /SET \Package.Variables[User::somevariable3].Properties[Value];"' + @variable_value3 + '"'
EXECUTE @Result = master..xp_cmdshell @cmd, NO_OUTPUT
Dann über eine ADODB.Command die gespeicherte Prozedur von VB6, rufen.
Sie haben Beispiele hier:
Ich hoffe, es hilft.
Wahrscheinlich ist es am einfachsten, Shell und run dtexec
Alternativ können Sie use the using Microsoft.SqlServer.Dts assemblies in .NET und wickeln Sie es in COM (oder eine EXE-Datei) und dann von VB6 nennen.
Dieser zweite Link hat einige andere Optionen, die für VB6 in irgendeiner Weise gelten könnten, aber wahrscheinlich alle dazu führen würden, den .NET-Code in ein COM-Objekt oder eine EXE zu schreiben.