03-09-2010 01:18 PM
Has anyone pointed the reports OLE DB Connection to something else than OLE connection being used for the rest of SalesLogix(7.5.2 LAN)? I have experimented with UDL's. If I set the database connection to the new UDL connection, everything works until I checkin the report and actually run the report in SalesLogix. At that point, it would appear that SalesLogix hijacks the connection to be whatever is being used for the rest of the program.
I would rather not rewrite a lot of the reports to use views and linked servers. So keeping this as easy as possible wins brownie points with me.
Thank you very much in advance in helping me deal with this.
03-09-2010 05:20 PM
Hi -
I'll do my best to shed some light
(SLX LAN) At run-time, SLX performs roughly these tasks
Extract Crystal report template from Blob in DB and store on local LAN Client hard drive.
Uses the Crystal COM interface to startup a Crystal Run-Time Engine instance
Have Crystal Engine open the Crystal report template file
Use Crystal APIs to change the DB server name, database name, etc. connection info defined in the Report to instead use the current SLX Database connection information. (i.e. the SLX OleDB Connection info including the current SLX UserName and SLX Password)
Much of this is exposed for customization in the Report MainView and the main Detail form and supporting VBScript plugins for that report mainview.
It has been awhile scince I last modified that code, however I recall that there is an SLX function that provides an instance of the Crystal RDC object already initialized, the report already loaded, and the DB connection information already fixed up. I believe it would still be possible to modify the DB connection information at that point.
Note: Sub-Reports...
One or two versions of the Crystal run-time engine ago, I created some customizations where I needed to modify the database connection information, server name and database name prefixes, etc. at run-time. I discovered that if the Cystal Report contains sub-reports, you had to process each sub-report individually as well as they did not automatically change to match the Parent Report. Crystal may have improved in more recent versions. I recall it being a bit awkward to even programatically access the sub-reports within the Parent report - but it was doable.
Hope this is helpful.
03-10-2010 07:40 AM
Thank you, that was interesting insight.
Would you recommend the modifications to begin at the SLX Report Controller then?
03-10-2010 07:42 AM