on 04-25-2016 6:36 AM
Hi all,
I am working on exchange rate import from SAP Business One Integration blog by Pierre Canali exchange rate is collected from a
url : http://www.ecb.europa.eu/stats/eurofxref/eurofxref-daily.xml . I face a problem starts at for -each loop. I get a error " parameters doesn't match existing methods "
The processing flow
Now i added the atom 7 which consists of following xsl for-each loop that calls SBObob function to insert/update exchange rates
Regards:
Navin
Hi Navin,
if you are using newer version of b1if you cannot use entities inside function call.
Try with this:
concat(/ExchangeRate/@currency,',', /ExchangeRate/@date,',', /ExchangeRate/@rate, ',','true')
Let me know if it worked.
Regards
Pierre
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Pierre,
I have changed the parameter as you had mentioned but still i get a error message while debug
The method's parameters trying to call mismatch the existing method's.
At B1 call function atom it displays
<Message_Is_Not_Wellformed/>
I need a clarification in the Atom 7 you had defined xsl template with a URL, while i am running that url in browser it show error page.
http://www.gesmes.org/xml/2002-08-01
http://www.ecb.int/vocabulary/2002-08-01/eurofxref
Regards:
Navin
Hello Navin,
I had a try with the scenario and it is actually working in my environment.
Please pay attention at:
<xsl:include href="../../com.sap.b1i.system.lib/xsl/string.xsl" />
in my for-each predecessor transform (actually atom6) because it's calling the template b1ilib.strgReplace
Regards
Pierre
Hi ,
Sorry for late reply. I have tried with changing parameter but the error is about parameter
I tired both paramter as per your instruction but failed.
concat(/ExchangeRate/@currency,',', /ExchangeRate/@date,',', /ExchangeRate/@rate, ',','true')
concat(/ExchangeRate/@currency, ",", /ExchangeRate/@date, ",", /ExchangeRate/@rate, ",true")
Regards:
Navin
Hi Pierrie,
I had tried running the XSL transform , i tired without using the call template output message available for next atom ,but when i include this call template .
<xsl:attribute name="date">
<xsl:call-template name="b1ilib.strgReplace">
<xsl:with-param name="subs" select="'.'"></xsl:with-param>
<xsl:with-param name="var" select="'-'"></xsl:with-param>
<xsl:with-param name="wstrg" select="../@time"></xsl:with-param>
</xsl:call-template>
</xsl:attribute>
following error message accurs
com.sap.b1i.utilities.UtilException: UTE001 Nested exception: com.sap.engine.lib.xml.util.NestedException: Transformer: Could not find specified template in xsl:call-template 'b1ilib.strgReplace'.
Still i hadnt included the B1 function in the process.
Regards:
Navin
Hello Pierre,
in your post from Apr 26, 2016 10:23 AM you mentioned under point 3 that you needed to add <xsl:include href="../../com.sap.b1i.system.lib/xsl/string.xsl" /> in atom 6 because it is calling b1iib.strgReplace. But in your initial blog the predecessor for your 'for-each' is atom 7. I'm a little confused where exactly you have added this because right now I get this process flow error message regarding strgReplace.
(com.sap.b1i.utilities.UtilException: UTE001 Nested exception: com.sap.engine.lib.xml.util.NestedException: Transformer: Could not find specified template in xsl:call-template 'b1ilib.strgReplace)
I simply added it within the transform template in the predecessor atom of 'for-each' but it looks like that this is wrong. Please give me an advice where to add this string.
Thanks in advance!
Regards
Thomas
User | Count |
---|---|
88 | |
7 | |
6 | |
4 | |
3 | |
3 | |
3 | |
3 | |
3 | |
2 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.