還可以用編程方式創建自定義任務,然後使用“注冊自定義任務”命
令將其集成到 DTS設計器中。
為說明如何使用這些任務,這裡顯示一個簡單的 DTS軟件包,其中包
括兩項任務: Microsoft ActiveX?腳本任務以及發送郵件任務:
圖 2. 具有兩項任務的 DTS 軟件包
ActiveX腳本任務可包含任何ActiveX腳本引擎,包括Microsoft Visual
Basic Scripting Edition(VBScript)、Microsoft JScriptActiveState
ActivePerl。這些搜索引擎可以從 http://www.activestate.com 下載。
發送郵件任務可以發送消息,指示軟件包已運行。請注意,這些任務尚未
排序。執行軟件包時,ActiveX 腳本任務和發送郵件任務將同時運行。
工作流:設置任務優先級
定義任務組時,通常有一個執行任務的順序。如果任務已排序,每個
任務將成為進程中的一個步驟。在 DTS設計器中,在 DTS設計器工作表上
操作任務,並使用優先級約束條件來控制執行任務的順序。
優先級約束條件繼而將軟件包中的任務鏈接起來。下表顯示在 DTS中
可以使用的優先級約束條件類型。
優先級約束條件 說明
按完成順序
(藍色箭頭)
如果希望在任務 1 完成前不執行任務 2,而不考慮執行結果如何,則應使用“按完成順序”優先級約束條件鏈接任務 1
和任務 2。
按成功情況
(綠色箭頭)
如果希望在任務 1 成功完成前不執行任務 2,應使用“按成功情況”優先級約束條件鏈接任務 1 和任務 2。
按失敗情況
(紅色箭頭)
如果希望只在任務 1 無法成功執行的情況下才執行任務 2,應使用“按失敗情況”優先級約束條件鏈接任務 1 和任務
2。
下圖顯示使用“按完成順序”優先級約束條件的 ActiveX腳本任務和
發送郵件任務。當 Active X 腳本任務完成後,無論成功或失敗,都將運
行發送郵件任務。
圖 3. 使用“按完成順序”優先級約束條件的 ActiveX 腳本任務和發送郵件任務
可以分別配置發送郵件任務,一個配置為使用“按成功情況”約束條
件,一個配置為使用“按失敗情況”約束條件。兩個發送郵件任務可根據
ActiveX 腳本成功還是失敗發送不同的消息。
圖 4. 郵件任務
您還可以對一個任務采用多個優先級約束條件。例如,發送郵件任務
“管理通知”可以在腳本 #1 采用“按成功情況”約束條件,在腳本 #2
采用“按失敗情況”約束條件。在這些情況下,DTS 假設存在邏輯關系
“AND ”。因此,只有在腳本 #1 成功執行而腳本 #2 失敗的情況下,才
會發送“管理通知”消息。
圖 5.示例:對一項任務采用多個優先級約束條件
連接:訪問和移動數據
要成功執行復制和轉換數據的 DTS任務,DTS 軟件包必須與它的源和
目標數據以及所有其它數據源(如查找表)建立有效連接。
創建軟件包時,通過從可用的 OLE DB 提供程序和 ODBC 驅動程序列
表選擇連接類型,可對連接進行配置。可用的連接類型包括:
● Microsoft 數據訪問組件 (MDAC) 驅動程序
用於 SQL Server 的 Microsoft OLE DB 提供程序
Microsoft 數據鏈接