2013-08-16 72 views
0

我添加了一些事件處理程序到包含5個可執行文件的程序包。每個5都有OnPostExecute和1,一個包含其他4的序列容器同時具有OnPostExecute和OnPreExecute。SSIS前後執行處理程序不會觸發

序列容器在預執行時有一個執行SQL任務,該任務插入並獲取@@ IDENTITY,並且該帖子具有更新@@ IDENTITY記錄的執行SQL。

沒有一個事件處理程序似乎正在觸發。另外,在執行前和執行後設置的斷點似乎不會觸發。

Control Flow - 5 Executables

Sequence OnPreExecute Event Handler

Package Explorer

有什麼建議?

+0

你可以張貼一些截圖。顯示您的控制流,包資源管理器,然後顯示您創建的特定事件處理程序。 – billinkc

回答

4

顯然,當你「執行集裝箱」是VS,它不會觸發任何已定義的事件。當我從頂部運行此代碼時,所有事件都按預期啓動。

2

所以你會看到你的Control Flow截圖中有一個名爲「Copy Table Transaction」的序列容器。

然後,您在名爲「Copy Table Transaction」的可執行文件上定義了一個OnPreExecute事件處理程序。但是,在對象資源管理器中,您將光標置於「程序包/控制流」級別的「事件處理程序」上。你看到這是空的,因爲你沒有在那裏定義任何東西。

但是我也看到你有一個OnPostExecute事件處理程序爲Sequence Container中的「Get ObjectID」定義。 Sequence容器具有Pre和Post執行事件處理程序。

如果展開OnPostExecute事件處理程序規定「複製表事務」,你會看到一個名爲「表達任務」和可執行文件「執行SQL任務」

+0

我在添加圖片時得到了這種感覺。我仍然不明白他們爲什麼不開槍。 – Metaphor

+0

在其中一個可執行文件中放置一個斷點 – billinkc

+0

沒有,從未解僱。 – Metaphor

相關問題