Poor performance that change XML data source programically

The XML file get from database each time is different, so I have to specify the XML path dynamically.
I find the process of DataBaseController.replaceConnection(conn1,conn2) is very slow if the XML structure is more complex, in my case, the size of the XML is about 100K and tables(hierarchy) are more than 50.
I also try to use the setDatasource(IXMLSource,'','') and setTableLocation, the result are same and almost spend 3 seconds  or more for this process.
Any suggestion to me or what's wrong about that case?

The XML for the documents are generated by the product code using BC4J XML generation. No concurrent program is involved in it.
As regards to including additional fields from Sourcing documents into the XML generated, you can use the BC4J extension fwk to extend the ViewObject that generates XML and modify the query to include any additional fields as needed.
All the above assumes knowledge of Oracle Application Framework and the customization fwk. There is a Metalink Note (dont know the exact id) which explains how to extend BC4J objects and deploy them.

Similar Messages

  • XML data source - Performance problem

    Environment - Crystal Reports 2008 , crjava-runtime_12.2.200 jar files, Java 1.5  and XML data source
    We are generating reports from our java application. .rpt file is designed using CR 2008 .
    The problem we have is its taking longer time to generate a report. Atleast its taking 5-6 minutes. XML file size is around 300 KB. .rpt file size is 2000 KB.
    Steps involved in report generation in Java program.
    1. Creating ReportClientDocument.
    2.Opening ReportClientDocument( reportClientDocument.Open())
    3. constructing XML datasource IXMLDataSet(xml_ds). ( setting XML and XSD)
    4. setting the datasource to database controller. -- reportClientDocument.getDatabaseController().setDataSource(xml_ds, "", "")
    5. then exporting the report in pdf format.
    I don't know what I am doing wrong. Please advise me to improve the performance of this function.
    Thanks,
    Makesh

    Ted,
    I figured out the cause of the problem. I am using JDeveloper as my IDE thats causing the delay. When I deployed the application and ran it, it took just 30 secs for the report using "Pushing" mechanism. Thats amazing. Thanks for your support.
    I have another problem. I am not sure whether to post a separate thread for this problem. Anyway I explain the problem here. If you think it needs another thread, I will post a new one.
    When I use my IDE or the following command JRC runs fine and generates the reports with graphs and all.
    java -classpath C:\JDK\java1.5\bin\CERT.jar;C:\oracle\JDeveloper10.1.3\jdbc\lib\ojdbc14dms.jar;C:\oracle\JDeveloper10.1.3\jdbc\lib\orai18n.jar;C:\oracle\JDeveloper10.1.3\jdbc\lib\ocrs12.jar;C:\oracle\JDeveloper10.1.3\diagnostics\lib\ojdl.jar;C:\oracle\JDeveloper10.1.3\lib\dms.jar;C:\Apps\CERTLib\log4j-1.2.8.jar;C:\Apps\CERTLib\CRLib\com.azalea.ufl.barcode.1.0.jar;C:\Apps\CERTLib\CRLib\commons-collections-3.1.jar;C:\Apps\CERTLib\CRLib\commons-configuration-1.2.jar;C:\Apps\CERTLib\CRLib\commons-lang-2.1.jar;C:\Apps\CERTLib\CRLib\commons-logging.jar;C:\Apps\CERTLib\CRLib\CrystalCommon2.jar;C:\Apps\CERTLib\CRLib\CrystalReportsRuntime.jar;C:\Apps\CERTLib\CRLib\cvom.jar;C:\Apps\CERTLib\CRLib\DatabaseConnectors.jar;C:\Apps\CERTLib\CRLib\icu4j.jar;C:\Apps\CERTLib\CRLib\jai_imageio.jar;C:\Apps\CERTLib\CRLib\JDBInterface.jar;C:\Apps\CERTLib\CRLib\jrcerom.jar;C:\Apps\CERTLib\CRLib\keycodeDecoder.jar;C:\Apps\CERTLib\CRLib\log4j.jar;C:\Apps\CERTLib\CRLib\logging.jar;C:\Apps\CERTLib\CRLib\pfjgraphics.jar;C:\Apps\CERTLib\CRLib\QueryBuilder.jar;C:\Apps\CERTLib\CRLib\webreporting-jsf.jar;C:\Apps\CERTLib\CRLib\webreporting.jar;C:\Apps\CERTLib\CRLib\XMLConnector.jar;C:\Apps\CERTLib\CRLib\xpp3.jar;C:\Apps\CERTLib\iText-2.1.5.jar -Xms256m -Xmx512m com.cert.gui.CERTMainFrame
    Note: CERT.jar has all the application classes and library classes.
    But when I package all these jar files in to single jar file and run the below command, it generates reports with all the features except Graphs.
    java -Xms256m -Xmx512m -jar CERT.jar (OR)
    java -classpath C:\JDK\java1.5\bin\CERT.jar; -Xms256m -Xmx512m com.cert.gui.CERTMainFrame
    Note: CERT.jar has all the application classes and library classes
    I need the above command to run successfully as I am planning to use java web start for application deployment.
    Please help me to solve this problem.
    Thanks,
    Makesh
    Edited by: Makesh on May 28, 2009 12:07 AM
    Edited by: Makesh on May 28, 2009 12:13 AM
    Edited by: Makesh on May 28, 2009 1:32 AM

  • XML Publisher: Need to change OKCTERMSDS Data Source

    My client requires that the XML Publisher Sourcing Template and the Contract
    Terms Template be customised to fit in with their coroprate look-and-feel.
    Whilst I have no issue with being able to change the XSL to create a new
    Template, the underlying XDO Data Sources for these two Templates do not
    contain all of the fields that I require.
    For example, my Customer requires the RFQ/RFI Description field on the final
    output; this does not appear in the XML data file.
    Normally the Short Name on a Data Source relates to a Concurrent Manager
    Program Short Name, but I am unable to find any Programs relating to
    PON_DATA_SOURCE or OKCTERMSDS.
    My questions are:
    1) How are these XML files generated?
    2) Can the "programs" behind the XML generation be changed?

    The XML for the documents are generated by the product code using BC4J XML generation. No concurrent program is involved in it.
    As regards to including additional fields from Sourcing documents into the XML generated, you can use the BC4J extension fwk to extend the ViewObject that generates XML and modify the query to include any additional fields as needed.
    All the above assumes knowledge of Oracle Application Framework and the customization fwk. There is a Metalink Note (dont know the exact id) which explains how to extend BC4J objects and deploy them.

  • JRC and XML Data Source

    Hi!
    Does the JRC execute a report with an XML data source (URL XML Http and URL XSD Http) ?
    If yes, does the JRC change programmatically the XML data source (URL XML Http and URL XSD Http) prior to execute the report?
    There is an example to do this?
    Best regards,
    A.

    Hi,
    I've follow the example [ftp://ftp.businessobjects.com/pub/incoming/XML_XSD_sample_reports_XI.zip]
    and i've use the "JRC_Display_Connection_Info"on a xml to display all of the properties.
    After i've make a program for change the datasource in the case of "xml http" database.
    Changes the DataSource for a specific Table from XML
    @param clientDoc              The reportClientDocument representing the report being used
    @param reportName     "" for main report, name of subreport for subreport, null for all reports
    @param tableName     name of table to change.  null for all tables.
    @param username       The DB logon user name
    @param password       The DB logon password
    @param xmlURL          The Http(s) XML URL
    @param xsdURL          The Http(s) Schema URL
    @throws ReportSDKException
         public void changeDataSourceXML(ReportClientDocument clientDoc,
                        String reportName, String tableName,
                        String username, String password,String xmlURL,String xsdURL) throws ReportSDKException {
                    PropertyBag propertyBag = null;
              IConnectionInfo connectionInfo = null;
              ITable origTable = null;
              ITable newTable = null;
              // Declare variables to hold ConnectionInfo values.
              String SERVER_TYPE = "XML e servizi Web";
              String CONVERT_MULTIVALUE_TO_TABLE="false";
              String DATABASE_DLL = "crdb_xml.dll";
              String HTTPS_SCHEMA_URL= xsdURL;
              String HTTPS_XML_URL= xmlURL;
              // Declare variables to hold database User Name and Password values
              // I've see by "JRC_Display_Connection_Info" that USERID_HTTPS_SCHEMA
              // and USERID_HTTPS_XML's value is equal to username value
              String DB_PASSWORD = "";
              String DB_USER_NAME = username;
              String USERID_HTTPS_SCHEMA=username;
              String USERID_HTTPS_XML=username;
              // Obtain collection of tables from this database controller
              if (reportName == null || reportName.equals("")) {
                   Tables tables = clientDoc.getDatabaseController().getDatabase().getTables();
                   for(int i = 0;i < tables.size();i++){
                        origTable = tables.getTable(i);
                        if (tableName == null || origTable.getName().equals(tableName)) {
                             newTable = (ITable)origTable.clone(true);
                             newTable.setQualifiedName(origTable.getAlias());
                             // Change connection information properties
                             connectionInfo = newTable.getConnectionInfo();
                             // Set new table connection property attributes
                             propertyBag = new PropertyBag();
                             // Overwrite any existing properties with updated values
                             propertyBag.put("Http(s) Schema URL", HTTPS_SCHEMA_URL);
                             propertyBag.put("Http(s) XML URL", HTTPS_XML_URL);
                             propertyBag.put("Server Type", SERVER_TYPE);
                             propertyBag.put("UserID Http(s) XML", USERID_HTTPS_XML);
                             propertyBag.put("Database DLL",DATABASE_DLL );
                             propertyBag.put("Convert Multivalue to Table", CONVERT_MULTIVALUE_TO_TABLE);
                             propertyBag.put("UserID Http(s) Schema", USERID_HTTPS_SCHEMA);
                             connectionInfo.setAttributes(propertyBag);
                             // Set database username and password
                             connectionInfo.setUserName(DB_USER_NAME);
                             connectionInfo.setPassword(DB_PASSWORD);
                             // Update the table information
                             clientDoc.getDatabaseController().setTableLocation(origTable, newTable);
    But i don't know why if i call:
    System.out.println(reportClientDoc.getDatabaseController().getDatabase().getTables().getTable(0).getConnectionInfo().getAttributes().toString());
    on my
    ReportClientDocument reportClientDoc = new ReportClientDocument();               
    reportClientDoc.open(ReportName, 0);
    after changeDataSourceXML i've one more attribute than those defined by me called PreQEServerType that take the Server_Type value.
    I think that is the cause of the output error of my program on the export method
    ByteArrayInputStream byteArrayInputStream = (ByteArrayInputStream)reportClientDoc.getPrintOutputController().export(ReportExportFormat.PDF);
    - com.crystaldecisions.reports.dataengine.be: Unexpected error of the database connector
    - Failed to export report
    com.crystaldecisions.reports.exportinterface.exceptions.ExportException: Unexpected error of the database connector
         at com.crystaldecisions.reports.formatter.a.c.if(Unknown Source)
         at com.crystaldecisions.reports.formatter.a.c.a(Unknown Source)
         at com.businessobjects.reports.sdk.b.b.int(Unknown Source)
         at com.businessobjects.reports.sdk.JRCCommunicationAdapter.request(Unknown Source)
         at com.crystaldecisions.proxy.remoteagent.x.a(Unknown Source)
         at com.crystaldecisions.proxy.remoteagent.q.a(Unknown Source)
         at com.crystaldecisions.sdk.occa.report.application.dd.a(Unknown Source)
         at com.crystaldecisions.sdk.occa.report.application.ReportSource.a(Unknown Source)
         at com.crystaldecisions.sdk.occa.report.application.ReportSource.a(Unknown Source)
         at com.crystaldecisions.sdk.occa.report.application.PrintOutputController.export(Unknown Source)
         at com.crystaldecisions.sdk.occa.report.application.PrintOutputController.export(Unknown Source)
         at com.crystaldecisions.reports.sdk.PrintOutputController.export(Unknown Source)
         at report.MKReport.main(MKReport.java:655)
    Caused by: com.crystaldecisions.reports.formatter.formatter.c: Unexpected error of the database connector
         at com.crystaldecisions.reports.formatter.formatter.objectformatter.bv.<init>(Unknown Source)
         at com.crystaldecisions.reports.formatter.formatter.objectformatter.bv.if(Unknown Source)
         at com.crystaldecisions.reports.formatter.formatter.e.l.<init>(Unknown Source)
         at com.crystaldecisions.reports.formatter.formatter.e.p.<init>(Unknown Source)
         at com.crystaldecisions.reports.formatter.formatter.e.p.a(Unknown Source)
         at com.crystaldecisions.reports.formatter.a.c.a(Unknown Source)
         ... 13 more
         Caused by: com.crystaldecisions.reports.dataengine.be: Unexpected error of the database connector
         at com.crystaldecisions.reports.dataengine.m.a(Unknown Source)
         at com.crystaldecisions.reports.dataengine.m.a(Unknown Source)
         at com.crystaldecisions.reports.dataengine.bk.a(Unknown Source)
         ... 19 more
    Caused by: com.crystaldecisions.reports.reportdefinition.datainterface.n: Unexpected error of the database connector
         at com.crystaldecisions.reports.reportdefinition.datainterface.g.a(Unknown Source)
         ... 22 more
    Caused by: com.crystaldecisions.reports.queryengine.am: Unexpected error of the database connector
         at com.crystaldecisions.reports.queryengine.driverImpl.a.if(Unknown Source)
         at com.crystaldecisions.reports.queryengine.ax.if(Unknown Source)
         ... 23 more
    - JRCAgent1 detected an exception:      An error occurred while exporting the report
         at com.businessobjects.reports.sdk.b.b.int(Unknown Source)
         at com.businessobjects.reports.sdk.JRCCommunicationAdapter.request(Unknown Source)
         at com.crystaldecisions.proxy.remoteagent.x.a(Unknown Source)
         at com.crystaldecisions.proxy.remoteagent.q.a(Unknown Source)
         at com.crystaldecisions.sdk.occa.report.application.dd.a(Unknown Source)
         at com.crystaldecisions.sdk.occa.report.application.ReportSource.a(Unknown Source)
         at com.crystaldecisions.sdk.occa.report.application.ReportSource.a(Unknown Source)
         at com.crystaldecisions.sdk.occa.report.application.PrintOutputController.export(Unknown Source)
         at com.crystaldecisions.sdk.occa.report.application.PrintOutputController.export(Unknown Source)
         at com.crystaldecisions.reports.sdk.PrintOutputController.export(Unknown Source)
         at report.MKReport.main(MKReport.java:657)
    com.crystaldecisions.sdk.occa.report.lib.ReportSDKException: An error occurred while exporting the report.---- Error code:-2147467259 Error code name:failed
         at com.crystaldecisions.sdk.occa.report.application.PrintOutputController.export(Unknown Source)
         at com.crystaldecisions.sdk.occa.report.application.PrintOutputController.export(Unknown Source)
         at com.crystaldecisions.reports.sdk.PrintOutputController.export(Unknown Source)
    Thanks in advance for your help.
    Andrea
    Edited by: Andrea Bonf on Sep 24, 2008 5:56 PM

  • Crystal ActiveX Runtime Lib: Change text data source path at run time.

    We have some PCs running Crystal Reports 10 and some running CR 9 and 8.5. For each PC, we set up a System DSN ODBC data source (in Control Panel - Administrative Tools) for pulling data from text files to
    generate reports.
    Recently we wrote some routines (see the Visual Basic example at the
    end of this message) to change the path of the data files at runtime.
    According to the Crystal Reports Technical Reference Guide, we may use
    the method LogOnServer() of an Application object or an DatabaseTable
    object. However, we find that this does not work: the PrintOut()
    method only pulls data from the default path as configured for the
    System DSN, not from the path passed as the third parameter of
    LogOnServer(). It does not return any error message.
    We have also tried to use SetTableLocation() method, and it still does
    not work.
    Would any experts examine our code below and advise what we are missing? Thanks.
    For the following VB example, we have:
    System DSN Name: AP_WORKSHEET
    Driver: Microsoft Text Driver
    Database Directory: D:\0ood2 (i.e. the default path)
    Crystal Report Document: D:\3g\run\Vision\apcyto\Reports\crBlockWS.rpt
    (Which specifies that the data source text file name is BlockWS.txt)
    Purpose : We would like to read the data source text file from
    D:\0ood1 instead of the default path.
    Following is the code of the VB macro:
    Sub test()
    Rem In this version of the subroutine, we call
    Rem DatabaseTable.LogOnServer() and "Rem"ed out
    Rem Application.LogOnServer() and SetTableLocation().
    Rem We have un"Rem"ed each of them and "Rem"ed others and try to run.
    Rem In all runs, data are pulled from the default file
    Rem D:\0ood2\BlockWS.txt instead of D:\0ood1\BlockWE.txt.
    Dim crxapp As CRAXDRT.Application
    Dim crxRep As CRAXDRT.Report
    Dim crxDB As CRAXDRT.Database
    Dim crxTab As CRAXDRT.DatabaseTable
    Dim crxConnPs As CRAXDRT.ConnectionProperties
    Dim crxConnP As CRAXDRT.ConnectionProperty
    Dim apropSubLoc As String
    Dim apropConnBufStr As String
    Set crxapp = CreateObject("CrystalRuntime.Application")
    Rem
    crxapp.LogOnServer "p2sodbc.dll", "AP_WORKSHEET", "<CRWDC>DBQ=D:\0ood1",
    Set crxRep = crxapp.OpenReport
    ("D:\3g\run\Vision\apcyto\Reports\crBlockWS.rpt")
    Set crxDB = crxRep.Database
    Set crxTab = crxRep.Database.Tables(1)
    apropConnBufStr = crxTab.ConnectBufferString
    apropSubLoc = crxTab.SubLocation
    crxDB.LogOnServer "p2sodbc.dll", "AP_WORKSHEET", "<CRWDC>DBQ=D:\0ood1",
    Rem crxTab.SetTableLocation "D:\0ood1\BlockWS.txt", apropSubLoc, "DSN="
    Rem Set crxConnPs = crxTab.ConnectionProperties
    Rem Set crxConnP = crxConnPs.Item("DSN")
    Rem crxConnP.Value = "AP_WORKSHEET"
    Rem Set crxConnP = crxConnPs.Item("Database")
    Rem crxConnP.Value = "D:\0ood1\BlockWS.txt"
    Rem crxTab.Location = "BlockWS.txt"
    crxRep.DiscardSavedData
    crxRep.PrinterSetup (0)
    crxRep.PrintOut
    End Sub
    For VB macros, the problem exists in all of CR 8.5, 9 and 10. However,
    for another platform we are using, Unify Vision 4GL, it works for CR
    8.5 while not working for CR 9 and 10.
    Following is the source code in Unify Vision 4GL. This language may
    not be popular, but I thin you are about to see how it calls the
    Runtime Library methods LogOnServer(), OpenReport(), PrinterSetup() and
    PrintOut().
    %gfPrintCrystalReport
    BOOL FUNCTION gfPrintCrystalReport($reportName)
    BEGIN
    if NOTMKNOWN(GF:$oSeagateId) then
    create service of activex
    class 'CrystalRuntime.Application'
    object_ref into GF:$oSeagateId;
    if MKNOWN(GF:$oSeagateId) then
    begin
    /* TD23013: Database directories are dynamic to
    accommodate multiple user requirement of Citrix */
    send message LogOnServer to GF:$oSeagateId
    using
    ( 'PDSODBC.DLL', 'AP_WORKSHEET', '<CRWDC>DBQ='+GF:$WinTempDir,'','')
    identified by $msgHandle;
    if $msgHandle:MSG_STATE 'RESPONSE_PROCESSED'
    then
    begin
    display 'Crystal Reports cannot connect
    to the datasource ' for fyi_message wait;
    return (FALSE)
    end
    send message OpenReport to GF:$oSeagateId using
    ($reportName, 1)
    identified by $msgHandle returning
    $oCrystalReport
    if MKNOWN($oCrystalReport) then
    begin
    if (NOTMKNOWN(GF:$printerName)) then
    set GF:$printerName to
    $oCrystalReport->PrinterName;
    if GF:$printerName $oCrystalReport-
    PrinterName then
    send message SelectPrinter to
    $oCrystalReport
    using
    (GF:$driverName,GF:$printerName,GF:$portName)
    identified by $msgHandle;
    set $oCrystalReport-
    DisplayProgressDialog to FALSE;
    while TRUE
    begin
    DISPLAY NOTICE 'Print to : ' +
    GF:$printerName
    LABELS 'Ok'
    DEFAULT, 'Cancel', 'Printer Setup'
    RESULT INTO $userOption
    switch ($userOption)
    begin
    case 0 :
    send
    message PrintOut to $oCrystalReport
    using
    (PROMPT_USER, NUMBER_OF_COPIES, COLLATED, START_PAGE, STOP_PAGE)
    identified by $msgHandle;
    set
    $oCrystalReport to UNDEFINED
    return
    (TRUE);
    case 1:
    set
    $oCrystalReport to UNDEFINED
    return
    (FALSE);
    case 2:
    send
    message PrinterSetup to $oCrystalReport
    using
    (0)
    identified by $msgHandle;
    if
    GF:$printerName $oCrystalReport->PrinterName then
    begin
    set GF:$printerName to $oCrystalReport->PrinterName;
    set GF:$driverName to $oCrystalReport->DriverName;
    set GF:$portName to $oCrystalReport->PortName;
    end
    break;
    end
    end
    end
    end
    return
    (FALSE);
    END

    Hi Sydney,
    If you search the Developers help file you'll find info on using the method:
    How to change the data source
    This example demonstrates how to change the data source from native Access to an OLEDB (ADO) data source by using the ConnectionProperty Object, as well as how to change the table name by using the Location property of the DatabaseTable Object. CrystalReport1 is connected to the xtreme.mdb database found in the \Program Files\Crystal Decisions\Crystal Reports 10\Samples\En\Databases folder. The report is using the Customer table. A copy of the Customer table is added to the pubs database on Microsoft SQL Server.
    ' Create a new instance of the report.
    Dim Report As New CrystalReport1
    Private Sub Form_Load()
    ' Declare a ConnectionProperties collection.
    Dim CPProperties As CRAXDRT.ConnectionProperties
    ' Declare a DatabaseTable object.
    Dim DBTable As CRAXDRT.DatabaseTable
    ' Get the first table in the report.
    Set DBTable = Report.Database.Tables(1)
    ' Get the collection of connection properties.
    Set CPProperties = DBTable.ConnectionProperties
    ' Change the database DLL used by the report from
    ' native Access (crdb_dao.dll) to ADO/OLEDB (crdb_ado.dll).
    DBTable.DllName = "crdb_ado.dll"
    '  The connection property bags contain the name and value
    ' pairs for the native Access DLL (crdb_dao.dll). So we need
    ' to clear them, and then add the name and value pairs that
    ' are required to connect to the OLEDB data source.
    ' Clear all the ConnectioProperty objects from the collection.
    CPProperties.DeleteAll
    ' Add the name value pair for the provider.
    CPProperties.Add "Provider", "SQLOLEDB"
    ' Add the name value pair for the data source (server).
    CPProperties.Add "Data Source", "ServerA"
    ' Add the name value pair for the database.
    CPProperties.Add "Initial Catalog", "pubs"
    ' Add the name value pair for the user name.
    CPProperties.Add "User ID", "UserName"
    ' Add the name value pair for the password.
    CPProperties.Add "Password", "password"
    ' Set the table name. ' for SQL types it would be "database.dbo.table"
    DBTable.Location = "Customer"
    Screen.MousePointer = vbHourglass
    ' Set the report source of the viewer and view the report.
    CRViewer1.ReportSource = Report
    CRViewer1.ViewReport
    Screen.MousePointer = vbDefault
    End Sub

  • Problem in filling jasper report with XML Data source

    Hello!
    I am trying to build a report uxing xml data source..Please verify following code:
    String outFileName = "c:/Report1.pdf";
    File xmlFileName = new File("C:/Program Files/JasperSoft/iReport-1.2.5/report.jrxml");
    String recordPath = "/SiteDetails/Site";
    JasperDesign jasperDesign = JRXmlLoader.load(xmlFileName);
    JasperReport jasperReport = JasperCompileManager.compileReport(jasperDesign);
    JRXmlDataSource jrxmlds = new JRXmlDataSource(new File("c:/NewSite.xml"),recordPath);
    HashMap hm = new HashMap();
    try
    JasperPrint print = JasperFillManager.fillReport(jasperReport,hm,jrxmlds);
    JRExporter exporter = new net.sf.jasperreports.engine.export.JRPdfExporter();
    exporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME,outFileName);
    exporter.setParameter(JRExporterParameter.JASPER_PRINT,print);
    exporter.exportReport();
    catch (JRException jre)
    jre.printStackTrace();
    catch (Exception e)
    e.printStackTrace();
    My Xml file is:
    <?xml version="1.0" encoding="UTF-8"?>
    <SiteDetails>
    <Site>
    <Name>Site1</Name>
    <Addr>Bangalore</Addr>
    <supersiteid>null</supersiteid>
    </Site>
    <Site>
    <Name> Site2</Name>
    <Addr> Madras</Addr>
    <supersiteid>Site1</supersiteid>
    </Site>
    </SiteDetails>
    I want to display details of Siteand Address..My program works fine but displays only 1 (first) record...What should i do to display the full file..do i need to navigate thru the file and give that as an input to fillReport ()method...

    Hi,
    Have a look at below URL.
    http://ireport.sourceforge.net/cap7.html#7.4
    Regards
    VInK

  • HTTP XML Data Source authentication error

    Morning All,
    I have just started playing around with using XML as a data source for my CR4Ev2.0.1 reports.
    I have managed to create the local inline reports and change their data source loacation with no current
    issues.
    I am now trying to create the HTTPXML reports using code from Ted's BLOG.
    I manage to create a new report, and can open it in design, I can see the data source structure but as
    soon as I try browse the data or preview my report I get the following error
    Cannot Open file
    Server returned HTTP response code: 407 for URL:
    http://myserver/httpxml.xml
    I had a quick look up the 407 error and it seems to be a Proxy authentication error, we do have a proxy
    server setup which requires a username and password.
    Before I go through what I have tried I want to confess that for this httpxml.xml file all I did was take my
    inline.xml file and rename it and make it avaliable via a URL. So this might be the whole problem but I
    am sure this is ok.
    So I have tried turning off the proxy server as this URL is local so I dont need to go through the proxy.
    If I go to the URL in my browser it works fine and I do not need to enter any proxy details.
    Thats the problem with my HTTP XML attempt.
    If I use the code as is, from Ted's BLOG, for
    Crystal Reports off of HTTP XML data URL
    and try use the following 2 URLs
    propertyBag.put(
    "Http(s) XML URL", "http://resources.businessobjects.com/support/downloads/samples/cr/customer_db/orders.xml");
    propertyBag.put(
    "Http(s) Schema URL", "http://resources.businessobjects.com/support/downloads/samples/cr/customer_db/orders.xsd");
    propertyBag.put(
    "Http(s) XML URL", "http://resources.businessobjects.com/support/downloads/samples/cr/customer_db/customer.xml");
    propertyBag.put(
    "Http(s) Schema URL", "http://resources.businessobjects.com/support/downloads/samples/cr/customer_db/customer.xsd");
    But I get the following errors
    Exception in thread "main" com.crystaldecisions.sdk.occa.report.lib.ReportSDKLogonException: Logon
    Error: {0}---- Error code:-2147217393 Error code name:dbLogonFailed
         at com.businessobjects.reports.sdk.JRCCommunicationAdapter.a(Unknown Source)
         at com.crystaldecisions.sdk.occa.report.application.DatabaseController.byte(Unknown
    Source)
         at com.crystaldecisions.sdk.occa.report.application.DatabaseController.addTable(Unknown
    Source)
         at com.businessobjects.samples.CreateHttpXML.main(CreateHttpXML.java:90)
    Caused by: com.crystaldecisions.reports.common.LogonFailureException: Logon Error:{0}
         at com.crystaldecisions.reports.queryengine.Connection.br(Unknown Source)
         at com.crystaldecisions.reports.queryengine.Connection.bs(Unknown Source)
    Any ideas as to what my issues are or what I am missing.
    Thanks in advance.
    Darren
    Edited by: Darren Jackson on Apr 28, 2009 2:12 PM
    Is there any documentation as to what entries I can use in the property bag.
    Like is there a ("ProxySet", false) or something along those lines?
    Edited by: Darren Jackson on Apr 28, 2009 5:28 PM
    I have made a little more head way.
    I saved the Orders.xml and Orders.xsd files onto my webserver and editied the code to only worry about
    the Orders and ignore the Customer files.
    I now create my reports, open them in Eclipse to design them, but when I try preview the data it is now
    asking me for a username and password. I have tried all combinations that I can think of for our systems
    but none work.
    Grrrrrrrrrrrrrrr

    I have subsequently determined that my main problem was my "cached" proxy settings within Eclipse.
    Even though I removed the proxy settings in Eclipse, it still required me to restart Eclipse after which it
    all started working ok.
    That was my main problem, but I am still interested in the Property Bag options that I mentioned before.
    If proxy settings are needed, how would one go about setting these details?
    Thanks
    Darren

  • Newbie XML data source questions

    Post Author: tel
    CA Forum: Data Connectivity and SQL
    I'm trying to use the XML data source via http and i'm running into a couple of issues.
    First, we have separate environments for development, QA, and production.  Each environment will have a seperate URL to retrieve the XML for the report.  I would like to use the same report design to access each environment.  Is there a way to update the URL in the data source (or replace the data source with one that has the correct URL) without having to re-add the fields to the report design?
    The second issue is similar.  I can't seem to get Crystal to recognize changes in the XML format (new fields for example) without having to delete and recreate the data source (which automatically removes all the associated fields from the report).  Is there a way around this, or again, a way of re-creating the data source without it removing the existing fields in the report?
    Thanks,

    Post Author: rosariosanto
    CA Forum: Data Connectivity and SQL
    I have the same problem. Where can I find help about setting the data source when connecting to a web service. Since the hostname is hardcoded in the report, it is necessary to update it in the code.

  • XML Data Source: does not seem to validate against XSD

    I setup XML data source using the example "b-c.xml" and "b-c.xsd"; I changed the
    root element of "b-c.xml" from "<db>" to "<Customers>"; but Liquid Data does not
    seem to care or validate the instance document against the XSD.
    Is this a known bug? It's something very basic and obvious!

    LD does indeed catch and report the mis-match at run-time as shown in the exception
    below.
    It does not valid the XML file against the schema at configuration time, only
    at run-time. Hence Step 8 here - http://edocs/liquiddata/docs81/admin/xml.html#1035818
    But beware - in some (most) cases LD does not do validation against the schema
    for performance reasons. If the schema does not match you will simply get empty
    results.
    - Mike
         java.rmi.RemoteException: Query Execution Error (Run Time) 1-2-3-24: Cannot process
    XML file source XM-BB-C. (com.enosysmarkets.xqdm.translators.XqdmTranslatorException:
    Invalid root element name: 'CUSTOMERS'. Expected: 'db')
    "David Song" <[email protected]> wrote:
    >
    I setup XML data source using the example "b-c.xml" and "b-c.xsd"; I
    changed the
    root element of "b-c.xml" from "<db>" to "<Customers>"; but Liquid Data
    does not
    seem to care or validate the instance document against the XSD.
    Is this a known bug? It's something very basic and obvious!

  • Problem changing SQL data source at runtime with VB6 and CR XI

    Hello All,
    We have several VB6 programs using CR XI and are able to pass a DSN to change data source with Access DB that works just fine.
    We are using similar code in another program to change the data source in an SQL DB and get an error... Failed to Open the Connection.
    This is a sample of what works with Access but not SQL DB:
    Dim crxApplication As New CRAXDRT.Application
    Public Report As CRAXDRT.Report
    Global DSN_STRING
    DSN_STRING = "DSN = JC Crystal Reports"
    Dim crxDatabaseTable As CRAXDRT.DatabaseTable
    Set Report = crxApplication.OpenReport(App.Path & "\Test11.rpt", 1)
    'change location of each table in report
    For Each crxDatabaseTable In Report.Database.Tables
            crxDatabaseTable.Location = DSN_STRING
    Next crxDatabaseTable
    FormCrystal.Show vbModal
    We have tried other things from the web, still get error.
    Any help would be greatly appreciated.
    C Reid

    Hi Carole,
    When using SQL types you need more than just the DSN name. CR does keep the password in the report file and all SQL types are usually password protected.
    Try this simple code:
    First log onto the server:
    rpt.database.LogOnServerEx("crdb_odbc.dll, pServerName, [pDatabaseName], [pUserID], [pPassword], [pServerType], [pConnectionString])
    The ConnectionString is the complete line. Run in debug mode and display what the reprot is using and you can see the format it requires.
    Once logged on now you can set the location for each table:
    'report connection properties
            With rpt.Database.Tables(1)
                .ConnectionProperties("User ID").Value = "sa"
                .ConnectionProperties("Password").Value = "YourPassword"
                .ConnectionProperties("Data Source Name").Value = "Your DSN Name"
                '.ConnectionProperties("Data Source Name").Value = "ServerName" ' can be used if specifying a new connection
                .ConnectionProperties("Database").Value = "Northwind"
            End With
            Set rpt.Database.Tables(1).Location = "Northwind.dbo.CustOrderHist"
    I'm only using one table so easy enough to create the loop or use for all...
    Thank you
    Don

  • Xml data source limit

    Hi
    I've been having trouble finding information on this, but is there a limitation on the file size of the xml data produced by an apex report query?
    If I download the xml data in the application builder, I'm finding once the expected xml data size goes over 32k, all I get is a file containing the xml tags but with no data.
    32k seems pretty small. I was reaching this limit because I was using APEX_WEB_SERVICE.BLOB2CLOBBASE64 to send an image to my report. I would have thought even just a decent number of rows would reach this size also.
    Am I missing something?
    Apex 4.0.1.00.03
    Scott

    LD does indeed catch and report the mis-match at run-time as shown in the exception
    below.
    It does not valid the XML file against the schema at configuration time, only
    at run-time. Hence Step 8 here - http://edocs/liquiddata/docs81/admin/xml.html#1035818
    But beware - in some (most) cases LD does not do validation against the schema
    for performance reasons. If the schema does not match you will simply get empty
    results.
    - Mike
         java.rmi.RemoteException: Query Execution Error (Run Time) 1-2-3-24: Cannot process
    XML file source XM-BB-C. (com.enosysmarkets.xqdm.translators.XqdmTranslatorException:
    Invalid root element name: 'CUSTOMERS'. Expected: 'db')
    "David Song" <[email protected]> wrote:
    >
    I setup XML data source using the example "b-c.xml" and "b-c.xsd"; I
    changed the
    root element of "b-c.xml" from "<db>" to "<Customers>"; but Liquid Data
    does not
    seem to care or validate the instance document against the XSD.
    Is this a known bug? It's something very basic and obvious!

  • Problem with extracting Xml data source fields

    Post Author: new_crystal
    CA Forum: Crystal Reports
    Hi,
    I am creating a report which has a xml data source.
    I have a field named fieldvalue in the xml, I need to present this fieldvalue in a column format based on the name of the column heading which is another field in the database called fielddata
    here is what i want
    fielddata1     fielddata2    fielddata3 .......
    fieldvalue1    fieldvalue2   fieldvalue3......
    i have dragged the fieldvalue 3 times in the report and applied different formula for each one of them
    here is the eg. of the formula
    if ( = "A" ) then
    but it is not giving me the correct values pulled from the data source. for the first column it is pulling correctly but for the rest of the columns it is giving values as 0's.
    Can anyone help me out in this? It is pretty urgent!
    Thanks

    Post Author: tel
    CA Forum: Crystal Reports
    I have no idea how to format it in Crystal Reports (i'm new to it too), but if worse comes to worse, you can create an XSLT stylesheet to convert the XML into a format that is easier for Crystal to use. 
    In case you don't know XSLT is a programming language that is designed to convert one XML format into another.

  • Using a SQL data source and XML data source in the same template

    I am trying to develop a template for the Request for Quote report generated in Apps 11.5.10. I have loaded the data from the XML output into the template, but I am missing one field - I need the org_id from the po_headers table. Is it possible to use a sql data source (i.e., "select org_id from po_headers_all where po_header_id = [insert header_id from xml data]...") in addition to the xml data source to populate the template at runtime? When you use the Insert > SQL functionality is it static at the time the template is created, or does it call to the database at runtime? I've looked through all the docs I could find, but this isn't clear.
    Thanks for any help or suggestions you may have.
    Rhonda

    Hi Pablo
    Thats a tough one ... if you go custom with a data template you will at least get support on the data template functionality ie you have a problem when you try and build one. You will not get support on the query inside the data template as you might have gotten with the Oracle Report, well you could at least log a bug against development for a bad query.
    Eventually that Oracle Report will be converted by development anyway, theres an R12 project going on right now to switch the shipped OReports to data templates. AT this point you'll be fully supported again but:
    1. You have to have R12 and
    2. You'll need to wait for the patch
    On reflection, if you are confident enough in the query then Oracle will support you on its implementation within a data template. Going forward you may be able to swap out your DT and out in the Oracle one without too much effort.
    Regards, Tim

  • How to create a report using XML data source from Crystal Report Designer

    Hi,
    Iu2019m having Crystal Report Designer XI R2 SP4. Iu2019m trying to create a report using XML data source stored on disk. This is a customer order report and the xml is structured in such a way that it has an order details header part (master) and then it has several order lines (detail). One order line can have several order line characteristics (detail-detail). So what I need to know is now I can design this layout from the designer. If this was done using views I can do it with sub-reports but using xml data this seems to be different. Can you help me to design this layout? I have included the xml and xsd as well.
    Thank you in advance.
    Regards,
    Chanaka
    XML
    <?xml version="1.0" encoding="UTF-8"?>
    <CUSTOMER_ORDER_CONF_REP_REQUEST xmlns:xsi="http://www.w3.org/2001/XMLSchema" xmlns="urn:ifsworld-com:customer_order_conf_rep">
        <CUSTOMER_ORDER_CONF_REP>
            <ORDER_NO>D555809</ORDER_NO>
            <PRINTED_DATE>2009-03-26T08:52:54</PRINTED_DATE>
            <AUTHORIZE_NAME>Chanaka</AUTHORIZE_NAME>
            <CUSTOMER_NO>CU-1473-INV</CUSTOMER_NO>
            <CUST_NAME>Mr.Johan Matts</CUST_NAME>
            <SHIP_ADDR_1>93,Main Street</SHIP_ADDR_1>
            <SHIP_ADDR_2>Negambo Road</SHIP_ADDR_2>
            <SHIP_ADDR_3>Watthala</SHIP_ADDR_3>
            <SHIP_ADDR_4>SRI LANKA</SHIP_ADDR_4>
            <BILL_ADDR_1>93,Main Street</BILL_ADDR_1>
            <BILL_ADDR_2>Negambo Road</BILL_ADDR_2>
            <BILL_ADDR_3>Watthala</BILL_ADDR_3>
            <BILL_ADDR_4>SRI LANKA</BILL_ADDR_4>
            <CUSTOMER_PO_NO>112984638</CUSTOMER_PO_NO>
            <CUSTOMER_FAX>112984639</CUSTOMER_FAX>
            <CUSTOMER_EMAIL>abcbababab</CUSTOMER_EMAIL>
            <ORDER_LINES>
                <ORDER_LINE>
                    <LINE_NO>1</LINE_NO>
                    <CUSTOMER_PART_NO>NW-IP11</CUSTOMER_PART_NO>
                    <CUSTOMER_PART_DESC>iPod</CUSTOMER_PART_DESC>
                    <SALE_UNIT_PRICE>1200</SALE_UNIT_PRICE>
                    <PRICE_TOTAL>1200</PRICE_TOTAL>
                    <DISCOUNT>0</DISCOUNT>
                    <PRICE_QTY>1</PRICE_QTY>
                    <ORDER_LINE_CHARACTERSTICS>
                        <CHARACTERISTIC_ITEM>
                            <CHARACTERISTIC_ID xsi:nil="1"/>
                            <CHARACTERISTIC_VALUE xsi:nil="1"/>
                        </CHARACTERISTIC_ITEM>
                    </ORDER_LINE_CHARACTERSTICS>
                </ORDER_LINE>
                <ORDER_LINE>
                    <LINE_NO>2</LINE_NO>
                    <CUSTOMER_PART_NO>NW-IP24</CUSTOMER_PART_NO>
                    <CUSTOMER_PART_DESC>XGA Projector</CUSTOMER_PART_DESC>
                    <SALE_UNIT_PRICE>500</SALE_UNIT_PRICE>
                    <PRICE_TOTAL>1500</PRICE_TOTAL>
                    <DISCOUNT>0</DISCOUNT>
                    <PRICE_QTY>3</PRICE_QTY>
                    <ORDER_LINE_CHARACTERSTICS>
                        <CHARACTERISTIC_ITEM>
                            <CHARACTERISTIC_ID>1</CHARACTERISTIC_ID>
                            <CHARACTERISTIC_VALUE>Free Instalation</CHARACTERISTIC_VALUE>
                        </CHARACTERISTIC_ITEM>
                    </ORDER_LINE_CHARACTERSTICS>
                </ORDER_LINE>
                <ORDER_LINE>
                    <LINE_NO>3</LINE_NO>
                    <CUSTOMER_PART_NO>NW-IP02</CUSTOMER_PART_NO>
                    <CUSTOMER_PART_DESC>Sony DVD Player</CUSTOMER_PART_DESC>
                    <SALE_UNIT_PRICE>1000</SALE_UNIT_PRICE>
                    <PRICE_TOTAL>1000</PRICE_TOTAL>
                    <DISCOUNT>0</DISCOUNT>
                    <PRICE_QTY>1</PRICE_QTY>
                    <ORDER_LINE_CHARACTERSTICS>
                        <CHARACTERISTIC_ITEM>
                            <CHARACTERISTIC_ID>1</CHARACTERISTIC_ID>
                            <CHARACTERISTIC_VALUE>Free 5 DVDs</CHARACTERISTIC_VALUE>
                        </CHARACTERISTIC_ITEM>
                    </ORDER_LINE_CHARACTERSTICS>
                </ORDER_LINE>
                <ORDER_LINE>
                    <LINE_NO>4</LINE_NO>
                    <CUSTOMER_PART_NO>NW-IP99</CUSTOMER_PART_NO>
                    <CUSTOMER_PART_DESC>Flatscreen TV</CUSTOMER_PART_DESC>
                    <SALE_UNIT_PRICE>1500</SALE_UNIT_PRICE>
                    <PRICE_TOTAL>1350</PRICE_TOTAL>
                    <DISCOUNT>10</DISCOUNT>
                    <PRICE_QTY>1</PRICE_QTY>
                    <ORDER_LINE_CHARACTERSTICS>
                        <CHARACTERISTIC_ITEM>
                            <CHARACTERISTIC_ID>1</CHARACTERISTIC_ID>
                            <CHARACTERISTIC_VALUE>Free Delivery</CHARACTERISTIC_VALUE>
                        </CHARACTERISTIC_ITEM>
                        <CHARACTERISTIC_ITEM>
                            <CHARACTERISTIC_ID>2</CHARACTERISTIC_ID>
                            <CHARACTERISTIC_VALUE>1 year additional warranty</CHARACTERISTIC_VALUE>
                        </CHARACTERISTIC_ITEM>
                    </ORDER_LINE_CHARACTERSTICS>
                </ORDER_LINE>
                <ORDER_LINE>
                    <LINE_NO>5</LINE_NO>
                    <CUSTOMER_PART_NO>NW-IP56</CUSTOMER_PART_NO>
                    <CUSTOMER_PART_DESC>Sony MP3 Player</CUSTOMER_PART_DESC>
                    <SALE_UNIT_PRICE>200</SALE_UNIT_PRICE>
                    <PRICE_TOTAL>400</PRICE_TOTAL>
                    <DISCOUNT>0</DISCOUNT>
                    <PRICE_QTY>2</PRICE_QTY>
                    <ORDER_LINE_CHARACTERSTICS>
                        <CHARACTERISTIC_ITEM>
                            <CHARACTERISTIC_ID>1</CHARACTERISTIC_ID>
                            <CHARACTERISTIC_VALUE>Free carry belt</CHARACTERISTIC_VALUE>
                        </CHARACTERISTIC_ITEM>
                        <CHARACTERISTIC_ITEM>
                            <CHARACTERISTIC_ID>2</CHARACTERISTIC_ID>
                            <CHARACTERISTIC_VALUE>Free promotional 4GB memory bar</CHARACTERISTIC_VALUE>
                        </CHARACTERISTIC_ITEM>
                        <CHARACTERISTIC_ITEM>
                            <CHARACTERISTIC_ID>3</CHARACTERISTIC_ID>
                            <CHARACTERISTIC_VALUE>No warranty on memory bar</CHARACTERISTIC_VALUE>
                        </CHARACTERISTIC_ITEM>
                    </ORDER_LINE_CHARACTERSTICS>
                </ORDER_LINE>
            </ORDER_LINES>
        </CUSTOMER_ORDER_CONF_REP>
    </CUSTOMER_ORDER_CONF_REP_REQUEST>
    XSD
    <?xml version="1.0" encoding="UTF-8"?>
    <?report  module="ORDER" package="CUSTOMER_ORDER_CONF_REP" ?>
    <xs:schema targetNamespace="urn:ifsworld-com:customer_order_conf_rep" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="urn:ifsworld-com:customer_order_conf_rep" elementFormDefault="qualified" attributeFormDefault="unqualified">
    <xs:element name="CUSTOMER_ORDER_CONF_REP_REQUEST">
    <xs:complexType>
    <xs:all minOccurs="1" maxOccurs="1">
    <xs:element name="CUSTOMER_ORDER_CONF_REP">
    <xs:complexType>
    <xs:choice minOccurs="0" maxOccurs="50">
    <xs:element name="ORDER_NO" nillable="true" minOccurs="0">
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:maxLength value="2000"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="PRINTED_DATE" type="xs:dateTime" nillable="true" minOccurs="0"/>
    <xs:element name="AUTHORIZE_NAME" nillable="true" minOccurs="0">
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:maxLength value="2000"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="CUSTOMER_NO" nillable="true" minOccurs="0">
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:maxLength value="2000"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="CUSTOMER_PO_NO" nillable="true" minOccurs="0">
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:maxLength value="2000"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="CUST_NAME" nillable="true" minOccurs="0">
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:maxLength value="2000"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="SHIP_ADDR_1" nillable="true" minOccurs="0">
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:maxLength value="2000"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="SHIP_ADDR_2" nillable="true" minOccurs="0">
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:maxLength value="2000"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="SHIP_ADDR_3" nillable="true" minOccurs="0">
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:maxLength value="2000"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="SHIP_ADDR_4" nillable="true" minOccurs="0">
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:maxLength value="2000"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="BILL_ADDR_1" nillable="true" minOccurs="0">
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:maxLength value="2000"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="BILL_ADDR_2" nillable="true" minOccurs="0">
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:maxLength value="2000"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="BILL_ADDR_3" nillable="true" minOccurs="0">
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:maxLength value="2000"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="BILL_ADDR_4" nillable="true" minOccurs="0">
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:maxLength value="2000"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="CUSTOMER_FAX" nillable="true" minOccurs="0">
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:maxLength value="2000"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="CUSTOMER_EMAIL" nillable="true" minOccurs="0">
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:maxLength value="2000"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="ORDER_LINES" nillable="true" minOccurs="0">
    <xs:complexType>
    <xs:sequence minOccurs="0" maxOccurs="unbounded">
    <xs:element name="ORDER_LINE">
    <xs:complexType>
    <xs:choice minOccurs="0" maxOccurs="39">
    <xs:element name="LINE_NO" nillable="true" minOccurs="0">
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:maxLength value="2000"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="SALE_UNIT_PRICE" type="xs:float" nillable="true" minOccurs="0"/>
    <xs:element name="PRICE_TOTAL" type="xs:float" nillable="true" minOccurs="0"/>
    <xs:element name="DISCOUNT" type="xs:float" nillable="true" minOccurs="0"/>
    <xs:element name="PRICE_QTY" type="xs:float" nillable="true" minOccurs="0"/>
    <xs:element name="CUSTOMER_PART_NO" nillable="true" minOccurs="0">
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:maxLength value="4000"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="CUSTOMER_PART_DESC" nillable="true" minOccurs="0">
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:maxLength value="4000"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="ORDER_LINE_CHARACTERSTICS" nillable="true" minOccurs="0">
    <xs:complexType>
    <xs:sequence minOccurs="0" maxOccurs="unbounded">
    <xs:element name="CHARACTERISTIC_ITEM">
    <xs:complexType>
    <xs:choice minOccurs="0" maxOccurs="6">
    <xs:element name="CHARACTERISTIC_ID" nillable="true" minOccurs="0">
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:maxLength value="2000"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="CHARACTERISTIC_VALUE" nillable="true" minOccurs="0">
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:maxLength value="2000"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    </xs:choice>
    </xs:complexType>
    </xs:element>
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    </xs:choice>
    </xs:complexType>
    </xs:element>
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    </xs:choice>
    </xs:complexType>
    </xs:element>
    </xs:all>
    </xs:complexType>
    </xs:element>
    </xs:schema>

    Hi Sourashree,
    Thank you for the response and ideas you have given me so far. I can get the fetch the data from the data source without any problem. That is I do the following,
    1.     New Report
    2.     From Create New Connection-> XML
    3.     Provide the u201CLocal XML Fileu201D and have u201CSpecify Schema Fileu201D checked -> Next
    4.     Provide the u201CLocal Schema Fileu201D  -> Finish
    Then I can see the following under XML
    + CUSTOMER_ORDER_CONF_REP_REQUEST
            CUSTOMER_ORDER_CONF_REP_REQUEST
         CUSTOMER_ORDER_CONF_REP_REQUEST/CUSTOMER_ORDER_CONF_REP
         CUSTOMER_ORDER_CONF_REP_REQUEST/ CUSTOMER_ORDER_CONF_REP/ORDER_LINES
         CUSTOMER_ORDER_CONF_REP_REQUEST/ CUSTOMER_ORDER_CONF_REP/ORDER_LINES/ORDER_LINE
         CUSTOMER_ORDER_CONF_REP_REQUEST/ CUSTOMER_ORDER_CONF_REP/ORDER_LINES/ORDER_LINE/ORDER_LINE_CHARACTERSTICS
         CUSTOMER_ORDER_CONF_REP_REQUEST/ CUSTOMER_ORDER_CONF_REP/ORDER_LINES/ORDER_LINE/ORDER_LINE_CHARACTERSTICS/CHARACTERSTIC_ITEM
    And from here if I add the following three I can get all the fields I need to the report
         CUSTOMER_ORDER_CONF_REP_REQUEST/CUSTOMER_ORDER_CONF_REP
         CUSTOMER_ORDER_CONF_REP_REQUEST/ CUSTOMER_ORDER_CONF_REP/ORDER_LINES/ORDER_LINE
         CUSTOMER_ORDER_CONF_REP_REQUEST/ CUSTOMER_ORDER_CONF_REP/ORDER_LINES/ORDER_LINE/ORDER_LINE_CHARACTERSTICS/CHARACTERSTIC_ITEM
    Then I come to the Linking section. Here I canu2019t link anything. There is a common field called u201CInternal_IDu201D but I canu2019t link using it. So I get a message when I click Next. From here I add all the fields.
    For this point onwards only I need help. How do I group, add fields and design the layout so I can get an report output as follows.
    Date
    Order number                                   Authorized code
    Customer No
    Name
    Phone
    Fax email
    Shipping address 1                              Billing Address 1
    Shipping address 2                              Billing Address 2
    Shipping address 3                              Billing Address 3
    Shipping address 4                              Billing Address 4
    Order Line 1 detailsu2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026                      LINE_NO     CUSTOMER_PART_NO          CUSTOMER_PART_DESC     SALE_UNIT_PRICE     PRICE_QTY     DISCOUNT     PRICE_TOTAL
    Characteristic details belonging to Order line 1       CHARACTERISTIC_ID 1  CHARACTERISTIC_VALUE1
                                           CHARACTERISTIC_ID 2  CHARACTERISTIC_VALUE2
                                           CHARACTERISTIC_ID 3  CHARACTERISTIC_VALUE3
    Order Line 2 detailsu2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026
    Characteristic details belonging to Order line 2
    Order Line 3 detailsu2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026
    Characteristic details belonging to Order line 3
    Order Line 4 detailsu2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026
    Characteristic details belonging to Order line 4
    Order Line 5 detailsu2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026
    Characteristic details belonging to Order line 5
    How can I achieve this kind of a layout using the give xml and xsd? Should I use grouping if so how should I do the grouping?
    I have included the full xml and xsd in the first mail I posted but I canu2019t see it now. I can include that again if you want.
    Regards,
    Chanaka

  • Increase performance in a multiple data source report

    Post Author: ArturoFromPeru
    CA Forum: General
    Hi everybody.
    I have a big problem, when i make a report that have multiple data sources the performance decrease considerably, i still don't know the reason. Is it true that using multiple data sources is too slow?.
    I tell you a fact: I made the report connecting via "Field Definition File", and it take at least 2 minutes to show itself but it only have 170 records, and i'm very sure that the sql statements to each data source were executed very faster.
    I even heard about index, but i think they only are useful when i connect directly to the database.
    All my partner told me, that Cristal Report
    Thanks you in advance
    Regards.
    Arturo

    Post Author: ArturoFromPeru
    CA Forum: General
    Thanks you, but I explain better what i was doing.
    I've made a report called "Kardex de Producto" which show the behavior of the products according to its sales, purchases.
    The end result which is showed by the report is correct. I used three data source in the report, so links between each table is correct. The only problem i have is the performance because i still don't know why is too slow. In fact the sql statement is very heavy, but i think it doesn't matter to the report because when it takes the data from the database (connecting via Field Definition File) even if the very heavy sql statement returns twenty record Cristal Report must show itself very quickly. I don't want to believe that Cristal Report is very slow when it works with multiple data sources.
    Do you mind if i give you my report? if not please leave me your email address.
    Email: [email protected] / [email protected]
    Thank you in advance
    Regards
    Arturo

Maybe you are looking for

  • REBUILD INDEX vs DROP/CREATE INDEX

    Hi there, Does anyone has already got some performance degradation after REBUILD INDEXes ? Would it be better to perform DROP/CREATE INDEX instead ? Thank you very much for anu reply. Best regards, Helena

  • Hyper-V on Win 8.1 Embedded Host

    I believe I'm having permission issues when attempting to use Hyper-V on Windows Embedded 8.1 Industry Pro.  Hyper-V seems to install cleanly, and from an admin account I can use the Hyper-V Manager without issue and connect to a running VM.  However

  • Tomcat 6 - apache problem

    Hello, this is my first post, and I hop that someone here can help me. I want to create ajp connection. server.xml: <Connector port="8010" protocol="AJP/1.3" redirectPort="8444" /> httpd.conf: LoadModule jk_module /usr/lib/apache2/modules/mod_jk.so J

  • Scrolling problem.

    So, im on a macbook and when i open a page on safari and i scroll down, the page jumps back to the top. I have to continue scrolling down to the exact spot multiple times after it jumping back to the top before it will let me continue scrolling down

  • Unable to set RPAS_HOME in windowsXP

    I want to install RPAS Configuration Tools on Windows xp. But I received the following error "The RPAS_HOME variable is not set..." "The RPAS_HOME is non matching version of RPAS" "The RPAS_HOME/applib and RPAS_HOME/lib not on the path" It seems, tha