国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

一種基于腳本的文書柔性生成技術(shù)

2021-03-24 11:16郭曉云
電腦知識(shí)與技術(shù) 2021年2期
關(guān)鍵詞:腳本語言

郭曉云

摘要:設(shè)計(jì)了一種基于自定義腳本語言的高可定制柔性文書生成方案,對(duì)文書整體結(jié)構(gòu)進(jìn)行抽象切分,形成內(nèi)容片段,通過腳本控制片段的生成與文書合成,實(shí)現(xiàn)文書與數(shù)據(jù)的結(jié)合、文書自動(dòng)生成、文書格式配置化控制。

關(guān)鍵詞:文書生成;公文擬制;腳本語言;柔性生成;文本編輯器

中圖分類號(hào):TP391.1? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A

文章編號(hào):1009-3044(2021)02-0190-02

1 背景

文書生成是信息系統(tǒng)的常見功能,場(chǎng)景應(yīng)用廣泛,業(yè)務(wù)系統(tǒng)的各類報(bào)告、辦公系統(tǒng)的各類文書等很多都是由應(yīng)用系統(tǒng)直接生成的,生成的格式一般是Word格式,也有PDF格式。傳統(tǒng)的文書生成方案一般使用模板實(shí)現(xiàn),即預(yù)先將要生成的文書制作成模板,然后再在程序中通過Word的書簽功能、域功能等方式,定位并替換相應(yīng)內(nèi)容生成文書。也有部分軟件采用報(bào)表組件實(shí)現(xiàn),通過報(bào)表組件提供的方法進(jìn)行內(nèi)容設(shè)置和文書生成。這些方法雖然能滿足信息系統(tǒng)的一般需求,但存在硬編碼的缺點(diǎn),即文書的格式形式完全依靠模板和程序代碼,一旦需要修改文書格式和內(nèi)容,如果模板修改無法滿足,就必須修改代碼,靈活性不夠,無法滿足用戶更加柔性化的定制需求。比如自定義文書形式,實(shí)現(xiàn)文書內(nèi)容格式的配置化更新等。

2 文書柔性生成需求分析

以辦公系統(tǒng)的典型應(yīng)用公文擬制為例,要滿足用戶快速擬制公文的要求,并為用戶提供盡可能多的自由度,實(shí)現(xiàn)文書高度柔性生成,需滿足以下要求:

1)應(yīng)為用戶提供盡量多的參閱信息,可方便快捷地利用一些范文、模板、資料,根據(jù)用戶選擇自動(dòng)抽取其中的片段;

2)應(yīng)可實(shí)現(xiàn)公文的快速排版,可自動(dòng)填充公文中的一些要素,如文種、文號(hào)等,讓用戶將精力放在文書內(nèi)容擬制上,提高公文的處理速度;

3)應(yīng)可實(shí)現(xiàn)公文內(nèi)容與數(shù)據(jù)的結(jié)合,提供與公文相關(guān)業(yè)務(wù)數(shù)據(jù)的自動(dòng)匯總功能,可根據(jù)業(yè)務(wù)數(shù)據(jù)自動(dòng)生成文書內(nèi)容并插入到文檔中,避免用戶手工查找和填寫,實(shí)現(xiàn)公文擬制過程與業(yè)務(wù)系統(tǒng)的融合,提高公文擬制的效率和質(zhì)量。如直接從業(yè)務(wù)系統(tǒng)中獲取本部門的財(cái)務(wù)收支數(shù)據(jù),并生成文本內(nèi)容插入到公文中,形成財(cái)務(wù)報(bào)告等;

4)應(yīng)可實(shí)現(xiàn)公文生成的配置化控制,可通過修改配置腳本的方式來控制文書的格式、形式、內(nèi)容等,無須修改程序,避免硬編碼問題。

3 文書柔性生成的實(shí)現(xiàn)流程

要實(shí)現(xiàn)這些需求,首先必須對(duì)公文進(jìn)行高度抽象化,提取公文的結(jié)構(gòu)特征和處理方式。按照公文的一般格式,我們可將一份公文分解為文頭、文體、文尾三部分,根據(jù)三部分的特征分別進(jìn)行處理。

公文的文頭、文尾一般是固定格式,內(nèi)容基本不變,除了文種、編號(hào)、承辦人等要素需要填充外,其他部分一般都是固定不變的。因此,可將文頭文尾設(shè)置成固定模板,公文要素內(nèi)容則根據(jù)公文的類型自動(dòng)填充或是由用戶自行選擇,系統(tǒng)自動(dòng)填充。按照常用公文種類系統(tǒng)可設(shè)計(jì)多套文頭文尾的組合模板,如通知、通告、請(qǐng)示等,用戶在擬制公文時(shí),只需根據(jù)公文種類選擇文種模板,系統(tǒng)可自動(dòng)生成文頭文尾,并可根據(jù)用戶身份等信息自動(dòng)填充文種、日期、責(zé)任人等要素。

