How to Change Crystal Report database name from visual basic code?

Hi all,
I have created a Crystal Report (CR)  with .NET VB. I also have developd some UDTs for that pusrpose and everything is OK.
However I cannot use the same CR in another Company which has the same UDTs. I have not found how Connect to Company (in other words change the DB the report reads).
Any Idea?
Thanks,
Vangelis
Edited by: Vangelis Kanellopoulos on Jul 19, 2008 6:07 PM
Edited by: Vangelis Kanellopoulos on Jul 20, 2008 10:27 AM
Edited by: Vangelis Kanellopoulos on Jul 20, 2008 10:28 AM

Hi Vangelis,
Here's a simple VB class that has functions for setting the login details for the report and passing parameters.
Option Strict Off
Option Explicit On
Public Class CrystalFunctions
    Enum ParamType As Integer
        Int
        Text
    End Enum
    Public Shared Sub SetCrystalLogin(ByVal sUser As String, ByVal sPassword As String, ByVal sServer As String, ByVal sCompanyDB As String, _
           ByRef oRpt As CrystalDecisions.CrystalReports.Engine.ReportDocument)
        Dim oDB As CrystalDecisions.CrystalReports.Engine.Database = oRpt.Database
        Dim oTables As CrystalDecisions.CrystalReports.Engine.Tables = oDB.Tables
        Dim oLogonInfo As CrystalDecisions.Shared.TableLogOnInfo
        Dim oConnectInfo As CrystalDecisions.Shared.ConnectionInfo = New CrystalDecisions.Shared.ConnectionInfo()
        oConnectInfo.DatabaseName = sCompanyDB
        oConnectInfo.ServerName = sServer
        oConnectInfo.UserID = sUser
        oConnectInfo.Password = sPassword
        ' Set the logon credentials for all tables
        For Each oTable As CrystalDecisions.CrystalReports.Engine.Table In oTables
            oLogonInfo = oTable.LogOnInfo
            oLogonInfo.ConnectionInfo = oConnectInfo
            oTable.ApplyLogOnInfo(oLogonInfo)
        Next
        ' Check for subreports
        Dim oSections As CrystalDecisions.CrystalReports.Engine.Sections
        Dim oSection As CrystalDecisions.CrystalReports.Engine.Section
        Dim oRptObjs As CrystalDecisions.CrystalReports.Engine.ReportObjects
        Dim oRptObj As CrystalDecisions.CrystalReports.Engine.ReportObject
        Dim oSubRptObj As CrystalDecisions.CrystalReports.Engine.SubreportObject
        Dim oSubRpt As New CrystalDecisions.CrystalReports.Engine.ReportDocument
        oSections = oRpt.ReportDefinition.Sections
        For Each oSection In oSections
            oRptObjs = oSection.ReportObjects
            For Each oRptObj In oRptObjs
                If oRptObj.Kind = CrystalDecisions.Shared.ReportObjectKind.SubreportObject Then
                    ' This is a subreport so set the logon credentials for this report's tables
                    oSubRptObj = CType(oRptObj, CrystalDecisions.CrystalReports.Engine.SubreportObject)
                    ' Open the subreport
                    oSubRpt = oSubRptObj.OpenSubreport(oSubRptObj.SubreportName)
                    oDB = oSubRpt.Database
                    oTables = oDB.Tables
                    For Each oTable As CrystalDecisions.CrystalReports.Engine.Table In oTables
                        oLogonInfo = oTable.LogOnInfo
                        oLogonInfo.ConnectionInfo = oConnectInfo
                        oTable.ApplyLogOnInfo(oLogonInfo)
                    Next
                End If
            Next
        Next
    End Sub
    Public Shared Sub SetCrystalParams(ByVal sFieldName As String, ByVal iDataType As ParamType, ByVal sVal As String, ByRef oRpt As CrystalDecisions.CrystalReports.Engine.ReportDocument)
        Dim oFieldDefs As CrystalDecisions.CrystalReports.Engine.ParameterFieldDefinitions
        Dim oFieldDef As CrystalDecisions.CrystalReports.Engine.ParameterFieldDefinition
        Dim oParamVals As CrystalDecisions.Shared.ParameterValues
        Dim oDiscreteVal As CrystalDecisions.Shared.ParameterDiscreteValue
        oFieldDefs = oRpt.DataDefinition.ParameterFields
        oFieldDef = oFieldDefs(sFieldName)
        oParamVals = oFieldDef.CurrentValues
        oParamVals.Clear()
        oDiscreteVal = New CrystalDecisions.Shared.ParameterDiscreteValue()
        Select Case iDataType
            Case ParamType.Int
                oDiscreteVal.Value = System.Convert.ToInt32(sVal)
            Case ParamType.Text
                oDiscreteVal.Value = sVal
        End Select
        oParamVals.Add(oDiscreteVal)
        oFieldDef.ApplyCurrentValues(oParamVals)
    End Sub
