更新於 2024/12/02閱讀時間約 2 分鐘

製作泛用型的電子公文系統功能EP2

步驟二:表單細節修正

我們延續上一篇EP1,本篇文章要來微調表單上的一些功能,使其更符合操作:

我們發現

發文單位、公文類別、會簽單位、審核單位

這四個欄位尚未設定正確。

這幾個欄位不應該用輸入的方式,應該用下拉選單的方式處理。

首先[發文單位]設定,我們切換到選單上的[工具]->[系統參數資料表]

在此點選編輯內容值,我們先以人總室、資訊室、採購室、營運部、餐商部為例

我們再回到畫面中,就可以下拉選擇了

[公文類別]設定,因為牽涉到另外設計資料表格式,我們先跳過

[會簽單位一]與[審核單位一]設定,因為牽涉到公文流程[WorkFlow],必須使用群組的資料。我們設計的角色是去對應組織層級,共有五層:一般職員->科級主管->部級主管->體系主管->總經理,您也可以依照需求擴展或是縮減組織層級。

為了之後做完整演示,故新增了董事長室、總經理室、五個部門、兩個科級單位、兩個一般人員角色,每個角色底下也需要設定用戶,參考下圖:

最後需要將用戶指派到某一個角色上,一個用戶可以有多種角色,一個角色也可以有多個用戶,會是一種複雜多對多的關係。但是這部分的流程邏輯,因為有強大的icoder,都是可以處理的。

建立好資料之後,我們要到後端程式[icoder內簡稱Server端],去設定一個物件[infocommand],好讓前端程式可以撈出資料:

這個infocommand的SQL語法如下

SELECT GROUPID,GROUPNAME from GROUPS WHERE isrole = 'Y'

意即撈出角色的編號與名稱

再來我們要處理前端畫面[會簽單位一]與[審核單位一]的欄位,我希望是可以跳出視窗並且可以多重選擇,因為實務上,我要會簽的單位可能不只一個,舉例:我的公文需要同時會簽給人總室主管以及資訊部主管。

因此我們再次回到表單設計的畫面,尋找此兩欄位的設定

Types = options

RemoteName 選擇後端的infocommand

ValueField = GROUPID [欄位真正的值]

TextField = GROUPNAME [呈現的文字]

Mutiple = YES [代表可以多選]

Mode = list [會彈出視窗做選擇]

審核單位同樣原理製作


我們就得到如下的結果:

分享至
成為作者繼續創作的動力吧!
© 2024 vocus All rights reserved.