Link to home
Start Free TrialLog in
Avatar of Heinrichsa
Heinrichsa

asked on

cannot open sql server

I've got a vb6 app that uses the crystal activex control to open a crystal report
this vb app runs on a win2000 terminal server and connects to a sql2000 db.
When i log in as the administrator everything works,
but any other user ( even if that user is a member of the administrator group) I get a "cannot open sql server" error.

PS. All programs are installed using the add/remove programs applet

Please help!!
Avatar of Jason Sweby
Jason Sweby
Flag of United Kingdom of Great Britain and Northern Ireland image

There are a couple of mentions of this on the Seagate Community site, some may be more relevant to you
than others:

1. "A default database must be set up in the ODBC Data Source Name (DSN). Once a path to a default database
was selected, the report ran without errors."

2. "This error message appears because the Crystal Reports physical server DLL for Microsoft SQL Server (P2ssql.dll) does not support using integrated security with the OCX.

In order to use integrated security with the OCX, use an ODBC or an OLEDB connection. For further information on using ODBC or OLEDB with integrated security, refer to kbases c2008291 and c2004937"

3. "This error occurs because the report uses the user id saved in the report rather than the NT Logon ID. To resolve this error, pass a blank value for the user id and password.

If you are connecting natively to a SQL type database, use the "Connect" property to specify the server and database name, but leave the user id and password blank. For example:

CrystalReport1.Connect = "DSN = server name; UID = ; PWD = ; DSQ = database name"

If you are connecting using ODBC to a SQL type database, use the "Connect" property to specify the server name, but omit the database name and leave the user id and password blank . For example:

CrystalReport1.Connect = "DSN = Your ODBC DSN; UID = ; PWD = "

Note: ======

- When using ODBC, your DSN should have "Use NT Logon" checked on in the ODBC Administrator."

Hope this helps,

J.
Avatar of DRRYAN3
DRRYAN3

If you want to use SQL security instead of NT security, use

CrystalReport1.Report.LogonServer("pdsodbc.dll","server name", "database name", "user name", "password")

Heinrichsa

Every question you have asked this year is still open.
CrystalReport1.Connect = "DSN=dsnname;UID=user'PWD=Pwd;"
Avatar of Heinrichsa

ASKER

Thanks everyone for the comments

I found the solution.

The article c2007518 on www.crystaldecisions.com explains

I followed the advise and it solved the problem.
There is no such article number.
If Ure not passing anyquery from VB to crystal report , check to see if the dsn name is hardcorded in the query in the Report (Design).
It can checked by Sql syntax.
Seeing as this question is dealt with, can you close it. Whoever you feel deserves the points should get them, although I did point you towards the Crystal Community!

;)


J.
DRRYAN3,
i'm sorry
the article no is c2007581
Windows 2000 and the P2SODBC.DLL file have some issues. You need to download the latest version of PS2ODBC.DLL from http://support.crystaldecisions.com/communityCS/FilesAndUpdates/p2sodbc8.zip.asp?rdrcnt=1

Or just do a search for p2sodbc8.zip on the Knowledge Base.

It fixed the problem for us, I hope this helps you out!
If you don't already have an account at Crystal, create one.

Enter P2SODBC8.ZIP from this web site:
http://support.crystaldecisions.com/updates/
This question was LOCKED with a PROPOSED ANSWER and awaits your decision today.  Once a question is LOCKED with a Proposed Answer, few new experts will step in to help on that question, since the assumption is, you've been helped.  If the Proposed Answer helped you, please accept it and award that expert.  If it did not help you, please reject it and add comments as to status and what else is needed.
 
If you wish to award multiple experts, just comment here with detail, I'll respond as soon as possible.  As it stands today, you asked the question, got help and not one expert was awarded for the contribution(s) made.  Your response is needed.  I'll monitor through month end, and if you've not returned to complete this, we'll need to decide.  Expert input is welcome (as always) to determine the outcome here if the Asker does not respond.
 
Your response in finalizing this (and ALL) your question(s) is appreciated.
 
Moondancer
Community Support Moderator @ Experts Exchange

Moondancer,

This question was locked AFTER the user stated he had solved his own problem.
ASKER CERTIFIED SOLUTION
Avatar of Moondancer
Moondancer

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
jsweby,

If you are still around:

----------
If you are connecting using ODBC to a SQL type database, use the "Connect" property to specify the server name, but omit the database name and leave the user id and password blank . For example:

CrystalReport1.Connect = "DSN = Your ODBC DSN; UID = ; PWD = "

Note: ======

- When using ODBC, your DSN should have "Use NT Logon" checked on in the ODBC Administrator."

Hope this helps,

J.
----------

Three years later it did for me!
Thanks!

Dabas