送出及儲存表單資料
套用到
新增提交資料連線後,使用者可在完成後將填寫的資訊提交至指定的資料來源。 這讓你能設計出像是辦公室間投票,詢問同事們即將到來慶祝活動的午餐偏好,並將結果寄給你,或是複雜的表單,收集貸款申請資訊並將資料提交到 SharePoint 伺服器。
本文內容
關於提交資料連結
當使用者提交表單時,代表該表單已完成填寫。 此時,資料會透過提交資料連線提交,該連線會將資訊儲存在外部資料來源,例如 SharePoint 表單函式庫中。 這和保存表單的行為不同。 舉例來說,作為表單設計師,當你儲存表單時,你開發表單的進度會被保存下來,這樣你之後就能繼續修改,就像保存 Word 文件一樣。 同樣地,當使用者填寫表單時,也可以儲存該表單,以便日後能返回該表單。 即使使用者已儲存表單,填寫完成後仍需提交。
當你設計一個基於 Web 服務或 SharePoint 清單的新表單時,該初始資料連線會成為該表單的預設主要提交資料連線。 InfoPath 會鏡像主資料連線的資料欄位結構,讓你在提交表單時可以設定它們所包含的值。 你也可以從零開始建立表單,並在非基於資料連線的表單範本中新增提交資料連線,甚至在已有提交資料連線時再加一個額外的資料連線。
大多數表單設定為一個提交資料連線,並將表單中所有資料提交給該表單,但多重提交資料連線則能透過規則或自訂程式碼控制哪些欄位提交給哪個資料來源。 例如,你可以設定表單,讓使用者能將已完成的表單提交到網路服務,或透過電子郵件。
表格是根據你指定的規則提交的。 你可以將提交規則加入按鈕,讓使用者點擊提交時會提交表單,或者根據填寫表單時發生的其他事件來決定:
欲了解更多關於動作規則及提交資料動作的資訊,請參見 「新增執行其他動作的規則」。
提交資料連線類型
您可以建立以下類型的提交資料連線:
注意
若要新增提交資料連線,將資料提交至遠端資料來源,您需要管理員提供資料來源的位置及存取權限。
網路服務 (SOAP) 網路服務提交資料連線會提交給 SOAP (簡單物件存取協定) 網路服務。 SOAP 是一種通訊協定,定義用於與網路服務通訊的 XML 訊息。 當你透過網路服務連線提交資料時,InfoPath 會判斷網路服務需要哪些資料,並根據這些資訊,你能指定表單中哪些欄位應該提交給網路服務。
SharePoint 函式庫連接 此選項允許 InfoPath 表單將資料作為文件提交至 SharePoint 文件庫。
Email 訊息 這讓 InfoPath 能在電子郵件中提交表單回覆。 這對於小規模表單部署非常有用,因為大型回應不會讓負責接收表單回應的使用者感到不堪負荷。
主機環境,例如 ASP.NET 頁面或主機應用程式 這是一個進階提交選項,實際上不會提交資料,而是在應用程式或託管表單的 ASP .NET 頁面中引發事件。 這用於在 Visual Studio 中建置使用 FormControl 類別來架設表單的 Windows 應用程式,或是建立使用 XMLFormView 類別來架設表單的 ASP .NET 頁面時。 此提交類型也用於建立 SharePoint Workspace 的表單工具。
網頁伺服器 (HTTP) 網頁伺服器 (HTTP) 選項可透過「提交選項」在「資料」標籤中的「提交表單」群組中存取。 這讓你能建立一個資料連線,將整個表單作為 HTTP POST 的正文傳送到指定的 URL。 目的 URL 可以是網頁伺服器上的應用程式,例如 ASP.NET 應用程式、CGI 腳本,或是使用 ISAPI 的應用程式。
注意
表單只能有一個資料連線,該連線會向網頁伺服器上的應用程式提交資料。
新增連線以提交外部資料
新增提交資料連線有兩種方式,分別如下:
- 在 「資料 」標籤的 提交 表單群組中,點擊你想新增的資料來源類型對應按鈕。
- 在 資料 標籤中,取得 外部資料 群組,點選 資料連接,然後執行以下操作:
- 按一下 [新增]。
- 點擊 提交資料。
- 按一下 [下一步]。
- 點選想要的資料來源,然後再點 選「下一步 」。
無論你用哪種方式開始新增資料連線,請選擇正確的選項,如下所示。
在設定提交資料連線時,你通常可以使用函式和公式。 欲了解更多關於 InfoPath 中函式與公式的資訊,請參閱 InfoPath 2010 中的新增公式與函式。
電子郵件
- 請在 「收件人 」欄輸入表格將寄送的電子郵件地址。
若表格將被碳複本或盲錄,請在 抄送(CC )和 密送(Bcc )欄位輸入所需的電子郵件地址。
請在主旨欄輸入主題以回應表格。
輸入表格收件人會在 介紹 框中看到的介紹內容。
按一下 [下一步]。
請選擇使用者填寫完表單後,您希望如何傳送表單:
如果你只想在郵件正文中傳送表單目前視圖的快照,請點擊「只傳送表單的主動視圖,且不要附加附加」。
注意
該表單無法被收件人填寫或互動 () ,它只是提交時當前表單視圖的快照。
如果你想將整個表單作為附件寄送,包括目前檢視和其他檢視,讓收件人能填寫表單,請選擇 「以附件形式發送表單」,並在 附件名稱 框中輸入附件名稱。
按一下 [下一步]。
輸入資料連線名稱,並指示這是否應該是預設的提交連線。
SharePoint 函式庫
注意
你無法新增連線,將資料提交到 SharePoint 清單到現有表單。 要建立這樣的連結,你必須從 SharePoint 內部開始,自訂 SharePoint 清單,或使用 SharePoint List 範本建立新表單。 關於自訂 SharePoint 清單表單的資訊,請參見 「自訂 SharePoint 清單表單」。
- 在文件庫框中輸入 SharePoint 伺服器的位置。
- 在 檔案名稱 框輸入表單名稱,指示如果已有同名表單,InfoPath 是否應該覆寫該表單,然後點 選「下一步」。
關於如何在表單名稱中使用函數與公式的資訊,請參閱 InfoPath 2010 中的「新增公式與函式」。
- 在方框中輸入資料連線名稱,然後如果這是預設提交資料連線,則選擇 設定為預設提交連線 的勾選框。
SOAP (網路服務)
- 輸入承載 SOAP 連線的網頁伺服器網址,或點選 搜尋 UDDI 搜尋該伺服器連線,然後點 選下一步。
- 選擇你想提交資料的網路服務。
- 按一下 [下一步]。
- 對於每個參數,請點擊欄位 或群組,然後選擇將與之關聯的欄位或群組 ,然後修改,或點擊 整個表單 ,將表單中包含所有資料。
- 按一下 [下一步]。
- 在方框中輸入資料連線名稱,然後如果這是預設提交資料連線,則選擇 設定為預設提交連線 的勾選框。
主機環境,例如 ASP.NET 頁面或主機應用程式
這是一個進階程式設計選項,需要使用自訂程式碼,因此本書未涵蓋。 請參閱以下連結,了解部分相關類別與指令的資訊。
- 關於 SubmitToHostConnection 類別的資訊,請參見 SubmitToHostConnection 類別。
- 關於 FormControl 類別的資訊,請參見 FormControl 類別。
- 關於 XMLFormView 類別的資訊,請參見 XmlFormView 類別。
SharePoint 連線函式庫
SharePoint 資料連接函式庫是一種函式庫,可包含用於連接外部資料來源的設定資料連接檔案。 SharePoint 連線函式庫中包含的資料連接檔案可以描述 Web 服務連線或 SharePoint 函式庫連線,並可用於 Filler 及相容瀏覽器的表單範本中。 以下是使用 SharePoint 資料連接函式庫的一些好處:
- 多個表單可以使用同一個資料連接檔,因此不需要從頭建立相同的資料連線。
- 如果外部資料來源的位置或連線設定改變,你只需要更新資料連線檔案,不需要更新每個表單。
- 資料連接檔可包含替代認證資訊,當使用者透過瀏覽器填寫表單時,伺服器可使用這些資訊。
- 在瀏覽器中填寫且未達到完全信任安全等級的表單,若表單中所有資料連線皆使用資料連線檔案,則可連接至其他網域的電腦。
欲了解更多關於通用資料連線的資訊,請參閱 通用資料連接 v2.0 參考與架構。
建立並提交資料至 SharePoint 資料連接函式庫中定義的連線
如果伺服器上還沒有資料連線檔案,請按以下步驟建立:
注意
InfoPath 無法為電子郵件或主機環境連線建立資料連線檔案。
- 依照 新增連線以接收外部資料 的步驟,加入你想建立資料連線檔案的類型。
- 在 「資料 」分頁,「 取得外部資料 」群組中,點選 「資料連接」。
- 選擇想要的資料連線,然後點選「 轉換成連線檔案」。
- 輸入資料連線函式庫的網址,並在文字框末尾加上檔名, 或點擊瀏覽 至目標位置並輸入檔案名稱,然後點 選儲存。
注意
你需要輸入完整的資料連接函式庫網址,以及檔案。 例如,http://department/site/dataconnectionlibrary/file.udcx,其中 http://department/site/dataconnectionlibrary 是資料連接函式庫的URL,file.udcx是即將建立的新資料連接檔案的檔名。 如果這個檔案已經存在於伺服器上,那麼建立另一個同名檔案會覆蓋伺服器上的副本。
- 按一下 [確定]。
- 按一下 [關閉]。
- 瀏覽 SharePoint 資料連線函式庫,必要時簽到並核准所建立的 UDC 檔案。
透過 SharePoint 資料連線檔案新增資料連線,請按以下步驟:
- 在 資料 標籤中,在 提交表單 群組中,點選 「To Other Locations」,然後點擊 「To SharePoint Server Connection」。
- 從 網站 下拉選單選擇想要的伺服器。
- 選擇所需的資料連接檔案。
- 按一下 [下一步]。
- 請依照所選選項的步驟操作,如 「新增連線以接收外部資料」。
如果你想要的 SharePoint 網站不在清單中,請按以下步驟將其加入清單:
- 點擊 管理網站。
- 按一下 [新增]。
- 在 網址 框輸入 SharePoint 網站的網址,在 顯示名稱 框輸入名稱。
設定提交選項
當你新增提交資料連線時,InfoPath 會設定表單透過預設資料連線提交。 你可以在 「提交選項 」對話框中設定這些選項。 要在「資料」標籤的「提交選項」群組中開啟「提交選項」對話框,點擊「提交選項」。
在 提交選項 畫面中,您可以以下方式配置表單的提交選項:
- 啟用或停用使用者提交表單的功能。
- 選擇表單的提交方式,無論是寄送單一目的地、透過規則,或使用自訂程式碼。
透過規則或自訂程式碼,你可以設定表單在使用者點擊 「提交」時,透過多個資料連線提交資料。 例如,如果你設計的是報銷表單,若金額低於 1,000 美元,可以提交到某個 SharePoint 文件庫;若金額超過 1,000 美元,則可提交到其他 SharePoint 文件庫,若需更嚴格審查,則透過電子郵件將該表單寄給使用者的經理標記。
- 在 InfoPath Filler 的 Ribbon and Info 標籤中新增或移除「提交」按鈕。
- 建立自訂訊息,讓用戶在提交表單時顯示。
- 請指定提交後是保持開放、關閉或開啟另一空白表單。
請依需求執行以下步驟來設定提交選項:
要讓使用者提交表單,請確保勾選「 允許使用者提交此表單 」這個框。
為了說明表格的提交方式,請執行以下步驟:
如果表單只使用一個提交資料的連線,且不需要進階功能,請點選 「將表單資料傳送至單一目的地」,並設定如下:
- 從上方下拉選單選擇將使用的連線類型。
- 從 「選擇一個資料連線以提交 」清單中選擇個別資料連線。
若資料連線不存在,請點擊 新增 ,並參考 「新增連線以接收外部資料 」以獲得設定連線的指示。
如果有多個提交資料連線,或你想新增規則來控制提交動作,請點擊 「使用規則執行自訂動作」。 欲了解更多如何設定動作規則的資訊,請參閱 新增執行其他動作的規則。
若需要複雜程式碼、多重資料連線或部分提交且規則無法達成,請點擊 「使用程式碼執行自訂動作」。
要更改色帶上「 提交 」按鈕上出現的標籤,請在 標籤 框中輸入所需的文字。 或者,要完全關閉 提交 按鈕,請取消勾選前述的勾選框。
要設定提交失敗訊息,請點擊 進階,選擇 「若表單提交失敗則顯示此訊息 」框,然後在下方文字框輸入所需訊息。
要設定提交成功訊息,請點擊 「進階」,選擇 「若表單成功提交則顯示此訊息 」,然後在下方文字框中輸入所需訊息。
要控制提交表單後執行的動作,請從 提交後 清單中選擇所需的動作。