Craig, Here's what I'm trying to do and what I've found out so far:
The people at Crystal have told me that Crystal 9.0 does not support a native SQL Server connection even though 8.5 did.
In 8.5 I was using the native SQL Server connection. I'd select my Stored Procedure as the data source. Then I'd strip the database.owner. off of that text string. Within my code I'd do a LogOnServer("PDSSQL.DLL","MyServer","MyDB","MyUser","MyPassword"

and the report would work for any database on any server (all having the same SP). These reports convert up to CR9 fine and run correctly through my code. The problem is that all of my new reports must be created in 8.5 and then converted to 9 using this method.
My Goals:
1) I do NOT want to create and maintain DSN connections for each server on all of the PCs running this application.
2) I need to be able to switch data sources for the reports within my application.
Crystal has suggested that I use the OLE DB (ADO) connection and the CRDB_ADO.DLL.
I have your book and I'm trying to figure things out in Chapter 9 (pg 197).
Here is the relavent code:
.oCrystal = CREATEOBJECT("CrystalRuntime.Application.9"

.oReport = .oCrystal.OpenReport(tcReport)
.oReport.LogOnServer("crdb_ado.dll","MyServer","MyDB","MyUser","MyPassword"
I'm getting an error message:
OLE error code 0x80020006: Unknown Name
Any suggestions?