过滤网站在那里的客户数量=当前文献图书馆的名字
题
我有一个网络的一部分页的文件库(http://mysitecoll.com/subsite1/Cust001/cust001.aspx)
- 我已经加入网络的一部分,列表显示从顶部的水平。
- 它的工作和显示器中的所有项目的清单。
- 然而,我仅仅需要显示项目在那里 customerNumber=documentLibrary 因此,在这个例子,它将(客户数量=cust001)或任何目前的文件图书馆的用户。
希望这是有意义的。
该清单应该仅显示项目,其中客户数量=当前文献图书馆的名字
=================== 其他细节中加入=====================
罗莉,这里有细节
顶级网站有一个列表中的"客户名单"包含客户的姓名、地址、电话,等等。
每个客户都有自己的文档库下 http://url/siteCollection/CustomerWeb/
我需要添加一个网络的一部分网页的每一个这些文档库(通过程序) (文件的图书馆为客户222看起来像这样 http://url/siteColl/custWeb/customer222)
该网络一部分的页面,我需要增加对文献图书馆将有2个网络的部分。a.第一个网站列表显示从顶级网站(客户名单),但是我需要过滤器,它这么只有客户在的问题是表示。例如,我在安装的文件图书馆和客户数量的这个客户是222使他们的文件库名称是"Customer222".列在客户名单"客户数量"应相同文档库的标题或名称为那是唯一的匹配。
我希望这是清楚的。
解决方案
您的所有图书馆都适合不同的客户吗?您实际上是在尝试根据用户显示其他库或列表?还是您是说您将将此Web部分添加到库视图的所有.apSX页面中,以便列表将通过库过滤?我对您是否希望图书馆根据客户或列表进行更改而更改我有些困惑,并且将其放在每个库页面上。
感谢您的更新。我将使用2件事将过滤器添加到页面上。 1将是CEWP中的JavaScript或jQuery,它将从URL解析客户编号,您可能可以使用subStringBebefore和substringafter将其获取,然后将该值放入页面上的文本过滤器中。然后,您可以将此过滤器应用于页面上的列表Web部分。
可能更容易的另一个选项是将列表Web部件转换为XSLT数据视图,然后进入SharePoint Designer并创建一个将为子字符串并自动应用该过滤器的参数。
第一个选项将赋予用户在需要时更改过滤器的能力,第二个选项将不会。
其他提示
<xsl:variable name="DocLibName" select="substring-before(substring-after($PageUrl, '/Forms/'), '/')" />
<xsl:param name="PageUrl"/>
设置VIEWFLAG=1(应在"属性"windows)
找到这线和修改,如果你想过滤网站列表
<xsl:variable name="Rows" select="/dsQueryResponse/Rows/Row" />
它改为如下
<xsl:variable name="Rows" select="/dsQueryResponse/Rows/Row[(@customerNumber=$DocLibName)]"/>
你可以用它来显示
<xsl:value-of select="$DocLibName"> <br/>
<xsl:value-of select="$PageUrl"/><br/>