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

在SharePoint'中创建XPath表达式;s";添加“公式”列;基于元数据,sharepoint,xpath,formula,Sharepoint,Xpath,Formula,嗯 这是我第一篇关于堆栈溢出的文章,我做了搜索,但找不到关于我的问题的确切内容(尽管我可能在搜索方面很糟糕)。从本质上说,这是我第一次学习Xpath表达式,老实说,我很难创建if/else语句 我有一个DWVP,它在单独的站点上显示文档库中的文档列表。我有一列记录文档签出对象(如果已签出),如果该文档已签出,我有条件格式将突出显示该行 到目前为止一切顺利。我有一个包含大量元数据的文档列表,该列表中的一两行高亮显示为黄色,因为它们已签出,并且用户名列在“@checkedouttouser”列中 我

这是我第一篇关于堆栈溢出的文章,我做了搜索,但找不到关于我的问题的确切内容(尽管我可能在搜索方面很糟糕)。从本质上说,这是我第一次学习Xpath表达式,老实说,我很难创建if/else语句

我有一个DWVP,它在单独的站点上显示文档库中的文档列表。我有一列记录文档签出对象(如果已签出),如果该文档已签出,我有条件格式将突出显示该行

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

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

我在这里的思考过程是,这个新的公式列将检查此列中是否有任何内容被写入(或者没有写入),如果有,它将创建一个链接,上面写着“签入此文档”。因此,如果您查看DVWP,您将看到一个黄色的行,指示文档已签出,并且由于它是黄色的,并且已签出,最右侧的公式列将显示一个链接,上面显示“签入此文档”

我以前从未编写过Xpath表达式,但使用了以下表达式:

如果/@checkedouthouse=“

我有一种感觉,它会像那样开始


这个表情会是什么样子

不太确定要做什么,稍微了解一下xslt和xml会有所帮助

<xsl:if test="@CheckedOutToUser"><span>add extra content<span></xsl:if>
添加额外内容
如果需要显示页面中的底层xml,请使用不推荐使用的标记


我会搞定的。

我不太明白你的意思-你试过使用计算列吗?类似这样:
IF(NOT(ISBLANK([CheckedOut]),“Success”,“Failure”)
-您在哪里使用XPath?我添加XPath表达式的原因是,我不需要向源列表添加计算列n。但是现在我想,我可以添加一个计算列,从视图中隐藏它,从newitem和edititem表单中隐藏它,然后在DVWP中显示它,不是吗?话虽如此。如何扩展此公式,以便在失败时创建超链接?i、 e.-失败将显示为链接到源库的超链接?请尝试包含xslt和xml。这根本不是xslt问题—重新标记。此外,您没有确切解释希望XPath表达式选择哪些节点。请编辑您的问题,使其成为真正的问题。