Dear Experts,
I use a transformation template that is generated from the proxy object of PI (Sproxy > Show Transformation) to generate XML file from internal table (by using the CALL TRANSFORMATION statement).
This transformation is working fine in DEV & QA. But in one of our testing environment, which is copied from production environment. The program ended in shortdump in that environment with the following error message:
The reason for the exception is: The value "1.0" is not within the value range of the XML schema type "decimal"
This is the line of code in the transformation program that caused the dump:
<tt:cond-var check="_C_NIL!='2'">
<tt:value xsd-type="decimal" xsd-maxInclusive="1.00" xsd-minInclusive="0.00" xsd-totalDigits="3" xsd:xsd-fractionDigits="2"/>
</tt:cond-var>
When I debugged the program, the value is actually "1.00", exactly the same value that causes no dump in DEV & QA even though the program has no different all the 3 environments.
I spent some time checking this, including trying the solution in Note 1651794, but the issue is not solved. Until then I'm not sure what I did that when clicking the Show Transformation button in Sproxy, SAP re-compiling the template and re-generated the program.
The line of code in the transformation program changed into this one:
<tt:cond-var check="_C_NIL!='2'">
<tt:value/>
</tt:cond-var>
No more validation in the value, and now it works.
What I want to ask is that, why is the behavior is different in different environment even though the data and the program are the same? How to trigger SAP to re-generate the transformation program?
Thank you.
Regards,
Suwandi C.