在SharePoint的“添加公式列”中基于元数据创建XPath表达式

时间:2011-02-23 18:53:39

标签: sharepoint xpath formula

好的,

所以这是我的第一篇关于堆栈溢出的帖子,我在搜索时找不到我正在寻找的关于我的问题的确切内容(尽管我在搜索时可能很糟糕)。从本质上讲,这是我在Xpath表达式上的第一次传递,老实说,我很难创建一个if / else语句。

我有一个DWVP,它在单独的站点上显示文档库中的文档列表。我有一个列,用于说明签出文档的对象(如果已签出),如果签出该文档,我会有条件格式化,以突出显示该行。

到目前为止一切都很顺利。我有一个包含大量元数据的文档列表,此列表中的一行或两行突出显示为黄色,因为它们已签出,用户名列在“@checkedouttouser”列中。

我的问题是我想在这个DVWP中创建另一个列(我假设一个公式列),它将显示一个指向源文档库的链接(特别是启用了一个过滤内容的视图“签出到“[ME],但这没有问题)如果列”@checkedouttouser“中有任何内容。

我的思考过程是这个新的公式列将检查此列中是否写入任何(或者写入),如果是,它将会创建一个“签入此文档”的链接。因此,如果您查看DVWP,您将看到一个黄色行,表示文档已经签出,并且由于它是黄色的,并且因为它已经签出,所以右侧大多数公式列将显示一个“签入此文件“。

我之前从未编写过Xpath表达式,但是使用以下表达式某处

if / @ CheckedoutToUser!=“”,

我有种感觉会开始这样的事情吗?

这个表达式会是什么样的?!

1 个答案:

答案 0 :(得分:0)

不太确定你想做什么,xslt和xml会有所帮助

<xsl:if test="@CheckedOutToUser"><span>add extra content<span></xsl:if>

如果您需要在页面中显示基础xml,则不推荐使用标记

<xmp><xsl:copy-of select="." /></xmp>

会做到这一点。