Unable to view Dynamic Prompts in Crystal Reports through JSP

Hi,
We are using Crystal Reports, SQL Server and Java in our application. We are using JSP to access Crystal Reports from another machine, get them as "ReportClientDocument" objects and then display them using "CrystalReportInteractiveViewer" object. We are able to view reports with Static Paramter values, but when we try to access reports with Dynamic Parameter values the parameter fields are not visible. It doesn't show any error but we can't see the parameter values.
Any help in this regard will be great. Thanks in advance.

Hi Ted,
We are using the JAVA SDK to fetch the report. These are the steps we do using java.
- Log in to the Crystal Enterprise
- Get the Report Application Factory from Crystal Enterprise
- Get the InfoStore service from Crystal Enterprise
- Retrieve the report by name from Crystal Enterprise
- Open the report in a ReportClientDocument
- Instantiate a CrystalReportInteractiveViewer
- Get the report source from the ReportClientDocument and set it as source for the CrystalReportInteractiveViewer
- Process the HTTP request to view the report
Please let me know if you need any further info.

Similar Messages

  • Unable to view images in the crystal reports on a jsp

    Hi folks,
    I am unable to view any image (not even the ones like businessobjects logo) in the crystal reports fetched from the CMS. I am able to fetch the report properly. But I don;t get to see the images in the reports.
    If anyone of you know how to fix it. Kindly post it. It's urgent.
    PS: It would be great if you could kind of share a check list of things that need to be taken care of while viewing a crystal report with images.

    Hi Suresh,
    Please check that you have crystalreportviewers11 (for version XI) or crystalreportviewers115 ( for version XI R2) folder in your BO installation and your web.xml has correct reference to it. You can copy this folder over in your web application and
    Add an entry in web.xml as follows ( if it doesn't exist)
    <context-param>
      <param-name>crystal_image_uri</param-name>
      <param-value>/<your application name>/crystalreportviewers115</param-value>
    </context-param>
    crystalreportviewers11\115 have images folder which contain all the images for Logo and toolbar. Check the images folder in viewers and make sure that they exist.
    -Aasavari

  • Calling crystal reports through JSP

    Hello everyone,
    Could any one forward me the url where I can find information and sample examples regarding calling of crystal reports XI through jsp?
    Waiting for reply.

    http://diamond.businessobjects.com/developer/library
    This has all the developer documentation.
    <a href="/blog/10">Rob&#39;s blog - http://diamond.businessobjects.com/robhorne</a>

  • Crystal report in JSP using activeX viewer

    Hi,I'm trying to integrate JSP and crystal report.
    can you give me a sample code to display crystal report in JSP using activeX viewer(not pure HTML)
    I'm using crystal report 9,there are ASP sample come with CR9,but no JSP.also I don't want use Crystal Enterprise9 even I know the URL reporting may be the eaier way.

    Hi,I'm trying to integrate JSP and crystal report.
    can you give me a sample code to display crystal
    report in JSP using activeX viewer(not pure HTML)
    I'm using crystal report 9,there are ASP sample come
    with CR9,but no JSP.also I don't want use Crystal
    Enterprise9 even I know the URL reporting may be the
    eaier way.Hi, did u manage to get the ActiveX Viewer up with JSP? I'm also trying to do the same thing. If you could, pls kindly email me the basic source codes to [email protected]? Thanks

  • Problems using Dynamic parameters with Crystal Reports and SBO 8.8

    Has anyone been able to successfully use a dynamic parameter in Crystal Reports with 8.8 using the Business One connector? When we try we get an additional logon to the database that pops up and the logon fails.
    We need this because we want to return live lists of PO documents from the server for selection. We are also trying to use nested dynamic parameters, because we want to first return the PO document based on the PO number, and then chose specific rows based on a field value in POR1.
    It works if we don't use the Business One connector, but then the report doesn't function properly inside of SAP.
    Any ideas would be appreciated.

    I have tried using tokens but they are too simple. I need something like a subselect where you first select one value and then another that is a subset of those values. Apparently the tokens can't even use a "where" clause.
    SAP dances around Dynamic parameters, but won't come out and say that they can't be used with the B1 connector. If that is the case then they should just say so and stop wasting our time. Apparently Crystal is not truely interfaced with B1, just sort of hanging out with it.
    I don't really care other than I have to do this select, subselect. If someone has a way to do that with tokens I would love to hear it.
    Thanks,
    Roy

  • Passing dynamic prompt value using Report Engine SDK

    Hello Experts,
    I have created a webi report which contains prompt. Using SDK, I would like to catch the value of prompt which is selected by a user at runtime.
    e.g. If prompt contains values year, quarter, month, etc and user has selected value of u2018Quarteru2019 at run time, then I would like to catch that value using Report Engine SDK.
    I tried to implement prompt.getCurrentValues(). However that is not working.
    Can someone please help me to figure out the way to catch this dynamic prompt value using Report Engine SDK?
    Thanks,
    John

    Where is the prompt values being set, and where are you trying to catch it?
    Workflow description is missing here.
    Sincerely,
    Ted Ueda

  • Crystal report from JSP using the JRC

    Hi, I am trying to call crystal report from JSP using the JRC.
    But i am getting the Error as 'Logon Failed'. my web.xml entry is
    <env-entry>
    <env-entry-name>jdbc/Test</env-entry-name>
    <env-entry-value>!oracle.jdbc.driver.OracleDriver!jdbc:oracle:thin:{userid}/{password}@//10.0.0.1:1521/TestDB</env-entry-value>
    <env-entry-type>java.lang.String</env-entry-type>
    </env-entry>
    i am setting the userid and password in the code. Please see the below code for your reference. Please help me to solve the issue.
    <%@ page language="java" contentType="text/html;charset=UTF-8"%>
    <%@ page import="com.crystaldecisions.report.web.viewer.CrystalReportViewer"%>
    <%@ page import="com.crystaldecisions.sdk.occa.report.data.*"%>
    <%@ page import="com.crystaldecisions.reports.reportengineinterface.JPEReportSourceFactory" %>
    <%@ page import="com.crystaldecisions.sdk.occa.report.reportsource.IReportSourceFactory2" %>
    <%@ page import="com.crystaldecisions.sdk.occa.report.reportsource.IReportSource" %>
    <%@ page import="com.crystaldecisions.reports.reportengineinterface.JPEReportSource" %>
    <html>
    <head>
    <title>Crystal Report with Database Logon information</title> </head>
    <body bgcolor="#ffffff">
    <%
    try
    String report = "/TEMPLATE.rpt";
    IReportSourceFactory2 rptSrcFactory = new JPEReportSourceFactory();
    JPEReportSource reportSource = (JPEReportSource) rptSrcFactory.createReportSource(report, request.getLocale());
    CrystalReportViewer viewer = new CrystalReportViewer();
    viewer.setReportSource(reportSource);
    viewer.setHasRefreshButton(true);
    IConnectionInfo newConnInfo = new ConnectionInfo();
    newConnInfo.setUserName("TEST");
    newConnInfo.setPassword("TEST");
    ConnectionInfos newConnInfos = new ConnectionInfos();
    newConnInfos.add(newConnInfo);
    viewer.setDatabaseLogonInfos(newConnInfos);
    viewer.setEnableLogonPrompt(false);
    viewer.setOwnPage(true);
    viewer.setOwnForm(true);
    out.println("Connection Information: "+viewer.getDatabaseLogonInfos().getConnectionInfo(0).getAttributes().toString());
    viewer.processHttpRequest(request, response, getServletConfig().getServletContext(),null);
    viewer.dispose();
    catch(Exception e)
    throw new JspException( e);
    %>
    </body>
    </html>

    I never really had much luck with this approach.
    Mind you I was using Crystal Reports 10, and as far as I recall it didn't allow setting/changing of database at this level.
    Things to check
    - can you create a database connection on your page with this URL/username/password?
    - what server are you using? Tomcat? WebLogic?
    I found this in your other post:
    Connection Information: {Server Name=ee6rpt, Connection String=DSN=s(ee6rpt);User ID=s(ee62test);Password=;UseDSNProperties=b(false), Database Name=, Database DLL=crdb_odbc.dll}That would indicate it is using odbc to connect to the database (crdb_odbc.dll). ODBC is a bad idea with java.
    The way I have got it to work for me (after much trial and error) was to in Crystal Reports to connect using the Oracle Driver, and specifying a tnsname - eg define REPORT_DS in tnsnames.ora.
    When running through the JRC, it looked for a JNDI datasource under that same name "REPORT_DS".
    Don't know if that will help you or not.
    Good luck,
    evnafets

  • Printing Problem in Crystal Report From JSP

    Hi,
    I m calling crystal report from JSP.Report is parameterized.I m passing parameters from JSP.Report is displaying on the page,but when I try to print or export the report by pressing Print or export Button ,it displays an error message "Some parameters are missing values".
    Please guide my,what should I do? Following is the code.
    Good Bye
    AQ
    Vector fieldVector = new Vector();
    SPParameters spParams = new SPParameters();
    ReportFactory     reportFactory = new ReportFactory();
    // Setteing the report Name (Path Appended)
    reportFactory.setReportName(ReportsCoreDataConstants.REPORT_PATH.concat("Test_Rep2.rpt"));
    //Setting the parameters for the report
    ParameterField paramFeilds = null;
    System.out.println("fiscalYearCode:"+fiscalYearCode);     
    paramFeilds = spParams.createParams("IPFISCALCODE",fiscalYearCode);
    paramFeilds.setReportName("");
    fieldVector.add(paramFeilds);
    //Creating the ReportSourceInstance
    reportFactory.setFields(fieldVector);
    String exp = "";
    try {
         ReportFactory l_reportFactory=null;
         l_reportFactory = reportFactory;
         if (l_reportFactory != null) {
         CrystalReportViewer viewer = new CrystalReportViewer();
         viewer.setParameterFields(l_reportFactory.getFields());
         viewer.setOwnPage(true);
         viewer.setDisplayGroupTree(false);
         viewer.setHasZoomFactorList(false);
         viewer.setHasLogo(false);
         viewer.setHasPrintButton(true);
         viewer.setHasRefreshButton(true);
         viewer.setHasToggleGroupTreeButton(false);
         viewer.setHasViewList(false);
         viewer.setPrintMode(CrPrintMode.ACTIVEX);
         viewer.setSeparatePages(true);
         viewer.setEnableParameterPrompt(false);
         viewer.setReuseParameterValuesOnRefresh(true);
         viewer.setReportSource(l_reportFactory.createReport( request.getLocale() ));
         viewer.refresh();
         viewer.processHttpRequest(request, response, getServletConfig().getServletContext(),out);
         viewer.dispose();
    } catch(Exception e) {
         exp = e.toString();
         System.out.println("Exception in JSP : " + e.toString());
         e.printStackTrace();
    }

    I think ScreenRaghu is right. If you look at the generated source, your jsp becomes an action and processHttpRequest() method is invoked everytime some action happens. So when you click the export button, request object no longer has the values your report needs. Either put the values in session or via link or db or whatelse.

  • Altering schema of tables/objects inside a crystal report through API

    hi all,
            We run crystal reports through a Java application (using CR4E API) connecting to Oracle database. All the tables/views within the report do not use fully qualified names (i.e. schemaName.objectName) instead they use the object name alone. Earlier we would run all the reports logging in as the schema owner and hence all the objects would be accessible without issue. Per a new requirement we now log in as a non-schema owner ID and the objects are now not accessible to this user id unless a fully qualified object is not provided as the default context schema will now be different.
           We tried altering the schema through the API like so,
            ITable origTable = null;
            ITable newTable = null;
            String DB_USER_NAME = username;
            String DB_PASSWORD = password;
            String TRUSTED_CONNECTION = "true";
            String SERVER_TYPE = "JDBC (JNDI)";
            String USE_JDBC = "true";
            String DATABASE_DLL = "crdb_jdbc.dll";
            String JNDI_DATASOURCE_NAME = jndiName;
            String CONNECTION_URL = connectionURL;
            String DATABASE_CLASS_NAME = driverName;
    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("TestSchema." + origTable.getAlias());    <--- Set actual schema here but it still takes the alias as "command"
    Are we doing anything wrong here? It appears that the table name is always "command", internally I think CR uses the name command for its table and we are not allowed to change it. The table name, alias and qualifier name are be default set to "command" by CR. If I append schema name to the table name I get schemaName.command as against schemaName.objectName.
    Synyonyms are not an option for us for various reasons. We will not be able to go down that road no matter what. However we are looking at an API related solution here so if anyone could advise in this regard it would be very helpful.

    Lindell - your response was very helpful.  I was able to create a SQL Command on the subreport and change the subreport links on the main report to use the paramters in the SQL Command.  The report is now very fast - even when there are lots of detail records on the main report.  It is properly executing the query and not reading all 2M records into memory for each subreport.
    I'm still totally confused as to why Crystal was misbehaving so poorly and changing how the subreport queried the database when the only change was the fields used for record selection on the main report.  It really looks like a bug to me, but maybe someone can still enlighten me.
    thanks again so much.  We are in Parallel testing for a production rollout - and the users are MUCH happier now!  (which of course makes me much happier!)
    Susan
    PS I was not aware of the SQL Command - had never used it before.  Took me a little while to figure it out and how to do the linking - but it is very powerful.  Thanks again.

  • Error in switching from one database location  to another database location in Crystal Reports using JSP

    Hi,
    Please help me in resolving the issue while changing the database dynamically in crystal reports using JSP. I followed the below link to change DB connection dynamically.
    CRJava Modify DB Location
    Please help me on this.
    While switching from one database to another i found the issue.
    dbController.replaceConnection(oldConnectionInfo, newConnectionInfo,pFields,replaceParams);
    The Error is:
    com.crystaldecisions.sdk.occa.report.lib.ReportSDKException: Subreport does not exist.---- Error code:-2147467259 Error code name:failed
        at com.businessobjects.reports.sdk.JRCCommunicationAdapter.a(SourceFile:2284)
        at com.businessobjects.reports.sdk.JRCCommunicationAdapter.if(SourceFile:732)
        at com.businessobjects.reports.sdk.JRCCommunicationAdapter.a(SourceFile:166)
        at com.businessobjects.reports.sdk.JRCCommunicationAdapter$2.a(SourceFile:528)
        at com.businessobjects.reports.sdk.JRCCommunicationAdapter$2.call(SourceFile:526)
        at com.crystaldecisions.reports.common.ThreadGuard.syncExecute(SourceFile:102)
        at com.businessobjects.reports.sdk.JRCCommunicationAdapter.for(SourceFile:524)
        at com.businessobjects.reports.sdk.JRCCommunicationAdapter.int(SourceFile:423)
        at com.businessobjects.reports.sdk.JRCCommunicationAdapter.a(SourceFile:480)
        at com.businessobjects.reports.sdk.JRCCommunicationAdapter.int(SourceFile:421)
        at com.businessobjects.reports.sdk.JRCCommunicationAdapter.request(SourceFile:351)
        at com.businessobjects.sdk.erom.jrc.a.a(SourceFile:54)
        at com.businessobjects.sdk.erom.jrc.a.execute(SourceFile:67)
        at com.crystaldecisions.proxy.remoteagent.RemoteAgent$a.execute(SourceFile:716)
        at com.crystaldecisions.proxy.remoteagent.CommunicationChannel.a(SourceFile:125)
        at com.crystaldecisions.proxy.remoteagent.RemoteAgent.a(SourceFile:537)
        at com.crystaldecisions.proxy.remoteagent.RemoteAgent.char(SourceFile:220)
        at com.crystaldecisions.proxy.remoteagent.RemoteAgent.new(SourceFile:240)
        at com.crystaldecisions.proxy.remoteagent.RemoteAgent.do(SourceFile:452)
        at com.crystaldecisions.proxy.remoteagent.RemoteAgent.if(SourceFile:429)
        at com.crystaldecisions.proxy.remoteagent.UndoUnitBase.performDo(SourceFile:156)
        at com.crystaldecisions.proxy.remoteagent.UndoUnitBase.a(SourceFile:106)
        at com.crystaldecisions.sdk.occa.report.application.an.a(SourceFile:65)
        at com.crystaldecisions.sdk.occa.report.application.ParameterFieldController.a(SourceFile:1921)
        at com.crystaldecisions.sdk.occa.report.application.ParameterFieldController.setCurrentValues(SourceFile:2237)
        at com.crystaldecisions.sdk.occa.report.application.ParameterFieldController.setCurrentValue(SourceFile:2328)
        at org.apache.jsp.DynamicDB_jsp._jspService(DynamicDB_jsp.java:255)
        at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
        at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
        at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
        at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
        at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
        at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
        at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1023)
        at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
        at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)
    Caused by: com.crystaldecisions.reports.reportdefinition.ReportModificationException: Subreport does not exist.
        at com.businessobjects.reports.sdk.requesthandler.ParameterRequestHandler.a(SourceFile:229)
        at com.businessobjects.reports.sdk.requesthandler.ParameterRequestHandler.for(SourceFile:214)
        at com.businessobjects.reports.sdk.JRCCommunicationAdapter.do(SourceFile:1492)
        at com.businessobjects.reports.sdk.JRCCommunicationAdapter.if(SourceFile:660)
        ... 47 more
    Any help Appreciated.
    Thanks
    Penchal

    Do you have subreports in your reports?
    If yes, set the connection info for the subreports as well.
    Additionaly refer to the below discussion
    http://scn.sap.com/thread/3153289
    As you are using Crystal reports for ecllipse runtime libraries to build your jsp, you would need to post your dicussions in the below forum to get better response.
    http://scn.sap.com/community/crystal-reports-for-eclipse
    The above space is dedicated for the issues with crystal reports for ecllipse.
    Thanks,
    Prithvi

  • I want to launch Crystal report using jsp

    Hello All...
    I try to launch Crystal reports from jsp.
    i install crystal report and create one static report .
    and then i put all jar files related to that in my lib folder..
    which is in
    webapps/ ApplicationName/WEB-INF/lib..
    and write code to launch Crystal reports in jsp.
    <%@page import="com.crystaldecisions.reports.sdk.ReportClientDocument,
                   com.crystaldecisions.sdk.occa.report.lib.*,
                        java.sql.*,javax.sql.*,javax.naming.*,
                        com.crystaldecisions.report.web.viewer.CrPrintMode,
                        com.crystaldecisions.report.web.viewer.CrystalReportViewer,
                        com.crystaldecisions.sdk.occa.report.data.ConnectionInfos,
                        com.crystaldecisions.sdk.occa.report.lib.ReportSDKExceptionBase"
    %>
    <%// open the report rpt file
    String REPORT_NAME = "Report1.rpt";
    ReportClientDocument reportClientDoc = new ReportClientDocument();
    reportClientDoc.open(REPORT_NAME, 0);
    // set up a viewer
    CrystalReportViewer viewer = new CrystalReportViewer();
    viewer.setOwnPage(true);
    viewer.setOwnForm(true);
    viewer.setPrintMode(CrPrintMode.ACTIVEX);
    // pass it the report source
    viewer.setReportSource(reportClientDoc.getReportSource());
    //Render the report.
    viewer.processHttpRequest(request, response, getServletConfig().getServletContext(), null);
    %>
    i get an error when i run application or that page
    "ReportClientDocument cannot be resolved to a type"
    please give me solution ..
    Edited by: manojnikam on Jan 22, 2008 10:50 PM
    Edited by: manojnikam on Jan 24, 2008 5:00 AM

    ReportClientDocument So this class isn't found, probably because it's not in the server's classpath.
    If you really can't recognize a basic compilation error like this, you might re-consider your place in the JEE world.

  • How to call the crystal report in jsp page

    dear friends
    i want to run or call the crystal report in jsp page.
    if u know that can u send sample code for that to my id
    [email protected]

    Hi Sudhakar,
    Could you please be more speicific about the task you want to accomplish?
    Cheers
    Giri :-)

  • Crystal reports and JSP

    Hi there, I would like to call crystal reports from JSP. How can I do that?
    My system is:
    Webserver: iPlanet 4.0 SP4
    Crystal reports: 8.5 Developer version
    Database: Oracle 8i version 8.1.6
    S.O.: Solaris.
    I tried the documentation from Seagate but there isn't examples and explanations in how to do this.
    Do I need some component? Where can I get it, if I do?
    Thankyou,
    Gines

    Please visit:
    www.geocities.com/pmk16
    Regards,
    pmk16

  • Using Crystal reports in JSP

    Hi,
    I want to use Crystal report in jsp . I am running the jsp files in tomcat apache4.0 server.
    while executing the jsp files in tomcat , following class files are not being found:
    import="com.crystaldecisions.sdk.occa.report.application.*,
    com.crystaldecisions.sdk.occa.report.data.*,
    com.crystaldecisions.sdk.occa.report.lib.*
    can anyone plz tell where to get the required JAR file containing this classes or how to use crystal report in jsp.
    Regards,
    tommy

    The jars should be in your installed Crystal Reports folder( \Crystal Decisions\..\java\lib or something like that...). The problem is that your server (Tomcat and others) ignores the system classpath completely (it sets its own in its startup script).
    Therefore, in order for Tomcat to find the jars, those jars have to be placed in in %CATALINA_HOME%\common\lib\. There, they will be available for all your applications. If you don't want them available globally, put them in your particular webapp's WEB-INF\lib directory.

  • Creating Sap Crystal Report Through Oracle Stored Procedure Packages

    Hi,   
    1.How we can create crystal report through oracle stored
    procedure packages pls tell me the steps through adding command then
    tell me the syntax what should i write in command to call the stored
    procedure packages or if have some other option then also tell. 
    2.can
    we link stored procedure column to other table column that used in
    report.

    Hi Ganesh,
    As this error comes when you are trying to insert non-numeric value into a numeric column in db it seems that your field might be numeric and you are trying to send it as a string in database.
    Please check your Store Proc carefully..
    Reference Thread: Oracle/PLSQL: ORA-01722
    --Dhana

Maybe you are looking for