Workiva Scripting 為在 Workiva 平台上執行 Python 程式碼提供了一個靈活、安全的環境。本文涵蓋您在建立腳本時可能遇到的一些較常見情況。
Workiva Scripting 包含在自訂 Workiva 中。若要使用指令碼,您的工作區必須已啟用「自訂 Workiva」/指令碼,並且使用者需要適當的指令碼角色和檔案權限。
對於此處未涵蓋的問題,請查看我們的 其他 Workiva Scripting 文章 或造訪Workiva API和Workiva Scripting社群。
管理和權限問題
自動化中沒有出現執行指令碼動作
執行指令碼動作僅可供具有適當 指令碼角色的使用者使用。請聯絡您的工作區管理員,以指派所需的角色。如果角色已指派但仍無法採取動作,請聯絡 Workiva 支援。
Workiva 腳本連接器在 Chains 中不可用
這表示您的工作區尚未啟用 Workiva Scripting 連接器。如果您認為應該啟用它而實際上不需要,請聯絡您的 Workiva 客戶團隊。
工作區管理員看不到任何指令碼角色
這表示您的工作區尚未啟用指令碼功能。如果您認為應該啟用它而實際上不需要,請聯絡您的 Workiva 客戶團隊。
Workiva腳本連接器和命令問題(鏈)
命令執行啟動,但腳本無法執行
確認您的工作區已啟用指令碼功能。如果您認為應該啟用它而實際上不需要,請聯絡您的 Workiva 客戶團隊。
如果您已確認啟用腳本,則Workiva Scripting 連接器 的整合使用者可能未指定必要的角色。請聯絡您的工作區管理員,以指派適當的Scripting 角色 。您還應該驗證整合使用者是否有權限存取該命令所啟動的指令碼。
指令仍在執行中,但指令碼執行意外停止
如果指令碼停止後鏈結命令仍在進行中,請檢查以下項目:
-
檢查執行是否已取消:
您可以在 Scripting Editor 的 Properties 面板中以及透過
GET /scripts/{scriptId}/runs或GET /scripts/{scriptId}/runs/{runId}取得執行歷程紀錄。API 要求需要script:read範圍且必須包括X-Version: 2026-01-01。有關建立或更新 API 授與的說明,請參閱 Workiva API 設定。
-
檢查指令碼是否超過資源限制:
記憶體、CPU、磁碟和執行階段的使用情況會在指令碼執行記錄檔和 API 傳回的指令碼執行資料中自動報告。
有關更多資訊,請參閱 處理 Workiva Scripting 中的資源限制 和 Workiva Scripting 限制。
-
檢查指令碼是否已達到最長執行時間:
如果是,請減少在一次執行期間執行的工作量,或將工作分成較小的操作。請參閱 Workiva Scripting 限制。
-
檢查是否存在明確停止 Python 進程的函數:
驗證指令碼不會呼叫:
quit() exit() sys.exit() os._exit()quit()、exit()和sys.exit()raiseSystemExit。os._exit() 會立即停止進程,且不會執行一般的清理處理常式。
有關 Scripting API 操作的更多資訊,請參閱 Scripting API 指南。
指令與腳本執行不同步
當命令完成而腳本繼續執行時會發生這種情況,反之亦然。
如果命令在腳本執行前完成,請確保 命令逾時 大於腳本執行時間(請參閱 Workiva 腳本限制 以了解最大腳本執行時間)。
如果指令碼的執行時間比指令碼的執行時間早了幾秒鐘,這可能是腳本系統在腳本執行完成後處理資訊所造成的預期延遲。指令只有在整個過程完成後才會報告完成。
腳本編輯器
匯入函式庫無法運作
Workiva Scripting 支援Python 的標準函式庫 開箱即用,以及從Python Package Index 取得的元件 (更多資訊請參閱Supported Workiva Scripting libraries and dependencies )。可能不支援需要額外安裝的 PyPI 元件。
請確定您要匯入的函式庫是 Python 標準函式庫或 Python 套件索引的一部分。如果它是後者的元件,請確定不需要額外安裝。