我想使用 XSL 文件更改 BDC 列表 Web 部件的数据库列名称。
我的 SQL 查询是"Select BATCH_ID..."
,我想将该列名更改"BATCH_ID"
为"ID"
使用 XSL。我还想知道如何$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>