执行主 / 使用自定义列表的详细信息关系

论坛用户频繁地作为 像这样的问题:

> 您好 !,
>
> 请告诉我,是否有任何的可能性来生成一个自定义列表
> 母版和详细信息的类型 (像发票) 无需使用 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 是 MOSS 的功能 (在 WSS 中不可用) 和挑战来配置.

  • ASP.NET web 窗体: 创建一个全功能已启用 AJAX 的表单使用 SharePoint 对象模型和/或 web 服务,同时提供了一个非常敏感的用户界面利用 SharePoint 列表.

最后一个选项可能会觉得你从头开始, 但考虑到 SharePoint 平台启动你具有下列主要功能:

  • 维护安全模型.
  • 菜单系统与维修.
  • "主表" (e 小节. 自定义列表) 与安全, 内置的维护和审核.
  • 搜索.
  • 后端集成工具 (BDC).

如果你在 visual studio 中开始一个新的空白项目, 你有很多的基础设施和管道要生成,然后你就接近 SharePoint 的提供.

我相信微软打算扩展 SharePoint 中的应用发展方向. 这似乎是对现有的 SharePoint 基础的自然延伸. 微软 CRM 应用程序提供了大量的可扩展性,支持页眉/详细应用程序开发所需的类型. 虽然这些功能是在客户关系管理, 技术是明显可用到 SharePoint 开发团队,我期望,它一定会成为其 SharePoint 产品年底 2008. 如果任何人有知识或深入的见解, 请留下评论.

</结束>

5 上“的想法执行主 / 使用自定义列表的详细信息关系

  1. 保罗 · 高尔文

    拉古, 我不认为有任何简单的方法,这样做. 我将重点培训您的用户时,使用他们其中之一,也许给他们一个提示的内容的名称与类型自身. 我不认为你可以真的钉住的这一, 从技术上讲.

    答复
  2. 拉古写道::
    我通过使用两个内容类型和自定义列表,如上述 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 列表. 这实际上创建一个父/子关系,这将允许您创建基于发票内容类型的多个发票,生活在发票标题内容类型给你下和即时的两个项目之间的关系,如果发票标题列表项都是删除该文件夹内的所有子发票项目将被都删除. 您还可以指定内容类型只是从某一文件夹内可用. 这种方法是关系的类似的讨论图书馆如何工作以及对于这种类型的项目之间是关系的非常. 事件处理程序和代码将帮助与一些其他限制但是总体的快速简单解决方案.

    答复

离开回复 拉古写道:: 取消回复

您的电子邮件地址不会被公开. 必需的地方已做标记 *