共用方式為


關於 SharePoint Server 2010 表單

 

適用版本: SharePoint Server 2010

上次修改主題的時間: 2016-11-30

在本文中,您將了解在 Microsoft SharePoint Server 2010 解決方案中使用 InfoPath 表單進行資料收集的優點。其說明更廣泛之商務解決方案中的表單角色,以及您可以使用 Microsoft InfoPath 2010 建立的表單類型。

本文內容:

  • InfoPath 表單概觀

  • SharePoint 解決方案中的表單角色

  • InfoPath 表單類型

  • 部署表單

  • 填寫表單

InfoPath 表單概觀

所有商業程序包括收集某種類型的資料,而任何商業程序的成功與否,依賴該資料的品質及完整性。在 SharePoint 解決方案中使用 InfoPath 表單,您可以確保所收集的資料皆為有效且品質良好。InfoPath 2010 可讓您利用標準自訂的最佳化資料收集程序,無須撰寫任何程式碼,即達到此目標。

以下是 InfoPath 提供用以確保資料完整性的一些重要功能:

  • 自訂資料驗證可確保使用者無法提交含有無效資料的表單。

  • 自訂的配置。利用多重檢視可以簡化表單填寫體驗,方法是將表單分割為多個頁面,或針對特定使用者或工作建立最佳的不同檢視。設定格式化的條件可讓您最佳化表單填寫體驗。例如,您可以根據使用者所輸入的值,顯示或隱藏表單中的欄位。

  • 資料連線至其他來源 (如 SharePoint 清單或 Web 服務) 可讓您將支援的內容資料置入表單中。

不需要程式碼,即可實作上述功能。不過,您可以使用 Visual Studio Tools for Applications (VSTA) 撰寫 Managed 程式碼,將其他進階功能新增至表單。

SharePoint 解決方案中的表單角色

表單在所有商業程序管理解決方案中均扮演著要角。以下只是使用 InfoPath 表單之商務解決方案及應用程式類型的部分範例:

  • 表單驅動的應用程式從利用收集資料的表單開始,並新增於其他 SharePoint 功能以處理及報告資料 (包括工作流程、報告、自訂網頁及外部清單)。範例包括服務台網站、採購中心或人力資源部門的員工雇用中心。

  • 文件工作流程應用程式會自動化文件型的商業程序。將 InfoPath 表單新增至工作流程,可讓您在工作流程期間內以預先定義的時間,收集使用者的資訊,並讓使用者與該工作流程的工作進行互動。範例包括合約核准、技術規格檢閱或法律文件的處理。

  • 商務資料應用程式從透過 Business Connectivity Services 在 SharePoint Server 中提供的外部系統內之資料開始。在外部系統中的資料,可透過外部清單在 SharePoint Server 中加以存取,而且可以使用 InfoPath 表單,進行新增、檢視、更新及刪除。範例包括客戶關係管理及企業資源規劃。

  • 臨機操作商業程序可以使用 SharePoint 清單進行管理。用於建立、讀取及更新這些清單中項目的表單,可以使用 InfoPath 2010 進行自訂。範例包括簡單問題追蹤或工作清單。

  • 文件資訊面板使用 InfoPath 表單,顯示 Microsoft Office 系統 用戶端應用程式內的文件中繼資料。

InfoPath 表單類型

根據組織及其商業資源及需求,表單設計人員可以是專門進行表單型設計及開發的專業人員,或其他使用者,例如資訊工作者、整體解決方案設計人員、網站設計人員、網站集合管理員、網頁開發人員或具有其他主要責任的伺服器陣列管理員。

他們設計的表單類型將取決於商務解決方案的需求。

InfoPath 元件

InfoPath 包含下列兩項主要元件:

  • InfoPath 2010 是 Office 系統 用戶端應用程式,具有下列兩種模式:

    • Microsoft InfoPath Designer 2010 可用以建立表單範本。表單範本可定義表單的資料結構、外觀及行為。設計程序完成之後,表單設計人員會將表單範本發佈至 SharePoint Server,讓使用者可以根據該範本開始填寫表單。

    • Microsoft InfoPath Filler 2010 可用以填寫以建立於 SharePoint Designer 中之表單範本為依據的表單。

  • Microsoft SharePoint Server 2010 的 InfoPath Forms Services 可讓表單呈現於網頁瀏覽器中。此為 SharePoint Server 2010 的企業功能。伺服器陣列管理員可以在 SharePoint 管理中心網站上,設定 InfoPath Forms Services 的設定值。

網頁瀏覽器與僅供填寫之表單的比較

