跳轉到

程式資訊

  • 程式 IDRecord
  • 所屬子系統:Other
  • 狀態:stable

留底紀錄與工作流程通報

功能簡介

「留底紀錄與工作流程通報」是一個彈出式視窗,用來把當前畫面的資料留底成一筆紀錄,連同檔案附件掛上工作流程樣板後送出通報/簽核。它不是獨立的選單程式,而是被其他程式(主要是查詢類報表)在背景叫起來的共用對話框——當你在某張查詢報表上按下工具列的 工作流程(審核)鈕,系統會把查詢結果包成一份留底紀錄,再由本視窗讓你補附件、選流程樣板並送出。

本視窗底層共用聯絡單(COMMPR)的資料結構:主檔、附件、工作流程明細三層都寫進聯絡單相關資料表,因此送出後可在聯絡單/工作流程相關功能中追蹤。適合需要「把一份報表結果或事件留下書面紀錄並走簽核」的主管與承辦人使用。

與聯絡單的關係

本視窗的主旨、內容、附件、工作流程明細都沿用聯絡單(COMMPR)的欄位與資料表,可視為「以工作流程為核心的聯絡單精簡版」。差別在於本視窗多帶一欄 檢視資料(viewxml),把來源畫面的資料表快照一併留底。

前置需求

  • 權限:由叫起本視窗的來源程式控管,本視窗本身不另設選單權限。
  • 必要參數/主檔:是否能順利送出,取決於下列資料是否齊備——
