SQL Workflow Service for SQL Server 的事件腳本 (VBScript) 偵錯向來困難。安裝 Office XP 附帶的 **Microsoft Script Editor (MSE)** 並啟用 **Just-In-Time (JIT) 偵錯**,即可在腳本錯誤發生時中斷進入程式碼檢視。
SeparateProcess = True,獨立進程運行,隔離偵錯影響於 Sub Create1_OnCreate 加入:
Dim intA, intB, intC
intA = 5
intB = 10
intA = intA - 5 ' 變為 0
intC = intB / intA ' 除零錯誤
| 限制 | 因應策略 |
|---|---|
| 必須在工作流服務伺服器本機偵錯 | 遠端桌面連線至伺服器操作 |
| 修改程式碼需切回開發環境 | 雙螢幕或快速切換 (Alt+Tab) |
| 不支援遠端附加處理序 | 僅限本機 JIT 觸發 |
| VBScript 偵錯功能有限 (無呼叫堆疊完整檢視) | 善用 `Err.Description`、訊息盒輸出關鍵變數 |
若環境允許,**Visual Studio .NET 內建偵錯器**功能更完整:支援遠端偵錯、呼叫堆疊、監看運算式、即時編輯繼續。但需專案為 .NET 組件而非純 VBScript 工作流。
MSE + JIT 提供**零成本、無需預先設定中斷點**的即時偵錯能力,極適合「腳本突然報錯、現場急需找原因」的情境。配合 `SeparateProcess = True` 隔離影響,是 SQL Workflow 開發者的必備技能。