2010-06-23 73 views
0

我有使用web服務將數據保存到sql server的infopath窗體。我已經將此窗體發佈到了我的SharePoint窗體庫。當我插入數據它保存到SQL服務器。但是,我怎麼能顯示這些數據到共享點列表。可以請你幫幫我。如何從SQL服務器獲取SharePoint列表

回答

0

我們能夠通過工作流程爲客戶完成此項任務。我們將表單保存到SharePoint,然後抓取XML並將其推送到SQL中。關於這一點的好處之一是你只能存儲你絕對需要的SQL字段。

快速操作指南:

  1. 更改表格提交到SharePoint。
  2. 促進你希望在SharePoint中查看的字段more on field promotion
  3. 創建一個新的SharePoint工作流設置爲啓動上創建或更新,並實現以下代碼:

    公衆的Guid = workflowId默認(的System.Guid); public SPWorkflowActivationProperties workflowProperties = new SPWorkflowActivationProperties();

    私人無效onWorkflowActivated_Invoked(對象發件人,ExternalDataEventArgs E) { 如果(workflowProperties.Item.File.Exists) { //獲取文件的內容 字符串內容; (StreamReader reader = new StreamReader(workflowProperties.Item.File.OpenBinaryStream())) { contents = reader.ReadToEnd(); } string fileName = Path.GetFileNameWithoutExtension(workflowProperties.Item.File.Name); } }

上面的代碼將產生XML文件的全部內容以及文件名。無論您是使用代碼獲取特定值還是將整個XML字符串傳遞給SQL,都由您決定。我建議的一件事是使用SharePoint的唯一ID來標識SQL中的記錄。這將允許您將SharePoint記錄上的任何CRUD操作同步到SQL記錄。

+0

你好,謝謝你的回答。我們怎麼能這樣做?你能否詳細說明或給我演示代碼相同?我的身份證號碼是 [email protected]。謝謝。 – 2010-06-24 05:29:27

+0

我的場景有些不同。我已經爲我的信息表格創建了一個Web服務。我已將此表單發佈到共享點庫。當我將數據插入瀏覽器啓用窗體時,它將存儲在SQL服務器中。現在我想將這些數據顯示到SharePoint列表或庫中。請你能幫助我。謝謝。 – 2010-06-24 10:07:25

+0

如果你只是想要第二個列表或視圖,如果你在2010年(任何版本),如果你有企業2007或外部列表,你可以看看BDC。否則,你可以做一個Web部件來顯示數據。 – knight0323 2010-06-24 16:11:45

相關問題