Split database

I plan to move several schemas (e.g. applications) from one database to a new other database (does not exists yet).
Database version is 10.2.0.4 for both.
The target will be that about 10-20 schemas with about 120 GB of data are then in the new Database. The old database will keep around 250 GB in about 5-10 schemas. Both databases will probably run on the same physical machine. I would like to find a way to do this split with as little downtime as possible.
Do you have any ideas how to accomplish this? Any comments regarding risks and advantages are welcome.
Currently I'm considering three different ways, but maybe there are more options.
Way 1) Traditional export/import
- create new db
- export schemas on old Db with expdp (downtime starts)
- import schemas on new Db with impdb
- lock / drop users on old Db (downtime ends)
Way 2) Database Copy
- create new db
- copy DB from RMAN backup
- lock / drop users on old Db (downtime ends)
Not sure if it is possible to do a running copy. To create the new DB including online backups up to the most recent point. Kind of Standby Db.
Way 3) Datafile/Tablespace Copy
- create new Db
- move objects in old DB to some transport tablespace (this can be done partially at less used hoursm no downtime yet).
- stop old db (downtime starts)
- copy/move datafiles/tablespace from old to new
- lock / drop users on old Db (downtime ends)
Any comments/suggestions are welcome. of cause the whole thing will be tested before the production database is touched.
Edited by: Sven W. on Aug 14, 2009 2:24 PM

Sven W. wrote:
I'm not too familiar with RMAN. Of cause if we clone the DB from some RMAN backup we will have only the data from backup point.
Of cause as long as the database is running there are hundreads of transactions going on. I will probably need to stop all transactions at some specified time. Is it possible to create a copy up to that time and will it take long? Or more precicly asked. How can I minimize the time needed for the cloning process? The only way I can think to minimize the cloning process is to take a backup as close to the time you start the clone as possible. In addition, only clone the required tablespaces.
Is it possible to clone the new DB at night and then to do a point in time recovery using the backups from the old Db. So that the downtime is only 10-30 minutes at noon.No, from the documentation:
You may want to synchronize a duplicate database with the original database that was duplicated. The solution is to run the DUPLICATE DATABASE command again, essentially re-creating the duplicate database.My suggestion:
1. Determine the set of tablespaces that are going to be moved to the new database.
2. Set this set of tablespaces to read only, maybe sometime at night.
3. Take an RMAN backup immediately after.
4. Build duplicate based off of this backup.
5. Enable write on the tablespaces in the new database.
6. Point users at new database.
7. Enjoy :)
It still results in down time unfortunately, but maybe allowing them to read data is sufficient.
HTH!

