Sur la base de l'exemple here from MSDN, comment fournir des variables de niveau de package SSIS si l'on invoquait le package via la procédure "sp_start_job"?Utilisation de SQL Server Agent pour exécuter un package SSIS distant par programme sur le serveur
Voici le code exemple de MSDN:
Dim jobConnection As SqlConnection
Dim jobCommand As SqlCommand
Dim jobReturnValue As SqlParameter
Dim jobParameter As SqlParameter
Dim jobResult As Integer
jobConnection = New SqlConnection("Data Source=(local);Initial Catalog=msdb;Integrated Security=SSPI")
jobCommand = New SqlCommand("sp_start_job", jobConnection)
jobCommand.CommandType = CommandType.StoredProcedure
jobReturnValue = New SqlParameter("@RETURN_VALUE", SqlDbType.Int)
jobReturnValue.Direction = ParameterDirection.ReturnValue
jobCommand.Parameters.Add(jobReturnValue)
jobParameter = New SqlParameter("@job_name", SqlDbType.VarChar)
jobParameter.Direction = ParameterDirection.Input
jobCommand.Parameters.Add(jobParameter)
jobParameter.Value = "RunSSISPackage"
jobConnection.Open()
jobCommand.ExecuteNonQuery()
jobResult = DirectCast(jobCommand.Parameters("@RETURN_VALUE").Value, Integer)
jobConnection.Close()
Select Case jobResult
Case 0
Console.WriteLine("SQL Server Agent job, RunSISSPackage, started successfully.")
Case Else
Console.WriteLine("SQL Server Agent job, RunSISSPackage, failed to start.")
End Select
Console.Read()
Comment puis-je fournir des valeurs aux variables à l'intérieur du package SSIS nommé "RunSSISPackage"?
mon paquet utilise des chaînes de connexion dynamiques. comment puis-je définir ces valeurs dans mon package, via une requête de table? – D3vtr0n
donc l'un de vos paramètres est l'information de connexion? –
oui, tous les paramètres sont les informations de connexion pour le fichier de destination Access dynamique. l'utilisateur peut sélectionner n'importe quel dossier pour transférer ces données. Pour que mon paquetage SSIS comprenne cela, il a besoin de ces paramètres fournis. Des idées? – D3vtr0n