End Class
And here's how you would use them:
' Create an instance of the Crystal report
_rptCrystal = New CrystalDecisions.CrystalReports.Engine.ReportDocument()
_rptCrystal.Load(_oSBO.AddonPath + "\Reports\MyReport.rpt")
' Call SetCrystalLogin to see the logon information for all report tables
CrystalFunctions.SetCrystalLogin(sUser, sPassword, _oSBO.SboCompany.Server, _oSBO.SboCompany.CompanyDB, _rptCrystal)
' Set my report parameter value
CrystalFunctions.SetCrystalParams("MyParam", CrystalFunctions.ParamType.Int, 999, _rptCrystal)
' Print the report straight to the printer                          
_rptCrystal.PrintToPrinter(1, False, 0, 0)
The other way to approach this solution would be to base your Crystal report on a .NET dataset rather than a database connection. However, as you've already written your report, the code above is going to be simpler to implement.
Kind Regards,
Owen

Similar Messages

  • How to change crystal report data field at runtime ?

    Hello everyone,
    I have a Crystal Report file ,which i am using to generate report for my windows form project .
    In that report i have a filed called as Quantity which data type is set as decimal, the requirement is like that the number of value those comes after decimal point that should be set according to the value which is given by the user at the run time .
    For eg: If user gives 1 at the run time then the report Qty field value set one value after decimal point. Like 12.1
    if user gives 2 then Qty field the value is 12.22 like tat  but user can give from zero to any number.. and if it is zero it should not show decimal
    Note: The main idea hear is how to change the filed in Crystal Report decimal point value by using code(or we say writing code we need to set manually as user input it will change)
    Can any body help me how to solve this issue .
    S.K Nayak

    I think you could probably make the field you see a formula field and take a parameter as the number of decimal places.
    totext converts a number to a string.
    totext({decimalField}, 2)
    That's 2 decimal places.
    You could probably substitute a {parameter} for that 2.
    If not then you could substitute an entire formula.
    To explore formulas:
    foreach (FormulaFieldDefinition f in rpt.DataDefinition.FormulaFields)
    MessageBox.Show(f.Name);
    // f.Text = your new formula
    Where rpt is an instantiated report.
    Or add another string field which you display in the column and do the calculation with the original decimal.
    Hope that helps.
    Recent Technet articles:
    Property List Editing;  
    Dynamic XAML

  • How to Migrate Crystal Report Server XIR2 from Tomcat to Websphere.

    Hi Experts,
    I'd like to know how to migrate a existed Crystal Report Server XIR2 from Tomcat to Websphere.
    I don't want to upgrade the Server version, just want to deploy it from Tomcat to a new Websphere.

    Hi
    https://bosap-support.wdf.sap.corp/sap/support/notes/1219131
    Regards
    Roland

  • How to buld Crystal report using data from Bex query

    Hi,
    I have requirment where the end user wants the query in Crystal.I built a Bex query in Bex query designer.I would like to know how to create crystal report based onthe Bex query.
    Thanks,
    Chandra

    Hi Chandra,
    Here is the docuemnt which explains you in detail about the steps to create Cyrstal Report using BEX Query.
    https://www.sdn.sap.com/irj/boc/index?rid=/library/uuid/004aacbb-4983-2b10-8da7-cdff5dcbb948&overridelayout=true
    /people/ingo.hilgefort/blog/2008/02/19/businessobjects-and-sap-part-2
    Regards
    SIndhu

  • How to change Crystal Reports XI database name at run time from ASP code using ADO

    Dear All,
    I need advises regarding to my problem below
    I have two database in same SQL 2005 SERVER for TEST01 and LIVE01 Environtment, and I've created more than 100 reports with Crystal Reports 11 and call it from ASP classic page.
    The problem is how can I change a database from TEST01 to LIVE01 at the run time from ASP code as I already using TEST01 database on Crystal Reports and I do not want to set a new database location inside crystal for each reports
    Thanks and wait for your reply soon.
    Below is my code, which has no effect to crystal reports although I've change the database from TEST01 to LIVE01:
    <%
    Dim oADOConnection, oRptTable, oADORecordset, sql
    Dim struser, strpwd, strdriver, dblocation, dbname, strConnect
    struser = "sa"
    strpwd = ""     
    strdriver = "{SQL SERVER}" 
    dblocation = "SQL200501"     
    dbname = "LIVE01"    ' Changed from TEST01 to LIVE01
    strConnect = "User Id=" & strUser & ";"
    strConnect = strConnect & "PWD=" & strPwd & ";"
    strConnect = strConnect & "DRIVER=" & StrDriver & ";"
    strConnect = strConnect & "SERVER=" & DBLocation & ";"
    strConnect = strConnect & "DATABASE=" & dbName
    sql="Select * from Employee"
    Set session("oApp") = Server.CreateObject("CrystalRuntime.Application.11")
    Set session("oRpt") = session("oApp").OpenReport("C:\REPORTS\RPT01.RPT", 1) 'USING TEST01 DATABASE
    session("oRpt").MorePrintEngineErrorMessages = False
    session("oRpt").EnableParameterPrompting = False
    session("oRpt").DiscardSavedData
    Set oADOConnection = Server.CreateObject("ADODB.Connection")
    oADOConnection.Open (strConnect)
    Set oADORecordset = Server.CreateObject("ADODB.Recordset")
    Set oRptTable = session("oRpt").Database.Tables.Item(1)
    oRptTable.SetDataSource oADORecordset, 3
    session("oRpt").SQLQueryString = CStr(sql)
    session("oRpt").ReadRecords
    %>

    Did you ever find a solution to this problem?  I have the same problem when moving reports from development to Test to Production environments.  If the DBName is not the same the report ignores the name provided at runtime.

  • How to open Crystal report 11 using the Visual c++ 6.0 code

    I am using Visual c++ 6.0.I can't open crystal report X1 from my vc++ application. The same code which I have used for crystal report 7.0 is using for crystal report X1.But it shows "Unbale to load the report". Please help me out.
    The code snippet I have used is given below for the reference
    //m_Crystal_Image - Object of CCrystalCtrl class
    //csDBFilePath - Access Database File path
    //csReportFilePath - Crystal report 11 file path
    m_Crystal_Image.SetReportFileName(csReportFilePath);
    m_Crystal_Image.SetWindowTitle("Test Report");
    m_Crystal_Image.SetDataFiles(0,csDBFilePath);
    m_Crystal_Image.SetDiscardSavedData(true);
    m_Crystal_Image.SetDestination(0);
    m_Crystal_Image.SetWindowState(2);
    m_Crystal_Image.SetAction(1);
    Thanks for ur help in advance.....

    same as:
    How can I open the crystal report X1 report from the vc++ application?
    Locking thread
    Ludek

  • How to Migrate Crystal Report Server 2008 from Tomcat to Websphere.

    Hi Experts,
    Is there any documents or notes describ how to migrate CRS2008 from Tomcat to Webshere.
    Thanks.

    Hi,
    Have a look at the Web Application Deployment guides which comes in two versions, one for Windows and one for Unix.
    You can find them at help.sap.com and they are named xi31_sp3_webappd_win_en.pdf and xi31_sp3_webappd_unix_en.pdf respectively.
    But to summarise it a bit, you will use wdeploy to manually deploy the WAR files to your existing web application server. It is not too complex, but if you are not familiar with running commands in prompt and with your web application server then I suggest that you get someone to assist you.
    Cheers,
    Josh

  • How to remove database name from SQL query

    We have an MS SQL server with several databases that are of the same schema but have different data.  We do this for testing different environments.  We are using Crystal reports for the first time and we are having trouble changing the database location in the designer.  If update the data source location to the same database server, but different database name, the data still comes from the original database used when creating the report.  We look at the SQL query and it contains the database name and does not change when updating the data source.  Therefore the data always comes from the database used when originally creating the report.
    How can I remove the database name from the SQL query so the proper database is used when testing the report?

    Hi C F
    Please ensure you have followed the procedure mentioned below:
    In Crystal Reports, there are two ways to set the location of the data source your report points to, depending on your connection type.
    For ODBC and Native Connections:
    1. On the 'Database' menu, click 'Set Datasource Location'.
    2. In the 'Current Data Source' section, click the data source to be changed. You must click each individual table in the data source one by one. If the data source is a stored procedure you will not see individual tables.
    NOTE     In Crystal Reports 10, XIR1, and XIR2, if you are mapping from a data source such as a stored procedure where the report designer can not determine which fields should be mapped automatically, you will see a 'Mapping' dialog box where you can manually map fields, as in the procedure cited above.
    3. In the 'Replace with' section, click the data source you want the report to use.
    4. Click 'Update'.
    5. Close the 'Set Datasource Location' window.
    The report now points to the new location.
    For Native Connections Only:
    1. On the 'Database' menu, click 'Set Datasource Location'.
    2. In the 'Current Data Source' section, click 'Properties' to expand it and right-click 'Database Name: <path to database>'.
    3. Click 'Edit' and then type the path to the
    new data source location.
    4. Close the 'Set Datasource Location' window.
    The report now points to the new location.
    Regards
    Girish

  • How to use crystal report with php

    Hello every body
    can any body know how to use crystal report with php any helping material, code or tutorial for my problem ill be very thankful for helping me
    farooq

    Hello sir
    i am sudeep and i need to deploy crstal reports in php
    i want to integrate it in sugar crm (open source project(
    can u plz tell me how to do it
    i have written this code
    <?php
    //echo phpinfo();exit;
    $ObjectFactory= New COM("CrystalReports11.ObjectFactory.1");
    $crapp = $ObjectFactory->CreateObject("CrystalDesignRunTime.Application");
    //$crapp = new COM("CrystalRuntime.Application.10");
    $reportToRun="C:\Report4.rpt";
    $creport = $crapp->OpenReport($reportToRun, 1);
    //reportToRun=full path to *.rpt file
    $creport->Database->Tables->
    Item(1)->ConnectionProperties['User ID'] = $user;
    $creport->Database->Tables->
    Item(1)->ConnectionProperties['Password'] = $pass;
    //fomatType = integer 22=xls, 31=pdf etc
    $creport->ExportOptions->FormatType = $formatType;
    //type 1 is to output to a file I think 2 is email
    $creport->ExportOptions->DestinationType = 1;
    //location = full path to report output file
    $creport->ExportOptions->DiskFileName = $location;
    $creport->DiscardSavedData();
    $creport->Export(False);
    ?>
    thanks in advance

  • How to set the password encrytacion a database. Accdb from Visual Basic 2010 for a report. Rpl

    I want to know how to set the password encrytacion a database. Accdb from Visual Basic 2010 for a report. Rpl

    You have to connect via ODBC, then use code along the lines of what is described here:
    http://scn.sap.com/thread/3526924
    by me on March 28 and Jan on March 29.
    Also see KBA: 1686419 - SAP Crystal Reports designer does not recognize Access *.accdb file
    - Ludek
    Senior Support Engineer AGS Product Support, Global Support Center Canada
    Follow us on Twitter

  • How can I get a list of database names from environment

    Hi,
    How can I get a list of database names from environment.
    I had found a method in JE API Docs named Environment.getDatabaseNames(), and i couldn't found the same method in Berkeley DB.
    I use java interface, is it supported?
    Thanks.

    Hello,
    I don't know if it would work for you, but have you checked the db_archive utility at:
    http://download.oracle.com/docs/cd/E17076_01/html/api_reference/C/db_archive.html
    Check the -s option.
    Thanks,
    Sandra

  • How to invoke crystal reports from Oracle forms 11g R2 along with passing p

    How to invoke crystal reports from Oracle forms 11g R2 along with passing parameter to it.
    how to pass parameters to crystal report, please help.

    how to pass parameters to crystal report, please help.This would entirely depend on crystal reports and you might find informations on crystal reports related communities more likely...I for one have seen crystal reports the last time about 12 years ago. And even back then I simply acknowledged it's existence instead of working with it.
    Maybe crystal reports can be invoked via a URL call which would make it simple as you'd need simply build an URL and show the report using web.show_document. But that's pure speculation. Also you might not be the first with this requirement, so the solution to your problem might be right under your nose and just a little google search away ;)
    cheers

  • How to call crystal report from plsql

    How to call crystal report from plsql?

    http://asktom.oracle.com/pls/ask/f?p=4950:8:14685899341865976974::NO::F4950_P8_DISPLAYID,F4950_P8_CRITERIA:952229840241,

  • How can i fetch the city name from database according the state name

    If you have any example of Dyamic List box.
    How can i fetch the city name from database according the state name when i select the state name in a dynamic list box.
    Thanks

    When i run the this code it is giving the an exception
    org.apache.jasper.JasperException: javax.servlet.ServletException: javax.servlet.jsp.JspException: javax.faces.el.EvaluationException: javax.faces.FacesException: javax.faces.FacesException: Can't instantiate class: 'com.mypackage.MyBean'.. class com.mypackage.MyBean : java.lang.NullPointerException
         org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:541)
         org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:417)
         org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
         org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
         javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
         com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:346)
         com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:152)
         org.ajax4jsf.framework.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:108)
         org.ajax4jsf.framework.ajax.AjaxViewHandler.renderView(AjaxViewHandler.java:233)
         com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:107)
         com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:245)
         com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:137)
         javax.faces.webapp.FacesServlet.service(FacesServlet.java:214)
         org.ajax4jsf.framework.ajax.xmlfilter.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:127)
         org.ajax4jsf.framework.ajax.xmlfilter.BaseFilter.doFilter(BaseFilter.java:277)
    root cause
    javax.servlet.ServletException: javax.servlet.jsp.JspException: javax.faces.el.EvaluationException: javax.faces.FacesException: javax.faces.FacesException: Can't instantiate class: 'com.mypackage.MyBean'.. class com.mypackage.MyBean : java.lang.NullPointerException
         org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:846)
         org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:779)
         org.apache.jsp.test_jsp._jspService(test_jsp.java:95)
         org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
         javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
         org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393)
         org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
         org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
         javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
         com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:346)
         com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:152)
         org.ajax4jsf.framework.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:108)
         org.ajax4jsf.framework.ajax.AjaxViewHandler.renderView(AjaxViewHandler.java:233)
         com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:107)
         com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:245)
         com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:137)
         javax.faces.webapp.FacesServlet.service(FacesServlet.java:214)
         org.ajax4jsf.framework.ajax.xmlfilter.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:127)
         org.ajax4jsf.framework.ajax.xmlfilter.BaseFilter.doFilter(BaseFilter.java:277)
    root cause
    javax.faces.el.EvaluationException: javax.faces.FacesException: javax.faces.FacesException: Can't instantiate class: 'com.mypackage.MyBean'.. class com.mypackage.MyBean : java.lang.NullPointerException
         com.sun.faces.el.ValueBindingImpl.getValue(ValueBindingImpl.java:190)
         com.sun.faces.el.ValueBindingImpl.getValue(ValueBindingImpl.java:143)
         com.sun.faces.application.ApplicationImpl.createComponent(ApplicationImpl.java:406)
         javax.faces.webapp.UIComponentTag.createComponent(UIComponentTag.java:1019)
         javax.faces.webapp.UIComponentTag.createChild(UIComponentTag.java:1046)
         javax.faces.webapp.UIComponentTag.findComponent(UIComponentTag.java:761)
         javax.faces.webapp.UIComponentTag.doStartTag(UIComponentTag.java:451)
         com.sun.faces.taglib.html_basic.SelectOneMenuTag.doStartTag(SelectOneMenuTag.java:487)
         org.apache.jsp.test_jsp._jspx_meth_h_005fselectOneMenu_005f0(test_jsp.java:259)
         org.apache.jsp.test_jsp._jspx_meth_h_005fpanelGroup_005f0(test_jsp.java:219)
         org.apache.jsp.test_jsp._jspx_meth_h_005fpanelGrid_005f0(test_jsp.java:189)
         org.apache.jsp.test_jsp._jspx_meth_h_005fform_005f0(test_jsp.java:160)
         org.apache.jsp.test_jsp._jspx_meth_f_005fview_005f0(test_jsp.java:127)
         org.apache.jsp.test_jsp._jspService(test_jsp.java:86)
         org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
         javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
         org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393)
         org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
         org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
         javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
         com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:346)
         com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:152)
         org.ajax4jsf.framework.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:108)
         org.ajax4jsf.framework.ajax.AjaxViewHandler.renderView(AjaxViewHandler.java:233)
         com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:107)
         com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:245)
         com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:137)
         javax.faces.webapp.FacesServlet.service(FacesServlet.java:214)
         org.ajax4jsf.framework.ajax.xmlfilter.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:127)
         org.ajax4jsf.framework.ajax.xmlfilter.BaseFilter.doFilter(BaseFilter.java:277)
    root cause
    javax.faces.FacesException: javax.faces.FacesException: Can't instantiate class: 'com.mypackage.MyBean'.. class com.mypackage.MyBean : java.lang.NullPointerException
         com.sun.faces.application.ApplicationAssociate.createAndMaybeStoreManagedBeans(ApplicationAssociate.java:292)
         com.sun.faces.el.VariableResolverImpl.resolveVariable(VariableResolverImpl.java:97)
         com.sun.faces.el.impl.NamedValue.evaluate(NamedValue.java:145)
         com.sun.faces.el.impl.ComplexValue.evaluate(ComplexValue.java:166)
         com.sun.faces.el.impl.ExpressionEvaluatorImpl.evaluate(ExpressionEvaluatorImpl.java:263)
         com.sun.faces.el.ValueBindingImpl.getValue(ValueBindingImpl.java:160)
         com.sun.faces.el.ValueBindingImpl.getValue(ValueBindingImpl.java:143)
         com.sun.faces.application.ApplicationImpl.createComponent(ApplicationImpl.java:406)
         javax.faces.webapp.UIComponentTag.createComponent(UIComponentTag.java:1019)
         javax.faces.webapp.UIComponentTag.createChild(UIComponentTag.java:1046)
         javax.faces.webapp.UIComponentTag.findComponent(UIComponentTag.java:761)
         javax.faces.webapp.UIComponentTag.doStartTag(UIComponentTag.java:451)
         com.sun.faces.taglib.html_basic.SelectOneMenuTag.doStartTag(SelectOneMenuTag.java:487)
         org.apache.jsp.test_jsp._jspx_meth_h_005fselectOneMenu_005f0(test_jsp.java:259)
         org.apache.jsp.test_jsp._jspx_meth_h_005fpanelGroup_005f0(test_jsp.java:219)
         org.apache.jsp.test_jsp._jspx_meth_h_005fpanelGrid_005f0(test_jsp.java:189)
         org.apache.jsp.test_jsp._jspx_meth_h_005fform_005f0(test_jsp.java:160)
         org.apache.jsp.test_jsp._jspx_meth_f_005fview_005f0(test_jsp.java:127)
         org.apache.jsp.test_jsp._jspService(test_jsp.java:86)
         org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
         javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
         org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393)
         org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
         org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
         javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
         com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:346)
         com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:152)
         org.ajax4jsf.framework.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:108)
         org.ajax4jsf.framework.ajax.AjaxViewHandler.renderView(AjaxViewHandler.java:233)
         com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:107)
         com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:245)
         com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:137)
         javax.faces.webapp.FacesServlet.service(FacesServlet.java:214)
         org.ajax4jsf.framework.ajax.xmlfilter.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:127)
         org.ajax4jsf.framework.ajax.xmlfilter.BaseFilter.doFilter(BaseFilter.java:277)
    root cause
    javax.faces.FacesException: Can't instantiate class: 'com.mypackage.MyBean'.. class com.mypackage.MyBean : java.lang.NullPointerException
         com.sun.faces.config.ManagedBeanFactory.newInstance(ManagedBeanFactory.java:229)
         com.sun.faces.application.ApplicationAssociate.createAndMaybeStoreManagedBeans(ApplicationAssociate.java:282)
         com.sun.faces.el.VariableResolverImpl.resolveVariable(VariableResolverImpl.java:97)
         com.sun.faces.el.impl.NamedValue.evaluate(NamedValue.java:145)
         com.sun.faces.el.impl.ComplexValue.evaluate(ComplexValue.java:166)
         com.sun.faces.el.impl.ExpressionEvaluatorImpl.evaluate(ExpressionEvaluatorImpl.java:263)
         com.sun.faces.el.ValueBindingImpl.getValue(ValueBindingImpl.java:160)
         com.sun.faces.el.ValueBindingImpl.getValue(ValueBindingImpl.java:143)
         com.sun.faces.application.ApplicationImpl.createComponent(ApplicationImpl.java:406)
         javax.faces.webapp.UIComponentTag.createComponent(UIComponentTag.java:1019)
         javax.faces.webapp.UIComponentTag.createChild(UIComponentTag.java:1046)
         javax.faces.webapp.UIComponentTag.findComponent(UIComponentTag.java:761)
         javax.faces.webapp.UIComponentTag.doStartTag(UIComponentTag.java:451)
         com.sun.faces.taglib.html_basic.SelectOneMenuTag.doStartTag(SelectOneMenuTag.java:487)
         org.apache.jsp.test_jsp._jspx_meth_h_005fselectOneMenu_005f0(test_jsp.java:259)
         org.apache.jsp.test_jsp._jspx_meth_h_005fpanelGroup_005f0(test_jsp.java:219)
         org.apache.jsp.test_jsp._jspx_meth_h_005fpanelGrid_005f0(test_jsp.java:189)
         org.apache.jsp.test_jsp._jspx_meth_h_005fform_005f0(test_jsp.java:160)
         org.apache.jsp.test_jsp._jspx_meth_f_005fview_005f0(test_jsp.java:127)
         org.apache.jsp.test_jsp._jspService(test_jsp.java:86)
         org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
         javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
         org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393)
         org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
         org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
         javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
         com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:346)
         com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:152)
         org.ajax4jsf.framework.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:108)
         org.ajax4jsf.framework.ajax.AjaxViewHandler.renderView(AjaxViewHandler.java:233)
         com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:107)
         com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:245)
         com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:137)
         javax.faces.webapp.FacesServlet.service(FacesServlet.java:214)
         org.ajax4jsf.framework.ajax.xmlfilter.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:127)
         org.ajax4jsf.framework.ajax.xmlfilter.BaseFilter.doFilter(BaseFilter.java:277)
    root cause
    java.lang.ClassNotFoundException: class com.mypackage.MyBean : java.lang.NullPointerException
         java.beans.Beans.instantiate(Unknown Source)
         java.beans.Beans.instantiate(Unknown Source)
         com.sun.faces.config.ManagedBeanFactory.newInstance(ManagedBeanFactory.java:223)
         com.sun.faces.application.ApplicationAssociate.createAndMaybeStoreManagedBeans(ApplicationAssociate.java:282)
         com.sun.faces.el.VariableResolverImpl.resolveVariable(VariableResolverImpl.java:97)
         com.sun.faces.el.impl.NamedValue.evaluate(NamedValue.java:145)
         com.sun.faces.el.impl.ComplexValue.evaluate(ComplexValue.java:166)
         com.sun.faces.el.impl.ExpressionEvaluatorImpl.evaluate(ExpressionEvaluatorImpl.java:263)
         com.sun.faces.el.ValueBindingImpl.getValue(ValueBindingImpl.java:160)
         com.sun.faces.el.ValueBindingImpl.getValue(ValueBindingImpl.java:143)
         com.sun.faces.application.ApplicationImpl.createComponent(ApplicationImpl.java:406)
         javax.faces.webapp.UIComponentTag.createComponent(UIComponentTag.java:1019)
         javax.faces.webapp.UIComponentTag.createChild(UIComponentTag.java:1046)
         javax.faces.webapp.UIComponentTag.findComponent(UIComponentTag.java:761)
         javax.faces.webapp.UIComponentTag.doStartTag(UIComponentTag.java:451)
         com.sun.faces.taglib.html_basic.SelectOneMenuTag.doStartTag(SelectOneMenuTag.java:487)
         org.apache.jsp.test_jsp._jspx_meth_h_005fselectOneMenu_005f0(test_jsp.java:259)
         org.apache.jsp.test_jsp._jspx_meth_h_005fpanelGroup_005f0(test_jsp.java:219)
         org.apache.jsp.test_jsp._jspx_meth_h_005fpanelGrid_005f0(test_jsp.java:189)
         org.apache.jsp.test_jsp._jspx_meth_h_005fform_005f0(test_jsp.java:160)
         org.apache.jsp.test_jsp._jspx_meth_f_005fview_005f0(test_jsp.java:127)
         org.apache.jsp.test_jsp._jspService(test_jsp.java:86)
         org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
         javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
         org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393)
         org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
         org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
         javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
         com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:346)
         com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:152)
         org.ajax4jsf.framework.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:108)
         org.ajax4jsf.framework.ajax.AjaxViewHandler.renderView(AjaxViewHandler.java:233)
         com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:107)
         com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:245)
         com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:137)
         javax.faces.webapp.FacesServlet.service(FacesServlet.java:214)
         org.ajax4jsf.framework.ajax.xmlfilter.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:127)
         org.ajax4jsf.framework.ajax.xmlfilter.BaseFilter.doFilter(BaseFilter.java:277)
    root cause
    java.lang.NullPointerException
         javax.faces.model.SelectItem.setValue(SelectItem.java:254)
         javax.faces.model.SelectItem.<init>(SelectItem.java:138)
         javax.faces.model.SelectItem.<init>(SelectItem.java:96)
         com.mypackage.MyBean.fillCountryItems(MyBean.java:80)
         com.mypackage.MyBean.<init>(MyBean.java:28)
         sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
         sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
         sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
         java.lang.reflect.Constructor.newInstance(Unknown Source)
         java.lang.Class.newInstance0(Unknown Source)
         java.lang.Class.newInstance(Unknown Source)
         java.beans.Beans.instantiate(Unknown Source)
         java.beans.Beans.instantiate(Unknown Source)
         com.sun.faces.config.ManagedBeanFactory.newInstance(ManagedBeanFactory.java:223)
         com.sun.faces.application.ApplicationAssociate.createAndMaybeStoreManagedBeans(ApplicationAssociate.java:282)
         com.sun.faces.el.VariableResolverImpl.resolveVariable(VariableResolverImpl.java:97)
         com.sun.faces.el.impl.NamedValue.evaluate(NamedValue.java:145)
         com.sun.faces.el.impl.ComplexValue.evaluate(ComplexValue.java:166)
         com.sun.faces.el.impl.ExpressionEvaluatorImpl.evaluate(ExpressionEvaluatorImpl.java:263)
         com.sun.faces.el.ValueBindingImpl.getValue(ValueBindingImpl.java:160)
         com.sun.faces.el.ValueBindingImpl.getValue(ValueBindingImpl.java:143)
         com.sun.faces.application.ApplicationImpl.createComponent(ApplicationImpl.java:406)
         javax.faces.webapp.UIComponentTag.createComponent(UIComponentTag.java:1019)
         javax.faces.webapp.UIComponentTag.createChild(UIComponentTag.java:1046)
         javax.faces.webapp.UIComponentTag.findComponent(UIComponentTag.java:761)
         javax.faces.webapp.UIComponentTag.doStartTag(UIComponentTag.java:451)
         com.sun.faces.taglib.html_basic.SelectOneMenuTag.doStartTag(SelectOneMenuTag.java:487)
         org.apache.jsp.test_jsp._jspx_meth_h_005fselectOneMenu_005f0(test_jsp.java:259)
         org.apache.jsp.test_jsp._jspx_meth_h_005fpanelGroup_005f0(test_jsp.java:219)
         org.apache.jsp.test_jsp._jspx_meth_h_005fpanelGrid_005f0(test_jsp.java:189)
         org.apache.jsp.test_jsp._jspx_meth_h_005fform_005f0(test_jsp.java:160)
         org.apache.jsp.test_jsp._jspx_meth_f_005fview_005f0(test_jsp.java:127)
         org.apache.jsp.test_jsp._jspService(test_jsp.java:86)
         org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
         javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
         org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393)
         org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
         org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
         javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
         com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:346)
         com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:152)
         org.ajax4jsf.framework.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:108)
         org.ajax4jsf.framework.ajax.AjaxViewHandler.renderView(AjaxViewHandler.java:233)
         com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:107)
         com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:245)
         com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:137)
         javax.faces.webapp.FacesServlet.service(FacesServlet.java:214)
         org.ajax4jsf.framework.ajax.xmlfilter.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:127)
         org.ajax4jsf.framework.ajax.xmlfilter.BaseFilter.doFilter(BaseFilter.java:277)

  • How to do crystal reports in bi-7 i need  clear steps

    how to do crystal reports in bi-7 i need  clear steps

    Hi,
    Please read the following documents.
    I am sure that this is going to help you in creating crystal reports.
    Regards,
    Subha
    Pls grant me points if it is found useful
    Use
    The Reporting Agent allows you to precalculate BEx queries (as “useful queries”) for Crystal reports in the background. This is a device used to improve system performance when executing Crystal reports.
    Prerequisites
    ·        In the BEx Query Designer, you have defined a “useful query” for Crystal Reports and determined variables for the required characteristics.
    ·        You may want to apply a filter when precalculating this “useful query” using a control query (see “Parameter Filtering” in the section below). In this case, you need to have created an additional suitable query in the BEx Query Designer.
    The associate variable must have the type “Changeable with Query Navigation”. Other variables can have any type.
    Procedure
           1.      Choose the REPORTING_AGENT transaction code.
           2.      Select Precalculating Crystal Reports Queries and choose Execute.
           3.      Navigate to the required query in the left-hand Reporting Agent Settings tree.
           4.      You have the following options for creating a new setting:
    -         Choose New Setting from the context menu.
    -         Choose  Create New Setting.
    The New Reporting Agent Setting dialog box appears.
           5.      Enter a technical name and a description.
    The following information is displayed on the General tab page:
    -         The functional area of the setting is Precalculation of Crystal Reports Queries.
    -         Information about the query for which you are creating a setting is shown under the Query group header (description, technical name, InfoProvider).
    -         After the setting has been saved for the first time, the system displays details of the last person who changed the setting and the time this change was made, under the Last Changed On/By group header.
    -         Under the Setting is Used in Packages group header, the system displays information about the packages in which the setting is used, and how they are scheduled. This information can only be displayed if you have defined the setting and assigned one or more scheduling packages to it.
           6.      Choose the Parameters tab page.
           7.      Determine whether precalculation of the Crystal Reports queries are to be parameterized using a filter and using variants.
    For more information and recommendations for choosing parameters in a straightforward example, see Parameterizing Crystal Reports Queries Setting.
    Filtering Parameters
    No Filters
    When you do not want to use a control query to precalculate variables, choose No Filter.
    You can combine this option with parameterization using Variables (see below).
    Explicitly Using Query Result
    If you want to use a control query when filtering, choose Explicitly Using Query Result. You can now make entries in the Control Query and Variants fields.
    Specify the technical name of the control query. Input help is available. After you save your entries, the system updates the information according to your selections.
    You only need to specify a variant when the control query contains input-ready mandatory variables. This does not happen very often, however.
    You can combine this option with parameterization using Variables (see below).
    Parameter Variants
    After making your setting for filtering a parameter, you can process variant for the individual characteristic values of the variables set in the „useful query“.
    Note: The variable screen only offers such variables when they have not already been filled by the control query. (This can also include variables of type “Changeable with Query Navigation”, as long as they aren’t filled by the query).
    You can choose from the following functions:
    Create a Variant
    A dialog box appears in which you can choose values for the SAP variables used in the “useful query”, in the Query Selection area. Input help is available for those InfoObjects for which SAP variables have been created.
    Enter the required data.
    Choose  .
    Change Variants
    Delete Variants
    If you have already created one or more variants, the system lists these in the lower part of the screen. Choose the variants you want to change or delete and choose the appropriate function.

Maybe you are looking for