可以使用自動化面板中的指令碼執行動作來執行網站中的指令碼。這可讓您從文件、試算表或簡報中手動執行腳本。
指令碼包含在自訂 Workiva 中。若要使用指令碼,您的工作區必須已啟用「自訂 Workiva」/指令碼,並且使用者需要適當的指令碼角色和檔案權限。
要求
- 您的工作區必須啟用 Workiva Scripting。進一步了解 Workiva Scripting。
- 腳本只能在其託管的同一工作區執行。進一步了解。
- 只有檔案擁有者才能建立自動化。
- 需要Script Editor 角色才能建立指令碼。
建立您的自動化
從您擁有的檔案建立自動化:
- 從首頁 ,開啟一個文件、簡報或試算表。
- 在右側邊欄中,按一下 Automations 閃電圖示。
- 按一下 + 或 建立新的自動化 以新增自動化。
- 從自動化觸發 下拉式功能表中,選擇手動執行 。
- (可選)讓其他使用者能夠手動執行此自動化,方法是輸入他們的姓名,並在 何時由 選取執行時欄位中選取他們。
- 在動作詳細資訊下 ,選擇執行腳本 。
- 在 Script ID [] 欄位中輸入編號 [] 結尾的腳本 URL 結尾的 ID 。
- (可選)選取包含指令碼輸入內容的試算表和區段。
- 按一下建立以完成。
執行和管理自動化
您的新自動化會在自動化面板中顯示為 「啟動中」。作為檔案擁有者,您可以從下拉式功能表中執行幾個動作:
- 執行 :手動執行自動化指令碼。
- 編輯:更新自動化的詳細資訊,例如其觸發準則。
- Disable/Activate :選擇自動化是否可執行。
- 檢視活動 :開啟自動化的活動記錄。
- 刪除 :從檔案中永久移除自動化。
注意: 為防止重複執行,Run 選項會在點擊之間停用 20 秒。
指令碼接收的資訊
自動化執行時,會傳送腳本讀取為環境變數的資訊:
- DOCUMENT_ID: 執行自動化的文件 ID。
- INPUT_SHEET_ID: 用於管理自動化輸入參數的試算表 WURL。
- INPUT_RESOURCE_ID: 上述電子表格中該章節的 WURL。
- INPUT_SPREADSHEET_ID: 上述電子表格的 ID。
- INPUT_SPREADSHEET_SHEET_ID: 上述試算表中章節的 ID。
WURL 是專屬的 Workiva 特定 URL,包含電子表格或節的 ID 及其他資訊。
若要從參數中擷取 ID,請使用此指令碼:
# 歡迎使用 Workiva Scripting 匯入要求 import json import os DOCUMENT_ID = os.getenv('DOCUMENT_ID') SPREADSHEET_ID = os.getenv('INPUT_SPREADSHEET_ID') SHEET_ID = os.getenv('INPUT_SPREADSHEET_SHEET_ID') print("RAW parameter:"個例如用戶端 ID 或密碼—複製到指令碼中。您可能需要將這些認證直接編碼到腳本中。
常見問答
我可以執行另一個工作區、組織或區域(亞太地區、加利福尼亞州、歐盟或美國)中託管的腳本嗎?
Workiva 自動化 只能執行與檔案位於相同工作區的指令碼。若要在另一個工作區、組織或區域執行指令碼,請使用 Workiva Scripting 連接器 或 Workiva Scripting API。
使用 Scripting API 時,請在承載目標腳本的工作區中建立 API 授與。授予需要script:execute;如果整合擷取執行狀態、記錄或輸出,則還需要script:read。有關建立或更新 API 授與的說明,請參閱 Workiva API 設定。
我可以在執行指令碼時傳送執行時輸入/參數嗎?
目前,自動化功能不允許在執行指令碼時,將執行時輸入的內容傳送到指令碼。
自動化會傳送哪些元資料到執行的指令碼? 是否傳送工作區 id?
從自動化執行指令碼時,會傳送以下參數:
- DOCUMENT_ID: 執行自動化的文件 ID。
- INPUT_SHEET_ID: 用於管理自動化輸入參數的試算表 WURL。
- INPUT_RESOURCE_ID:「輸入」試算表中區段的 WURL。
- INPUT_SPREADSHEET_ID:「輸入」試算表的 ID。
- INPUT_SPREADSHEET_SHEET_ID:「輸入」試算表中區段的 ID。
有關更多資訊,請參閱 Workiva 支援頁面 執行具有自動化功能的腳本。
如何從腳本執行中存取 Workiva 和非 Workiva 系統的憑證?
從自動化執行腳本時,唯一的選擇是在程式碼本身硬體編碼憑證。
同一個指令碼可以從兩個或多個檔案同時執行嗎?
可以,一個指令碼可以從同一個檔案或多個檔案同時執行。