Try this: This is some of what I have. I found this all over the place.
And look in the SQL books online. Look for how to do it in ActiveX Script Tasks, and then copy it to .NET
I created a DTS package called ExportItemMaster, which had some global variables in it. I tries different ways of calling the package, so I am sorry for the bad code. This was my test project.
CALLING IT FROM A STORRED PROCEDURE WORKED TOO.
***********************************************************
Here is some of the code:
Imports DTS
Imports System.Data.SQLClient
Public Class WebForm1
Inherits System.Web.UI.Page
#Region " Web Form Designer Generated Code "
'This call is required by the Web Form Designer.
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
End Sub
Protected WithEvents btnCallDTS As System.Web.UI.WebControls.Button
Protected WithEvents btnCallSP As System.Web.UI.WebControls.Button
Protected WithEvents DataGrid1 As System.Web.UI.WebControls.DataGrid
'NOTE: The following placeholder declaration is required by the Web Form Designer.
'Do not delete or move it.
Private designerPlaceholderDeclaration As System.Object
Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
'CODEGEN: This method call is required by the Web Form Designer
'Do not modify it using the code editor.
InitializeComponent()
End Sub
#End Region
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'Put user code to initialize the page here
End Sub
Private Sub btnCallDTS_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCallDTS.Click
'**** THIS WAS ONE WAY I TRIED ****
Dim oPkg As New DTS.Package
'Get the package
oPkg.LoadFromSQLServer("mysqlserver", "myname", "mypass", _
DTSSQLServerStorageFlags.DTSSQLStgFlag_Default, , , , "ExportItemMaster"
oPkg.Execute()
oPkg.UnInitialize()
oPkg = Nothing
End Sub
Private Sub btnCallSP_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCallSP.Click
'**** THIS WAS ANOTHER WAY I TRIED WITH A STORED PROCEDURE ****
Dim sConnectionString As String = _
"server=myserver;uid=myname;pwd=mypass;database=mydatabase"
Dim cnArett As New SqlConnection(sConnectionString)
Dim cmdRunDTS As New SqlCommand("sp_RunPackage", cnArett)
cmdRunDTS.CommandType = CommandType.StoredProcedure
Dim sSQL As String
sSQL = "Select * From ItemMaster Where ItemNumber = 'A05 41056W'"
' Set up parameter for stored procedure
Dim prmPackageName As New SqlParameter
Dim prmUser As New SqlParameter
Dim prmPassword As New SqlParameter
Dim prmGFileName As New SqlParameter
Dim prmSQL As New SqlParameter
'Get Return Value
Dim prmretvalue As New SqlParameter
prmretvalue.ParameterName = "retvalue"
prmretvalue.Direction = ParameterDirection.ReturnValue
cmdRunDTS.Parameters.Add(prmretvalue)
'Pass DTS package name
prmPackageName.ParameterName = "@Package"
prmPackageName.SqlDbType = SqlDbType.VarChar
prmPackageName.Size = 64
prmPackageName.Value = "ExportItemMaster"
cmdRunDTS.Parameters.Add(prmPackageName)
'Pass User
prmUser.ParameterName = "@User"
prmUser.SqlDbType = SqlDbType.VarChar
prmUser.Size = 15
prmUser.Value = "myuser"
cmdRunDTS.Parameters.Add(prmUser)
'Pass Password
prmPassword.ParameterName = "@Password"
prmPassword.SqlDbType = SqlDbType.VarChar
prmPassword.Size = 15
prmPassword.Value = "mypass"
cmdRunDTS.Parameters.Add(prmPassword)
'Pass Global var - FileName
prmGFileName.ParameterName = "@FileName"
prmGFileName.SqlDbType = SqlDbType.VarChar
prmGFileName.Size = 200
prmGFileName.Value = "c:\NewFile01.txt"
cmdRunDTS.Parameters.Add(prmGFileName)
'Pass Global var - SQL
prmSQL.ParameterName = "@SQL"
prmSQL.SqlDbType = SqlDbType.VarChar
prmSQL.Size = 1000
prmSQL.Value = sSQL
cmdRunDTS.Parameters.Add(prmSQL)
''cnArett.Open()
''Dim myReader As SqlDataReader = cmdRunDTS.ExecuteReader()
'Response.Write(prmReturn.Value)
'Console.WriteLine("{0}, {1}", myReader.GetName(0), myReader.GetName(1))
'Console.WriteLine("{0}, ${1}", myReader.GetString(0), myReader.GetDecimal(1))
cnArett.Open()
cmdRunDTS.ExecuteNonQuery()
cnArett.Close()
Response.Write("Affected records = " & cmdRunDTS.Parameters("retvalue"

.Value.ToString)
'Get the result
'Dim daGetOrders As New SqlDataAdapter(cmdRunDTS)
'Dim dsOrders As New DataSet
'daGetOrders.Fill(dsOrders, "Orders"

'DataGrid1.DataSource = dsOrders.Tables("Orders"

'DataGrid1.DataBind()
'exec spRunPackage 'ExportCart'
End Sub
End Class