对列使用“允许多个值”时,SharePoint“分组依据”中断

时间:2009-03-12 09:27:57

标签: sharepoint

我想在按类别分组的文档库中显示文档。该类别是我添加的查找列,允许多个值。不幸的是,这完全破坏了“分组”功能。是否有解决此问题的程序化解决方案?

5 个答案:

答案 0 :(得分:3)

有一种方法......它既复杂又丑陋 - 但应该有效:)

您可以为列表(HTML,JavaScript和所有)编写自己的视图。 C:\ Program Files \ Common Files \ Microsoft Shared \ Web Server Extensions \ 12 \ TEMPLATE \ GLOBAL \ XML文件夹中的VWSTYLES.xml文件包含默认SharePoint视图样式的HTML和JavaScript - 从中​​获取灵感,你可以创建自己的视图样式,在那里你可以做任何你想做的事情!

问题是,SharePoint没有任何方法来部署您的自定义视图样式 - 这是丑陋部分的用武之地 - 您有两种选择来部署视图样式。

  1. 将代码直接添加到VWSTYLE.xml /编辑它的副本并使用功能覆盖它

    优点:

      

    您仍然可以编辑   从SharePoint界面查看

    缺点:

      

    您覆盖默认的SharePoint   文件 - 您的工作可以被覆盖   SharePoint更新。

         

    您的视图样式将在SharePoint的每个列表中提供。

  2. 在列表上以编程方式创建视图

    优点:

      

    您不会覆盖任何默认值   SharePoint文件。

         

    您可以控制使用哪个列表   图

    缺点:

      

    您无法通过SharePoint界面编辑视图

  3. 我自己使用了方法2几次 - 它有效......但它并不漂亮! :)

答案 1 :(得分:0)

我不认为你想做的事情是可能的。对项目/文档进行分组时,可以根据分组值将它们显示在不同的组中。我不认为SharePoint支持将单个项目添加到多个组。如果在分组字段中有多个值,则无法知道将项目/文档添加到哪个组。我不确定这是错误还是设计错误。

答案 2 :(得分:0)

托马斯是正确的,这是设计的,因为该项目必须在不同的组中多次出现。值得注意的是,这可以通过Web服务实现。

请参阅why I was getting duplicate rows from the sharepoint lists web service

不,我不知道为什么列表webservice会这样做,但API不会。

答案 3 :(得分:0)

也可以查看此链接。 Access支持此功能,而无需执行太多丑陋的代码。 http://office.microsoft.com/en-us/access/HA012337221033.aspx

答案 4 :(得分:0)

所以这里有一种对我有用的黑客,但不保证。虽然您的列(我的案例中的Office)允许启用多个值,但请根据需要填写所有数据。完成后,转到列表设置,单击列" Office",然后关闭允许多个值。 SharePoint将弹出一个关于如何丢失这些数据的警告(从未发生在我身上)。点击即可,然后修改您想要分组的视图," Office"现在应该出现在列的下拉列表中。完成的结果将导致您的组(和/或子组)显示正常。

我唯一的问题是,不是让一个项目出现在A组B组中,因为它在列X中检查了字段A和字段B,它只创建一个新组,列X:A; B.所以在我的情况下,我在博福特和奥兰治堡办公室都有工作人员,而不是在两组中都有这些工作人员(最好),它创建了一个新组如下:

groups