[Webinar] Learn how to a build a cloud-first strategyRegister Now


CRVIEWER "Physical Database not found."

Posted on 2004-10-13
Medium Priority
Last Modified: 2012-08-14
I am using Visual Basic 6 and Crystal Reports 8
The app works fine on the developing computer(Win 2000),
but when I run setup on another computer (98,XP), I get (crviewer)
Physical Database not found.

I have installed all the required .dll's (read previous questions and got the answers)

I am using SQL 7.0 (database driver pdssql.dll) to connect to

How can I get this to work? I need to know asap Job might depend on it :( !!

Section of code used:
--In modual
Public rptEnrollConfirmMaster As New Current_Enroll_Confirmation_Master_rpt
Public rptStatementDetail As New Statement_Detail
Public rptStatement As New Statement_rpt
Public crpParamDefs As CRAXDRT.ParameterFieldDefinitions
Public crpParamDef As CRAXDRT.ParameterFieldDefinition
Public crxParameterField As CRAXDRT.ParameterFieldDefinition
Public crpSubreport As CRAXDRT.Report

    strReportName = "Current_Enroll_Confirmation_Master_rpt"
    dtStartDate = InputBox$("Enter start date", "Date Parameters")
    dtEndDate = InputBox("Enter end date", "Date Parameters")
    frmViewer.Visible = True
    Screen.MousePointer = vbHourglass
    Set rsParam = New ADODB.Recordset
    rsParam.CursorLocation = adUseClient
    Set crxParameterField = rptEnrollConfirmMaster.ParameterFields.Item(1)
    crxParameterField.AddCurrentValue strProgramID
    Set crxParameterField = rptEnrollConfirmMaster.ParameterFields.Item(2)
    crxParameterField.AddCurrentValue dtStartDate
    Set crxParameterField = rptEnrollConfirmMaster.ParameterFields.Item(3)
    crxParameterField.AddCurrentValue dtEndDate
    Set crpSubreport = rptEnrollConfirmMaster.OpenSubreport("Enroll_Confirmation_rpt")
    Set crpParamDefs = crpSubreport.ParameterFields
                                                        'It cycles through the ParameterFieldDefinitions collection for the subreport.
    For Each crpParamDef In crpParamDefs                'Finds and sets the appropriate Crystal parameter for the subreport.
        With crpParamDef
           Select Case .ParameterFieldName
                Case "@ProgramID"
                    .AddCurrentValue strProgramID
                Case "@dtStartDate"
                    .AddCurrentValue dtStartDate
                Case "@dtEndDate"
                    .AddCurrentValue dtEndDate
           End Select
        End With

    Set rsParam = conSQL.Execute("sp_qry_Current_Enroll_Confirm_Master_Report @ProgramID='" & strProgramID & "',  @dtStartDate='" & dtStartDate & "',@dtEndDate='" & dtEndDate & "'")
    rptEnrollConfirmMaster.Database.SetDataSource rsParam, , 1
    With frmViewer
        .Caption = strProgramName
        .CRViewer.ReportSource = rptEnrollConfirmMaster
        .CRViewer.DisplayTabs = False
        .CRViewer.DisplayGroupTree = False
        .CRViewer.EnableGroupTree = False
        .CRViewer.ViewReport                        "ERRORS HERE"
        .CRViewer.Zoom 95
    End With
Question by:JoannieJefferson
  • 2
LVL 13

Accepted Solution

vidru earned 2000 total points
ID: 12300389
If you designed the report using pdssql.dll, and you're trying to pass a recordset to the report at runtime (which would be using pdsmon.dll or p2smon.dll), there could be a conflict between the two connectivity types, or the active data driver might not exist on the offending workstations.

I see that you're setting the main report's data by sending a recordset, but how is the subreport getting its data?

There are several whitepapers on this at the BO website.  Here are a couple:


Author Comment

ID: 12301275
Thank soooo much Dave!

It turns out that the ACTIVE DATA DRIVERS were not installed on the other systems.

For the SubReports in the design view I just used the stored procedure database fields and passed the parameters values using the following code:

 Set crpSubreport = rptEnrollConfirmMaster.OpenSubreport("Enroll_Confirmation_rpt")
 Set crpParamDefs = crpSubreport.ParameterFields

'--Cycles through the ParameterFieldDefinitions collection for the subreport.
For Each crpParamDef In crpParamDefs       'Finds and sets the appropriate Crystal parameter for the subreport.
        With crpParamDef
           Select Case .ParameterFieldName
                Case "@ProgramID"
                    .AddCurrentValue strProgramID
                Case "@dtStartDate"
                    .AddCurrentValue dtStartDate
                Case "@dtEndDate"
                    .AddCurrentValue dtEndDate
           End Select
        End With

LVL 13

Expert Comment

ID: 12410496
Glad I could help.


Featured Post

How to Use the Help Bell

Need to boost the visibility of your question for solutions? Use the Experts Exchange Help Bell to confirm priority levels and contact subject-matter experts for question attention.  Check out this how-to article for more information.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Crystal Reports: 5 Tests for Top Performance It is complete, your masterpiece report.  Not only does it meet your customer’s expectations, it blows them out the water, all they want is beautifully summarised and displayed in a myriad of ways. …
I hate sub reports and always consider them the last resort in any reporting solution.  The negative effect on performance and maintainability is just not worth the easy ride they give the report writer.  Nine times out of ten reporting requirements…
We’ve all felt that sense of false security before—locking down external access to a database or component and feeling like we’ve done all we need to do to secure company data. But that feeling is fleeting. Attacks these days can happen in many w…
Is your OST file inaccessible, Need to transfer OST file from one computer to another? Want to convert OST file to PST? If the answer to any of the above question is yes, then look no further. With the help of Stellar OST to PST Converter, you can e…
Suggested Courses

865 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question