Change Database Conection?

I have a Datasource reference to my local SQLServer in my project.
I need change it to other database server on deploy.
Is it possible? Where i change conection parameters.
thank in advance

Hi, you can change that through application server admin console. What application server do you use? In case of Sun App Server 8.x this is under Resources/JDBC/Connection Pools/ branch in admin console.
Roman.

Similar Messages

  • Changing Database connection at runtime in CR2008

    Hi,
    I have a VS2008 application which is using CR2008 to generate pdf reports for the user. Problem is I am not able to change the database connection to any server other than the one that was used to create the report template.
    My environment has CR2008 SP2. I have tried reports with no paramter as well as the ones with parameters both dont seem to work.
    I have already tried a couple of things:
    a) report document refresh after loading it
    b) setting the database connection as
    this._crReport.DataSourceConnections[0].SetConnection(dbServerName, dbName, dbUserId, dbPwd);
    c) setting the database connection as
    tbls = this._crReport.Database.Tables;
                    bool test = false;
                    foreach (Table tbl in tbls)
                        tblLogonInfo = tbl.LogOnInfo;
                        tblLogonInfo.ConnectionInfo = connInfo;
                        tbl.ApplyLogOnInfo(tblLogonInfo);
                        test = tbl.TestConnectivity(); ** note this alwys return a true for the changed database server
    I have read a couple of thread but none has worked for me...Is this a known issue with CR2008?
    Thanks
    Kajal

    Hi Kajal,
    I am assuming that you are not changing the schema of the report at any point of time. I would suggest you to try pointing to the other database through designer to make sure that you can hit the database and the schema is correct. You can also create a udl file to check the database connectivity.
    Then just for testing purpose you can try the following code:
    ReportDocument reportDoc = new ReportDocument();
    reportDoc.Load("path of the report");
    reportDoc.SetDatbaseLocation("uid","pwd","Servername","tablename");
    reportDoc.SetParameterValues("Parameter-Name","values");
    CrystalReportViewer.ReportSoure=reportDoc;
    Does that help?
    Thanks.

  • Issue with changing database location at runtime

    I am having a similar issue to:
    Re: Issue with changing database location at runtime
    where I am using Crystal Reports 2008 SP 3 fix pack 3.3 and a OLE DB connection to a SQL 2008 R2 server. Running on a computer on the network where the report can see the original development server is fast, other computers where that server is not available are hanging 20 seconds before coming up.
    I am using the same code from the Crystal Sample app to change the connection on each table. I found that the slowness comes the first time the ReportDocument object is accessed to get the collection of database tables, before the connection info is set.
    Fix pack 3.4 was mentioned in that post.  Does fix pack 3.4 fix that issue? I don't see fix pack 3.4 on the downloads page (https://websmp130.sap-ag.de/sap%28bD1lbiZjPTAwMQ==%29/bc/bsp/spn/bobj_download/main.htm)

    I just found on the reports that were having the issue there was a SQL Expression.  Per this thread:
    Re: Report load is slow after changing database servers
    There was an issue with that and the fix is not out til the end of Feb so I found a way not to use the SQL Expression and the speed is much better.
    However, your information provided led me to this post:
    Cannot Change Table Location, but Only for One Report
    And I am also experiencing an issue where the table location is not changing on one subreport and I will look into that as a possible solution.
    Thanks so much for your help.

  • SSRS 2012, SQL Server 2012. Problem with changing database

    Hi all!
    I have a problem with changing database for SSRS.
    I have a SSRS 2012 and SQL Server 2012. These programs is on WIndows Server 2012.
    I need to link SSRS to the new database instance. For this I run SSRS Configeration Manager, open tab Database, click Change Database. Then I choose option "Choose an existing report server database", click Next, write the server name, test
    connection (it's successed) and push Next again. Then I see this error message:
    Error
    The feature: "Using other editions of SQL Server for report data sources and/or the report server database" is not supported in this edition of Reporting Services.
    OK   
    I'm confused, cause I have compatible versions of programs and THIS error.
    Please, help me.
    Thanks.

    Hi Kirill,
    From the error message, we can know that the issue may be caused by incorrect editions of SQL Server for report data sources are used as the Report Server Database.
    When creating a report server database, please be aware that not all editions of SQL Server can be used to host the database. So we should make sure that we have used the correct database as the
    Report Server Database. For more details, please refer to the “Report Server Database Server Edition Requirements” section in the following document:
    http://technet.microsoft.com/en-us/library/cc645993.aspx
    Hope this helps.
    Thanks,
    Katherine Xiong
    Katherine Xiong
    TechNet Community Support

  • Changing databases from MS SQL Express to MySQL in a  Report at runtime

    Hi all,
    I have an issue in changing databases from MS SQL Express to MYSQL or vice versa in a Report at runtime.
    Here is what I do:
    I create a very simple report with the Crystal Report Designer 2008 V 12.3.0.601.
    This report uses a stored procedure to retrieve it's data. I connect to the Database with JDBC.
    I have two Databases with similar schema and procedures: MS SQL Express an MySQL.
    When I create the report with MSSQL all parameters have the '@' character, as they are named. ok.
    I deploy this report in a JSP application with the crystaldecisions SDK an show it in html viewer format.
    The connection to the MSSQL DB gets established by my JSP and the CRJavaHelper.
    I pass the parameters through my URL to the JSP and finally to the CRJavaHelper (addDiscreteParameterValue)
    and everything works fine.
    The challenge starts, when I try to change the Datasource of this report to MySQL at runtime (which is a requirement in my project).
    I successfully can establish the DBConnection, but my stored procedure just doesn't get called!
    The report just displays totally empty, no Exceptions etc. are thrown. In the DB logfile I see the effort to find my procedure
    and that's all. The Statements called by the SDK finds the correct Procedure, but there's no call to the procedure.
    Of course I know, that MS SQL names it's procedures slightly different (';1' at the end), but even when I rename the table Alias to the correct name in CRHelperJava, I get no call to the procedure in MySQL. I also renamed the parameter-fields in changeDataSource(..) by casting the table to IProcedure and working on its methods. Still no success.
    What am I missing to do or what do I do wrong?
    Any suggestions or even solutions?
    Best Regards,
    Tom

    after all I have managed to set param Values, now I'm stuck because the parms seem to have dissappeared in the formula fields. E.g. I receive this Exception:
    <br><br>
    com.crystaldecisions.sdk.occa.report.lib.ReportSDKException: Ausnahme in Formel ""{@DurationMin}"" bei ""{dataProc.Duration}"":
    Dieser Feldname ist unbekannt.---- Error code:-2147467259 Error code name:failed
         at com.businessobjects.reports.sdk.JRCCommunicationAdapter.a(SourceFile:2285)
         at com.businessobjects.reports.sdk.JRCCommunicationAdapter.if(SourceFile:733)
         at com.businessobjects.reports.sdk.JRCCommunicationAdapter.a(SourceFile:167)
         at com.businessobjects.reports.sdk.JRCCommunicationAdapter$2.a(SourceFile:529)
         at com.businessobjects.reports.sdk.JRCCommunicationAdapter$2.call(SourceFile:527)
         at com.crystaldecisions.reports.common.ThreadGuard.syncExecute(SourceFile:102)
         at com.businessobjects.reports.sdk.JRCCommunicationAdapter.for(SourceFile:525)
         at com.businessobjects.reports.sdk.JRCCommunicationAdapter.int(SourceFile:424)
         at com.businessobjects.reports.sdk.JRCCommunicationAdapter.request(SourceFile:352)
         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.sdk.occa.report.application.RowsetController.getSQLStatement(SourceFile:1485)
         at org.apache.jsp.report_jsp._jspService(report_jsp.java:360)
         at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
         at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:386)
         at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
         at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
         at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
         at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
         at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
         at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
         at java.lang.Thread.run(Unknown Source)
    Caused by: com.crystaldecisions.reports.dataengine.DataEngineException: Ausnahme in Formel ""{@DurationMin}"" bei ""{dataProc.Duration}"":
    Dieser Feldname ist unbekannt.
         at com.crystaldecisions.reports.dataengine.DataSourceManager.do(SourceFile:692)
         at com.crystaldecisions.reports.dataengine.DataSourceManager.new(SourceFile:607)
         at com.crystaldecisions.reports.dataengine.DataSourceManagerCoordinator.a(SourceFile:505)
         at com.crystaldecisions.reports.dataengine.DataSourceManager.a(SourceFile:1060)
         at com.crystaldecisions.reports.dataengine.DataProcessor2.a(SourceFile:729)
         at com.crystaldecisions.reports.dataengine.DataProcessor2.a(SourceFile:699)
         at com.businessobjects.reports.sdk.requesthandler.DatabaseRequestHandler.i(SourceFile:1308)
         at com.businessobjects.reports.sdk.requesthandler.DatabaseRequestHandler.k(SourceFile:1297)
         at com.businessobjects.reports.sdk.JRCCommunicationAdapter.do(SourceFile:1310)
         at com.businessobjects.reports.sdk.JRCCommunicationAdapter.if(SourceFile:661)
         ... 32 more
    Caused by: com.crystaldecisions.reports.formulas.FormulaException: Ausnahme in Formel ""{@DurationMin}"" bei ""{dataProc.Duration}"":
    Dieser Feldname ist unbekannt.
         at com.crystaldecisions.reports.formulas.o.a(SourceFile:1041)
         at com.crystaldecisions.reports.formulas.o.do(SourceFile:1013)
         at com.crystaldecisions.reports.formulas.o.new(SourceFile:688)
         at com.crystaldecisions.reports.formulas.o.else(SourceFile:459)
         at com.crystaldecisions.reports.formulas.f.void(SourceFile:65)
         at com.crystaldecisions.reports.formulas.FormulaParser.a(SourceFile:345)
         at com.crystaldecisions.reports.formulas.r.a(SourceFile:89)
         at com.crystaldecisions.reports.formulas.FormulaInfo.a(SourceFile:570)
         at com.crystaldecisions.reports.formulas.FormulaService.compile(SourceFile:347)
         at com.crystaldecisions.reports.reportdefinition.FormulaCompiler.a(SourceFile:139)
         at com.crystaldecisions.reports.reportdefinition.FormulaFieldDefinitionBase.compile(SourceFile:928)
         at com.crystaldecisions.reports.reportdefinition.o.a(SourceFile:1360)
         at com.crystaldecisions.reports.reportdefinition.o.a(SourceFile:1348)
         at com.crystaldecisions.reports.reportdefinition.o.a(SourceFile:4225)
         at com.crystaldecisions.reports.dataengine.DataSourceManager.do(SourceFile:687)
         ... 41 more
    <br><br>
    where dataProc is my stored procedure and @DurationMin is a function field.
    do I have to call verifyDatabase() when I have changed DBs and set the param Values?
    Is there a defined sequence to execute these steps?
    Edited by: tomspengler on Dec 8, 2011 1:55 PM

  • Change database connection for FRS Report

    currently we are using ASO BSO model and all FRS reports are retrieve against BSO Database.Now we are converting to ASO only model. can i use the same report against ASO database .
    There is a option of chang database connection under tool in workspace . will this work or do i have to make all reports again
    can you please help me with this
    thank you

    IN some cases even if the report has additional dimensions it will work. After you change the connection. Open the report in designer. The new dimensions will automatically update. Save the report and you should be good to go. If dimensionality is exactly the same you don't even have to do that, just change the connection, point ot the new database and run the report.

  • How to Change Database of Report before Exporting?

    I am having difficulties changing the database that the report should run against.
    We are using Oracle.  In the past when scheduling a report through CE, I would manipuate the Desktop.ReportLogons object.  For Oracle I simple changed the CustomServerName, CustomUserName, and CustomPassword properties.  Everything worked fine when the report was scheduled and ran.
    Now I am doing an on-demand report without an interactive viewer.  I am doing everything in code using RasAppFactory and the ReportClientDocument.
    I am looking at the DatabaseController of ReportClientDocument.  I thought I could just use the LogonEx method passing in the server, user, password, and an empty string for the database since for Oracle connections you only specify server and not database.  However, it is still trying to connect to the defined database.
    Can someone point me to an Oracle specific example of how to properly change database info when report runs?
    Do I need to be using other methods like one of the SetTableLocation methods?
    Thanks in advance for any help.

    Hello, Stephen;
    You are correct, with Oracle you do not need the Database property.
    The person logged on to Business Objects Enterprise through the RAS .NET application would need rights to make the change in database connections. Can the usr with the same logon make the change directly in Enterprise?
    The ReportClientDocument separates the Server Name and Database from the User ID and Password with the PropertyBag. The convenience methods such as LogonEx will only change the User ID and Password. To change all four properties you need the full RAS logon code.
    The full logon for RAS would use code as shown below.
    Elaine
    ==========================================
    Imports System
    Imports Microsoft.Win32
    Imports CrystalDecisions.Enterprise
    Imports CrystalDecisions.Enterprise.Desktop
    Imports CrystalDecisions.CrystalReports.TemplateEngine
    Imports CrystalDecisions.ReportAppServer.ClientDoc
    Imports CrystalDecisions.ReportAppServer.Controllers
    Imports CrystalDecisions.ReportAppServer.ReportDefModel
    Imports CrystalDecisions.ReportAppServer.DataDefModel
    Imports CrystalDecisions.ReportAppServer.CommonObjectModel
    Imports CrystalDecisions.ReportAppServer.ObjectFactory
    Partial Class Logon
        Inherits System.Web.UI.Page
        Dim mySampleReportName As String = "SimpleSetLogonInfo.rpt"
        Dim crServerName As String = "myOracle"
        Dim crDatabaseName As String = ""
        Dim databaseUserName As String = "tester"
        Dim databasePassword As String = "tester"
        Dim crDatabaseController As DatabaseController
        Dim crDatabase As Database
        Dim crTableOld, crTableNew As Table
        Protected Sub Page_Init(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Init
            ConfigureCrystalReports()
        End Sub
        Private Sub ConfigureCrystalReports()
            DatabaseLogon_managedRAS()
        End Sub
        Private Sub DatabaseLogon_managedRAS()
            Dim mySessionMgr As New SessionMgr()
            Dim myEnterpriseSession As EnterpriseSession
            Dim myReportAppFactory As ReportAppFactory
            Dim myInfoStore As InfoStore
            Dim myInfoObjects As InfoObjects
            Dim myInfoObject As InfoObject
            Dim myReportClientDocument As ReportClientDocument
            Dim myEnterpriseService As EnterpriseService
            Dim myObject As Object
            myEnterpriseSession = mySessionMgr.Logon("administrator", "", "CMS_Server", "secEnterprise")
            myEnterpriseService = myEnterpriseSession.GetService("InfoStore")
            myInfoStore = New InfoStore(myEnterpriseService)
            myInfoObjects = myInfoStore.Query("Select SI_ID From CI_INFOOBJECTS Where SI_NAME='" + mySampleReportName + "' And SI_INSTANCE=0")
            myInfoObject = myInfoObjects(1)
            myObject = myEnterpriseSession.GetService("", "RASReportFactory").Interface
            myReportAppFactory = CType(myObject, ReportAppFactory)
            myReportClientDocument = myReportAppFactory.OpenDocument(myInfoObject.ID, 0)
            'Convenience methods not to change Database or Server name from what is in the report
            'myReportClientDocument.DatabaseController.logon("UID", "PWD")
            'myReportClientDocument.DatabaseController.LogonEx("myServerName", "myDatabase", "UID", "PWD")
            crDatabase = myReportClientDocument.DatabaseController.Database()
            crDatabaseController = myReportClientDocument.DatabaseController()
            ' Loop through all the tables in the main
            ' report and set their new table information.
            For Each crTableOld In crDatabase.Tables
                crTableNew = GetNewTable(crTableOld, crServerName, crDatabaseName, databaseUserName, databasePassword)
                crDatabaseController.SetTableLocation(crTableOld, crTableNew)
                crTableNew = Nothing
            Next
            crDatabase = Nothing
            crTableOld = Nothing
            myCrystalReportViewer.ReportSource = myReportClientDocument
        End Sub
        Private Function GetNewTable(ByVal crTableOld As Table, ByRef serverName As String, ByRef databaseName As String, ByRef userName As String, ByRef password As String) As Table
            ' Create crTableNew as a new table, then fill its properties.
            Dim crTableNew As New Table
            Dim crAttributes, crLogonInfo As PropertyBag
            ' Set some of the properties of the new table object.
            crTableNew.ConnectionInfo.UserName = userName
            crTableNew.ConnectionInfo.Password = password
            crTableNew.ConnectionInfo.Kind = crTableOld.ConnectionInfo.Kind()
            crTableNew.Name = crTableOld.Name
            crTableNew.Alias = crTableOld.Alias
            ' Make a copy of the connectionInfo.Attributes and apply them to the new table.
            crTableNew.ConnectionInfo.Attributes = crTableOld.ConnectionInfo.Attributes.Clone(True)
            crAttributes = crTableNew.ConnectionInfo.Attributes()
            ' Check to ensure the connection info Kind is correct then change the a
            ' appropriate properties in the PropertyBag.
            ' These will vary from report to report using ODBC, OLEDB or Native drivers
            ' To find out your properties
            ' open your report in the Crystal Reports Designer and go to Database,
            ' Set Location menu. Check the properties of your connection and note
            ' the name of the properties that will change.
    'ODBC to Oracle "Data Source Name" and "Table Name" with "Owner"
    'OLEDB to Oracle "Provider" "Data Source" and "Table Name" with "Owner"
            If crTableNew.ConnectionInfo.Kind = CrConnectionInfoKindEnum.crConnectionInfoKindCRQE Then
                crLogonInfo = CType(crAttributes("QE_LogonProperties"), PropertyBag)
                crLogonInfo("Data Source") = crServerName
                'MS SQL Server OLEDB
                'Leave out for Oracle
                'crLogonInfo("Initial Catalog") = crDatabaseName
            End If
            ' Adjust the qualified name, then return the new table object if the table name has changed
            crTableNew.QualifiedName = "Owner." & crTableNew.Name
            Return crTableNew
        End Function
    End Class

  • Not working. Change database location trough VB 6

    Hi,
    I just finished two reports in Crystal 10 using an Access Database (database  location and query are hardcoded in the reports.
    I made a small vb 6 application to launch the reports. Now I need to change database location for the reports trough VB 6.  I have the following code, but it is not working. The reports do not show any data and I do not get any error. I think the problem is with the hardcoded query. The report is designed on this query and the field reference on the reports are like Command.Field1
    I just want tho change database location in VB, but I want the report take the query that is in it.
    I have the following code. How can I make them work.? Is there a better way to do it?
    Dim Report As New CR2 'set up the report
    Dim conn3 As New ADODB.Connection  'ADO connection
    Dim rs As New ADODB.Recordset      'rs connection
    Function F_ViewReport()
    'On Error GoTo End_FormLoad
        Dim sSQL2 As String
        gsRootJob = "4850"
        Dim sSQL2 As String
        gsRootJob = "4850"
    "SELECT Material.Job, Material.Indicator, PO_Detail.Order, Source.Act_Qty,  Vendor.Name, PO_Header.PO, PO_Detail.Due_Date FROM (((Material LEFT JOIN Source ON Material.Material_Req = Source.Material_Req) LEFT JOIN PO_Detail ON Source.PO_Detail = PO_Detail.PO_Detail) LEFT JOIN PO_Header ON PO_Detail.PO = PO_Header.PO) LEFT JOIN Vendor ON PO_Header.Vendor = Vendor.Vendor WHERE (((Material.Job) Like '" & gsRootJob & "*')) ORDER BY Material.Job, PO_Header.PO, PO_Detail.Line;"
        Report.DiscardSavedData
        Set conn3 = New ADODB.Connection
        conn3.Open "provider=Microsoft.jet.OLEDB.4.0; Data Source=" & App.Path & "\Data tables.mdb"
        Set rs = New ADODB.Recordset
        rs.Open sSQL2, conn3, adOpenKeyset, adLockReadOnly
        Report.Database.SetDataSource rs, , 1
        CRViewer2.ReportSource = Report
        CRViewer2.DisplayTabs = False
        CRViewer2.ViewReport
        CRViewer2.Zoom 1
        Screen.MousePointer = vbHourglass
    Please help!
    cc

    Hi Cris,
    It seems that you are having issue with SDK's.
    Post your question in SDK forum.
    [SAP Crystal Reports, version for Visual Studio;
    You can download samples from here:
    [https://www.sdn.sap.com/irj/boc/samples]
    That forum is monitored by qualified technicians and you will get a faster response there. Also, all SDK queries remain in one place and thus can be easily searched in one place.
    Thank you for your understanding,
    Regards,
    Shweta

  • When changing database directory in lk6.5, no alarms are logged anymore.

    When changing database directory in lk6.5, no alarms are logged anymore. Traces are running ok, only any query in MAX concerning alarms, will result in an empty response

    Hi Ryan,
    I tried many ways. First as you described. Second; delete all databases (with MAX) and start lookout, hoping lk would make al necessary settings.
    I tried short path name, long path name. All the same results; database will be made (or manually with Max or automatically by lk), all traces works, only NOT the Alarm logging. (database isn't corrupted, while a query done in MAX don't result in an error, just empty result).
    I the meantime I found something;
    C:\Documents and Settings\my name\my documents\Databse --> traces works, alarms not
    C:\Program Files\National Instruments\Lookout 6.5\Database --> all works
    So it seams that specificly "my documents" does'nt work for alarms, just for traces (????)
    I also found the following message when trying to export the alarms; "The given Citadel database is not currently configured to log alarms to a relational database." Does this ring a bell?

  • Changing database (login screen) in 10.1.3 Jclient ADF

    I have heard that in Jdev 10.1.3 there will be working login screen, but it is made exactly like in 10.1.2.
    During creating fe master-detail form, You can set in wizard to create login screen, but this is only simple user/pass panel. If You want to change database during runtime it is not that simple. Everything is taken from applicationModule. There is an example (made by Frank) how to build login screen (using database list from file). Is there an example how to build complete login screen with database, sid, log, pass... ?
    thx,
    Jacek

    Hi Frank,
    I have a related question could you take a look at following thread:
    Setting v$session.program property in application module config
    I would like to have a identifier of the application in the v$session.view/table
    For the first JClient login it works but when a new application module instance is opened the v$session.program is empty?
    Is there global solution for all application modules no matter the application (Web/JClient/...), another identifier field is ok.
    Thanks
    Fred

  • Changing database server on a report with subreports = formula error

    Good morning,
    I currently have several reports that print out, and were developed attached to our development database. However, I need to be able to dynamically change the server that the report uses according to the server configured in our application. Each of these reports contains one or more subreports, which point to the same server and database as the main report. All reports, both the main and subreports, are based on manual SQL commands.
    I'm running into some significant issues. So significant, in fact, that we were forced to deploy our application with reports that had been switched to our production environment in the designer in order to get them functional. This is, obviously, not an acceptable or long-term solution.
    I've gone round and round a couple of times I get different results with different methods of changing this information. I'll outline them below. First, my current code:
    ConnectionInfo connectionInfo = new ConnectionInfo();
                    TableLogOnInfo logOnInfo = new TableLogOnInfo();
                    Console.WriteLine("Report \"{0}\"", report.Name);
                    foreach (Table table in report.Database.Tables)
                        logOnInfo = table.LogOnInfo;
                        connectionInfo = new ConnectionInfo(logOnInfo.ConnectionInfo);
                        connectionInfo.ServerName = "panthers-dev";
                        connectionInfo.DatabaseName = "Prosys";
                        logOnInfo.ConnectionInfo = connectionInfo;
                        //table.Location = "Prosys.dbo." + table.Location.Substring(table.Location.LastIndexOf(".") + 1);
                        table.ApplyLogOnInfo(logOnInfo);
                        table.LogOnInfo.ConnectionInfo = connectionInfo;
                        Console.WriteLine("\t\"{0}\": \"{1}\", \"{2}\", \"{3}\", {4}", table.Name, table.LogOnInfo.ConnectionInfo.ServerName, table.LogOnInfo.ConnectionInfo.DatabaseName, table.Location, table.TestConnectivity());
                    foreach (Section section in report.ReportDefinition.Sections)
                        foreach (ReportObject ro in section.ReportObjects)
                            if (ro.Kind == ReportObjectKind.SubreportObject)
                                SubreportObject sro = (SubreportObject)ro;
                                ReportDocument subreport = report.OpenSubreport(sro.SubreportName);
                                Console.WriteLine("\tSubreport \"{0}\"", subreport.Name);
                                foreach (Table table in subreport.Database.Tables)
                                    logOnInfo = table.LogOnInfo;
                                    connectionInfo = new ConnectionInfo(logOnInfo.ConnectionInfo);
                                    connectionInfo.ServerName = "panthers-dev";
                                    connectionInfo.DatabaseName = "Prosys";
                                    logOnInfo.ConnectionInfo = connectionInfo;
                                    //table.Location = "Prosys.dbo." + table.Location.Substring(table.Location.LastIndexOf(".") + 1);
                                    table.ApplyLogOnInfo(logOnInfo);
                                    table.LogOnInfo.ConnectionInfo = connectionInfo;
                                    Console.WriteLine("\t\t\"{0}\": \"{1}\", \"{2}\", \"{3}\", {4}", table.Name, table.LogOnInfo.ConnectionInfo.ServerName, table.LogOnInfo.ConnectionInfo.DatabaseName, table.Location, table.TestConnectivity());
    Using this approach, my console output prints what I expect and want to see: the correct server and database information, and True for TestConnectivity for all reports and subreports. The two reports I have that have no subreports print out correctly, with data from the proper server. However, all of the reports with subreports fail with formula errors. If this procedure is not run, they work just fine on either server.
    I had to place the assignment of table.LogOnInfo.ConnectionInfo = connectionInfo after the call to ApplyLogOnInfo, as that function did not behave as expected. If I perform the assignment first (or not at all), then calling ApplyLogOnInfo on the outer report's table did NOT affect the values of its ConnectionInfo object, but it DID affect the values of the ConnectionInfo object's of its subreports!
    In any event, if anyone could post a code sample of changing database connection information on a report containing subreports, I would appreciate it.
    Any help is greatly appreciated and anxiously awaited!

    Hi Adam,
    Code for changing database connection information on a report containing subreports :
    private ReportDocument northwindCustomersReport;
        private void ConfigureCrystalReports()
            northwindCustomersReport = new ReportDocument();
            string reportPath = Server.MapPath("NorthwindCustomers.rpt");
            northwindCustomersReport.Load(reportPath);
            ConnectionInfo connectionInfo = new ConnectionInfo();
            connectionInfo.ServerName = "localhost";
            connectionInfo.DatabaseName = "Northwind";
            connectionInfo.IntegratedSecurity = false;
            SetDBLogonForReport(connectionInfo, northwindCustomersReport);
            SetDBLogonForSubreports(connectionInfo, northwindCustomersReport);
            crystalReportViewer.ReportSource = northwindCustomersReport;
        private void Page_Init(object sender, EventArgs e)
            ConfigureCrystalReports();
        private void SetDBLogonForReport(ConnectionInfo connectionInfo, ReportDocument reportDocument)
            Tables tables = reportDocument.Database.Tables;
            foreach (CrystalDecisions.CrystalReports.Engine.Table table in tables)
                TableLogOnInfo tableLogonInfo = table.LogOnInfo;
                tableLogonInfo.ConnectionInfo = connectionInfo;
                table.ApplyLogOnInfo(tableLogonInfo);
        private void SetDBLogonForSubreports(ConnectionInfo connectionInfo, ReportDocument reportDocument)
            Sections sections = reportDocument.ReportDefinition.Sections;
            foreach (Section section in sections)
                ReportObjects reportObjects = section.ReportObjects;
                foreach (ReportObject reportObject in reportObjects)
                    if (reportObject.Kind == ReportObjectKind.SubreportObject)
                        SubreportObject subreportObject = (SubreportObject)reportObject;
                        ReportDocument subReportDocument = subreportObject.OpenSubreport(subreportObject.SubreportName);
                        SetDBLogonForReport(connectionInfo, subReportDocument);
    Hope this helps!!
    Regards,
    Shweta

  • Frm-40208 from running in query mode. cannot change database fields

    Hi,
    Could some one help me with this.
    I am calling a form from another form. I am passing the parameter list to the calling form and doing a query by setting the block property. But when queries the message
    FRM-40208 Form running in query mode. cannot change database fields .
    I do not want the message to appear when they go the called form . Please some one could help me how could I avoid displaying the message.
    Regards
    Bain

    Hi,
    Good day! I am working with a module that also calls another form. It uses call_form with query mode parameter set to query_only. My problem is, whenever i call the other form using the call_form, it would display the called module and then as it populates the detail block of the called form, it will display frm-40208 from running in query mode. cannot change database fields per record. What I want is for the message to be displayed only once.
    I have tried capturing the error by using on-error trigger, but it doesn't go to that whenever the other form was being called. I think the message has to do with the post-query trigger, because it passes some values on a dbase block objects.
    Do you have any suggested solutions or workarounds to make the message display only once whenever the other form is being invoked by the call_form?
    I would greatly appreciate any suggestions/ideas.
    Thanks and regards,
    ASantiago

  • FRM-40208: Form running in query-only mode. Cannot change database fields.

    Hi,
    I am using forms 6i where it is calling a form from a menu in query like call_form(,query_only). Now an error is occurring on call of that form ‘FRM-40208: Form running in query-only mode. Cannot change database fields.’ Though this is been handled to give a certain message from on_error message from a package from library.
    Now the issue is that the error keeps on popping even after the ok button is pressed. There are number of records from the table. How can we handle the error. Any suggestion would be really appreciated!!!
    Regards,
    Rajesh

    thanks Gred but i have resolved the issue. it seems that each row was going into query_only mode (program written such a way). therefore the error was showing even after the OK button. handled the issue from ON_ERROR trigger. anyway thanks for your time Gred!

  • How change database from mode MTS (Shared) to mode Dedicated?

    How change database (Oracle 8.1.7) from mode MTS (Shared) to mode Dedicated?

    Did you try it ? Look at this :
    TEST =
      (DESCRIPTION =
        (ADDRESS_LIST =
          (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
        (CONNECT_DATA =
          (SERVICE_NAME = test)
          (SERVER=SHARED)
    SQL> show parameter mts
    NAME                                 TYPE    VALUE
    mts_circuits                         integer 170
    mts_dispatchers                      string  (protocol=tcp)(dispatchers=2)(
                                                 connections=500)
    mts_listener_address                 string
    mts_max_dispatchers                  integer 5
    mts_max_servers                      integer 20
    mts_multiple_listeners               boolean FALSE
    mts_servers                          integer 2
    mts_service                          string  test
    mts_sessions                         integer 165
    SQL> conn scott/tiger@test
    Connected.
    SQL> conn / as sysdba
    Connected.
    SQL> alter system set mts_dispatchers='(protocol=tcp)(dispatchers=0)(connections=0)'
    SQL> /
    System altered.
    SQL> alter system set mts_servers=0;
    System altered.
    SQL> conn scott/tiger@test
    ERROR:
    ORA-12520: TNS:listener could not find available handler for requested type of
    server
    Warning: You are no longer connected to ORACLE.
    SQL>                                                                                                                  However, as I said in my previous posting, you should modify initSID.ora too. If not, next time you'll restart your DB, it will run in shared mode again.

  • Project Server 2003 Change database and connection information

    I am working on Project Server 2003. I want to connect the running server to a different project server database and change database account information. How best to do it.

    Hello,
    You can do this with the edit site tool. See the following Kb for full details:
    http://support.microsoft.com/kb/905386
    Paul
    Paul Mather | Twitter |
    http://pwmather.wordpress.com | CPS

Maybe you are looking for

  • Help with text based game.

    SO I've just begun to make a text based game and i've already ran into a problem :/ I've made a switch statement that has cases for each of the classes in the game..for example Output will ask what you want to be 1. Fighter 2. etc 3. etc case 1: //Fi

  • Exception handling issue

    I have a perplexing question.... I am in the midst of developing an APEX 4.0 application. Customer will NOT be going to4.1 for a while....I wish to have exception handling that will handle both APEX based interactions and some back-end Sql Loader act

  • Help on interesting problem

    Hi all, I'm using form 6i in C/S mode. I need to download data to a csv file. Here is what I need to do: Imagine I have a table with VALUES like this ID RESULT_1 RESULT_2 RESULT_3 RESULT_4 RESULT_5 1 11111 2222 3333 4444 5555 2 6666 7777 8888 9999 00

  • Call servlet only with ssl

    Hi, i'm a new J2EE developer. I have created a servlet that reads some data by a form. The servlet response is simply an xml text. I should want to call this servlet only with https protocol I use Tomcat 6.0 and i configured it reading official user

  • Access conditional formatting pdf has no color

    I've built conditional formatting (using colors) in an Access (2003) database report. When I convert the report to pdf using the pdf maker icons (version 7), the conditional formatted boxes that are usually colored, are dark. What to do to make the c