calling function from XSLT Error: Namespace does not contain any functions

Gudsud55

New Member
i want call the vbscript function:\[code\] VBCustomScript \[/code\]inside xslt file but i get the following error:\[code\] Error (0x80004005): Namespace 'extra-functions' does not contain any functions. \[/code\]please any help?\[code\]<?xml version="1.0" encoding="UTF-8"?><xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:x="http://www.w3.org/1999/XSL/Transform-alternate" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:lsd="http://www.lodestar.com" xmlns:i="urn:ls-i18n-formatter" exclude-result-prefixes="xsl xsd lsd"><xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/><xsl:namespace-alias stylesheet-prefix="x" result-prefix="xsl"/><xsl:param name="Exclude">UIDACCOUNT</xsl:param><xsl:param name="Include">UIDACCOUNT</xsl:param><xsl:variable name="DateSep" select="i:GetLocaleData(29)" /><xsl:param name="RslvPrefix">RSLV_</xsl:param><xsl:param name="RslvSuffix">.RSLV</xsl:param><xsl:template match="xsd:element"> <x:stylesheet version="1.0" xmlns:i="urn:ls-i18n-formatter" xmlns:ms="urn:schemas-microsoft-com:xslt" xmlns:user="http://www.lodestarcorp.com/user" xmlns:extra="urn:extra-functions" xmlns:msxml="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="i ms user extra msxml" > <x:output method="html" version="1.0" encoding="UTF-8" indent="yes"/><ms:script language="JScript" implements-prefix="user"> function MonthYear(val, sep) { var mon= "00" + (val & 0x000f); return !val ? "" : ("" + mon.substr(mon.length - 2) + sep + ((val & 0xffff) >> 4)); }</ms:script><msxsl:script xmlns:msxsl="urn:schemas-microsoft-com:xslt"language="VBScript" implements-prefix="extra"> function VBCustomScript(str) VBCustomScript= "test" end function </msxsl:script><x:template match="ENTITIES"> <xsl:variable name="LookupSecondary" select="xsd:keyref/xsd:field[position() > 1]/@xpath"/> <xsl:variable name="Fields" select="xsd:complexType/xsd:attribute[not(contains($Exclude, @name) or @lsd:ISUID='Y' or @name= 'COLLECTIONHISTNUM' or @name='LSUSER' or @name='LSTIME' or @type = 'BLOB' or @type = 'Bit' or @name = $LookupSecondary)]"/> <table class="Stripy" cellpadding="2" cellspacing="0" border="0"> <thead><tr> <th onclick='event.cancelBubble=true'> </th> <xsl:if test="@name[.='METERHISTORY']"> <th> </th> </xsl:if> <xsl:for-each select="$Fields"> <xsl:sort select="@lsd:COLUMNNUMBER" data-type="number" /> <th nowrap="" onclick=""> <xsl:if test="@type != 'XML_DOCUMENT'"> <xsl:attribute name="onclick">NavSort('<xsl:value-of select="@name"/>')</xsl:attribute> </xsl:if> <xsl:variable name="Lookup" select="../../xsd:keyref[xsd:field/@xpath=current()/@name]"/> <xsl:variable name="LookupTable" select="//xsd:element[xsd:key/@name=$Lookup/@refer]"/> <xsl:choose> <xsl:when test="$Lookup"> <xsl:value-of select="i:FM(concat('tables/',$LookupTable/@name, '/ref/', ../../@name, '/', @name))"/> </xsl:when> <xsl:when test="@name='URL_CONVERTITORE'"> Foto Co </xsl:when> <xsl:when test="@name='URL_MISURATORE'"> Foto Mi </xsl:when> <xsl:otherwise> <xsl:value-of select="i:FM(concat('tables/', ../../@name, '/fld/', @name))"/> </xsl:otherwise> </xsl:choose> </th> </xsl:for-each> <th nowrap="" onclick=""> CAMPO DI PROVA </th> </tr></thead> <tbody> <xsl:variable name="Params" select="xsd:complexType/xsd:attribute[@lsd:ISUID='Y' or (@lsd:ISIDENTITY='Y' and not(../xsd:attribute[@lsd:ISUID='Y']))]"/> <x:for-each select="*"> <tr class="r{{position() mod 2}}" onclick="event.cancelBubble=true;" id="r{{position()}}"> <td> <a> <xsl:attribute name="href">javascript:Edit('<xsl:for-each select="$Params"> <xsl:value-of select="@name"/>:{<xsl:choose> <xsl:when test="@type='UID' or @type='Small_UID'">substring-before(concat(@<xsl:value-of select="@name"/>, ":"), ":")</xsl:when> <xsl:otherwise>@<xsl:value-of select="@name"/></xsl:otherwise> </xsl:choose>}<xsl:if test="position() < last()">;</xsl:if> </xsl:for-each>') </xsl:attribute>[...] </a> <xsl:variable name="Params1" select="xsd:complexType/xsd:attribute[@name='UIDREAD']"/> <input type = "checkbox" id="{{position()}}" onclick="change(id);"> <xsl:attribute name="value">{ @<xsl:value-of select="$Params1/@name"/> }</xsl:attribute> <xsl:attribute name="name">uidread</xsl:attribute> </input> </td> <xsl:if test="@name[.='METERHISTORY']"> <td> <a href="http://stackoverflow.com/questions/14460500/#"> <xsl:attribute name="onclick">ShowMeterRead('{@UIDMETERHISTORY}')</xsl:attribute> <...> </a> </td> </xsl:if> <xsl:for-each select="$Fields"> <xsl:sort select="@lsd:COLUMNNUMBER" data-type="number" /> <xsl:variable name="Type" select="//xsd:simpleType[@name=current()/@type]"/> <xsl:variable name="Field" select="."/> <td align="center"> <xsl:choose> <xsl:when test="$Type//xsd:enumeration"> <x:choose> <xsl:for-each select="$Type//xsd:enumeration"> <!-- GESTIONE DEL TIPO MITTENTE --> <x:when test="@{$Field/@name} = '{@value}' and '{$Type/@name}' = 'ITGp2_SENDERTYPE_DOMMD'"> <xsl:value-of select="concat($Type/@name, '@', @value)"/> </x:when> <x:when test="@{$Field/@name} = '{@value}' and '{$Type/@name}' != 'ITGp2_SENDERTYPE_DOMMD'"> <xsl:value-of select="i:FM(concat('types/typename[@id="', $Type/@name, '"]/value[@id="', @value, '"]'))"/> </x:when> </xsl:for-each> <x:when test="'{$Field/@name}' = 'SENDERTYPE'"> <x:value-of select="concat('ITGp2_SENDERTYPE_DOMMD@',@{@name})" /> </x:when> <x:otherwise><x:value-of select="@{@name}" /> </x:otherwise> </x:choose> </xsl:when> <!--Aggiunta F. Perricone per fotoletture in data 21/02/2011--> <xsl:when test="@name='URL_MISURATORE' or @name='URL_CONVERTITORE'"> <x:if test="(@{@name})!=''"> <xsl:variable name="Params1" select="xsd:complexType/xsd:attribute[*]"/> <img style="cursor:hand" src="http://stackoverflow.com/questions/cust_facility/images/fotocamera.png" alt="Fotolettura"> <xsl:attribute name="onclick">javascript : ShowPhoto('<xsl:value-of select="@name"/>;<xsl:for-each select="$Fields"> <xsl:if test="@name='STOPREADTIME' or @name='STOPREADING' or @name='CORRSTOPREAD' or @name='UIDMETER' or @name='UIDREADSHEET'"> <xsl:value-of select="@name"/>|{<xsl:choose> <xsl:when test="@type='UID' or @type='Small_UID'"> substring-before(concat(@<xsl:value-of select="@name"/>, "|"), "|") </xsl:when> <xsl:otherwise> @<xsl:value-of select="@name"/> </xsl:otherwise> </xsl:choose>}<xsl:if test="position() < last()">;</xsl:if> </xsl:if> </xsl:for-each>')</xsl:attribute></img> </x:if> </xsl:when> <!--FINE Aggiunta F. Perricone per fotoletture in data 21/02/2011--> <xsl:when test="@type='UID' or @type='Small_UID'"><x:value-of select=" @{@name}{$RslvSuffix} "/></xsl:when> <xsl:when test="@type = 'Float' or @type = 'Real'"> <x:value-of select="@{@name}"/> </xsl:when> <xsl:when test="$Type/xsd:restriction/@base='xsd:decimal'"> <x:value-of select="i:FR( @{@name}, {$Type/xsd:restriction/xsd:fractionDigits/@value}, 1 )"/> </xsl:when> <xsl:when test="@type = 'Date'"><x:value-of select="i:FD(@{@name})"/></xsl:when> <xsl:when test="@type = 'Timestamp'"><x:value-of select="i:FD(@{@name}, 2, 4)"/></xsl:when> <xsl:when test="@type = 'Bill_Month'"> <x:if test="@{@name}"> <x:value-of select="user:MonthYear(number(@{@name}), '{$DateSep}')"/> </x:if> </xsl:when> <xsl:otherwise> <x:value-of select="@{@name}" /> </xsl:otherwise> </xsl:choose>  </td> </xsl:for-each> <td> <xsl:value-of select="extra:VBCustomScript(string(@UIDMETERHISTORY))"/> </td> </tr> </x:for-each> </tbody> </table></x:template></x:stylesheet></xsl:template><xsl:template match="text()"/></xsl:stylesheet>\[/code\]
 
Back
Top