【发布时间】:2010-10-31 00:24:58
【问题描述】:
我想使用 XSL 文件更改 BDC 列表 Web 部件的数据库列名称。
我的 SQL 查询是 "Select BATCH_ID...",我想使用 XSL 将列名 "BATCH_ID" 更改为 "ID"。我还想知道$ColName_0 是如何填充'BATCH_ID' 值的?
在dvt.headerfield 模板内,它是排序和添加排序菜单。但是$ColName_0 是在调用该模板之前填充的。 XSLT 代码如下:
<xsl:stylesheet
version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:ddwrt="http://schemas.microsoft.com/WebParts/v2/DataView/runtime"
xmlns:asp="http://schemas.microsoft.com/ASPNET/20"
xmlns:msxsl="urn:schemas-microsoft-com:xslt"
xmlns:SharePoint="Microsoft.Sharepoint.WebControls"
exclude-result-prefixes="xsl msxsl ddwrt"
>
<xsl:output method="xml" indent="yes"/>
<xsl:param name="dvt_partguid" />
<xsl:param name="ColName_0"></xsl:param>
<xsl:template name="dvt.headerfield">
<xsl:param name="fieldname" />
<xsl:param name="fieldtitle" />
<xsl:param name="displayname" />
<xsl:param name="fieldtype">0</xsl:param>
<table CtxNum="1" cellspacing="0" class="ms-unselectedtitle" onmouseover="OnMouseOverAdHocFilter(this, '{concat($displayname,$fieldname, $fieldtype, $dvt_partguid)}')">
<tr>
<td width="100%" class="ms-vb" nowrap="">
<a>
<xsl:attribute name="href">javascript: <xsl:value-of select="ddwrt:GenFireServerEvent(('dvt_sortfield;dvt_sortdir'))" />;</xsl:attribute>
<xsl:value-of select="$fieldtitle"/>
</a>
</td>
<td>
<img src="/_layouts/images/blank.gif" width="13" style="visibility: hidden" alt="" />
</td>
</tr>
</table>
</xsl:template>
<xsl:template match="/">
<xsl:call-template name="dvt_1" />
</xsl:template>
<xsl:template name="dvt_1">
<xsl:variable name="dvt_StyleName">Table</xsl:variable>
<table id="BdwpRows" border="0" width="100%" cellpadding="2" cellspacing="0">
<tr valign="top">
<th class="ms-vh" width="1" />
<th class="ms-vh" align="left">
<xsl:call-template name="dvt.headerfield" ddwrt:atomic="1">
<xsl:with-param name="fieldname">@BATCH_ID</xsl:with-param>
<xsl:with-param name="fieldtitle">
<xsl:value-of select="$ColName_0" />
</xsl:with-param>
<xsl:with-param name="displayname">
<xsl:value-of select="$ColName_0" />
</xsl:with-param>
<xsl:with-param name="fieldtype">text</xsl:with-param>
</xsl:call-template>
</th>
</tr>
</table>
</xsl:template>
</xsl:stylesheet>
【问题讨论】:
-
您能发布一些示例 xml 以供 xslt 使用吗?
标签: sharepoint xslt web-parts bdc