大型ERP系統必不可少的通用性功能:自定義單據
「自定義單據」功能相對比較獨立,應用場景也很廣泛,可以在ERP、電商平台、內容管理、表單收集等多種類型的軟件系統中通用。本文重點介紹了「自定義單據」功能的設計,與大家分享!
B端企業客户的管理模式大都極具個性化,尤其是報表和單據的格式最為複雜多樣。因此,大多數ERP軟件廠商都會選擇開發「自定義單據」和「自定義報表」服務程序,來應對客户多變的業務需求。
一、為什麼要做「自定義單據」功能- 從業務屬性上劃分,單據的種類有財務單據、物流單據等等;
- 從業務功能上劃分,財務單據又包括報銷單、借款單、還款單等;
- 報銷單根據報銷類型,又可以細化到差旅費報銷單、辦公費報銷單等;
- 同樣地,差旅費報銷單又有市內交通費、外埠交通費之分;
- 外埠交通費還可以細分到飛機票、火車票、汽車票……
總之,B端客户的需求只有你想不到的,沒有業務方做不出來的。
這些分類與劃分代表一家企業對於自身業務的管理細度。以財務管理為例,有的企業只細化到報銷單,留給員工很靈活的費用報銷空間,這樣可以賦予下級單位自主性,快速響應突發事件。
有的企業可能會細分到費用類型,按照報銷人的級別控制可報銷的金額,這樣可以大幅減少管理費用的浪費。
但作為乙方的軟件企業,不可能為每一家客户都單獨做一個定製版本,這樣不僅不利於後期維護升級,還容易造成自身版本管理的混亂。
因此,「自定義單據」與系統的公共數據管理和系統安全一樣,作為一項使用頻率較高的基礎管理模塊,需要納入產品升級規劃中。
二、「自定義單據」具體要實現什麼- 實現用户自定義單據界面:如單據頁面中內容的格式與顯示方式。
- 實現對各類單據的操作功能,如增、刪、改、查、導出打印等。
- 實現各業務部門之間的數據共享:如填寫報銷單時,實時反饋是否超出當期可用預算;在填寫還款單時,能夠選擇前置借款單;同時也包含對於信息的提取(如發票的OCR識別、掃碼識別;系統初始化時對歷史單據台賬的批量導入)。
- 實現根據員工權限限制功能操作和數據訪問:某些單據頁面、操作功能對沒有權限的用户屏蔽,如倉管部門只能設計出庫單、入庫單,不能設計合同和物流單據。
如圖所示:
(1)管理員
管理員或軟件實施人員根據企業需求,配置某項業務流程中所需的業務單據(如報銷單、借款單、還款單等),以及單據包含的信息(單據屬性、流程定義、入口定義、字段信息、功能鍵按鈕等);
(2)開發人員
- 開發人員根據業務需求,在數據庫中定義存儲單據頁面數據字段的表結構;
- 當管理員使用「自定義單據應用程序」對單據頁面進行增刪改查等操作時,實際上是對字段信息(頁面標識、文本框、單選框、附件上傳、功能鍵按鈕等)進行相應的操作。
(3)普通用户
- 系統應用程序和「自定義單據應用程序」會同時部署在同一台服務器上;
- 當普通用户登錄系統後,系統會通過識別用户角色和擁有權限來限制對單據頁面的操作和數據訪問;「自定義單據應用程序」也會實時監控用户通過瀏覽器發送的請求;
- 當服務器接收到用户請求後,服務器會向數據庫轉達這一請求,從而讀取並將數據庫中相關單據及頁面信息實時反饋到瀏覽器(用户終端);
- 此外,系統應用程序還可以內置一系列有效性校驗規則,當用户輸入信息與數據類型不符,或輸入信息不滿足預設條件時,能夠彈出錯誤提示幫助用户改正。
- 權限管理主要指:根據用户權限對功能操作和數據訪問進行限制,常見的方式有隱藏菜單、隱藏按鈕、字段屏蔽等;
- 系統管理主要指:對系統的日常維護。如數據的導入導出接口、日誌更新、數據庫同步等;
以上兩部分一般都沿用系統原有設計,此處不再展開介紹。
2. 提示信息管理- 用户在進行實際操作時可能會違反系統操作規範,也可能遇到系統本身出錯的情況,因此需要為用户提供錯誤信息提示,以便幫助用户更正操作;
- 該部分設計工作因產品而異,大型ERP產品會以接口的形式,把錯誤信息提示的編輯功能放在前端,管理員可以自定義信息提示;小型ERP一般都是寫死在系統;
- 不過是哪種情況,產品經理都需要把給予提示的內容整理出來,説明何種情況下需要提示,提示什麼內容,給予何種引導(最好以表格的形式來整理,看起來比較清晰)。
單據模板設計是「自定義單據」功能最重要的部分,決定了用户在前端會看到什麼,如何操作。如下圖所示:
「單據模板設計」一共分為三部分,也可以説是由三個頁面(或彈窗)組成:
1)列表頁
首先是列表頁,通過該頁面,用户可以查詢並看到已設計的單據模板;同時該頁面還為用户提供了「新增」「編輯」「刪除」等操作按鈕。
需要注意:
- 雖然提供刪除按鈕,但是已經生效過的單據模板是不可以刪除的,可以通過取消對所有用户的授權來達到廢棄單據的目的;
- 在編輯已生效單據時,只可以增加字段,不可以刪除字段;可通過字段維護頁面的“隱藏字段”來達到“刪除”的目的。
2)單據模板設計頁面
單據模板設計頁面可以直接放在菜單欄,也可以做成彈窗的樣式隱藏在「列表頁」之後。該頁面主要包含五個部分:
- 模板定義:模板屬性(單據名稱、單據類別、單據首位、頁面地址等);流程定義(單據的審批流程);入口定義(通過哪個菜單或按鈕可以訪問單據頁面)。
- 字段維護:即單據內包含的字段名稱(含控件類型、佔位規格、校驗規則等);提供增、刪、改、排序等操作;點擊“編輯”,跳轉至字段維護的詳情頁。
- 組件維護:即包含多個字段的組件維護,提供“新增”“展開”等交互按鈕;例如一張報銷單可能包含多筆費用,而管理員並不知道每個報銷人會報幾筆,因此需要提供一個“新增”的按鈕,報銷人可以自行選擇新增幾筆費用(一筆費用由多個字段組成)。
- 字段查詢:一張單據可能包含很多字段,因此需要提供一個簡單的查詢功能。
- 單據預覽:可以放置在操作界面的右側,也可以提供“預覽”按鈕,方便用户隨時查看自己設計的單據外觀。
3)字段/組件/功能按鈕維護頁面
該頁面包含的信息相對比較瑣碎,因為涉及到數據庫設計,非技術出身的產品可能搞不定。建議提前跟開發溝通設計思路,待數據庫設計初步完成後再進行具體的界面設計。
關於界面草圖中具體名詞的解釋,本文不再贅述。大概可以理解設計思路即可,具體情況要視業務需求而定。
字段維護
組件維護
功能按鈕維護
作者:產品路漫漫;微信公眾號:產品路漫漫
本文由 @產品路漫漫 原創發佈於人人都是產品經理。未經許可,禁止轉載
題圖來自Unsplash,基於CC0協議