"Error detected by database DLL"-VBForums
Results 1 to 7 of 7

Thread: "Error detected by database DLL"

  1. #1

    Thread Starter
    Lively Member
    Join Date
    Apr 2001
    Location
    Lebanon
    Posts
    90

    "Error detected by database DLL"

    Hi all, here's my problem:

    I have my VB program (the executable) on a server, and shortcuts to this file on the clients pc's.
    My reports are all in a folder on the server (they are designed using Crystal reports v8.5)

    When I try to run my program from the server, everything works fine.
    When I run my program from the client pc's everything also works fine, except for the reports.
    They aren't appearing in the screen and instead I get an error message:
    "Error Detected by Database DLL"
    (or smthg like that)

    I thought maybe it's because on the server I have Crystal Report installed.
    So I tried to install it on the client PC, but I get the same message.

    Please help me.
    What can I do? What's causing this problem?

    Thank you all

  2. #2
    PowerPoster Pasvorto's Avatar
    Join Date
    Oct 2002
    Location
    Minnesota, USA
    Posts
    2,951
    Can you run the report manually from the client?

    Is the db password protected? If so, you must supply the necessary login data:

    Set Report = crxApplication.OpenReport("Y:\DAD\QCInspectionOut.rpt", 1)
    For Each crxDatabaseTable In Report.Database.Tables
    If UCase(crxDatabaseTable.Name) = "TMPQC1" Or UCase(crxDatabaseTable.Name) = "TMPQC17" Or UCase(crxDatabaseTable.Name) = "TMPQC25" Or UCase(crxDatabaseTable.Name) = "TMPQC33" Or UCase(crxDatabaseTable.Name) = "TMPQC41" Or UCase(crxDatabaseTable.Name) = "TMPQC9" Or UCase(crxDatabaseTable.Name) = "TMPQCINSPOUT" Then
    crxDatabaseTable.LOCATION = "Y:\DAD\Temporary.mdb"
    Else
    crxDatabaseTable.SetLogOnInfo "", "", "", "password-here"
    crxDatabaseTable.LOCATION = "Y:\DAD\Techni.mdb"
    End If
    Next crxDatabaseTable
    Report.SelectPrinter glbPrinterDriver, glbPrinterName, glbPrinterPort
    If glbPrinterDestination = 0 Then
    glbReportForm = "frmQCInspectionOut"
    CRViewer.Show vbModal
    Else
    Report.PrintOut False
    End If

    As an example.

  3. #3

    Thread Starter
    Lively Member
    Join Date
    Apr 2001
    Location
    Lebanon
    Posts
    90
    Hi Pasvorto.

    Can you run the report manually from the client
    I didn't understand what you meant by that.
    If you meant that I install Crystal Reports on the machine and try to run the report, well no I can't. I get an eror from Crystal Report. Smthg about a library that wasn't found (pdssql.dll)

    About the code you gave me, well it won't work with me because I'm not using a Crystal Viewer. I have the reports outside my project, and I'm calling them using the Crystal Report Control.

  4. #4
    PowerPoster
    Join Date
    Oct 2002
    Location
    British Columbia
    Posts
    9,758
    Use the Runtime.hlp file for information on what dlls need to be installed on the client computer.

    The SQL Server client software must be installed on the computer which accesses the database. Check if the client machine has the ntwdblib.dll in the system folder.

    Note : Reports "outside" your project can still be used with the Crystal Report Viewer. In fact move away from the Crystal Report Control, as it is considered obsolete and only included for backward compatibility.

  5. #5
    New Member
    Join Date
    Aug 2008
    Posts
    1

    Re: "Error detected by database DLL"

    Problem:

    When application is deployed using Crystal Reports 8.5 (CR 8.5), the following exception occurs when generating reports...

    unable to find database dll

    This is because you are not using Crystal Report 8.5 ActiveX Designer RunTime Library (craxdrt.dll)

    Check out here for complete solution. Or just download the tutorial.

    This solution also cater for the other error of 'Physical Database Not Found'

    The other good reference site is here.

    http://www.it-sideways.com/2008/08/u...dll-cr-85.html

  6. #6
    PowerPoster techgnome's Avatar
    Join Date
    May 2002
    Posts
    31,285

    Re: "Error detected by database DLL"

    I've seen this before... way too many times to count.... odds are... none of the above apply.

    Can you run the query in Query analyzer or SQL Management Studion directly against the database.... if so, here's what you need to do and look for.

    1) Run the query in text mode
    2) BEFORE the returned results, look for ANY MEASSAGES appearing before the results, things like "(xxx) Rows Affected" or "NULL Value removed from set or aggregate" or ANYTHING....
    3) Check the query are you dumping data into a temp table, or doing any kind of updates before the returning select statement?

    If you find messages are being returned before your results, that's your culprit. If you are dumping data into a temp table or doing any kind of updating, add a SET NOCOUNT ON to the top of your SProc, BEFORE you do anything else. If you get the message about NULLS being removed, you have a bit more work... there's a setting SET ANSI_WARNINGS OFF that you can use, BUT it comes at a heavy price.... we found out that it leads to performance degredation as any SProc that has that statement in it, gets re-compiled immediately, slowing things down. We found it to be more efficient to go through the query and either eliminate NULL records in teh first place, or to use ISNUL() around fields, supplying a default value.

    -tg
    * I don't respond to private (PM) requests for help. It's not conducive to the general learning of others.*
    * I also don't respond to friend requests. Save a few bits and don't bother. I'll just end up rejecting anyways.*
    * How to get EFFECTIVE help: The Hitchhiker's Guide to Getting Help at VBF - Removing eels from your hovercraft *
    * How to Use Parameters * Create Disconnected ADO Recordset Clones * Set your VB6 ActiveX Compatibility * Get rid of those pesky VB Line Numbers * I swear I saved my data, where'd it run off to??? *

  7. #7
    New Member
    Join Date
    Mar 2010
    Posts
    1

    Thumbs up Re: "Error detected by database DLL"

    The error would have been caused by an open Table which you are using in the report file. Close all the tables before opening the report.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  



Featured


Click Here to Expand Forum to Full Width

Survey posted by VBForums.