Microsoft InfoPath2003提供給我們便利的創(chuàng )建電子表單的方式和所見(jiàn)即所得的設計模式。但是,用戶(hù)必須安裝InfoPath才能打開(kāi)填寫(xiě)表單。在不安裝InfoPath的環(huán)境中,特別是在瀏覽器中填寫(xiě)表單,是一個(gè)普遍的需求。但是,這一個(gè)愿望在Infopath2003的時(shí)代實(shí)現起來(lái)代價(jià)比較大,它讓很多InfoPath 2003的用戶(hù)為之遺憾。但是,隨著(zhù)InfoPath 2007和InfoPathForms Services的發(fā)布,我們的夙愿終于得以達成。簡(jiǎn)而言之,InfoPath FormsServices是讓InfoPath表單可以在瀏覽器中訪(fǎng)問(wèn)、填寫(xiě)的技術(shù)。InfoPath Forms Services是OfficeSharePoint Server 2007的組件。同時(shí),也有基于它的獨立產(chǎn)品Microsoft Office Forms Server2007。本章,我們將帶領(lǐng)大家走進(jìn)InfoPath Forms Services的世界。
8.1 InfoPath Forms Services的應用場(chǎng)景與架構
8.1.1 InfoPathForms Services的應用場(chǎng)景
InfoPath FormsServices是基于Web的InfoPath表單渲染技術(shù)。InfoPath2007可以方便地設計出用戶(hù)體驗很好的表單。表單可根據規則進(jìn)行表單數據驗證,向Web服務(wù)、數據庫或者SharePoint等數據源提交數據。同時(shí),InfoPath的“Design-Once”的設計理念讓所有這些特性在發(fā)布到Web上以后仍然和在InfoPath客戶(hù)端上一樣。這些都支持著(zhù)我們來(lái)構建豐富的表單解決方案。
首先,我們可以用InfoPath來(lái)作為數據收集的載體,比如做調查表單。在InfoPath2007的客戶(hù)端軟件中設計好調查表單,然后發(fā)布到SharePoint的文檔庫中。用戶(hù)在瀏覽器端打開(kāi)表單,填寫(xiě)調查表,表單數據提交到文檔庫中。調查結束后,把文檔庫的表單導出。InfoPath支持把數據一同導入Excel中進(jìn)行調查結果的統計分析。
其次,我們可以用InfoPath來(lái)作為數據展現和交互層。通過(guò)InfoPath設計表單界面,與后臺的數據源進(jìn)行連接,用戶(hù)在InfoPath的界面中進(jìn)行操作,最終提交數據到外部數據源。MOSS的工作流就利用InfoPath表單作為交互界面。開(kāi)發(fā)MOSS工作流的時(shí)候利用InfoPath設計交互界面也使開(kāi)發(fā)難度大大降低。
表單的本質(zhì)就是數據呈現和編輯的載體,所以表單應用的中心不外乎圍繞數據、界面、流程來(lái)展開(kāi)。上面提到的兩種應用場(chǎng)景旨在啟發(fā)大家的思路,從一般的角度上讓大家看看InfoPath Forms Services可以做些什么樣的應用。對這個(gè)技術(shù)有更多的了解以后,便可以更好地把這項技術(shù)融入到我們的解決方案中。
8.1.2 InfoPath Forms Services的運行機制
InfoPath2007充當的是OfficeSharePoint Server 2007表單設計器的角色。InfoPath FormsServices充當的是表單在瀏覽器中渲染的運行環(huán)境。InfoPath文件格式中對于表單展現層用的都是Html格式,不管在InfoPath客戶(hù)端還是InfoPath FormsServices中,渲染表單都是根據表單模板文件中的Html代碼,Design-Once的理念就是基于此實(shí)現的。
一個(gè)InfoPath的模板包括了界面,同時(shí)也包括了表單控件的動(dòng)作規則和數據的驗證規則等,所以InfoPath FormsServices要做的事情不僅僅是展現,還要處理除了界面以外的校驗等工作。當服務(wù)器接收到Web端訪(fǎng)問(wèn)表單模板的請求時(shí),服務(wù)會(huì )根據表單模板生成HTML推送回瀏覽器,同時(shí)還包括控制頁(yè)面以及完成數據校驗等操作的Javascript文件。InfoPath FormsServices采用AJAX機制,利用XMLHTTP實(shí)現客戶(hù)端與服務(wù)器的交互。
8.1.3 InfoPath Forms Services的應用架構
和ExcelServices一樣,InfoPath Forms Services構建在Windows SharePoint Services3.0的基礎上,是OfficeSharePoint Server2007中的企業(yè)級應用的組件,幫助企業(yè)更好地實(shí)現表單驅動(dòng)的商業(yè)流程。它的初衷和亮點(diǎn)就是支持在瀏覽器端訪(fǎng)問(wèn)和填寫(xiě)InfoPath表單,同時(shí)也提供了在智能手機和PDA等移動(dòng)設備上的支持。這個(gè)設計極大地擴展了InfoPath表單的應用范圍和方式。
InfoPathForms Services的一般的應用架構如圖8-1所示。表單設計者通過(guò)InfoPath2007根據業(yè)務(wù)需要對表單進(jìn)行設計,設計好表單需要從外部數據源抽取的數據,以及表單的數據提交,必要的話(huà)還可能在表單中編寫(xiě)代碼。設計完成的表單發(fā)布到InfoPath FormsServices服務(wù)器環(huán)境中。最終用戶(hù)通過(guò)瀏覽器、移動(dòng)設備或者InfoPath客戶(hù)端訪(fǎng)問(wèn)表單,填寫(xiě)數據,提交表單。這種應用架構突破了表單使用者必須有InfoPath客戶(hù)端的瓶頸,同時(shí)把一個(gè)表單的可訪(fǎng)問(wèn)范圍擴展到網(wǎng)絡(luò )的任何角落。

聯(lián)系客服