文體部分是公文的主體部分,也是文書生成的主要目標(biāo)。為了獲得文體內(nèi)容的高度柔性定制能力,可將文體部分抽象分解成若干文書片段的組合,每個(gè)文書片段是一段帶格式的文本,通過這些文本片段的組合構(gòu)成公文文體部分。根據(jù)文書片段內(nèi)容是否與數(shù)據(jù)關(guān)聯(lián),文書片段可分為靜態(tài)和動(dòng)態(tài)兩種。靜態(tài)文書片段是指一些帶格式的內(nèi)容相對(duì)固定的文本片段,比如從業(yè)務(wù)資料、參考范文、文書模板中抽取的片段,一些公文的固定用法段落等。用戶可通過系統(tǒng)提供的輔助編輯工具查找這些資料并選擇需要的段落,這些段落將轉(zhuǎn)化為靜態(tài)文書片段,嵌入到公文中。動(dòng)態(tài)文書片段則是指內(nèi)容與業(yè)務(wù)數(shù)據(jù)相關(guān)聯(lián),可以動(dòng)態(tài)變化的文本片段,比如一段包含單位人員總數(shù)的文本,人員總數(shù)內(nèi)容根據(jù)業(yè)務(wù)系統(tǒng)的數(shù)據(jù)在文書生成過程中動(dòng)態(tài)生成,從而實(shí)現(xiàn)與公文與業(yè)務(wù)系統(tǒng)數(shù)據(jù)的融合。

通過文頭、文體、文尾的抽象和靜態(tài)動(dòng)態(tài)文本片段的組合可實(shí)現(xiàn)公文的柔性定制功能,文書柔性生成流程如圖1所示。

4 文書柔性生成的技術(shù)實(shí)現(xiàn)

文書柔性生成的實(shí)現(xiàn)主要依賴兩項(xiàng)技術(shù),一是基于XML的文書快速擬制技術(shù),二是嵌入式的數(shù)據(jù)指令腳本[1]。文書快速擬制技術(shù)將文書片段表示為XML格式的代碼塊,通過代碼塊的組合形成文檔內(nèi)容。嵌入式的數(shù)據(jù)指令腳本則是嵌入到XML中的特殊指令腳本片段,類似于JSP頁面中嵌入的可執(zhí)行指令塊,腳本解析引擎可動(dòng)態(tài)解析執(zhí)行這些特殊指令,根據(jù)指令連接后臺(tái)數(shù)據(jù)庫(kù)獲取數(shù)據(jù),寫入XML中,實(shí)現(xiàn)動(dòng)態(tài)片段的數(shù)據(jù)關(guān)聯(lián)查詢功能。此外,在B/S應(yīng)用中,文書在線編輯通常使用富文本編輯器實(shí)現(xiàn),因此柔性生成功能應(yīng)該嵌入到富文本編輯器中,需設(shè)計(jì)一個(gè)集成的在線快速文書擬制環(huán)境,提供參考資料查閱、動(dòng)態(tài)數(shù)據(jù)連接等功能,讓用戶能快速組合各種文書片段,形成文書的最終腳本,并動(dòng)態(tài)解析生成最終文書。

4.1 基于XML的文書快速擬制技術(shù)

XML是一種表現(xiàn)力非常強(qiáng)的語言,通過與Schema結(jié)合可以表示復(fù)雜的結(jié)構(gòu)和語法。為了實(shí)現(xiàn)文書的柔性生成,可參考Office的Open XML 格式[2],定義類似的文書內(nèi)容表述語言,將文書內(nèi)容及格式以XML格式存儲(chǔ)。文頭、文尾是固定的,可預(yù)先使用Word設(shè)計(jì)好,然后通過保存為XML的方式形成文頭文尾模板,其他的靜態(tài)文本片段也可以用類似方式實(shí)現(xiàn)。各類文書、模板、范文等,都可將其轉(zhuǎn)存為XML格式并保存到資料庫(kù)中,通過文檔檢索和在線剪輯等方式,用戶在擬制文書時(shí)可隨時(shí)抽取資料庫(kù)中的文書片段,再做少量的編輯調(diào)整即可。

Office的Open XML格式是微軟從office 2007開始推出的基于XML的文件格式,在Office 2007之前的office 文件格式是一種二進(jìn)制格式,兼容性差,且一旦損壞很難恢復(fù),因此微軟推出了Open XML格式,以XML格式表示office的word、excel等文檔,并申請(qǐng)為國(guó)際標(biāo)準(zhǔn)(ISO/IEC 29500)[3]。Open XML的格式較復(fù)雜,文書片段的表示主要使用Open XML一些常用標(biāo)簽,如文字標(biāo)簽、段落標(biāo)簽等等,不設(shè)置XML文件頭。

采用Open XML標(biāo)準(zhǔn),以XML格式表示文頭、文尾、文書片段,形成對(duì)應(yīng)的XML代碼塊。在快速擬制時(shí),根據(jù)用戶的選擇和編輯,再將這些XML代碼組合,增加XML文件頭,就可以形成一篇完整文書。