Similar Messages

  • Filter by form shows only "Is Null" and "Is Not Null" value in split database

    Hello,
    I have a SPLIT database into FE (forms, queries...) and BE (tables with data) ready for distribution.
    PROBLEM
    When "Filter by Form" is chosen
    only 2 values are available in combobox filter ("Is Null", "Is Not Null"). All other functionalities of the form work fine (data display), which means that tables are linked
    correctly.
    In the UNSPLIT database "Filter by Form" works OK (i.e. comboboxes show lists of possible values to choose from).
    All the forms (and queries) behave like this.
    Recordsource of all forms are queries.
    Type of filtered fields => text (no memo fields, no comboboxes)
    QUESTION:
    What is the reason of this behavior and how can it be fixed so that "Filter by Form" works in SPLIT database (and displays available values in comboboxes)?
    Thank you for help.

    Hi,
    this is the default behaviour with linked tables. To change it:
    open the form in design view
    select the text box you want to use for the filter
    in the properties of the text box click at the data tab and change the FilterLookUp property from "Database default" to "Always"
    See also
    https://msdn.microsoft.com/en-us/library/office/ff194556(v=office.15).aspx.
    cu
    Karl
    Access FAQ (de/it): http://www.donkarl.com
    Access Lobby: http://www.AccessDevelopers.org

  • Uploading Access split database to Sharepoint Site.

    Hi, I'm having trouble finding instructions on how exactly you would upload a split database to SharePoint. If I split my database locally i can't then move the back end.
    I want to upload my the back end of the Access database to "mysitesname".sharepoint.com I have full admin privileges but the only place I see to upload a file is the "shared documents" area of the site which I presume would only be useful
    for hosting the front end for users to download. Trying to split the database to the site by using it's URL "https://"mysitesname".sharepoint.com/SitePages/Home.aspx" nd variations results in access telling me the site could not be reached.
    I'm sure this is something simple to do and I'm just missing some critical piece of information.

    Thank you for the reply but I'm not using a web database or web app. I should have mentioned I solved the problem yesterday.
    A split database is simpler than I thought, mine is just a standard access database with linked tables. You share your file (front end) around and the back end is just a bunch of SharePoint lists if you are using SharePoint or an access file containing tables
    if using a file server.
    My problem was that I couldn't upload my back end to SharePoint. I ended up making my tables into SharePoint lists and uploading those to my personal SharePoint folder as the team site didn't allow me to upload them.
    https://example1-my.sharepoint.com/personal/email_emailhost_com_au
    This tutorial worked best. http://www.youtube.com/watch?v=3wdjYIby_b0&list=PL27E956A1537FE1C5&index=2

  • Split database file into multi files on different drives.

    Hi,
    I Have a large database file .mdf that eating my drive disk space. So i have installed another disk. Now I have 2 drives (other than OS drive) one has the .mdf file and almost full and the new drive which is empty.
    I need to know How to split the .mdf into another file located on the new drive and keeping the original .mdf file not growing anymore ?

    I know how to split an access file, but never done this with MDF, so if you know what connection string, then you should be able to change this code. However this will ask the user for location of file to be split, it will split in same folder then you can
    move the splits to another folder.
    This will allow you to choose how many records you want to split by, You can ignore the watchfolder part, or you can use that to automatically copy the split files, then add a delete from orginal source.
    Anyway here is the code and I hope it can help with MDF files.
    Imports Microsoft.VisualBasic, System, System.Diagnostics, System.IO, System.Windows.Forms
    Imports System.Data.OleDb, System.Data, System.Data.SqlClient, System.Data.Odbc, System.Threading
    Imports Microsoft.Office.Interop, System.Runtime.InteropServices, Microsoft.Office.Interop.Outlook
    Public Class Form1
    Dim sConStr As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source="
    Dim aConStr, CurPr, WFolder, VFolder, SFolder, ZFolder, eFile, tFile, FileName As String
    Dim TableName, aConStr2, II, IV As String
    Dim Recs, Maxd, i, StartRec, EndRec, TRec, iii As Integer
    Dim Parts As Decimal
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Split_Recs.Click
    WFolder = txtBxPath.Text + "\"
    FileName = txtBxAccess.Text
    TableName = txtBxTable.Text
    aConStr = WFolder + FileName
    Recs = txtBxTotRecs.Text
    Maxd = txtBxMax.Text
    Parts = Recs / Maxd
    i = 0
    StartRec = i
    EndRec = Maxd
    Do While i < Parts
    Dim FirstRec As String = StartRec + 1
    Dim LastRec As String = EndRec
    Dim TotRec As String = EndRec
    TRec = EndRec - StartRec
    TotRec = TRec
    II = i + 1
    IO.File.Copy("\\pw_prod\Watch_Input\Glenn-PTZ\db1.mdb", WFolder + txtBxJobNum.Text + "Pt_" + II + ".mdb")
    TextBox3.AppendText(" Between " + FirstRec + " and " + LastRec + vbCrLf)
    txtBxProgress.AppendText("Part: " + II + " Start " + FirstRec + " End " + LastRec + " Total: " + TotRec + vbCrLf)
    TextBox5.Text = " Between " + FirstRec + " and " + LastRec
    StartRec = StartRec + Maxd
    EndRec = EndRec + Maxd
    'Creates Queries in Main File
    Dim con As OleDbConnection = New OleDbConnection(sConStr + aConStr)
    Dim cmd As OleDbCommand = New OleDbCommand("CREATE PROC Variable" + II + " AS SELECT * FROM " + TableName + " where " + txtBxSort.Text + TextBox5.Text + " Order by " + txtBxSort.Text, con)
    con.Open()
    cmd.ExecuteNonQuery()
    con.Close()
    'Export each new query as new access file
    Dim DevComm1Conn_1 As New System.Data.OleDb.OleDbConnection(sConStr + WFolder + txtBxJobNum.Text + "Pt_" + II + ".mdb")
    DevComm1Conn_1.Open()
    Dim DevComm1 As New System.Data.OleDb.OleDbCommand( _
    "SELECT * INTO [Variable" + II + "] FROM [MS Access;DATABASE=" + WFolder + FileName + ";].Variable" + II, DevComm1Conn_1)
    DevComm1.ExecuteNonQuery()
    DevComm1Conn_1.Close()
    i = i + 1
    IV = i - 1
    If IV = 0 Then
    IV = 1
    End If
    If EndRec > Recs Then
    EndRec = Recs
    End If
    TextBox5.Text = String.Empty
    If txtBxWatchCopy.Text = "Yes" Then
    IO.File.Copy(WFolder + txtBxJobNum.Text + "Pt_" + II + ".mdb", txtBxWatch.Text + "\" + txtBxJobNum.Text + "Pt_" + II + ".mdb")
    End If
    Do While IO.File.Exists(txtBxWatch.Text + "\" + txtBxJobNum.Text + "Pt_" + II + ".mdb")
    Threading.Thread.Sleep(50)
    Loop
    Loop
    txtBxProgress.AppendText("Total Parts: " + II + vbCrLf)
    MsgBox("Match all counts to ticket. If not match talk to CSR")
    End Sub
    End Class

  • Split database to client specific and cross client

    Hi
    Do we have a known method to split an existing MaxDB database into two .
    1. Client Specific database
    2. Cross client database
    Thanks and Regards
    Sri

    What you can do is to use TDMS (Test Data Migration Server), it´s a separate product and it enable you to setup test/training systems with a reduced amount of production data.
    This system makes use of technologies to determine, whether a table is client depend and client independent.
    Your problem is, that the client specific data NEEDS the cross client data, it relies on the customizing, that is cross client.
    If your pupose is to e. g. extract some kind of data because parts of your company was sold or if you bought a new company, then you should contact the SLO group (http://service.sap.com/slo) that does those kinds of "separations" too.
    From a technical level, it´s certainly possible but wihtout knowing your initial intent why you want to do that, one can give just advises, what we "think" what the reason might be.
    Markus

  • Can we split database as per Business partner property like NORTH , WEST

    Dear all,
    we want to separates users from database means ,
    the north region sales executive does not able to   read and update sales order as well as business partner of other region.
    can we do ? if yes then how?
    Thanking you,
    Ganesh Mahajan

    Dear sir,
    thanks for reply . we want to do this on one database . but other users like north region users do not able to read west region sales order as well as all database which according to related with north.
    above is just example it's apply on all modules . like production order etc etc....
    Thanking you
    Ganesh Mahajan

  • Split Ms SQL Database

    Hi All,
    Request you to give some information and your valuable suggestion in deciding the best procedure to Split Ms SQL 2000 server Database files.
    by default SQL was in auto-extandable mode and its growing, now we would like to split them in to few data files and planning to distribute the load across different spindles in RAID arrays to get max I/O.
    what will be the idel/best practice to split ? is that by SQL script (Query analyzer) or 3rd party tools to split database files in to multiple files?
    how can we confirm the consistency/integrity of DB after splitting?
    type of query to run for spliting and mapping DB files after moving to different locations in SAN?
    hope that you'll give some valuable information on this,
    by
    Harika

    The easiest way to do this is to create a homogeneous system copy using R3load - means, you unload your system, delete it and reinstall it with the export you created.
    On installation time you can enter the number of files and their sizes.
    A common best practice approach is to use as much data files as you have physical disks.
    Markus

  • Splitting data equaly from one .mdf to several .ndf files

    Hi all,
    Situation:
    We have a db with 1 TB of data in one .mdf file (sql 2012).
    For better performance we want to split this file up into 4 equaly big data files on different drives.
    1st guess:
    Well I thought that's pretty simple, I just add 4 datafiles (.ndf) on different drives, empty my existing .mdf and drop it finaly.
    Well the problem with this is, you cannot delete your .mdf file because it holds metadata (catalog) for your db.
    Solution:
    - I added 3 more datafiles (.ndf) with 250 GB size each, autogrow disabled, on 3 additional drives (no new filegroup)
    - DBCC SHRINKFILE (your_logical_mdf_file, EMPTYFILE)
      (this gives you an error because there is not enough diskspace to split the 1TB .mdf file into 3 x 250 GB .ndf files, but it splits your 1 TB file equaly to all your 4 db files)
    - shrinked my .mdf file and adjusted filesize and autogrow settings for all 4 db files
    Remark:
    Just keep in mind that moving 1 TB of data around takes a while and you better do this in a not so busy time...
    HTH
    acki4711

    Neha,
    I don't see any advantage of the IO with filegroups.
    We don't want to deal with what object should be in what filegroup, (most of the time we maintain 3rd party software/dbs) just want to get better performance by splitting data into more then one db file.
    acki4711
    You could benefit from performance by splitting data in upto 4 or 8 files and each file on a different drive.
    How are the underlying disks configured, do you know? Otherwise, if all of these volumes are carved out of a single lun then there won't be a performance gain that you are looking for. Also, please enable TF 1117 for uniform db file growth once you size
    the files to be of equal size.
    Note: You may want to test the emptyfile option on your .mdf file, as it may not be straightfoward.
    HTH
    Hello AlliedDBA,
    There is no benefit by splitting database files on different disk drives if your Underlying hardware is RAID 10 or RAID 5 you can achieve performance benefit.Daa to data files are written in Round robin fashion and you dont have any control over it.
    Please dont enable any Trace flag.I am not sure what could be solution beacause IMO you anyhow require space
    Please mark this reply as the answer or vote as helpful, as appropriate, to make it useful for other readers
    Hello Shanky..
    Thanks for your feedback, but, I still stand by my suggestion. I see you are opinionating here, so please post some facts to back your claims that 1. No advantage of having multiple files 2. Not sure why your are scared of the term Trace flag but your
    statement "IMO anyhow require space" lacks clarity..What is the relationship between space and trace flag??

  • Size of SQL Server 2005 Database for SAP B1 2005 B is heavy

    Hi all,
    In my company we are working with SAP B1 2005 B SP 25.
    Our Database is in SQL Server 2005. Its Size reaches 6 GB in less then two years periods.
    Can Any body guide me to reduce the size or how to maintain database. Can we split Database in SAP B1 ?
    Due to the size users getting less speed
    Awaiting your valuable guidance for the same.
    Best Regards,
    Chintesh Soni

    Hi Chintesh,
    I would advise caution doing any of the things suggested in SAP Note 548772. In particular, I strongly recommend you do NOT set auto-shrink on. This is a really bad idea on a production database and I can't understand why SAP would suggest it.
    Is it the data file that is 6GB or the overall size of the database (ie data and log files)? If your log file is large  then this can slow performance. I recommend setting up transaction log backups on an hourly basis. This is good practice and not only keeps the log file healthy but also gives you the option to recover your data to the last transaction log backup in the case of an emergency. If you don't want transaction log backups then do as the SAP note mentions and set the recovery model to simple and do a once-off truncation of the log file.
    Are you doing regular maintenance on the database (ie rebuilding indexes, updating statistics)? Are you monitoring fragmentation on the data drive and doing a defrag occasionally to keep the drive healthy?
    Kind Regards,
    Owen

  • Changing expired password on a cbckend database from a frontend database

    I have a split database with an Oracle backend (BE) and MS Access frontend (FE). My question is how to reset an expired password on the BE from the FE.
    If I log on to the backend via sqlplus an error ORA-28001 (Password expired) occurs and the system immediately prompts for a new password before completing the login process.
    If I log on from the frontend I get the same ORA error from the BE, but as far as I can tell, I can't reset the password from the FE.
    I can capture the error fine at the FE and I am thinking that I could use this to open a dialog to reset the password and change it over the ODBC connection. The problem is that I need to get a connection to the BE database before sending a command to change the password from the FE, but since login cannot be completed from the FE, because of the expired password, I can't get an ALTER USER statement to execute on the BE to reset the password.
    Is there a way to change a pre-expired password on an Oracle backend database from a frontend database? I don't see this as an Oracle/Access problem but as a problem that exists for any split database.

    I have thought about this a little and I am thinking about keeping a table of password update information. I can use this to create a "soft" expired password, using an expiration date in the table for each account. If the password is expired by the database then we can just update it with sqlplus or one of the other options.
    As far as getting the organization to change it is waaaay to big and stupid to change their policy.

  • Sybase Database Management

    Currently we are using Sybase DBs for Contract Manager.
    Since they have given us no issue we stayed with them.
    For those of you who use Sybase do
    you archive projects?
    Do you create new dbs
    each year?
    How large do you let them
    get?
    Should we move to SQL Server? <br
    />
    Thanks

    We also use Sybase for CM 11.1. About 8-12 months
    agowe experienceed showstopping performance hits in
    Contract Manager. After months of work with Primavera,
    including very high level technical people on site,
    Primavera tuned our databases to the point where CM
    worked again. It was a very painful process.<br
    />
    To answer your questions:<br
    />
    For those of you who use Sybase do
    you archive projects?
    <font
    color=red>Yes, to a database (group)that we use
    specifically to store archived projects. This database
    is started when the Sybase server boots so we can
    access the archived projects as well a production
    projects.</font><font
    color=red></font>
    Do
    you create new dbs each year?
    <font
    color=red>No. The onlky consideration, at this
    point, for creating a new database is for operational
    purposes.</font><font
    color=red></font>
    How
    large do you let them get?
    <font
    color=red>As large as they can get before hitting a
    performance problem. Our largest is currently around
    3GB. So far we have not had to split databases because
    of performance. We resist doing that due to the
    associated increase in overhead administering the
    addn'l databases and cross database reporting
    issues.</font><font
    color=red></font>
    <br
    />Should we move to SQL Server? <br
    /><font color=red>If our IS shop were with us
    on this, we would.</font><font
    color=red></font>

  • Migration ( Splitting Single Node to 2 Node Cross Platform)

    Hi,
    I have 11.5.10 Single Node Installation( Database and Middle Tier) on Red Hat AS 4.0....Both Database and Application Tier on same machine.......
    My Client is insisting me to move Application Tier to another machine having Windows 2003 32bit/64bit...
    How can I do it...
    Can I follow this document........304489.1 - Using Oracle Applications with a Split Configuration Database Tier on Oracle 9i Release 2....
    But above document says...splitting Database Tier to other machine...

    This is just wrong in so many ways...
    1) You will never be able to hot patch on the Windows tier.
    2) You will need to reboot the server frequently to clear memory leaks etc
    3) You will have to reboot after almost every security update for the OS
    4) As stated earlier, you are moving from the primary development platform to like a tier 3 platform
    5) Memory utilization on 32-bit Linux is light years ahead of memory utilization on 32-bit Windows
    Most of us could probably rattle off a dozen more reasons why this is not a good idea...
    You will support more users with a higher quality of service by standing up an application tier node on Linux than you will on Windows. You could also just add a 64-bit linux node and migrate the database to 64-bit there using the split configuration docs and leave you admin/web/forms/CP tier on Red Hat 32 bit.

  • Material Ledger: Cost Component Split (Elements) table CKMLKEPH

    Hi All,
    Whats the use of this table, what information get updated in this table while creating invoice.
    Message was edited by:
            Alexander

    Hi Alexander,
    CKMLKEPH belongs to material ledgers actual cost component split database:
    Differences from Actual Costs to Standard Price
    Entries per material, update, cost element structure, kind of difference and level
    Created per any update where occur differences
    so if ML is active with actual CCS and your invoice has a price diference than CKMLKEPH will store the split of the price difference posting.
    it is related to CKMLKEV.
    this note gives some further links
    <a href="https://websmp206.sap-ag.de/~form/handler?_APP=01100107900000000342&_EVENT=REDIR&_NNUM=398941&_NLANG=E">Note 398941 - INFORMATION: CO-PC-ACT (Data structures)</a>
    best regards,
                         Udo

  • Hard time trying to 'Package Solution' - Access 2010 on Win 8.1 pro 64

    I got myself a brand new system (win 8.1 pro 64) a while ago, and with it,
    got a few problems as well. - If it makes any difference, I had an accdr and changed file extension to accdb, this is
    the  FE  I'm trying to 'Package' now - 
    It happens that after installing Office Professional Plus 2010(not sure if
    x86 or x64 - does it matter?), checking all the conditionals for MSAccess, 
    even repairing installation a bunch of times, no matter what, 
    whenever I try to 'Package Solution', there's always a boring message 
    at the end stating that, 'An unexpected error has occurred', period. 
    That's it!
    I tried to move my files to documents folder, assuming that might be
    caused by lack of permission, still nothing happens, other than the same
    'An unexpected error has occurred', no additional info available.
    Googling this, I could find one or another info, but people usually report
    in common with my issue, just the error message, the whole context seems
    to be pretty different. Anyway, never been thru such a thing, don't know
    if I should install any hotfix, I reinstalled office a couple of times already,
    nope! It's not working! 
    And I got this app release that's been waiting almost 1 week now to reach my customer, 
    in other words, big trouble! 
    So, I really could use some help, and I appreciate anybody who would kindly
    lend me a hand on the matter of this subject.
    Sorry if that sounds stupid, and thanks in advance!

    This is much I suggested using an accDE. You use the accDB to develop and create the application. When you compile to an accDE, then users cannot see or view VBA code, nor can they change reports or forms if they get “inside” the application.
    So you most certainly will continue to use and develop using the accDB, but the “last” step before deployment is to first ensure you VBA code compiles (in the VBA editor, go debug-> compile). Once your sure code compiles, then you create the accDE that
    you will include in your package to distribution to users. Do keep in mind that this suggest thus suggests your data is “split” or outside of the application you package else updates to users would overwrite their data.
    So using an accDE means users cannot modify forms/reports, and also means that users cannot view code. This also eliminates the need for some kind of password system to prevent modifications to the application. so you can rename the accDE to a accDR, but
    even if users re-name it back to a accDB or accDE, modifying to forms/reports and VBA code is NOT possible. This also means you do NOT want to lose your accDB that you are using for development.
    I explain this concept of a split database here:
    http://www.kallal.ca/Articles/split/index.htm
    Regards,
    Albert D. Kallal (Access MVP)
    Edmonton, Alberta Canada

  • Vendor code 12154 and 1005 error

    Hi,
    I have developed an application which users the RDC API set (CR XI R2 SP4.5 version) to preview crystal reports. All types of reports works fine but except one. This report is a blank report with one sub-report. I have used native oracle connection to connect to the Oracle database when creating this layout. The main report is blank but it has a sub report with one view. When I run the report from Crystal Report Designer it works fine, but when I run it through my application it give the following error. Other report with sub-reports where the main report also has views works fine. Itu2019s just that reports with sub-reports where there are no views in the main report gives this error. I have debugged the code and found that it gives this error when Iu2019m setting the table location of the view in the sub-report. Hope you can help me to solve this issue.
    I get two errors and they are,
    Fail to open the connection. Database Vendor Code 12154
    Fail to open the connection. Database Vendor Code 1005
    Thanks in advance,
    Chanaka

    Hi Ludek,
    Thank you for replying to my question. Here are the information you requested for.
    Q: Also, please confirm that this is happening on the same computer where you designed the report?
    A: I get the same errors when I run my application and try to view the reports from the same machine where I have installed Crystal Report Designer and created the reports from.
    Q: And, if you take out the subreport and run it on it's own as a main report, can you log on to it in code?
    A: If I take the sub-report and run it on itu2019s own it works fine from my code
    Normally when I create reports with sub-reports I donu2019t browse and import and existing sub-report but I create a sub-report with the Report Wizard. All sub-reports are not on demand sub-reports as well.
    Also, as I said before, other reports work fine. That is, reports without sub-reports which has views in the main report, reports without sub-reports where there are no views in the main report as well (blank report), reports with sub-reports where there are views in the main and sub-reports both. Also, for all these combinations I have checked with and without parameters in the main and sub-reports. The errors are only shown when the main report is blank (no views added) and has a sub-reports with views.
    Q: Also, open the report in the CR designer, got to the subreport. Then to the Database menu and expand the properties icon. What does it say at Database type?
    A: Selecting the sub-report and going the Database\Set Database Location and by clicking on the Properties dropdown (the + sign) I can see that the Database Type is Oracle Server which is correct as we always use the Native Oracle connection to connect to the database at design-time and at runtime when previewing the report from the application.
    Q: Please provide the code you are using to log on to the database
    A: Code is given below.
    Further investigating in to the issue I saw that if the sub-report has parameters I get the error u201CFail to open the connection. Details: [Database Vendor Code: 12154]u201D. If the sub-reports doesnu2019t have parameters then I get the error u201CLogon failed. Details: [Database Vendor Code: 1005]u201D. Debugging in to the code from VB I see that itu2019s throwing the error when I try to set the table location for a view in the sub-report. Here the error number is -2147189176 and the error description is Logon failed. My guess is that both the errors are linked to this location setting and the main report not having views or database connection.
    Regards,
    Chanaka
    In Main section
    For tableCountInMainReport= 1 To crxReport.database.Tables.count
      RDCSetNthTableLogOnInfo(u2026u2026u2026.)
      RDCSetNthTableLocation(u2026u2026u2026u2026u2026..)
    Next tableCountInMainReport
    For each section in report
       If sub-report exist
           RDCSetNTableLogonAndLocSubReport(u2026u2026u2026u2026u2026)
       End if
    Next section
    Methods called from the main method
    Public Function RDCSetNthTableLogOnInfo(ByVal tableIndex As Integer, ByVal server As String, ByVal database As String, ByVal userName As String, ByVal password As String) As String
       On Error GoTo ErrorHandler
       crxReport.database.Tables(tableIndex).ConnectionProperties.Item("Server") = server
       crxReport.database.Tables(tableIndex).ConnectionProperties.Item("User ID") = userName
       crxReport.database.Tables(tableIndex).ConnectionProperties.Item("Password") = password
       If (database <> Null) Or (database <> "") Then
          crxReport.database.Tables(tableIndex).ConnectionProperties.Add "Database", database
          RDCSetNthTableLogOnInfo = "True"
       End If
       RDCSetNthTableLogOnInfo = "True"
    ErrorHandler:
       If Err.Number <> 0 Then
          MsgBox "Error in setting table logon information for " & crxReport.database.Tables(tableIndex).Name & "." & "Error number : " & Err.Number & " Error description : " & Err.Description, vbOKOnly, "Error"
          RDCSetNthTableLogOnInfo = "CR_ERROR"
       End If
    End Function
    Public Function RDCSetNthTableLocation(ByVal tableIndex As Integer, ByVal location As String) As String
       On Error GoTo ErrorHandler
       crxReport.database.Tables(tableIndex).location = location + "." + crxReport.database.Tables(tableIndex).location
       RDCSetNthTableLocation = "True"
    ErrorHandler:
       If Err.Number <> 0 Then
          MsgBox "Error in setting the table location. Error number : " & Err.Number & " Error description : " & Err.Description, vbOKOnly, "Error"
          RDCSetNthTableLocation = "CR_ERROR"
       End If
    End Function
    Public Function RDCSetNTableLogonAndLocSubReport(ByVal setionCode As String, ByVal subreport As Integer, ByVal servers As String, ByVal databases As String, ByVal userNames As String, ByVal passwords As String, ByVal locations As String) As String
       Dim oSubreportObject As CRAXDRT.SubreportObject
       Dim locRet As String
       Dim sServers() As String
       Dim sDatabases() As String
       Dim sUsers() As String
       Dim sPasswords() As String
       Dim sLocations() As String
       Dim i As Integer
       On Error GoTo ErrorHandler
       If crxReport.Sections(setionCode).ReportObjects(subreport).Kind = crSubreportObject Then
          Set oSubreportObject = crxReport.Sections(setionCode).ReportObjects(subreport)
          Set oSubreport = oSubreportObject.OpenSubreport
          sServers = Split(servers, Chr$(31))
          sDatabases = Split(databases, Chr$(31))
          sUsers = Split(userNames, Chr$(31))
          sPasswords = Split(passwords, Chr$(31))
          sLocations = Split(locations, Chr$(31))
          If (oSubreport.database.Tables.count = UBound(sServers)) And _
             (oSubreport.database.Tables.count = UBound(sDatabases)) And _
             (oSubreport.database.Tables.count = UBound(sUsers)) And _
             (oSubreport.database.Tables.count = UBound(sPasswords)) And _
             (oSubreport.database.Tables.count = UBound(sLocations)) Then
             For i = 1 To oSubreport.database.Tables.count
                oSubreport.database.Tables(i).ConnectionProperties.Item("Server") = sServers(i)
                oSubreport.database.Tables(i).ConnectionProperties.Item("User ID") = sUsers(i)
                oSubreport.database.Tables(i).ConnectionProperties.Item("Password") = sPasswords(i)
                If (sDatabases(i) <> Null) Or (sDatabases(i) <> "") Then
                   oSubreport.database.Tables(i).ConnectionProperties.Add "Database", sDatabases(i)
                End If
                locRet = ""
                locRet = RDCSetNthTableLocationSubReport(setionCode, subreport, i, sLocations(i))
                If (locRet <> "True") Then
                   RDCSetNTableLogonAndLocSubReport = locRet
                End If
             Next i
             RDCSetNTableLogonAndLocSubReport = "True"
          Else
             RDCSetNTableLogonAndLocSubReport = "CR_ERROR"
          End If
       End If
    ErrorHandler:
       If Err.Number <> 0 Then
          MsgBox "Error in setting logon information for " & oSubreport.database.Tables(i).Name & "in subreport." & "Error number : " & Err.Number & " Error description : " & Err.Description, vbOKOnly, "Error"
          RDCSetNTableLogonAndLocSubReport = "CR_ERROR"
       End If
    End Function
    Public Function RDCSetNthTableLocationSubReport(ByVal setionCode As String, ByVal subreport As Integer, ByVal tableIndex, ByVal location) As String
       Dim oSubreportObject As CRAXDRT.SubreportObject
       On Error GoTo ErrorHandler
       If crxReport.Sections(setionCode).ReportObjects(subreport).Kind = crSubreportObject Then
          Set oSubreportObject = crxReport.Sections(setionCode).ReportObjects(subreport)
          oSubreportObject.OpenSubreport.database.Tables(tableIndex).SetTableLocation location + "." + oSubreportObject.OpenSubreport.database.Tables(tableIndex).location, oSubreportObject.OpenSubreport.database.Tables(tableIndex).Name, ""
          RDCSetNthTableLocationSubReport = "True"
       Else
          RDCSetNthTableLocationSubReport = "CR_ERROR"
       End If
    ErrorHandler:
       If Err.Number <> 0 Then
          MsgBox "Error in setting the table location in subreport. Error number : " & Err.Number & " Error description : " & Err.Description, vbOKOnly, "Error"
          RDCSetNthTableLocationSubReport = "CR_ERROR"
       End If
    End Function

Maybe you are looking for

  • PL SQL Array Output

    Hi, I have below pl sql type structure. create or replace TYPE     xx_emp_obj AS OBJECT (    empno             NUMBER,    ename            VARCHAR2 (200),    last_name         VARCHAR2 (200),    job              VARCHAR2 (200),    mgr_id           NU

  • How to copy the these values in an array

    Hi friends I am writing a code (a method). In this code i am calcluating values 0to 3000 and storing in a varieble R. I want to move these values from R to an array. How can i do it? I wrote a code. I works but it add location i guess not the values

  • Photo lib ray pictures not showing

    photo libray that was synced from my computer not showing

  • Startup Capability:  default, auto-open of application

    Is there a preference setting that would cause auto-opening of a particular application every time I start-up my iMac? For example, I would like to force myself to see my To-Do list in Stickies without request.

  • Everytime I sync my computer puts all of my apps onto my iPhone when i dont want it to.

    Antime I sync my iPhone on my computer it puts all the apps on my computer (which came from my iPod Touch (4th generation)) but I don't want them to.