表單設計人員進行的第一個設計決策,為是否要建立網頁瀏覽器表單或僅供填寫之表單。瀏覽器表單可以使用網頁瀏覽器進行填寫,而僅供填寫之表單則只可以使用 InfoPath Filler 2010 進行填寫。

建立瀏覽器表單的最大優點是不需要在填寫表單之使用者的電腦上安裝 InfoPath 2010。這些表單可以使用瀏覽器進行填寫。需要有 InfoPath Forms Services,才能將瀏覽器表單發佈至 SharePoint Server,並於瀏覽器中加以呈現。但請務必注意,在網頁瀏覽器表單中,並不支援特定的功能與控制項。這是建立僅供填寫之表單最常見的原因。

網頁瀏覽器表單

瀏覽器表單包括下列類型:

  • 清單表單

  • 外部清單表單

  • 表單庫表單

  • 工作流程表單

SharePoint 清單表單

SharePoint Server 2010 中的新功能,讓您現在可以使用 InfoPath 2010,擴充及加強用於建立、編輯及檢視 SharePoint 清單中各項目的表單。發佈至 SharePoint 清單的 InfoPath 表單範本,會取代預設的 SharePoint 清單表單。

清單的每個內容類型都有其本身的 SharePoint 清單表單,可以在 InfoPath Designer 中進行自訂。

在 InfoPath Designer 中自訂清單表單,可以新增預設 SharePoint 清單表單中不支援的下列功能,以增強 SharePoint 清單:

  • 新增規則以驗證使用者新增至表單的資料。例如,若使用表單追蹤組織的訂單,您可以對個別訂單施行花費限制。

  • 新增規則,以根據特定條件格式化資料。表單設計人員可以顯示或隱藏欄位、啟用或停用控制項、切換檢視,或是設定欄位中資料的值。例如,在庫存追蹤表單範本中,您可以對要求新庫存的使用者和對採購新庫存的組織管理員,顯示不同的資訊。

  • 從其他來源查詢資料。例如,您可以檢查外部系統中是否有可用的庫存,並讓使用者立即知道特定項目是否無法使用。

  • 變更表單的版面配置及外觀。例如,可將必要欄位移至表單的醒目位置,讓使用者容易找到及填寫,或新增針對不同工作或使用者權限最佳化的檢視。

這些自訂選項以及 SharePoint 清單所提供的內建檢視及篩選選項,可讓清單表單用於多種商務解決方案,範圍從臨機操作程序到較複雜的結構化商業程序。

SharePoint 清單表單範本不能包含 Managed 程式碼或是重複或巢狀的資料。若整體解決方案需要表單中有 Managed 程式碼或複雜的資料結構,則必須使用表單庫。

外部清單表單

Business Connectivity Services 可讓您使用外部系統 (如資料庫或使用 SharePoint 外部清單的 Web 服務) 之資料。外部清單透過外部內容類型所建立。至於一般 SharePoint 清單,InfoPath 2010 可以用於自訂用以建立、讀取、更新及刪除外部清單中項目的表單。

表單庫表單

表單庫是使用 InfoPath 表單作為其預設內容類型的 SharePoint 文件庫。建立新表單的方法是按一下表單庫中的 [新增] 按鈕,而使用者所填寫的個別表單則會儲存為表單庫中的 XML 檔案。

若解決方案需要下列任一功能,則應使用表單庫表單:

  • 重複或巢狀資料

  • 數位簽章

  • Managed 程式碼

  • 儲存為 XML 的表單資料

工作流程表單

表單設計人員可以使用 InfoPath Designer,自訂使用者所填寫而與 SharePoint 工作流程中的工作互動之表單。