文頭、文尾中的文種、承辦人等信息,有些可在用戶新建文書時(shí),根據(jù)用戶的選擇自動(dòng)填寫在文頭文尾的XML代碼中,有些則可通過編輯器由用戶自行輸入。

為了提高用戶編輯效率,可將一些格式標(biāo)簽設(shè)置為樣式,通過編輯器的樣式功能快速設(shè)置相應(yīng)段落的格式。

4.2 嵌入式數(shù)據(jù)腳本語言

嵌入式數(shù)據(jù)腳本語言是系統(tǒng)自定義的類腳本語言,它是實(shí)現(xiàn)動(dòng)態(tài)文書片段的技術(shù)基礎(chǔ)。嵌入式腳本定義了一套標(biāo)簽體系,可嵌入在HTML代碼中,腳本引擎會(huì)對(duì)這些腳本代碼進(jìn)行解析和執(zhí)行,生成最終的文本片段。為了實(shí)現(xiàn)更加靈活的功能,腳本語言除了簡(jiǎn)單的腳本支持簡(jiǎn)單的取值外,還支持一定的語法規(guī)則,包括變量聲明、變量賦值、邏輯判斷、循環(huán)控制、算術(shù)運(yùn)算、字符運(yùn)算、數(shù)據(jù)庫(kù)查詢等。腳本引擎包括語法解析器和解釋器,支持參數(shù)綁定和參數(shù)賦值,可在運(yùn)行時(shí)動(dòng)態(tài)解析和執(zhí)行這些腳本,生成包含文本內(nèi)容的自定義標(biāo)簽的XML代碼塊,這些代碼塊再通過XSLT樣式表[4]轉(zhuǎn)換為Open XML格式的文本塊,形成動(dòng)態(tài)文本片段,供用戶擬制文書時(shí)使用。數(shù)據(jù)腳本的實(shí)現(xiàn)流程如圖2所示。

以下為一段動(dòng)態(tài)文本腳本片段示例,其中表示換行,表示數(shù)據(jù)庫(kù)訪問,一般后面接的是sql命令,表示變量定義,為判斷邏輯標(biāo)簽。

一、本單位人員情況

截止%截止時(shí)間%,

共招收$經(jīng)理人數(shù)$名經(jīng)理。

沒有這個(gè)統(tǒng)計(jì)單位。

4.3 與富文本編輯器的融合

5 結(jié)束語

本文介紹了一種柔性文書生成方案,通過將公文抽象為若干文書片段的組合,并提供基于自定義腳本的動(dòng)態(tài)片段功能,實(shí)現(xiàn)了公文的高度可定制性,并可實(shí)現(xiàn)公文與數(shù)據(jù)內(nèi)容的動(dòng)態(tài)結(jié)合,為OA、ERP等對(duì)公文要求較高的信息系統(tǒng)提供了一種靈活的文書處理解決方案。

參考文獻(xiàn):

[1] 梁銘輝.腳本語言及其應(yīng)用[J].通訊世界,2016(16):121-122.

[2] 陳卓.基于OpenXML的Web表單引擎模型[J].數(shù)字技術(shù)與應(yīng)用,2015(4):98-99.

[3] ISO/IEC 29500-1:2016,Information technology—Document description and processing languages—Office Open XML File Formats[S].

[4] W3C.XSLT Namespace[EB/OL].(1999-03-28)[2020-05-29].www.w3.org/1999/XSL/Transform.

[5] Summernote team.summernote[EB/OL].[2020-05-29].https://summernote.org/.

【通聯(lián)編輯:謝媛媛】

猜你喜歡
腳本語言
基于JavaScript在Web設(shè)計(jì)中應(yīng)用
一種面向SSC的電信增值業(yè)務(wù)的生成方法及實(shí)現(xiàn)
腳本語言在審計(jì)工作中運(yùn)用的探討
網(wǎng)站服務(wù)器維護(hù)措施探究
測(cè)控設(shè)備運(yùn)行流程遠(yuǎn)程定制技術(shù)研究
淺析計(jì)算機(jī)技術(shù)在flash動(dòng)畫中的應(yīng)用
基于SiPESC平臺(tái)的Python擴(kuò)展模塊開發(fā)
腳本語言在遠(yuǎn)程教育動(dòng)態(tài)網(wǎng)頁設(shè)計(jì)中的運(yùn)用
东阿县| 贵南县| 广灵县| 泾源县| 惠东县| 义乌市| 简阳市| 汉沽区| 邳州市| 丹江口市| 汉中市| 航空| 育儿| 阿拉善右旗| 昭平县| 河曲县| 高清| 唐山市| 乐清市| 乌兰察布市| 铁岭市| 响水县| 托克托县| 新疆| 碌曲县| 江达县| 南江县| 玉环县| 肃北| 阜南县| 房产| 抚顺市| 谷城县| 湟源县| 大连市| 罗田县| 天津市| 手机| 扎囊县| 寻乌县| 徐汇区|