2009-06-16 37 views
2

我試圖建立一個形式WSS 3.0它具有以下兩個特點:複雜表單設計在Sharepoint

  1. 具有其中包含一些特定領域的每個記錄數子記錄。
  2. 可以導出到HTML或類似的東西,可以在每個瀏覽器中查看。

我意識到(除非我錯了)我只能通過使用InfoPath和RepeatingSection/RepeatingTable /等來實現1。

至於2,我發現InfoPath只能導出到MHT/PDF/XLS,對於我來說沒有任何理想選擇,因爲我們的目標是創建一些可以發佈到網絡上的東西。

任何有關更好的實現方法的提示?

更正爲2:我的意思是InfoPath表單應該在我們的Intranet中可編輯,但是導出爲我們網站的只讀網頁。所以我的意思是「出口」而不是「出版」。

回答

0

這樣做的一種方法是使用數據庫作爲表單的主要數據源,以便所有表單數據都保存在那裏。然後,您可以構建一個網站,查詢數據庫中的所有信息。

另一種方法是將信息表單數據(保存爲xml文件)並使用XML樣式表發佈到Web服務器上以定義其格式。你可以通過ASP.net中的XML控件來做到這一點。

這些解決方案可能需要比其他一些解決方案更多的手肘潤滑脂,但我相信這兩種解決方案都有效。

0

也許創建自定義字段類型是可能的。創建一個具有某種集合作爲值的字段類型。

0

至於2,我看到的InfoPath僅 能夠導出到MHT/PDF/XLS, 沒有非常適合我,因爲我們的目標是 創造一個東西,可以是 發佈到網上

這是不對的,InfoPath表單可以發佈到網絡上。通過InfoPath客戶端將表單發佈到SharePoint時,您可以選擇一個選項,聲明此表單應該可以在瀏覽器中編輯。但是請注意,當你這樣做時,InfoPath的某些表單功能不可用。

或者您對「可以發佈到網絡」有不同的理解嗎?對我來說,這意味着在InfoPath表單所附帶的庫中創建一個新項目 - >在瀏覽器中打開表單 - >用戶填寫表單 - >用戶點擊保存按鈕 - >信息路徑文件被保存到庫中並關閉。

+0

WSS 3.0沒有InfoPath Forms Services,因此無法託管啓用了瀏覽器的InfoPath表單。 – 2009-06-17 08:01:16

+0

你說得對,我的表述是錯誤的。我爲這個問題增加了一個修復。 – Moshe 2009-06-17 08:02:03

0

只是一個想法:

如果InfoPath中(與MOSS一起)是不是一種選擇,那麼也許你可以通過自定義編輯表單模仿它的行爲,如果你想將數據輸出到SP名單。我正在考慮使用動態html控件(用於子記錄)的自定義編輯表單,並且您可以通過將對象動態插入到DOM樹中來實現此目的。然後,在表單提交時,列表上的事件處理程序將解析表單提交的數據,並按照您認爲合適的方式存儲它(例如,在自定義字段中序列化的xml中)。

如果不是一個列表的自定義編輯表單,那麼上面的相同功能可以存儲在帶有代碼隱藏功能的站點頁面中(提防定製)並使用隱藏的SP列表作爲數據存儲。

至於導出部分,鏈接在該列表的ECB菜單中的應用程序頁面可能會獲得上述xml並很好地顯示它。