วันอังคารที่ 9 เมษายน พ.ศ. 2556

How to Execute DTS Package by ASP.NET


ตามหัวข้อกันไปเลยนะค่ะ เริ่มแรกคือนกมี DTS Package ที่สร้างจาก SQL อยู่แล้วแล้วทีนี้จะรันตัว Package กันอย่างไรโดย .NET
จริงๆ มันก็มีอยู่ 3 วิธี (น่าจะใช่นะถ้าจำไม่ผิด) คือ SSIS Control Package , SP (Store Procedure) , DOS
 
แต่วิธีที่นกจะใช้คือ ลำดับแรกนกสร้าง SP for Execute DTS Package ซะก่อน ลำดับต่อมาก็เขียน .NET ไปรันมันซะก็แค่นั้น
 
ลำดับแรกสร้าง SP เพื่อ Execute DTS Package
 
        CREATE procedure [dbo].[SP_ExecuteDTS](
      @DTSSource varchar(1000))
                AS  
      – Initialize command
      Declare @cmd varchar(1000)
      select  @cmd =  ‘dtexec /F "’ + @DTSSource +‘"’     
      exec master..xp_cmdshell @cmd  
                        
ลำดับต่อมาเขียน .NET เพื่อ Execute DTS Package ผ่าน SP
 
                  Imports System.Data
         Imports System.Data.SqlClient
          Sub runDTS()
Dim gDTS As String
Dim conn As SqlConnection
Dim comm As SqlCommand
Dim gServer$, gDatabase$, gUserID$, gPassword$
Dim qTrustedConnection As Boolean
gServer =
"crServer"
gDatabase =
"dbCR"
gUserID = "cr"
gPassword =
"crpassword"
qTrustedConnection =
False
Try
‘ นกเรียก Package จากคอนโทรล FileUpload
gDTS =
Me.FileUpload1.PostedFile.FileName
‘ เปิด Connection
conn =
New SqlConnection("Server=" & gServer & _
";Database=" & gDatabase & _
";User ID=" & gUserID & _
";Password=" & gPassword & _
";Trusted_Connection= " & qTrustedConnection & ";")
‘ เรียกใช้ SP_ExecuteDTS ที่เราสร้าง SP ไว้ใน SQL
comm =
New SqlCommand("SP_ExecuteDTS", conn)
comm.CommandType = CommandType.StoredProcedure
‘ ส่ง Parameter ไปซะว่า Package เราอยู่แถวไหน
comm.Parameters.Add(
"@DTSSource", SqlDbType.VarChar, 1000).Value = gDTS
conn.Open()
comm.ExecuteNonQuery()
conn.Close()
Me.Label1.Text = "Done"
Catch ex As Exception
me.Label1.Text=ex.Message.ToString
End Try
End Sub
เท่านี้ก็เรียกใช้งาน DTS Package ผ่าน ASP.NET ได้แว้วล่ะ
ปล. ก่อนจากบอกอีกนิดนึงคือนกเป็นคนไม่ค่อยจะจำอะไรได้ยาวๆ นานๆ เท่าไหร่ เลยมีเวปมาแนะนำที่ทำให้นกเขียนอันนี้ได้
งั้นวันนี้ก็แค่สร้างให้มัน Execute DTS Package อะไรๆ ก็ได้กันไปก่อนละกันนะ

0 ความคิดเห็น:

แสดงความคิดเห็น