實施主 / 使用自訂清單的詳細資訊關係

論壇使用者經常作為 像這樣的問題:

> 您好 !,
>
> 請告訴我,是否有任何的可能性,以生成一個自訂清單
> 主頁和詳細的類型 (像發票) 而無需使用 InfoPath.
>

SharePoint 提供了某些現成功能,像這樣支援種類的業務需求.

一般, 一個連結在一起使用查閱列的兩個清單. 清單 A 包含發票標題資訊和清單 B 包含發票詳細資訊.

使用附加清單來維護客戶編碼, 產品編號, 等.

使用內容查詢 web 部件 (在 MOSS 只中) 和/或資料檢視 web 部件來創建清單的合併的視圖. SQL 伺服器報表服務 (SRS) 也是它的報告側供.

不過, 有一些重要的限制使它難使用純預置的功能,甚至中等複雜的東西. 這些包括:

  • 有關查找大小列出 vs. "斑彩" 查找列類型的. 查找列類型提出自己對 UI 以不同的方式取決於是否啟用了多重選取或不. 在任一情況下, 外框控制項顯示源清單中的所有可用專案. 如果源清單 1,000 專案, 這就一個問題. 通過這些專案未頁查找控制項. 相反, 它將所有的他們拉入控制. 這使得資料錄入和性能非常尷尬的使用者介面.
  • 查找"拉回來" 一列資訊. 你永遠不能拉回多個列的源清單中的資訊. 例如, 您不能選擇一個客戶"12345" 並在同一時間顯示的號碼,以及客戶的名稱和位址. 查找只顯示客戶數量,別無其他. 這就使得一個尷尬和困難的使用者介面.
  • 沒有內部形式溝通. 我已經寫了關於此這裡. 您不能實現級聯下拉清單, 有條件地啟用/禁用的欄位, 等.
  • 沒有串聯刪除或內置的參照完整性. SharePoint 視為獨立的實體的自訂清單,並且不允許您將它們連結到對方 ERD 傳統意義上. 舉個例子, SharePoint 允許您創建兩個自訂清單, "客戶" 與"發票抬頭". 在客戶清單中,可以在連結回客戶創建發票抬頭. 然後, 您可以從清單中刪除客戶. 外框, 沒有辦法防止這種情況. 要解決這種問題, 您通常使用的事件處理常式.

可能看起來暗淡, 但我仍使用 SharePoint 作為起點為構建這種功能. 儘管你需要在一個解決方案中有差距, SharePoint 使我們能夠填補這些空白使用工具 (如:

  • 事件處理常式. 用於實施參照完整性.
  • 自訂列: 創建自訂列類型並使用它們而不是預設的查閱列. 添加分頁, 緩衝和 AJAX 功能,使其反應.
  • BDC. 這只苔蘚的功能使我們能夠的查詢其他 SharePoint 清單與通常的查閱列的高級使用者介面. BDC 也可以向後端伺服器應用程式. 使用 BDC 以避免複製. 而不是從 ERP 系統的後端複製客戶資訊, 改為使用 BDC. BDC 功能提供友好的使用者介面拉那直接從 ERP 系統,並屬於避免麻煩的維護複製解決方案的資訊.

    BDC 是蘚類植物的功能 (WSS 中不可用) 和挑戰來配置.

  • ASP.NET web 表單: 創建完整的 ajax 的表單,使用 SharePoint 物件模型和/或 web 服務,同時提供了一個非常敏感的使用者介面利用 SharePoint 清單.

最後一個選項可能會覺得你從頭開始, 但考慮這一事實 SharePoint 平臺開始您具有下列主要功能:

  • 維護安全模型.
  • 維護功能表系統.
  • "主表" (e 小節. 自訂清單) 與安全, 內置的維修和審核.
  • 搜索.
  • 後端集成工具 (BDC).

如果在 visual studio 中使用一個新的空白專案啟動, 你有很多的基礎設施和管道建造之前你靠近 SharePoint 的提供.

我相信微軟打算擴展 SharePoint 中的應用發展方向. 這似乎是對現有的 SharePoint 基礎的自然延伸. 微軟 CRM 應用程式提供了大量的可擴充性,支援頁眉/詳細應用程式開發所需的類型. 雖然這些功能是在客戶關係管理, 技術是明顯可用到 SharePoint 開發團隊,我期望,它一定會成為其 SharePoint 產品年底 2008. 如果任何人有知識或深入的見解, 請留下評論.

</結束>

5 上“的想法實施主 / 使用自訂清單的詳細資訊關係

  1. 保羅 · 高爾文

    Raghu, 我不認為有任何簡單的方法來做到這一點. 將側重培訓您的使用者時使用的其中之一,或許給他們一個提示的內容名稱類型本身. 我不認為你可以真正敲定的這一, 從技術上講.

    答覆
  2. Raghu 寫道::
    我通過使用兩個內容類型和自訂清單,如上面的 commnet 中所述創建文學之父/子關係. 但我有一個問題; 我需要使專案內容類型不可用資料夾級和資料夾內容類型不可用在專案級別. 請引導我這一篇. 謝謝…
    答覆
  3. 邁克爾 · 維克斯

    它有點雜牌組裝電腦,但是我使用 ASP.Net 下拉清單,查找"下拉清單的影子" 生成的 SharePoint. 指向基於包含查找項的清單的資料來源的 ASP.Net 下拉清單, 讓我將 ID 欄位的值和我的選擇列用作作為顯示文本. 我並未綁定 ASP.Net 下拉到查閱清單欄位因為它可以生成伺服器端錯誤.

    在頁載入使用 javascript,將正確的值分配給的 ASP.Net 下拉清單, 然後將 onchange 事件附加到該下拉清單,用於將新值分配給相應的 SharePoint 查找下拉清單. 我其實隱藏包含 SharePoint 下拉清單中的行.

    最後一件事 — 方式 SharePoint 呈現高飛查找下拉清單中,當過去的獲取的項的數目 20 使用自訂包裝物件來獲取/設置下拉清單的值. 我有一篇博客文章,詳細說明這一進程在這裡:

    http://www.idiotsyncrasies.com/2007/12/lookup-list-dropdowns-in-sharepoint.aspx

    歡呼,

    邁克爾 ·

    答覆
  4. 大衛

    可以創建對發票頭基於資料夾的內容類型的內容類型,然後創建另一個發票內容類型並添加到 SharePoint 清單中的兩個. 這實際上創建一個父/子關係,這將允許您創建基於發票內容類型的多個發票標題內容類型使您能夠根據住發票和即時的兩個專案之間的關係,如果發票標頭清單項都是刪除該資料夾內的所有兒童發票專案將被都刪除. 您還可以指定內容類型只是某一資料夾中可用的. 這種做法是關係的類似于如何討論圖書館的工作是關係的非常有益的這種類型的專案間. 事件處理常式和代碼將説明一些其他限制,但是總體快速簡單的解決方法.

    答覆

離開一個答覆 Raghu 寫道:: 取消回复

您的電子郵件地址不會被公開. 必需的地方已做標記 *