資料 影響什麼
工作流程樣板(對應該單據別) 決定本視窗能否使用;查無樣板時直接禁用 儲存(見欄位連動與附加功能
工作流程樣板的關卡設定(處理事項、部門、處理人、簽核順序) 下方工作流程明細清單的內容(誰簽、依序簽)
登入者帳號/姓名/Email 自動帶入工作流程第一關「發佈」關卡的處理人資訊
ERPIO 附件儲存路徑設定 送出時附件能否成功上傳、存檔

查無工作流程樣板就不能用

本視窗載入時會依單據別去找對應的工作流程樣板;若找不到任何樣板,會跳出提示並把 儲存 鈕鎖住,此時只能關閉視窗。請先在工作流程樣板維護中替該單據別建好樣板。

操作步驟

本視窗為彈出對話框,沒有新增/修改/刪除/查詢等標準工具列;核心動作只有「補附件 → 選樣板 → 送出」。

  1. 由來源程式叫起本視窗:在支援工作流程的來源程式上觸發通報,來源程式會把當前畫面資料與附件清單包成參數叫起本視窗。本視窗本身不在主選單,無法單獨開啟。
  2. 檢視留底主檔:視窗上方顯示這筆紀錄的 Notes No(紀錄單號)CreatedDate(建檔日期)Owner(製表人員)Subject(主旨)。單號、日期、製表人員為系統帶入唯讀;主旨可修改。
  3. 填寫內容:在 Content(內容) 多行文字框補充說明,可換行。
  4. 加掛附件(選填):在右側附件清單操作——
    1. 按某列 GetData(取檔)鈕,從檔案總管選一個檔案掛進該列。
    2. 視需要在 Tag(標籤) 欄填註記。
    3. 已掛好的檔案可按 Show(顯示)鈕開啟檢視。
    4. 附件列數不足時系統會自動補空白列,不需手動加列。
  5. 選擇工作流程樣板:在 WorkflowTemplate 下拉選樣板;選定後右側顯示樣板說明,下方工作流程明細清單會即時帶出該樣板的簽核關卡。
  6. 送出:按 儲存。系統會上傳附件、寫入留底主檔與工作流程明細,成功後提示「儲存成功」並把 儲存 鈕鎖住(避免重複送出)。
  7. 關閉:按右下角的離開鈕關閉視窗。

上方/下方還顯示什麼

視窗中段有一個唯讀格線顯示 檢視資料——也就是來源畫面被留底的資料表快照(由 viewxml 還原);最下方則是依樣板帶出的工作流程明細(簽核關卡)清單。兩者都僅供檢視,不可在此編輯。

欄位說明

留底主檔

欄位 必填 說明/格式/預設
Notes No(紀錄單號) 唯讀;新建時帶 +++,送出後由系統自動編號
CreatedDate(建檔日期) 唯讀;短日期格式
Owner(製表人員) 唯讀;預設為登入者帳號
Subject(主旨) 預設 System Record,可修改
Content(內容) 多行文字,可換行;預設空白
檢視資料 唯讀格線;來源畫面資料表快照(viewxml 還原),無來源時為空

預設值來源

主檔的預設值由程式在開窗時一次帶入(紀錄單號 +++、製表人員=登入者、主旨 System Record),使用者通常只需要改主旨/內容並補附件。序號前置碼則由叫起本視窗的來源程式傳入,並非固定值。

附件清單

欄位 可編輯 說明
LineNo(序號) 系統流水序號,自動補列
GetData(取檔) 按鈕 從檔案總管選檔掛入該列
Attachment(附件) 顯示掛入的檔名/路徑,唯讀
Tag(標籤) 自由註記文字
IsLoaded(載入) 唯讀;標示該附件是否已上傳(送出後為 Y
Show(顯示) 按鈕 開啟檢視已掛入的檔案

工作流程

欄位 可編輯 說明
WorkflowTemplate(工作流程樣板) ✔(下拉) 選定的簽核流程樣板;右側顯示樣板說明
工作流程明細 唯讀清單;依樣板帶出的簽核關卡:序號、處理事項、處理部門、處理人、實處人、狀態、優先順序、開始日/到期日、完成率、處理說明、退件序號等

欄位連動與附加功能

這一節把「輸入某欄位/按某按鈕後,系統會做什麼」逐一列出,全部以實際程式行為為準。

開窗即時帶值

  • 當視窗開啟時,系統會建立一筆留底主檔並帶入預設:紀錄單號+++製表人員=登入者帳號、單據別=來源程式的 ProgramClass 名稱、主旨System Record內容=空白、序號前置碼=來源程式傳入值、單號=來源程式傳入的來源單號、檢視資料=來源畫面傳入的資料表快照(viewxml)。
  • 當來源傳入既有附件路徑時,系統會自動把這些檔案逐一掛進附件清單的空白列(每筆附件視為已存在,標記為「修改」狀態而非新增)。
  • 附件清單會自動預留空白列:系統依傳入附件數量先補出足夠的空列(每批 10 列),讓你直接點 取檔 就能掛檔,不需手動加列。

工作流程樣板載入與禁用

  • 當視窗載入時,系統依單據別去查對應的工作流程樣板清單:
    • 查到樣板 → 自動選第一個樣板,並立即帶出它的簽核關卡到工作流程明細。
    • 查不到任何樣板 → 禁用 儲存 鈕並跳出「未設定流程樣板」提示,此視窗等同無法使用,只能關閉。
  • 當你切換 WorkflowTemplate 下拉時,系統會重新依新樣板抓取簽核關卡(依廠商/客戶/部門/特定使用者條件挑選對應的處理人),即時重建下方的工作流程明細清單。

工作流程明細的組成

  • 明細的第一關固定是「發佈」:序號 00、審核順序 0、狀態=「完成」、優先順序=「一般」、完成率 100%,處理人與實處人都是登入者本人、開始日/到期日為今天。
  • 第一關之後才接上樣板帶出的各簽核關卡,依序號排列;遇到「佔位簽核人」時,系統會自動以對應的登入使用者補實。

附件按鈕的行為

  • GetData(取檔):彈出檔案選取對話框,選定檔案後把路徑寫入該附件列;若該列原本不是新增狀態,會改標記為「修改」並清空「載入」旗標(代表需要重新上傳)。
  • Show(顯示):以系統預設程式開啟該列已掛入的檔案供檢視。

儲存 時會發生什麼

儲存 會執行工作流程上傳,依序:

  1. 防重送檢查:若工作流程明細已經是送出後的狀態(已有正式主鍵),直接略過不重複送。
  2. 寫回樣板號:把選定樣板的流程樣板號寫進留底主檔。
  3. 上傳附件:逐一把尚未上傳的附件透過 ERPIO 存檔,取得新檔名與完整路徑後回寫,並把「載入」標記為 Y。已標記刪除的附件會被排除、空白列不會上傳。
  4. 綁定關聯:把附件與工作流程明細的關聯鍵指回留底主檔。
  5. 整批寫入:透過聯絡單(COMMPR)儲存程序,把主檔+附件+工作流程明細一次寫入。
    • 成功 → 提示「儲存成功」,並鎖住 儲存避免重複送出。
    • 失敗 → 顯示錯誤訊息,不鎖按鈕,可修正後重試。

目前的留底主檔寫入路徑

本視窗的儲存以工作流程上傳為主軸——主檔、附件、簽核明細是由工作流程上傳流程整批寫入聯絡單資料表。程式中另一段「先單獨寫留底主檔再掛流程」的舊寫法目前為停用狀態,故所有資料以工作流程上傳的結果為準。

來源程式如何叫起本視窗

  • 本視窗不在主選單,由來源程式透過 OpenRecordWindow 帶參數叫起:來源程式把當前畫面的資料表快照(viewxml)、附件路徑清單、序號前置碼與來源單號包成參數傳入,本視窗據此建立留底主檔。
  • 視窗為以對話框(Modal)開啟,載入時會隱藏右上角的系統關閉鈕,且唯有按離開鈕才能關閉——直接按視窗的關閉鈕(X)不會生效(避免誤關遺失尚未送出的內容)。

常見問題

一開窗就跳「未設定流程樣板」、儲存 鈕是灰的?

代表這個單據別還沒有對應的工作流程樣板。本視窗的簽核關卡完全來自樣板,沒有樣板就無法送出。請先到工作流程樣板維護替該單據別建立樣板後再試。可參考 工作流程樣板選擇

下方工作流程明細只有一列「發佈」,沒有後續簽核關卡?

第一關「發佈」是系統固定加的(由你本人完成);後續關卡來自所選樣板。若只有「發佈」,多半是該樣板沒有設定後續關卡,或樣板的條件(部門/廠商/客戶/特定使用者)挑不到對應處理人。請檢查樣板關卡設定。

附件掛了檔,按 儲存 後 IsLoaded 還是空白或上傳失敗?

附件是在按 儲存 時才透過 ERPIO 上傳並把「載入」標記為 Y。若上傳失敗,多半是 ERPIO 附件儲存路徑未設定或無寫入權限;請確認附件儲存設定後重試。可參考 附件

視窗的關閉鈕(右上 X)按了沒反應?

這是刻意設計——本視窗只有按右下角的離開鈕才能關閉,避免在尚未送出時誤關。請改按離開鈕。

送出成功後想再補一筆,儲存 鈕卻變灰?

送出成功後系統會鎖住 儲存 以防重複送出。請關閉視窗,從來源報表重新觸發一次工作流程通報,即會開出一份新的留底紀錄。

相關功能


需補截圖清單

以下截圖待功能 runtime 驗收後補拍(放 docs/Other/images/):

  1. record-step1.png — 留底主檔區(紀錄單號/建檔日期/製表人員/主旨/內容)
  2. record-step2.png — 附件清單(含 取檔顯示 按鈕欄)
  3. record-step3.png — 工作流程樣板下拉與下方工作流程明細清單