Using XML Transformations in CR Runtime or Viewer

Using Crystal Reports 2008 I have created a report and written an XML Transformation to export the report when it's been run.  When I select the Export function I'm asked:
   1. The Format (XML) and Destination (Disk File)
   2. To choose and XML exporting format (my transformation)
   3. The export file name
The file is then created
The report is then made available to my users via the Crystal Report Runtime.  When they run the report the expected report is displayed, however, when they try to export although they can select the XML format they cannot select the destination or the XML exporting format.  The XML file that is created is empty, i.e. it has no content.
I've also looked at using the Crystal Reports Viewer but this can't even export to XML.
How can I enable them to select the destination and XML export format without providing them with the full Crystal Reports?

Hi Colin,
Your developer can fin samples here: http://wiki.sdn.sap.com/wiki/display/BOBJ/CrystalReportsSDKSampleApplications
And if he posts and searches on the SDK forum he'll find samples also.
Don

Similar Messages

  • Need advice on using XML transformation tags in a JSF page

    Hello,
    I have created a connection to the National Weather Web service that return data in a XML string. I want to transform this string with XSLT but I'm not sure which tag library to use that is compatible with ADF.
    Thanks

    OC4J XML Taglib
    http://www.oracle.com/webapps/online-help/jdeveloper/10.1.3/state/content/navId.4/navSetId._/vtAnchor.1005726/vtTopicFile.developing_with_ojsp%7Cxmlxsl%7Ehtml/

  • XML transformation using XSLT and Resin 2.1.11

    I have the following problem:
    I'm using a servlet to transform the xml files in my web-app to html. The servlet caches the ones transformed results. For each request it checks if there exists a cached result and if the result is based on the most actual xml file version (checking the "lastModified" method of java.io.File that represents the requested file).
    This servlet works fine and without any errors.
    My web-app also has some other servlets that use the xml transformation to generate a fragment of html code (the menu structure of my "normal" servlets is defined in one xml file for all other files and servlets).
    After invoking these servlets (those that use the xml transformation to create their menu) the first described servlet (transformation of requested xml files) is not working "fine" any longer. All it results is the generated header and footer of the page (hard-coded in the XSL file). The complete content is lost.
    Any ideas how to solve this problem?
    Thanks in advance,
    Thof

    1. The cache:
    The Hashtable is a field of my servlet called XMLTransformerServlet. The cache is not removed or deleted and none of its items is removed or deleted.
    As I said: Caching works fine, wonderful, perfectly...
    That's definitively not the problem.
    2. Thread safety:
    I've made all my servlet methods thread safe (just checked this...)
    3. About the "anonymous" other servlet type that uses xml transformations:
    Some of my servlets use a (thread safe) method to generate a fragment of html code that will show a simple menu structure. Therefore my web-app uses a file called menu.xml - by that way there's only one menu to maintain what makes sure that all my pages get the same menu structure (finally also the xsl file I'm using for "normal" xml transformation imports/includes and interprets this menu.xml).
    The (thread safe) method has transforms the menu.xml file using a special xsl file (menu.xsl) and outputs the result to a StringWriter. From this StringWriter I obtain the code-fragment that will be returned by the method.
    Before I saw the class StringWriter the first time I've used a temporary file to output the transformation result. Next I red in the file and returned its content.
    Finally - this method is working fine and it's always returning the expected data.
    4. The problem:
    Sorry for repeating this all the time...
    What I'm processing:
     - requesting some xml files -> XMLTransformerServlet is invoked and works fine:
       -> doGet checks the resource (if resource doesn't exist HTTP404 will be responded)
       -> doGet checks the caching state for this resource
          a) resource is in cache and no newer version of the File exists -> return cached element
          b) resource is in cache but a newer version exists in the file system -> recache and return newly cached element
          c) resource is not in cache -> cache the resource and return the newly cached element
     - requesting one of the other servlets (those that use xml transformation for menu generation)
       -> servlets invoked work fine
     - requesting a xml file:
       a) current version in cache -> return cached element
       b) no current version in cache -> transform the xml file and cache it
    This last transformation of the requested xml file fails.
    It is not failing in the sense of "throwing an exception"... it seems to work 100% fine and results a String that could be responded to the browser.
    But stupidly it is not working fine...
    Maybe (as you wrote) this is a bug (maybe in Resins xml transformation api).
    Just thought someone else might have made a similar experience...

  • Data from two tables in the same row in XML transformation

    Hi,
        I am using XML transformation for generating excel file which is to besent as email attachment.
        Here  I want to display the data from two internal tables in the same row in the excel. .I am using   <tt:loop ref=".<table name>"> ...  </tt:loop> for looping through the table. Can I loop two table simultaneously ? In that case how will I specify the fields in each table . Some of the fields in two tables are of same name and type.
    Please help...
    Thanks,
    Jissa

    Hello Brian,
    Thank you for your answer. It is approach I will use, I think. However let me ask: Would it be possible to have a Version in this layout, too? I mean to see, which value comes from Version A and which comes from Version B? Something like this:
    Calendar Month Version Sales Amount
    2011.01  B  200
    2011.02  B  300
    2011.03  A  260
    2011.04  A  230
    2011.05  A  200
    A

  • The XML page cannot be displayed Cannot view XML input using XSL stylesheet

    Hi Oracle Gurus,
    I got this error ...once i have submitted request it shows warning ..I opened output it shows the below error...i cant understand how to resolve this error...Please help me...It is PL/SQ L STORED PROCEDURE CODE...
    The XML page cannot be displayed
    Cannot view XML input using XSL style sheet. Please correct the error and then click the Refresh button, or try again later.
    A semi colon character was expected. Error processing resource 'http://orappsus64.tsindia.in:8009/OA_CGI/FNDWRR.exe?temp_id...
    <CP_PROJECT>IT/Quintiles/J&J COGNOS</CP_PROJECT>
    ----------------------------^
    n-left:1em;text-indent:-2em"> <GL_MAIN_PERIOD>Jun-12</GL_MAIN_PERIOD>
    <TOTAL_REVENUE>4026.14</TOTAL_REVENUE>
    <GL_PERIOD>Jun-12</GL_PERIOD>
    </G_TOTAL_REVENUE_CAT>
    THIS IS MY LOG FILE
    [10/1/12 10:44:26 AM] [main] Starting GSF service with concurrent process id = 157635.
    [10/1/12 10:44:26 AM] [main] Initialization Parameters: oracle.apps.fnd.cp.opp.OPPServiceThread:2:0:max_threads=5
    [10/1/12 10:44:26 AM] [Thread-22] Service thread starting up.
    [10/1/12 10:44:26 AM] [Thread-23] Service thread starting up.
    [10/1/12 10:52:33 AM] [OPPServiceThread1] Post-processing request 1296337.
    [10/1/12 10:52:33 AM] [157635:RT1296337] Executing post-processing actions for request 1296337.
    [10/1/12 10:52:34 AM] [157635:RT1296337] Starting XML Publisher post-processing action.
    [10/1/12 10:52:34 AM] [157635:RT1296337]
    Template code: XXTGSCPR004
    Template app: PA
    Language: en
    Territory: US
    Output type: EXCEL
    [100112_105234216][][EXCEPTION] [DEBUG] ------- Preferences defined PreferenceStore -------
    [100112_105234216][][EXCEPTION] [DEBUG] ------- Environment variables stored in EnvironmentStore -------
    [100112_105234216][][EXCEPTION] [DEBUG] [FND_JDBC_IDLE_THRESHOLD.LOW]:[-1]
    [100112_105234216][][EXCEPTION] [DEBUG] [SECURITY_GROUP_ID]:[0]
    [100112_105234216][][EXCEPTION] [DEBUG] [FND_JDBC_BUFFER_DECAY_INTERVAL]:[300]
    [100112_105234217][][EXCEPTION] [DEBUG] [NLS_CHARACTERSET]:[US7ASCII]
    [100112_105234217][][EXCEPTION] [DEBUG] [RESP_APPL_ID]:[-1]
    [100112_105234217][][EXCEPTION] [DEBUG] [NLS_LANGUAGE]:[AMERICAN]
    [100112_105234217][][EXCEPTION] [DEBUG] [FND_JDBC_BUFFER_MIN]:[1]
    [100112_105234217][][EXCEPTION] [DEBUG] [FND_JDBC_BUFFER_MAX]:[2]
    [100112_105234217][][EXCEPTION] [DEBUG] [NLS_NUMERIC_CHARACTERS]:[.,]
    [100112_105234217][][EXCEPTION] [DEBUG] [APPS_JDBC_URL]:[jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(LOAD_BALANCE=YES)(FAILOVER=YES)(ADDRESS=(PROTOCOL=tcp)(HOST=orappsus64.tsindia.in)(PORT=1530)))(CONNECT_DATA=(SID=clone)))]
    [100112_105234217][][EXCEPTION] [DEBUG] [RESP_ID]:[-1]
    [100112_105234217][][EXCEPTION] [DEBUG] [FND_MAX_JDBC_CONNECTIONS]:[500]
    [100112_105234217][][EXCEPTION] [DEBUG] [FND_JDBC_USABLE_CHECK]:[false]
    [100112_105234218][][EXCEPTION] [DEBUG] [USER_ID]:[-1]
    [100112_105234218][][EXCEPTION] [DEBUG] [NLS_TERRITORY]:[AMERICA]
    [100112_105234218][][EXCEPTION] [DEBUG] [FND_JDBC_PLSQL_RESET]:[false]
    [100112_105234218][][EXCEPTION] [DEBUG] [FND_JDBC_CONTEXT_CHECK]:[true]
    [100112_105234218][][EXCEPTION] [DEBUG] [NLS_DATE_FORMAT]:[DD-MON-RR]
    [100112_105234218][][EXCEPTION] [DEBUG] [FND_JDBC_BUFFER_DECAY_SIZE]:[5]
    [100112_105234218][][EXCEPTION] [DEBUG] [FND_JDBC_IDLE_THRESHOLD.HIGH]:[-1]
    [100112_105234218][][EXCEPTION] [DEBUG] [NLS_SORT]:[BINARY]
    [100112_105234218][][EXCEPTION] [DEBUG] [NLS_DATE_LANGUAGE]:[AMERICAN]
    [100112_105234218][][EXCEPTION] [DEBUG] [LOGIN_ID]:[-1]
    [100112_105234218][][EXCEPTION] [DEBUG] ------- Properties stored in Java System Properties -------
    [100112_105234219][][EXCEPTION] [DEBUG] [APPLTMP]:[AP1/oracle/PROD01/inst/apps/clone_orappsus64/appltmp]
    [100112_105234219][][EXCEPTION] [DEBUG] [java.runtime.name]:[Java(TM) SE Runtime Environment]
    [100112_105234219][][EXCEPTION] [DEBUG] [sun.boot.library.path]:[AP1/oracle/PROD01/apps/tech_st/10.1.3/appsutil/jdk/jre/lib/i386]
    [100112_105234219][][EXCEPTION] [DEBUG] [java.vm.version]:[11.0-b15]
    [100112_105234219][][EXCEPTION] [DEBUG] [OVERRIDE_DBC]:[true]
    [100112_105234219][][EXCEPTION] [DEBUG] [dbcfile]:[AP1/oracle/PROD01/inst/apps/clone_orappsus64/appl/fnd/12.0.0/secure/clone.dbc]
    [100112_105234219][][EXCEPTION] [DEBUG] [java.vm.vendor]:[Sun Microsystems Inc.]
    [100112_105234219][][EXCEPTION] [DEBUG] [java.vendor.url]:[http://java.sun.com/]
    [100112_105234219][][EXCEPTION] [DEBUG] [path.separator]:[:]
    [100112_105234219][][EXCEPTION] [DEBUG] [APPLCSF]:[AP1/oracle/PROD01/inst/apps/clone_orappsus64/logs/appl/conc]
    [100112_105234220][][EXCEPTION] [DEBUG] [java.vm.name]:[Java HotSpot(TM) Server VM]
    [100112_105234220][][EXCEPTION] [DEBUG] [file.encoding.pkg]:[sun.io]
    [100112_105234220][][EXCEPTION] [DEBUG] [sun.java.launcher]:[SUN_STANDARD]
    [100112_105234220][][EXCEPTION] [DEBUG] [user.country]:[US]
    [100112_105234220][][EXCEPTION] [DEBUG] [sun.os.patch.level]:[unknown]
    [100112_105234220][][EXCEPTION] [DEBUG] [java.vm.specification.name]:[Java Virtual Machine Specification]
    [100112_105234220][][EXCEPTION] [DEBUG] [user.dir]:[AP1/oracle/PROD01/inst/apps/clone_orappsus64/logs/appl/conc/log]
    [100112_105234220][][EXCEPTION] [DEBUG] [java.runtime.version]:[1.6.0_10-b33]
    [100112_105234220][][EXCEPTION] [DEBUG] [CLIENT_PROCESSID]:[25943]
    [100112_105234220][][EXCEPTION] [DEBUG] [java.awt.graphicsenv]:[sun.awt.X11GraphicsEnvironment]
    [100112_105234220][][EXCEPTION] [DEBUG] [java.endorsed.dirs]:[AP1/oracle/PROD01/apps/tech_st/10.1.3/appsutil/jdk/jre/lib/endorsed]
    [100112_105234221][][EXCEPTION] [DEBUG] [os.arch]:[i386]
    [100112_105234221][][EXCEPTION] [DEBUG] [JTFDBCFILE]:[AP1/oracle/PROD01/inst/apps/clone_orappsus64/appl/fnd/12.0.0/secure/clone.dbc]
    [100112_105234221][][EXCEPTION] [DEBUG] [java.io.tmpdir]:[tmp]
    [100112_105234221][][EXCEPTION] [DEBUG] [line.separator]:[
    [100112_105234221][][EXCEPTION] [DEBUG] [java.vm.specification.vendor]:[Sun Microsystems Inc.]
    [100112_105234221][][EXCEPTION] [DEBUG] [os.name]:[Linux]
    [100112_105234221][][EXCEPTION] [DEBUG] [FND_JDBC_BUFFER_MIN]:[1]
    [100112_105234221][][EXCEPTION] [DEBUG] [cpid]:[157635]
    [100112_105234221][][EXCEPTION] [DEBUG] [sun.jnu.encoding]:[UTF-8]
    [100112_105234221][][EXCEPTION] [DEBUG] [oracle.apps.fnd.common.Pool.leak.mode]:[stderr:off]
    [100112_105234221][][EXCEPTION] [DEBUG] [java.library.path]:[AP1/oracle/PROD01/apps/tech_st/10.1.3/appsutil/jdk/jre/lib/i386/server:/AP1/oracle/PROD01/apps/tech_st/10.1.3/appsutil/jdk/jre/lib/i386:/AP1/oracle/PROD01/apps/tech_st/10.1.3/appsutil/jdk/jre/../lib/i386:/AP1/oracle/PROD01/apps/tech_st/10.1.3/lib32:/AP1/oracle/PROD01/apps/tech_st/10.1.3/lib:/AP1/oracle/PROD01/apps/apps_st/appl/cz/12.0.0/bin:/AP1/oracle/PROD01/apps/apps_st/appl/iby/12.0.0/bin:/AP1/oracle/PROD01/apps/apps_st/appl/pon/12.0.0/bin:/AP1/oracle/PROD01/apps/apps_st/appl/sht/12.0.0/lib:/usr/java/packages/lib/i386:/lib:/usr/lib]
    [100112_105234222][][EXCEPTION] [DEBUG] [java.specification.name]:[Java Platform API Specification]
    [100112_105234222][][EXCEPTION] [DEBUG] [java.class.version]:[50.0]
    [100112_105234222][][EXCEPTION] [DEBUG] [sun.management.compiler]:[HotSpot Tiered Compilers]
    [100112_105234222][][EXCEPTION] [DEBUG] [queue_appl_id]:[0]
    [100112_105234222][][EXCEPTION] [DEBUG] [os.version]:[2.6.18-128.el5]
    [100112_105234222][][EXCEPTION] [DEBUG] [LONG_RUNNING_JVM]:[true]
    [100112_105234222][][EXCEPTION] [DEBUG] [user.home]:[home/applmgr01]
    [100112_105234222][][EXCEPTION] [DEBUG] [user.timezone]:[Asia/Kolkata]
    [100112_105234222][][EXCEPTION] [DEBUG] [java.awt.printerjob]:[sun.print.PSPrinterJob]
    [100112_105234222][][EXCEPTION] [DEBUG] [file.encoding]:[UTF-8]
    [100112_105234222][][EXCEPTION] [DEBUG] [java.specification.version]:[1.6]
    [100112_105234222][][EXCEPTION] [DEBUG] [CACHEMODE]:[DISTRIBUTED]
    [100112_105234222][][EXCEPTION] [DEBUG] [conc_queue_id]:[6269]
    [100112_105234222][][EXCEPTION] [DEBUG] [java.class.path]:[AP1/oracle/PROD01/apps/tech_st/10.1.3/appsutil/jdk/lib/dt.jar:/AP1/oracle/PROD01/apps/tech_st/10.1.3/appsutil/jdk/lib/tools.jar:/AP1/oracle/PROD01/apps/tech_st/10.1.3/appsutil/jdk/jre/lib/rt.jar:/AP1/oracle/PROD01/apps/apps_st/comn/java/lib/appsborg2.zip:/AP1/oracle/PROD01/apps/apps_st/comn/java/classes]
    [100112_105234222][][EXCEPTION] [DEBUG] [user.name]:[applmgr01]
    [100112_105234222][][EXCEPTION] [DEBUG] [DBCFILE]:[AP1/oracle/PROD01/inst/apps/clone_orappsus64/appl/fnd/12.0.0/secure/clone.dbc]
    [100112_105234222][][EXCEPTION] [DEBUG] [java.vm.specification.version]:[1.0]
    [100112_105234222][][EXCEPTION] [DEBUG] [java.home]:[AP1/oracle/PROD01/apps/tech_st/10.1.3/appsutil/jdk/jre]
    [100112_105234222][][EXCEPTION] [DEBUG] [sun.arch.data.model]:[32]
    [100112_105234223][][EXCEPTION] [DEBUG] [user.language]:[en]
    [100112_105234223][][EXCEPTION] [DEBUG] [java.specification.vendor]:[Sun Microsystems Inc.]
    [100112_105234223][][EXCEPTION] [DEBUG] [java.vm.info]:[mixed mode]
    [100112_105234223][][EXCEPTION] [DEBUG] [logfile]:[AP1/oracle/PROD01/inst/apps/clone_orappsus64/logs/appl/conc/log/FNDOPP157635.txt]
    [100112_105234223][][EXCEPTION] [DEBUG] [java.version]:[1.6.0_10]
    [100112_105234223][][EXCEPTION] [DEBUG] [java.ext.dirs]:[AP1/oracle/PROD01/apps/tech_st/10.1.3/appsutil/jdk/jre/lib/ext:/usr/java/packages/lib/ext]
    [100112_105234223][][EXCEPTION] [DEBUG] [sun.boot.class.path]:[AP1/oracle/PROD01/apps/tech_st/10.1.3/appsutil/jdk/jre/lib/resources.jar:/AP1/oracle/PROD01/apps/tech_st/10.1.3/appsutil/jdk/jre/lib/rt.jar:/AP1/oracle/PROD01/apps/tech_st/10.1.3/appsutil/jdk/jre/lib/sunrsasign.jar:/AP1/oracle/PROD01/apps/tech_st/10.1.3/appsutil/jdk/jre/lib/jsse.jar:/AP1/oracle/PROD01/apps/tech_st/10.1.3/appsutil/jdk/jre/lib/jce.jar:/AP1/oracle/PROD01/apps/tech_st/10.1.3/appsutil/jdk/jre/lib/charsets.jar:/AP1/oracle/PROD01/apps/tech_st/10.1.3/appsutil/jdk/jre/classes]
    [100112_105234223][][EXCEPTION] [DEBUG] [java.vendor]:[Sun Microsystems Inc.]
    [100112_105234223][][EXCEPTION] [DEBUG] [FND_JDBC_BUFFER_MAX]:[2]
    [100112_105234223][][EXCEPTION] [DEBUG] [file.separator]:[]
    [100112_105234223][][EXCEPTION] [DEBUG] [java.vendor.url.bug]:[http://java.sun.com/cgi-bin/bugreport.cgi]
    [100112_105234223][][EXCEPTION] [DEBUG] [sun.io.unicode.encoding]:[UnicodeLittle]
    [100112_105234223][][EXCEPTION] [DEBUG] [sun.cpu.endian]:[little]
    [100112_105234223][][EXCEPTION] [DEBUG] [APPLOUT]:[out]
    [100112_105234223][][EXCEPTION] [DEBUG] [sun.cpu.isalist]:[]
    [10/1/12 10:52:35 AM] [UNEXPECTED] [157635:RT1296337] java.lang.reflect.InvocationTargetException
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:597)
         at oracle.apps.xdo.common.xml.XSLT10gR1.invokeParse(XSLT10gR1.java:517)
         at oracle.apps.xdo.common.xml.XSLT10gR1.transform(XSLT10gR1.java:224)
         at oracle.apps.xdo.common.xml.XSLTWrapper.transform(XSLTWrapper.java:177)
         at oracle.apps.xdo.template.fo.util.FOUtility.generateFO(FOUtility.java:1044)
         at oracle.apps.xdo.template.fo.util.FOUtility.generateFO(FOUtility.java:997)
         at oracle.apps.xdo.template.fo.util.FOUtility.generateFO(FOUtility.java:212)
         at oracle.apps.xdo.template.FOProcessor.createFO(FOProcessor.java:1665)
         at oracle.apps.xdo.template.FOProcessor.generate(FOProcessor.java:975)
         at oracle.apps.xdo.oa.schema.server.TemplateHelper.runProcessTemplate(TemplateHelper.java:5936)
         at oracle.apps.xdo.oa.schema.server.TemplateHelper.processTemplate(TemplateHelper.java:3459)
         at oracle.apps.xdo.oa.schema.server.TemplateHelper.processTemplate(TemplateHelper.java:3548)
         at oracle.apps.fnd.cp.opp.XMLPublisherProcessor.process(XMLPublisherProcessor.java:285)
         at oracle.apps.fnd.cp.opp.OPPRequestThread.run(OPPRequestThread.java:173)
    Caused by: oracle.xdo.parser.v2.XMLParseException: Expected ';'.
         at oracle.xdo.parser.v2.XMLError.flushErrors1(XMLError.java:337)
         at oracle.xdo.parser.v2.NonValidatingParser.parseDocument(NonValidatingParser.java:305)
         at oracle.xdo.parser.v2.XMLParser.parse(XMLParser.java:289)
         ... 17 more
    [10/1/12 10:52:35 AM] [157635:RT1296337] Completed post-processing actions for request 1296337.
    [GC 8059K->6286K(8692K), 0.0076290 secs]
    [Full GC[Unloading class sun.reflect.GeneratedSerializationConstructorAccessor17]
    [Unloading class sun.reflect.GeneratedSerializationConstructorAccessor19]
    [Unloading class sun.reflect.GeneratedSerializationConstructorAccessor18]
    [Unloading class sun.reflect.GeneratedSerializationConstructorAccessor13]
    6286K->3865K(8692K), 0.0446370 secs]
    Please help great appriciation.
    Thanks,
    Sidharth.

    A semi colon character was expected. Error processing resource 'http://orappsus64.tsindia.in:8009/OA_CGI/FNDWRR.exe?temp_id...
    <CP_PROJECT>IT/Quintiles/J&J COGNOS</CP_PROJECT>
    ----------------------------^
    n-left:1em;text-indent:-2em">   <GL_MAIN_PERIOD>Jun-12</GL_MAIN_PERIOD>
      <TOTAL_REVENUE>4026.14</TOTAL_REVENUE>
      <GL_PERIOD>Jun-12</GL_PERIOD>
      </G_TOTAL_REVENUE_CAT>
    {code}
    Your PL/SQL code doesn't produce a valid XML document.
    In the XML grammar, "&" is a special character and must be escaped using the character entity "&#38;amp;".
    If you were using standard methods to build XML from Oracle (SQL/XML functions for instance), I'm sure you wouldn't have this error.
    Please show us the PL/SQL code you're using to produce this XML output and we'll be able to help you further.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

  • XML to Nested Itab using Simple Transformation

    Hi there is there any experts there who can show me an example of Transforming a XML to a Nested Internal Table using Simple Transformation?
    I have tried this the program from the blog by
    Tobias Trapp
    <a href="/people/tobias.trapp/blog/2005/05/04/xml-processing-in-abap-part-1:///people/tobias.trapp/blog/2005/05/04/xml-processing-in-abap-part-1
    but I have encountered this error
    Runtime Errors         ST_REF_ACCESS   
    Exception              CX_ST_REF_ACCESS
       1 <?sap.transform simple?>                                    
       2 <tt:transform template="temp1"                              
       3     xmlns:tt="http://www.sap.com/transformation-templates"> 
       4     <tt:root name="ROOT"/>                                  
       5     <tt:template name="temp1">                              
    >>>>       <tt:loop ref=".ROOT" name="a">                        
       7         <A>                                                 
       8            <name>                                           
       9              <tt:value ref="$a.name" />                     
      10            </name>                                          
      11            <ZLS>                                            
      12              <tt:loop ref="$a.zls" name="z">                
      13                <Z>                                          
      14                  <tt:value ref="$z.nummer" />               
      15                </Z>                                         
      16             </tt:loop>                                      
      17           </ZLS>                                            
      18         </A>                                                
      19       </tt:loop>                                            
      20     </tt:template>                                          
      21 </tt:transform>                                             
    Anyone knows whats wrong?

    I had to pass an XSLT program in the transformation statement.

  • XML page cannot be displayed cannot view XML input using XSL style sheet Please correct the error and then click the REfresh

    XML page cannot be displayed cannot view XML input using XSL style sheet Please correct the error and then click the REfresh

    Is the error message displayed in Firefox or in IE, or in a customized window that doesn't identify the browser?
    ''If it displays in Firefox:''
    It's possible that the Troubleshooter doesn't work correctly unless IE is your default browser. You could test that possibility by having IE make itself the default and testing the Troubleshooter again.
    ''If it displays in IE or embedded in another Microsoft application:''
    In a web search I found these suggestions:
    (1) Reset your Internet Explorer settings, according to http://answers.microsoft.com/en-us/ie/forum/ie8-windows_7/cannot-view-xml-using-xsl-style-sheet/ccfe80c6-c0db-4594-a7e3-475f9eac0e85
    (2) Try the System File Checker, according to http://ask-leo.com/why_do_i_get_the_xml_page_cannot_be_displayed_after_running_a_microsoft_troubleshooter.html
    Any luck?

  • Creating XML file Using Call Transformation

    Hello Friends,
          I have searched before posting thread, couldnt find anything.
          I am creating an XML file using Call Transformation. My internal table has 3 date fields and some other fields.  For some records I dont have values for the date fields. In that case my XML file is giving the date value as 0000-00-00 since I declared it as Date type.  This value 0000-00-00  is not accepted by the middle ware as the valid date.  I can not change it as String type as per the suggestion.
    In that case I am advised to skip printing the date field tag if it doesnt have value.
         Is there any way to skip the date field if it is empty. Any Suggestions please ?.
    Thanks
    Lakshmi.

    Hi,
    I had exactly the same problem before. When you call a transformation there is an option called initial_components. According to SAP if you use initial_components = 'SUPRESS' the empty fields should not being generated on the XML.
    Now, this didn't work for me and I have seen some people with the same problem. Here is how I solved this (maybe not the best way but it worked):
    First: My fields are all CHAR in my table
    Second: In the transformation, you can use conditional transformation to not display a tag if field is empty, here a piece of my transformation (I am using simple transformations):
       <tt:root name="ROOT"/>
         <tt:cond s-check="not-initial(ref('ROOT.L1_NM')) or not-initial(ref('ROOT.L2_NM'))">
              <TRNMTR_NM>
                <tt:cond s-check="not-initial(ref('ROOT.L1_NM'))">
                  <l1_nm>
                    <tt:value ref="ROOT.L1_NM"/>
                  </l1_nm>
                </tt:cond>
                <tt:cond s-check="not-initial(ref('ROOT.L2_NM'))">
                  <l2_nm>
                    <tt:value ref="ROOT.L2_NM"/>
                  </l2_nm>
                </tt:cond>
              </TRNMTR_NM>
            </tt:cond>
    As you can see, I first check if the fields have values.
    Hope it helps
    Edited by: carlosrv on Oct 4, 2011 8:22 PM

  • Convertion of String to XML node using Xquery transformation in OSB

    How to convert string to XML node elementusing a built in function using Xquery transformation in OSB?

    check this out - http://www.javamonamour.org/2011/06/fn-beainlinedxml.html
    if in SOA (BPEL & Mediator) you can use oraext:parseXML.
    you should thoroughly analyse where to implement your requirement as some good practices advise to implement more complex logic in SOA and leave OSB to only connect to the services' endpoints.
    Hope this helps,
    A.

  • Dynamic binding of items in sap.m.Table using XML views

    Dear SAPUI5 guru's,
    Let's start by saying I'm an ABAP developer who's exploring SAPUI5, so I'm still a rookie at the time of writing. I challenged myself by developing a simple UI5 app that shows information about my colleagues like name, a pic, address data and their skills. The app uses the sap.m library and most of the views are XML based which I prefer.
    The data is stored on an ABAP system and exposed via a gateway service. This service has 2 entities: Employee and Skill. Each employee can have 0..n skills and association/navigation between these 2 entities is set up correctly in the service. The data of this service is fetched from within the app using a sap.ui.model.odata.ODataModel model.
    The app uses the splitApp control which shows the list of employees on the left side (master view). If a user taps an employee, the corresponding details of the employee entity are shown on the right (detail view).
    Up till here everything is fine but I've been struggling with my latest requirement which is: show the skills of the selected employee in a separate XML view when the user performs an action (for the time being, I just created a button on the detail view to perform the action). After some hours I actually got it working but I doubt if my solution is the right way to go. And that's why I'm asking for your opinion here.
    Let's explain how I got things working. First of all I created a new XML view called 'Skills'. The content on this view is currently just a Table with 2 columns:
    <core:View xmlns:core="sap.ui.core" xmlns:mvc="sap.ui.core.mvc" xmlns="sap.m"
      controllerName="com.pyramid.Skills" xmlns:html="http://www.w3.org/1999/xhtml">
      <Page title="Skills"
           showNavButton="true"
           navButtonPress="handleNavButtonPress">
      <content>
      <Table
       id="skillsTable">
      <columns>
      <Column>
      <Label text="Name"/>
      </Column>
      <Column>
      <Label text="Rating"/>
      </Column>
      </columns>
      </Table>
      </content>
      </Page>
    </core:View>
    The button on the Detail view calls function showSkills:
    showSkills: function(evt) {
      var context = evt.getSource().getBindingContext();
      this.nav.to("Skills", context);
      var skillsController = this.nav.getView().app.getPage("Skills").getController();
      skillsController.updateTableBinding();
    Within 'this.nav.to("Skills", context);' I add the Skills view to the splitApp and set its bindingContext to the current binding context (e.g. "EmployeeSet('000001')"). Then I call function updateTableBinding in the controller of the Skills view which dynamically binds the items in the table based on the selected employee. So, when the ID of the selected employee is '000001', the path of the table's item binding should be "/EmployeeSet('000001')/Skills"
    updateTableBinding: function(){
      var oTemplate = new sap.m.ColumnListItem(
      {cells: [
              new sap.m.Text({text : "{Name}"}),
              new sap.m.Text({text : "{Rating}"})
      var oView = this.getView();
      var oTable = oView.byId("skillsTable");
      var oContext = oView.getBindingContext();
      var path = oContext.sPath + "/Skills";
      oTable.bindItems(path, oTemplate);
    Allthough it works fine, this is where I have my first doubt. Is this the correct way to bind the items? I tried to change the context that is passed to this.nav.to and wanted it to 'drill-down' one level, from Employee to Skills, but I couldn't manage to do that.
    I also tried to bind using the items aggregation of the table within the XML declaration (<Table id="skillsTable" items="{/EmployeeSet('000001')/Skills}">). This works fine if I hard-code the employee ID but off course this ID needs to be dynamic.
    Any better suggestions?
    The second doubt is about the template parameter passed to the bindItems method. This template is declared in the controller via javascript. But I'm using XML views! So why should I declare any content in javascript?? I tried to declare the template in the XML view itself by adding an items tag with a ColumnListItem that has an ID:
                    <items>
                        <ColumnListItem
                        id="defaultItem">
                        <cells>
                            <Text text="{Name}"/>
                            </cells>
                            <cells>
                            <Text text="{Rating}"/>
                            </cells>
                        </ColumnListItem>
                    </items>
    Then, in the updateTableBinding function, I fetched this control (by ID), and passed it as the template parameter to the bindItems method. In this case the table shows a few lines but they don't contain any data and their height is only like 1 mm! Does anyone know where this strange behaviour comes from or what I'm doing wrong?
    I hope I explained my doubts clearly enough. If not, let me know which additional info is required.
    Looking forward to your opinions/suggestions,
    Rudy Clement.

    Hi everybody,
    I found this post by searching for a dynamic binding for well acutally not the same situation but it's similar to it. I'm trying to do the following. I'm having a list where you can create an order. On the bottom of the page you'll find a button with which you're able to create another order. All the fields are set to the same data binding ... so the problem is if you've filled in the values for the first order and you'll press the button you'll get the same values in the second order. Is it possible to generate a dynamic binding?
    I'm going to post you a short code of what I'm meaning:
    <Input type="Text" value="{path: 'MyModel>/Order/0/Field1'}" id="field1">
         <layoutData>
                    <l:GridData span="L11 M7 S3"></l:GridData>
               </layoutData>
    </Input>
    As you can see I need to set the point of "0" to a dynamic number. Is there any possibility to reach this???
    Hope you can help
    Greetings
    Stef

  • XML Transformation using XSLT

    Hi,
    I have a scenario where I need to perform an XML to XML transformation and I need to do this using XSLT mapping.
    I am using XMLSpy.
    Could somebody help me on this issue?Any weblogs that can help me on this?
    regards,
    Prashanth

    Hi Prashanth,
    You can do the xsl transformation in XMLSpy itself.First create your source xml file in XMLSpy by selecting file type as xml.After that create your xslt program file by selecting file type as xslt.
    Then you can use the xslt program for transformation of source xml into target xml by choosing menu XSL/XQuery->XSL Transformation.
    sample xsl code for an example:
    source xml structure:
    <?xml version="1.0" encoding="UTF-8"?>
    <root>
         <header>
              <detail>
    Detail1
    </detail>
              <detail>
    Detail2
    </detail>
         </header>
         <header>
              <detail>
    Detail3
    </detail>
         </header>
    </root>
    xsl program:
    <xsl:stylesheet version = '1.0'
         xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>
    <xsl:template match="/">
         <root>
         <xsl:for-each select="//header">
               <idoc>
                <xsl:for-each select="detail">
                    <detail>
                          <xsl:value-of select="."/>
                       </detail>
                       </xsl:for-each>
                   </idoc>
              </xsl:for-each>
         </root>
    </xsl:template>
    </xsl:stylesheet>
    target xml structure:
    <?xml version="1.0" encoding="UTF-8"?>
    <root>
         <idoc>
              <detail>
    Detail1
    </detail>
              <detail>
    Detail2
    </detail>
         </idoc>
         <idoc>
              <detail>
    Detail3
    </detail>
         </idoc>
    </root>
    Hope this would help.
    Rgds
    Sudhakar.

  • Creating an XML From a Deep Structure  using XSL Transformation

    Hi ABAPers,
    I have a requirement to use XSL Transformations on an ABAP deep type structure.
    Currently i have an API that fills in this deep structure and by using CALL TRANSFORMATION ID.... i will get the BIG XML having having 100s of nodes . But actualy form the deep structure i need only some NODES (say 50)... So i tried writing an XSLT
    in the transaction STRANS.. but on using this TRANSFORMATION which i wrote i am getting an error messgae like INVALID XML...
    Am i going in right track or is there a good solution...
    My sample transformation is as below...
    <xsl:transform version="1.0"
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:strip-space elements="*"/>
    <xsl:template match="/">
    <xsl:value-of select="DATA/NODE_ELEMENTS/UUID_KEY/UUID"/>
    <xsl:value-of select="DATA/NODE_ELEMENTS/SEMANTICAL_NAME"/>
    <xsl:value-of select="DATA/NODE_ELEMENTS/STRUCT_CAT"/>
    <xsl:value-of select="DATA/NODE_ELEMENTS/USAGE_CAT"/>
    <xsl:value-of select="DATA/NODE_ELEMENTS/RESTRICTED_IND"/>
    <xsl:value-of select="VALUES/DATA/NODE_ID"/>.
    </xsl:template>
    </xsl:transform>
    Please help me in solving this issue....
    Thanks,
    Linda.

    Hi Linda,
        I am replying based on your sample code.
       Try the below following suggestions.
       here 'GRPHDR' is the node where I am selecting the data.
               IGRPHDR is the name of the reference.
    First calling the transformation in you program.
    TYPES: BEGIN OF tl_hdr,
               msgid(20)    TYPE c,
                 END OF tl_hdr.
    DATA : t_hdr           TYPE STANDARD TABLE OF tl_hdr.
      GET REFERENCE OF t_hdr INTO l_result_xml-value.
        l_result_xml-name = 'IGRPHDR'.
        APPEND l_result_xml TO t_result_xml.
       TRY.
            CALL TRANSFORMATION yfi_xml_read
            SOURCE XML it_xml_data
            RESULT (t_result_xml).
          CATCH cx_root INTO l_rif_ex.
            l_var_text = l_rif_ex->get_text( ).
            l_bapiret-type = 'E'.
            l_bapiret-message = l_var_text.
            APPEND l_bapiret TO errormsgs.
            EXIT.
        ENDTRY.
    in XSL transformation
       First write a block of statement to specify from which node you are taking the data.
       No matter it is a node or sub-node.
    <xsl:transform xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
      <xsl:output encoding="iso-8859-1" indent="yes" method="xml" version="1.0"/>
      <xsl:strip-space elements="*"/>
    <xsl:template match="/">
          <asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
          <asx:values>
            <IGRPHDR>  " reference name of internal table
              <xsl:apply-templates select="//GrpHdr"/>
            </IGRPHDR>
      </asx:values>
        </asx:abap>
    </xsl:template>
    Next select the data from the nodes under the nodes specified in the transformation.
    here msgid is the field i am selecting for value.
    <xsl:template match="GrpHdr">
        <item>
          <MSGID>  " field in the internal table t_hdr where data has to go
            <xsl:value-of select="MsgId"/>
          </MSGID>
        </item>
      </xsl:template>
    reply back if further clarification is needed.
    Thanks and regards,
    Kannan N

  • How to use 3rd party jar files for xml transform

    Hi all,
    Am using OAS9.0.4 and I deployed my .ear successfully.
    In my application am using 4 jar files for xml transformation. (xerces.jar, xalan.jar, xml-apis.jar,xercesImpl.jar)
    OAS has its own xmlparserv2.jar file. Its using this jar file for transforming xml data and not even looking for above mentioned 4 jar files.
    In opmn.xml, I provided these 4 jar files in to class path. Then also it didn't effect my output.
    I also tried as put these 4 jar files into j2ee\home\applib directory, but o result.
    Can anybody tell me where should I keep these 4 jar files in OAS and OAS should use these 4 jar files instead of its own xmlparserv2.jar for transforming data.
    Thanks in Anticipation,
    Regards,
    RK

    Add the Xbootclasspath variable in the java-options field. It will somewhat look like the following in your opmn.xml file
    <process-type id="<OC4J Instance Name>" module-id="OC4J">
    <module-data>
    <category id="start-parameters">
    <data id="java-options value="........... -Xbootclasspath^/a:<location of your jar files>" />
    Ensure to use th ^/a (append) signature
    Regards,
    Chirag

  • How to use a transformer xml to html

    hi
    I want to develop jsp pages based on xml data, so to construct components with xml data i must use a transformer converting xml to htm. so if there is a better or more generic solution of classes or examples that can help me , i tried to use cocoon but the problem was to use it within a jsp page.
    please to mail me your suggestions or solutions .
    thank you

    Review Xalan/Xerces from the Apache project.
    http://xml.apache.org/xalan-j/index.html
    http://xml.apache.org/xalan-j/usagepatterns.html#servlet
    http://xml.apache.org/xalan-j/samples.html
    Just one method...

  • Data Modeling for controls using XML views(SAPUI5)

    Hello ,
    I am trying to create Table control using XML view and binding data to it through controller onInit method.
    XML View Code is as follows :
    <core:View xmlns="sap.m" xmlns:l="sap.ui.layout" xmlns:core="sap.ui.core">
        <l:VerticalLayout width="100%">
            <l:content>
                <Text id="description" class="marginAll" />
                <Table id="idProductsTable" items="{       
                    path:'/businessData'
                }">
                    <headerToolbar>
                        <Toolbar>
                            <Label text="Products"></Label>
                        </Toolbar>
                    </headerToolbar>
                    <columns>
                        <Column>
                            <Label text="Product" />
                        </Column>
                        <Column>
                            <Label text="Supplier" />
                        </Column>
                        <Column>
                            <Label text="Dimensions" />
                        </Column>
                    </columns>
                    <items>
                        <ColumnListItem>
                            <cells>
                                <ObjectIdentifier title="{COUNTRY}" text="{COUNTRY}" />
                            </cells>
                            <Text text="{REGION}"></Text>
                            <Text text="{CITY}"></Text>
                        </ColumnListItem>
                    </items>
                </Table>
            </l:content>
        </l:VerticalLayout>
    </core:View>
    Controller onInit method Code is as follows :
    var oData = {
                businessData : [ {
                    'COUNTRY' : "Canada",
                    'CITY' : "Toronto",
                    'REGION' : "US",
                    'LANGUAGE' : "English"
                    'COUNTRY' : "China",
                    'CITY' : "Bejeing",
                    'REGION' : "Ashia",
                    'LANGUAGE' : "Chinese"
            var demoJSONModel = new sap.ui.model.json.JSONModel();
            demoJSONModel.setData(oData);
            sap.ui.getCore().getElementById("idProductsTable").setModel(
                    demoJSONModel);
    Same thing when i tried with JS views , it worked however through XML view , I am getting empty table.
    Is the data modeling correct for XML views?
    Thanks,
    Mahesh.

    I've got it ! The reason for that is you bind items as below,
         <Table id="idProductsTable" items="{    
                    path:'/businessData'
                }">
    This pattern is followed if you wanna add a formatter/sorter/grouping.
    As you don't do any of those you can bind items as below &  it doesn't require  data-sap-ui-xx-bindingSyntax="complex".
    <Table id="idProductsTable" items="{/businessData}">

Maybe you are looking for

  • How do you monitor a background thread and update the GUI

    Hello, I have a thread which makes its output available on PipedInputStreams. I should like to have other threads monitor the input streams and update a JTextArea embedded in a JScrollPane using the append() method. According to the Swing tutorial, t

  • String won't copy to array

    I had to create an applet that would take in two binary numbers from the keyboard and would add/subtract/multiply them. To do this we needed an int array. But when i tried doing the method shown to us, it didnt work and it would literally output garb

  • JDeveloper 10.1.3.3.0:  Problem with Apache Axis 1.4 response handler

    I have written both a request handler and a response handler for calling a web service using Apache Axis 1.4. The request handler is working, but when the web service returns a soap fault, my response handler is not getting called (I have set breakpo

  • Need Information about Oracle DBA 9i Exam

    Hi all, I am from saudi arabia, and i would like to write OCP for 9iDBA. I tried to contact saudi arabia oracle. But no use. Can any body help regarding to find another center for OCP. Reply me on [email protected] Bye Raj

  • How to get rid of black outline boxes persisting on screen

    Black outline boxes have started appearing around objects and icons that I've clicked on or text areas I've filled in. Sometimes these boxes persist on the screen in its original location until I go to a new program. For example – in PhotoShop, a bla