如需如何設計表單範本的詳細資訊,請參閱 InfoPath 說明及使用方法 (https://go.microsoft.com/fwlink/?linkid=185225&clcid=0x404)。

如需如何設計含有自訂程式碼之表單範本的詳細資訊,請參閱 SharePoint 開發人員中心內的 InfoPath Forms Services(可能為英文網頁) (https://go.microsoft.com/fwlink/?linkid=185226&clcid=0x404)(可能為英文網頁)。

部署表單

表單庫表單的發佈選項,取決於表單範本是否包含 Managed 程式碼、表單設計人員的權限,以及 InfoPath Forms Services 設定。

不使用程式碼發佈瀏覽器表單

任何具有「設計」權限等級的表單設計人員,都可以將不包含 Managed 程式碼的網頁瀏覽器表單直接發佈至 SharePoint Server。表單設計人員可以使用 InfoPath Designer 發佈表單範本。

在管理中心的 InfoPath Forms Services 設定選項頁面上,停用具有瀏覽器功能的表單範本發佈,伺服器陣列管理員就可以限制將瀏覽器表單發佈至 SharePoint Server 的能力。此選項僅適用於表單庫表單,可讓想要更集中控制表單範本的組織需要管理員核准,才可將瀏覽器表單發佈至 SharePoint Server。此選項不會讓使用者無法將僅供填寫之表單發佈至 SharePoint Server。這些表單只可使用 InfoPath Filler 進行填寫。

使用程式碼發佈瀏覽器表單

表單設計人員可以使用 Visual Studio Tools for Applications (VSTA),將 Managed 程式碼新增至其表單中。VSTA 是 InfoPath 2010 安裝程式中可用的選用安裝元件。您可以使用下列兩種方式,發佈內含 Managed 程式碼的表單範本:

  • 沙箱化解決方案 網站集合管理員可以將含有程式碼的表單範本發佈至表單庫,作為沙箱化解決方案。

  • 管理員核准的表單 伺服器陣列管理員可以將表單範本上傳至管理中心內的文件庫,然後將網站集合上的表單範本啟動為具有「設計」權限等級的使用者可以選取的網站內容類型。

作為沙箱化解決方案的表單範本

若在伺服器陣列上執行 Microsoft SharePoint Foundation Sandboxed Code Service,則網站集合管理員可以將含有程式碼的表單範本發佈至表單庫,作為沙箱化解決方案。如此可讓身為網站集合管理員的表單設計人員,不需要伺服器陣列管理員的核准,即可發佈表單。沙箱化解決方案會在可以存取伺服器物件模型子集的環境中執行。伺服器陣列管理員可以設定使用限制,以保護伺服器免受惡意程式碼的攻擊。

若表單範本含有需要完全信任才可執行的程式碼,則將無法發佈為沙箱化解決方案,他們必須經過伺服器陣列管理員的核准。如需沙箱化解決方案的詳細資訊,請參閱<沙箱化解決方案概觀 (SharePoint Server 2010)>。

管理員核准的表單範本

伺服器陣列管理員可以將含有程式碼的表單範本 (包括需要完全信任才能執行的程式碼),上傳至管理中心內的表單範本庫。在願意更集中地控制表單及 Managed 程式碼而不要輕鬆地進行部署的組織中,此為較佳的選項。上傳至管理中心內表單範本庫的表單範本,稱為管理員核准的表單範本。

儲存表單範本之後,表單設計人員會連絡伺服器陣列管理員。伺服器陣列管理員會檢閱表單範本,確定其符合組織效能及安全性標準。若表單範本符合那些標準,則伺服器陣列管理員會將其上傳至伺服器陣列之管理中心內的表單範本庫。

伺服器陣列管理員必須先啟動特定網站集合的表單範本,才能將其用於該網站集合。啟動表單範本會將表單範本置於網站的表單範本庫中。使用者接著可以將表單範本以內容類型新增至表單庫。任何含有「設計」權限等級的人員,都可以新增表單範本內容類型。

如需詳細資訊,請參閱<管理管理員核准的表單範本 (SharePoint Server 2010)>。

填寫表單

發佈表單範本之後,使用者就可以開始填寫以該表單範本為依據的表單。

瀏覽器與填寫表單的比較

主要的表單填寫環境有兩種:網頁瀏覽器及 InfoPath Filler。在 InfoPath Filler 中,可以填寫所有表單。只有在網頁瀏覽器中,才能填寫具有瀏覽器功能的表單。

在管理中心的 InfoPath Forms Services 設定頁面上進行設定值的設定,伺服器陣列管理員就可以停止在網頁瀏覽器中呈現表單。這只適用於已發佈至表單庫的使用者表單範本,而不適用於管理員核准的表單範本或已發佈至清單的表單範本。若停止呈現網頁瀏覽器表單,則在使用者電腦上已安裝 InfoPath 的情況下,會在 InfoPath Filler 中開啟表單。

離線填寫表單

使用 SharePoint Workspace 可以離線填寫 SharePoint 清單表單。使用 InfoPath Filler 則可以離線填寫表單庫表單。

InfoPath Form 網頁組件

使用 InfoPath 表單網頁組件,也可以在網頁主控 InfoPath 瀏覽器表單。如需 InfoPath 表單網頁組件的詳細資訊,請參閱關於 InfoPath 表單網頁組件(可能為英文網頁) (https://go.microsoft.com/fwlink/?linkid=187903&clcid=0x404)(可能為英文網頁)。

See Also

Concepts

規劃 InfoPath Forms Services (SharePoint Server 2010)
沙箱化解決方案概觀 (SharePoint Server 2010)