文/應(yīng)鑫迪 方偉杰 洪波 謝宇威
數(shù)據(jù)中心填表助手:化繁為簡
文/應(yīng)鑫迪 方偉杰 洪波 謝宇威
在所有辦事過程中基本上都需要填寫表格,而且每項(xiàng)事項(xiàng)可能不止填寫一份,需重復(fù)填寫同一份表格多次,或者多份不一樣的表格但內(nèi)容基本一樣,如姓名、籍貫等。這種情況在高校的辦事過程中屢見不鮮,不僅讓師生覺得手續(xù)繁瑣,同時(shí)也會帶來填寫表格過程中填寫錯(cuò)誤或字跡不清等問題。
在高校信息化建設(shè)的過程中,數(shù)據(jù)中心沉淀了很多數(shù)據(jù),這些數(shù)據(jù)經(jīng)過標(biāo)準(zhǔn)化、清洗、加工,已經(jīng)可以為各個(gè)學(xué)院部門提供可以直接使用的標(biāo)準(zhǔn)數(shù)據(jù)。以浙江大學(xué)為例,數(shù)據(jù)中心已包含了人事、教務(wù)、科研、資產(chǎn)等各類數(shù)據(jù)資源。基于這樣的背景,辦事過程中的需要填寫的表格可以將現(xiàn)有的數(shù)據(jù)填充到表格中的相應(yīng)位置,以減少師生們的重復(fù)輸入。
雖然目前也有很多系統(tǒng)實(shí)現(xiàn)了自動化錄入表格以及自動生成表格的功能,但是每張表格都需要定制開發(fā),可能需要通過提交需求到實(shí)現(xiàn)功能這一系列軟件工程的流程,這過程需要耗費(fèi)大量時(shí)間、精力或者經(jīng)費(fèi)。因此,短頻快的需求就無法得到滿足,導(dǎo)致自動化生成表格的功能無法得到大規(guī)模使用。
填表助手將以最大可能地方便表格發(fā)布者和表格填寫者為出發(fā)點(diǎn),讓用戶以最簡單的操作實(shí)現(xiàn)想要的結(jié)果,對于表格填寫者來說,甚至只需要用鼠標(biāo)點(diǎn)幾下就能填好想要的表格以及發(fā)送給相關(guān)人員。
如圖1所示,表格發(fā)布者只需要3個(gè)步驟就能完成表格模板的制作。表格發(fā)布者通過查看幫助信息,了解如何制作模板后,就可以通過編輯普通的表格模板,制作出來符合填表助手系統(tǒng)的專用模板;之后將專用模板上傳到填表助手系統(tǒng),等待管理員審核通過之后就可以復(fù)制模板鏈接,粘貼到相應(yīng)的通知公告中;這樣,所有的步驟就已經(jīng)完成。這期間表格發(fā)布者不需要掌握任何的技術(shù)開發(fā)知識,只需要熟悉平常的OFFICE工具的操作就可以完成表格模板的發(fā)布。
表格填寫者就更加簡單,只需要從通知公告里點(diǎn)擊模板鏈接,跳轉(zhuǎn)到填表助手系統(tǒng)頁面;填表系統(tǒng)會判斷用戶是否已通過身份認(rèn)證,如果已認(rèn)證,就會根據(jù)用戶信息從數(shù)據(jù)中心或者相應(yīng)接口中獲取該用戶的相關(guān)信息,填充到模板里并返回到用戶界面;表格填寫者只需要根據(jù)實(shí)際需要對返回來的表格進(jìn)行編輯和修改,然后可以保存在服務(wù)器里、下載、發(fā)送到指定郵箱等形式獲取該表格。
為實(shí)現(xiàn)在線編輯OFFICE文檔的功能,本系統(tǒng)將采用第三方的OFFICE中間件——PageOffice,它是一款能幫助Web應(yīng)用實(shí)現(xiàn)在線編輯OFFICE文檔,并且可以動態(tài)填充數(shù)據(jù)或者從文檔中獲取數(shù)據(jù)的OFFICE快速開發(fā)組件。
圖1 表格生成與使用流程
圖2 填表助手系統(tǒng)框架
按照圖1所示的流程,填表助手包含系統(tǒng)管理員、表格發(fā)布者和表格填寫者三類用戶。系統(tǒng)管理員對填表助手系統(tǒng)的后臺進(jìn)行管理,除了一般系統(tǒng)都包含的日志、權(quán)限、數(shù)據(jù)備份等一般功能外,還包括數(shù)據(jù)接口的配置、表格的分類管理、模板管理以及模板審核等模塊;表格發(fā)布者對此系統(tǒng)的操作只包含模板上傳和模板引用這兩個(gè)模塊;表格填寫者也只包含在線編輯和查看歷史記錄這兩個(gè)模塊。
如圖2所示,填表系統(tǒng)分為四層∶數(shù)據(jù)層、管理層、中間件層和用戶層。
數(shù)據(jù)層是填表助手從第三方系統(tǒng)獲取數(shù)據(jù)的橋梁,它是系統(tǒng)管理員從其他系統(tǒng)中收集和表格填寫有關(guān)的數(shù)據(jù)源或者數(shù)據(jù)接口,并將這些接口通過數(shù)據(jù)接口配置模塊進(jìn)行管理。它包含常量數(shù)據(jù)、數(shù)據(jù)庫連接的功能,實(shí)現(xiàn)WebService和REST的調(diào)用,以及對其他數(shù)據(jù)訪問形式進(jìn)行擴(kuò)展訪問的功能模塊。常量數(shù)據(jù)是指如當(dāng)前時(shí)間、學(xué)校名稱、學(xué)校地址等一些不需要從其他系統(tǒng)獲取的屬性;數(shù)據(jù)庫連接包含多種數(shù)據(jù)庫如ORACLE、MYSQL等常用的數(shù)據(jù)庫連接配置,以及對這些數(shù)據(jù)庫的數(shù)據(jù)表進(jìn)行查詢時(shí)需要執(zhí)行的查詢語言進(jìn)行管理;WebService和REST接口是根據(jù)第三方系統(tǒng)開放的接口進(jìn)行配置,由于第三方系統(tǒng)開放的接口不完全一樣,如請求方式、請求參數(shù)、返回結(jié)果的格式等,所以系統(tǒng)需要對這些接口進(jìn)行解析,需要實(shí)現(xiàn)對返回結(jié)果為XML和JSON格式的數(shù)據(jù)進(jìn)行分析,以獲取表格所需要的信息或者數(shù)據(jù);針對有些開放的數(shù)據(jù)接口不規(guī)范,無法使用以上形式來調(diào)用數(shù)據(jù)時(shí),我們就需要通過寫代碼的形式實(shí)現(xiàn)數(shù)據(jù)訪問,擴(kuò)展功能模塊是將這些不規(guī)范的數(shù)據(jù)訪問形式進(jìn)行管理。
管理層包含數(shù)據(jù)接口配置、分類管理、模板管理以及模板審核等功能。數(shù)據(jù)接口配置是針對數(shù)據(jù)層中已存在的數(shù)據(jù)訪問記錄進(jìn)行統(tǒng)一管理,方便系統(tǒng)管理員檢查數(shù)據(jù)的重復(fù)訪問、數(shù)據(jù)的有效性以及數(shù)據(jù)權(quán)威源等相關(guān)屬性,以及對這些數(shù)據(jù)的所有屬性進(jìn)行描述、整理,為OFFICE中間件訪問數(shù)據(jù)做好準(zhǔn)備;分類管理是根據(jù)模板的使用對象或者使用單位進(jìn)行分類管理,讓用戶能更方便地找到想要的表格;模板管理是對模板的有效性管理,包括設(shè)置模板狀態(tài)、模板分類、模板使用到的數(shù)據(jù)訪問接口等;模板審核是對表格發(fā)布者上傳到系統(tǒng)的模板進(jìn)行檢查,保證模板可以正常使用。
中間件層包含統(tǒng)一身份認(rèn)證和OFFICE中間件。目前幾乎所有的高校都已經(jīng)實(shí)現(xiàn)了統(tǒng)一身份認(rèn)證的系統(tǒng)或功能,填表助手就直接采用統(tǒng)一身份認(rèn)證開放的認(rèn)證功能,并且可以通過認(rèn)證功能獲取用戶的最基本信息,為調(diào)用數(shù)據(jù)接口時(shí)提供參數(shù)支持。OFFICE中間件采用PageOffice中間件,該中間件可以通過OFFICE文檔中的書簽作為數(shù)據(jù)填充時(shí)的參數(shù),將數(shù)據(jù)層調(diào)用的數(shù)據(jù)通過書簽的形式把數(shù)據(jù)填充到OFFICE文檔中,實(shí)現(xiàn)自動填充數(shù)據(jù)的功能。
用戶層是提供用戶界面以及開放給第三方系統(tǒng)的調(diào)用模塊。用戶界面包括表格上傳者和表格填寫者的操作界面,還包括操作的幫助頁面。幫助頁面主要針對表格上傳者,介紹填表助手的模板上傳流程,包括如何設(shè)計(jì)模板、如果填充數(shù)據(jù)等。提供給第三方系統(tǒng)的調(diào)用模塊是為了能更好的推廣填表助手,并且讓填表助手的一部分功能能嵌入到第三方系統(tǒng)當(dāng)中,使其更加方便的使用填表助手系統(tǒng)。此調(diào)用模塊包含填表助手的模板列表,并且可以通過分類的形式展現(xiàn),同時(shí)還包括用戶填寫過的表格列表。當(dāng)然,填表助手可以通過一定的代碼編寫來實(shí)現(xiàn)第三方系統(tǒng)的需求,可以是接口形式或者是頁面嵌套形式。
填表助手是使用成熟的第三方OFFICE中間件,將數(shù)據(jù)中心多年沉淀的數(shù)據(jù)通過表格填表的形式利用起來,增加了數(shù)據(jù)共享的一條新途徑。同時(shí)也為學(xué)校的師生帶來了一定的便利,簡化了高校的師生冗長的填表手續(xù)的過程。
填表助手整個(gè)系統(tǒng)的功能雖然單一,但其未來的擴(kuò)展將非常之多,使用場景也會非常廣泛。它不僅可以提高數(shù)據(jù)中心數(shù)據(jù)的使用價(jià)值,而且可以通過填表助手讓數(shù)據(jù)中心增加一個(gè)數(shù)據(jù)的收集渠道。
(作者單位為浙江大學(xué)圖書與信息中心)