Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations Chris Miller on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

pdsodbc.dll not found

Status
Not open for further replies.

Eli20

Programmer
Oct 30, 2003
119
MX
hi, i have a vb6.0 application and i use crystal reports 8.0 to make my resports. My database is in SQL Server and i use an ODBC driver to connect to it, on my reports, i set the ODBC source at design time and it works fine.

But this week i had to change my SQL server, so i copied my database to another machine and set the new one to be the server, then i redirected my ODBC to the new server, my program works fine, it means there is connectivity to the database, but when i try to print a report (i use the CRViwer) i get "file pdsodbc.dll not found".
i looked for the file, and it doesnt exist, i only have one called p2odbc.dll.

what is funny is that in one of the computers everything works fine, and that computer doesnt have the file eather..
please, im desperate, i have no idea of what do to make it work. the only thing i changed is the server on the ODBC driver.

thank you very much

Eli
 
p2sodbc.dll is the correct dll for your app (pdsodbdc.dll is a 16-bit version, and the error message still referernces the 16-bit version). The error message would indicate that your app can't find p2sodbd.dll. That doesn't mean that's the ultimate cause of your problem, but make sure you have distributed p2sodbc.dll with your app. (if your app is on the same machine as CR 8, it's hard to imagine how you would be getting this error; however, if you are getting the error on a different machine, then you may not have distributed p2sodbc.dll.)

What happens if you open the report up in Crystal Designer? Can you connect to the new server?
 
Im not running it on the same computer i developed it, but when i direct the ODBC to the old server it works fine, but if in the ODBC i change the server to the new one it doesnt work, it tells me it doesnt find the file and it can not refresh the information on the report.

any ideas??

thank you very much
Eli
 
Please show the code you are using to create the report object and view the report in the viewer.
 
i have a form, where i have the CRViwer, and i just set:

Report.sqlQueryString=myQuery

and show the form..

i set the connection at design time, i set it to the ODBC driver..
do you think that can be the problem? isnt is supposed to get the connection from the ODBC? why doesnt it work when i change server??

thank You very much

Eli
 
You're really not answering my question. Where do you create the report object? Somewhere in your code is something like:

Dim App as New CRAXDRT.Application
Dim Report as CRAXDRT.Report
Set Report = App.OpenReport("myreport.rpt")

or

Dim Report as New CrystalReport1

and somewhere else you need to have a piece of code that assigns the report object to the viewer, like:

CRViewer1.ReportSource = Report
CRViewer1.ViewReport



 
sorry, i use

Code:
 Dim Report as new CrystalReport1

thank You very much

Eli
 
Ok, so you are using a DSR report. Last question:

What is the value of myQuery that you are passing to the report?
 
its a select query.. i have several reports so its different for each, but its something like this:

"Select * from table where date >= '" & date & "'"
i take it from the report "show sqlquery" option, and modify the where clause, so i get only the record i need.

as i said, it works fine when the ODBC is to the old server, but it doesnt work in the new server, and the database is exactly the same, i imported from one server to the other.

thank you very much

Eli
 
Well, I've made several attempts to reproduce your error and I cannot. When I change the odbc connection (a System DSN, by the way) information to point to a separate copy of the same db on a different server, I have no problems. However, I did see on the Crystal website that there were some problems with Crystal 8.0, ODBC, and NT Authorization in a web environment. But that sort of thing usually involves rights for the account running the web service, which is not your scenario.

If you are truly desparate, I'd suggest changing your app to use SQL Server Authentication. There's a little more code to write, but it's pretty straightforward stuff.

Or maybe someone who has had more experience with NT Authentication will jump in here and help you out.
 
thank You very much, ill try to do it.. but.. actually my app doenst have anything to do with it, my app only uses the ODBC driver to connect, all the connection authentication and all is set directly to the ODBC, however i will try to use Sql server authentication, because right now im using windows.

what i find really odd is that it does work on on e of the computers, and then the same user in another computer doesnt work.

anyways, thank you very much for your help, i hope someone else can give me a solution.

Eli
 
Well, if it works on one machine and not on another, then you probably have a driver or dll-related issue. What is the difference between the two machines? Are they using different operating systems? Do they have different versions of the MDAC installed? Check out the Crystal Decisions Knowledge Base and search for NT Authentication for Crystal 8.0 and see what you might find in the way of known issues.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top