亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Infopath實現(xiàn)WEB動態(tài)表單的研究

        2012-12-17 10:49:06天地常州自動化股份有限公司陳小林
        電子世界 2012年24期
        關(guān)鍵詞:表單后綴控件

        天地(常州)自動化股份有限公司 陳小林 趙 亮 韓 安

        1.引言

        在筆者煤礦信息化項目的具體實施應(yīng)用中,很多業(yè)務(wù)功能都需要通過WEB方式進行簡單數(shù)據(jù)收集,通用的做法是根據(jù)每個業(yè)務(wù)需求點利用ASP.NET進行定制開發(fā),這種做法工作效率低,編程的重復(fù)性較高,工作量大。研究一個快速構(gòu)建數(shù)據(jù)收集WEB表單系統(tǒng)有助于提高工作效率,將工作重心更好的放在關(guān)注核心業(yè)務(wù)功能實現(xiàn)上。

        2.WEB動態(tài)表單

        WEB動態(tài)表單系統(tǒng)借助于Office InfoPath來實現(xiàn)表單設(shè)計,由于Office InfoPath支持行業(yè)標準的可擴展標記語言(XML)。完全的XML支持使用戶通過InfoPath可以在公司間和業(yè)務(wù)進程間共享信息。基于此,將設(shè)計后的Office InfoPath表單使用轉(zhuǎn)換程序轉(zhuǎn)換成使用ASP.NET技術(shù)實現(xiàn)的WEB動態(tài)表單,從而實現(xiàn)基于WEB的數(shù)據(jù)展現(xiàn)及收集。

        InfoPath的表單模板是通過XML、XSD(XML架構(gòu))、XSL、CSS等一系列文件的集合(.XSN后綴結(jié)尾的文件包)來定義。通過解包InfoPath模板文件,可以看到如下幾個部分內(nèi)容文件:

        (1)一個或多個XML架構(gòu)文件,該文件用于驗證和約束表單模板中的數(shù)據(jù)。與表單模板關(guān)聯(lián)的每個數(shù)據(jù)源都具有相應(yīng)的.xsd文件。

        (2)對應(yīng)于表單模板中每個視圖的XSL轉(zhuǎn)換文件。通過該文件可查看供用戶填寫的表單中所含的顯示數(shù)據(jù)并且將這些數(shù)據(jù)轉(zhuǎn)換為HTML文件。

        (3)用戶首次打開基于該表單模板的表單文件時默認的XML數(shù)據(jù)內(nèi)容文件。該文件包含表單模板顯示在特定控件中的默認數(shù)據(jù)。當首次打開表單時將調(diào)用并且顯示這些數(shù)據(jù),直到用戶在控件中選擇了其他值。

        (4)腳本文件或托管代碼程序集。利用.vbs和.js這些解釋性語言實現(xiàn)特定表單行為的腳本。利用.dll、.exe、.cab等提供編程代碼和其他業(yè)務(wù)邏輯的外部文件。

        (5)名為Manifest.xsf的表單定義文件,該文件包含有關(guān)表單內(nèi)使用的所有其他文件和組件的信息,包括用戶界面自定義、XML架構(gòu)、視圖及部署設(shè)置等。

        WEB動態(tài)表單的實現(xiàn)總體思路也就是將以上所提的解包文件通過程序進行轉(zhuǎn)換,從而形成基于Infopath模板文件,采用ASP.NET技術(shù)實現(xiàn)的WEB動態(tài)表單。

        3.WEB動態(tài)表單功能定義

        WEB動態(tài)表單系統(tǒng)首先可以通過Office InfoPath來創(chuàng)建或者修改表單模板,然后將表單模板上傳到Asp.net WEB系統(tǒng)中,通過編寫基于XSL的XML轉(zhuǎn)換程序分析并且轉(zhuǎn)換該表單模板,添加Asp.net頁面的必須信息,關(guān)聯(lián)Asp.net頁面的前后臺執(zhí)行代碼,最后生成以ASP.NET技術(shù)展現(xiàn)的動態(tài)表單。實際使用中將InfoPath表單模板發(fā)布到系統(tǒng)中后,用戶所需要做的只是通過WEB來瀏覽和填寫表單,無需任何的控件支持。

        3.1 表單系統(tǒng)功能設(shè)計

        (1)生成與InfoPath模板擁有一樣外觀的Asp.net表單。

        (2)轉(zhuǎn)換Infopath部分控件和用戶自定義控件成相應(yīng)的Asp.net WebControls控件:TextBox、CheckBox、DatePicker、RadioButton、DropDownList。

        (3)可以自定義動態(tài)表單頭和動態(tài)表單腳顯示的內(nèi)容。

        (4)應(yīng)用XML的數(shù)據(jù)格式定義文件結(jié)合業(yè)務(wù)系統(tǒng)數(shù)據(jù)校驗接口(例如,對表單上所輸入的姓名進行是否存在及是否輸入正確的校驗),自動進行表單輸入數(shù)據(jù)的動態(tài)校驗。

        3.2 表單管理部分功能

        (1)發(fā)布表單:完成Infopath表單模板的上傳及解包功能。

        (2)配置表單:完成上傳的Infopath表單模板解包之后的分析及轉(zhuǎn)換功能,將通過轉(zhuǎn)換形成的ASP.NET WEB表單模板、WEB數(shù)據(jù)驗證文件、WEB表單默認數(shù)據(jù)填充文件等以文件存儲的方式進行歸類存儲。

        (3)刪除表單:根據(jù)需要刪除選中的WEB表單模板。

        4.Web動態(tài)表單轉(zhuǎn)換引擎的設(shè)計

        通過ASP.NET編寫轉(zhuǎn)換邏輯以實現(xiàn)Web表單的轉(zhuǎn)換。通過四個步驟的轉(zhuǎn)換來實現(xiàn)可在瀏覽器里進行瀏覽、編輯、提交的WEB動態(tài)表單。第一步將Infopath模板文件解包后,隨后三個步驟中每個轉(zhuǎn)換步驟中都使用解包后的XSLT文件來實現(xiàn)。

        第一步:Infopath模板文件解包。

        Infopath的模板文件是一個后綴為xsn的文件,等同于通常所見的cab文件,通過調(diào)用一個Windows自帶的工具extract.exe來實現(xiàn)文件的解包。解包后有六個文件:manifest.xsf、myschema.xsd、sampledata.xml、template.xml、upgrade.xsl、view1.xsl。其中XML后綴的文件是模板默認數(shù)據(jù),XSD后綴的文件是數(shù)據(jù)Schema,而XSL后綴的文件則是表現(xiàn),主要是配色方案。接下來的三個轉(zhuǎn)換步驟都是圍繞這六個文件展開。

        第二步:InfoPathToXml XSL轉(zhuǎn)換。

        該轉(zhuǎn)換負責(zé)讀取InfoPath視圖(例如,view1.xsl),并且創(chuàng)建一個適合于InfoPath讀取的模板(Template.xml中的XSLT)。InfoPathToXml轉(zhuǎn)換實現(xiàn)在InfoPath controls和ASP.NET控件之間進行映射,即找到與InfoPath controls功能相對應(yīng)的ASP.NET控件,并且更改相應(yīng)的XML描述標簽,例如:InfoPath controls的下拉列表框?qū)?yīng)ASP.NET控件中的Dropdown List,在轉(zhuǎn)換后該控件的描述標簽即為“

        第三步:XmlToAspxHtml XSL轉(zhuǎn)換。

        該轉(zhuǎn)換負責(zé)添加一個ASP.NET頁面的頁面頭,附加該頁面所需要的樣式表及腳本庫的引用,以及指定該頁面執(zhí)行時使用的是哪個Code-Behide。

        第四步:XmlToHtml XSL轉(zhuǎn)換。

        該轉(zhuǎn)換負責(zé)創(chuàng)建一個等同于XSL樣式表樣式的HTML頁面從而可以以只讀方式顯示XML數(shù)據(jù)。

        5.WEB動態(tài)表單模板及表單數(shù)據(jù)管理

        考慮到WEB動態(tài)表單模板基于XML技術(shù)構(gòu)建,所以表單模板的存儲,設(shè)計不采用數(shù)據(jù)庫存儲,而是以一個文件夾集合方式進行存儲,囊括了從Infopath模板轉(zhuǎn)換而來的多個文件,如圖1示為轉(zhuǎn)換后的WEB表單模板文件集。

        針對WEB動態(tài)表單運行時數(shù)據(jù),考慮整個WEB動態(tài)表單基于XML構(gòu)建,設(shè)計將表單數(shù)據(jù)直接以XML文本進行存儲,在相應(yīng)的數(shù)據(jù)庫中記錄該數(shù)據(jù)文件在服務(wù)器上的相對路徑,從而保證了以XML數(shù)據(jù)流方式同信息化系統(tǒng)的其他功能及業(yè)務(wù)模塊數(shù)據(jù)共享及互通,如圖2所示。

        圖1 轉(zhuǎn)換后的WEB表單模板文件集

        圖2 表單數(shù)據(jù)實體

        通過將流程運行時運行數(shù)據(jù)與用戶提交數(shù)據(jù)及處理數(shù)據(jù)分別采用數(shù)據(jù)庫及文件兩種方式進行存放有如下兩個好處:

        第一,每個表單的XML數(shù)據(jù)文件不但可以通過反序列化進入到流程運行時,與流程運行時進行無縫的銜接,也可以直接在Infopath中進行規(guī)格化顯示,無需再進行數(shù)據(jù)的導(dǎo)出導(dǎo)入操作。

        第二,在每一個任務(wù)流程結(jié)束后可以方便的將每個XML數(shù)據(jù)文件直接轉(zhuǎn)換成存檔的格式化的文檔文件,從而每個任務(wù)流程處理的最終結(jié)果(格式化表單,審批痕跡,數(shù)據(jù))可以以文件方式進行存檔、轉(zhuǎn)移、拷貝、打印、分發(fā)。

        6.結(jié)論

        通過本次研究,提出了將基于XML技術(shù)構(gòu)建的Office InfoPath客戶端與ASP.NET瀏覽器技術(shù)進行有效結(jié)合構(gòu)建WEB動態(tài)表單的思路,并給出了具體的實現(xiàn)路徑與步驟。實際應(yīng)用表明,該方案切實減少了在煤礦信息化項目中通用數(shù)據(jù)收集表單的程序編寫量,極大的提高了工作效率。

        [1]R.Powell,R.Weeks,C#和.NET架構(gòu),袁鵬飛譯.北京:人民郵電出版社,2002.

        [2]J.Richter,Applied Microsoft.Net Framework Programming,Microsoft Press,2002.

        [3]Halstead,Patrick,Developing Solutions With Microsoft Infopath,Microsoft Press,2005.

        猜你喜歡
        表單后綴控件
        電子表單系統(tǒng)應(yīng)用分析
        華東科技(2021年9期)2021-09-23 02:15:24
        關(guān)于.net控件數(shù)組的探討
        軟件(2018年7期)2018-08-13 09:44:42
        淺談網(wǎng)頁制作中表單的教學(xué)
        河北霸州方言后綴“乎”的研究
        TalKaholic話癆
        說“迪烈子”——關(guān)于遼金元時期族名后綴問題
        一種基于后綴排序快速實現(xiàn)Burrows-Wheeler變換的方法
        動態(tài)表單技術(shù)在教學(xué)管理中的應(yīng)用*
        就這樣玩會VBA中常見的自定義控件
        電腦迷(2012年24期)2012-04-29 00:44:03
        基于Java可視化測繪生產(chǎn)流程表單的設(shè)計及實現(xiàn)
        城市勘測(2012年3期)2012-02-08 09:31:58
        无码熟妇人妻av在线影片| 在线观看亚洲av每日更新影片 | 97久久超碰国产精品2021| 色综合久久精品中文字幕| 女女同性av一区二区三区| 亚洲精品在线国产精品| 无码av无码天堂资源网| 综合网在线视频| 国产猛男猛女超爽免费av| 国产内射爽爽大片| 成人妇女免费播放久久久| 91精品国产免费久久久久久青草 | 久久99精品久久久久久久清纯| 国产一区二区内射最近人| 不卡一区二区三区国产| 久久天天躁狠狠躁夜夜躁2014| 国产午夜成人久久无码一区二区| 黑人巨大亚洲一区二区久| 亚洲写真成人午夜亚洲美女| 99国产精品久久久蜜芽| 欧美视频在线观看一区二区| 青青草手机成人自拍视频| 国产情侣自拍一区视频| 三级特黄60分钟在线观看| 妞干网中文字幕| 蜜桃在线视频一区二区| 日韩人妻ol丝袜av一二区 | 最新系列国产专区|亚洲国产| 国产精品无码一区二区在线国| 亚洲av一区二区网址| 国产精品国产三级国产aⅴ下载| 国产婷婷一区二区三区| 无遮高潮国产免费观看韩国| 加勒比婷婷色综合久久| 欧美乱妇高清无乱码在线观看| 亚洲av日韩aⅴ永久无码| 国产av午夜精品一区二区入口| 亚洲人成自拍网站在线观看| 最近免费中文字幕| 亚洲精品无人区一区二区三区| 久久九九精品国产av|