反饋已提交

網絡繁忙

利用標記欄位實現上報審核流程

1. 概述

1.1 問題描述

在企業的日常業務中,肯定會有一些上報和審核的流程,那麼如何透過填報功能來實現此流程呢?

1.2 解決方案

平台的多級上報功能可以滿足一部分的上報審核流程需求,但如果有一些個性化的需求,無法透過多級上報功能實現的,那就可以自己製作填報範本來實現。

核心思路是利用標記欄位:在資料庫相關表中設定一個用於記錄上報流程節點的標記欄位,後續利用該欄位即可判斷不同資料在流程中的狀態,進而實現自訂的上報審核流程需求。

2. 範例

2.1 準備資料

資料庫表結構如下,其中狀態列即為標記欄位:

2.2 設計範本

一共需要2張範本來實現此範例的場景,一張用於員工填報,一張用於負責人審核。

員工填報表設計如下:

負責人審核表設計如下:

2.3 製作員工填報表

2.3.1 設定權限

1)建立ds1資料集,利用系統參數fine_username實現員工只能看到自己填寫的資料。

sql為:SELECT * FROM employee where 僱員ID = '${fine_username}'

2)將查詢出的欄位拖入員工填報表,這樣員工就可以查看自己填寫的資料,以及上報流程的狀態了。

2.3.2 設定填報屬性

1)如圖所示設定員工填報表的填報屬性,標記欄位輸入固定值0,代表待審核狀態。

本範例中標記欄位值的含義為:0代表待審核,1代表審核透過,2代表被退回,空代表未提交。

2)如果是待審核或者審核透過狀態,則不能讓使用者重複提交。此處可以用資料校驗來實現,判斷只有標記欄位為空或者2時,才可以提交。公式為:len(C9)=0||C9=2

2.3.3 設定頁面權限

1) 當資料處於待審核或者審核透過狀態時,不允許使用者再次修改資料,只能查看。此處可以利用條件屬性來實現,在C6、F6、C7、F7、C8、F8儲存格設定條件屬性,判斷C9儲存格的值為0或者1時,禁用元件。

2)C9儲存格的狀態為實際值,是數字,此處可以利用儲存格形態的資料字典,來將其轉換為文字說明。

3)如果狀態為被退回時,需要展示退回原因,其他狀態則不需要展示退回原因。此處可以在B10儲存格設定條件屬性來判斷狀態,當狀態不等於2時,隱藏退回原因行。

2.4 製作負責人審核表

2.4.1 過濾資料

建立ds1資料集,利用標記欄位過濾出待審核的資料,sql為:SELECT * FROM employee where 狀態=0

2.4.2 設定無線電鈕組

在H2儲存格新增無線電鈕組,資料字典設定如下:

2.4.3 設定填報屬性

1)如圖設定填報屬性,並勾選上未修改不更新,這樣在資料較多時能提高提交速度。

2)審核結果為空的資料不需要提交,此處可以透過提交條件設定來實現。公式為:len(H2)!=0

3)當資料透過審核時,是不需要填寫退回原因的;當資料被退回時,則需要填寫退回原因。此處可以透過資料校驗設定來實現。公式如下:

if(H2 = 1, len(I2) = 0, true):當狀態為審核透過時,退回原因需為空。

if(H2 = 2, len(I2) != 0, true):當狀態為被退回時,退回原因不能為空。

2.5 效果預覽

員工填報:

利用标记字段实现上报审核流程1.gif

負責人審核:

利用标记字段实现上报审核流程2.gif

注:該方案是支援行動端的。

3. 範本下載

附件列表


主題: 填報應用
已經是第一篇
已經是最後一篇
  • 有幫助
  • 沒幫助
  • 只是瀏覽
  • 圖片不清晰
  • 用語看不懂
  • 功能說明看不懂
  • 操作說明太簡單
  • 內容有錯誤
中文(繁體)

文 檔回 饋

滑鼠選中內容,快速回饋問題

滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。

不再提示

10s後關閉