The only Remedy reporting tip I have is... "don't"? (just kidding)
Actually,
When we use the Remedy ODBC driver, we use the one that comes with the Remedy user tool. I personally don't like the Remedy driver, mainly because of the inability to do joins. The majority of my reports are written outside of Remedy, using the standard ODBC to MS SQL.
What does the Remedy ODBC driver buy you?
1) You can run reports "easily" from w/in Remedy, using Remedy's in-app reporting links.
2) Remedy takes care of user authentication, and because of that, handles record and field security.
3) Remedy uses the user's query (inside the user tool) for record selection.
4) Remedy ODBC does date conversion (epoch time conversion) for you.
5) Remedy ODBC does Action Log (or other memo) field handling for you.
What does it cost you?
a) Speed
b) Joins (see item "a)")
c) Limits complexity of reports
Since we run enterprise reports (outside of the user tool), across the while database, we don't care about #1, #2, or #3. Because we run reports against 100's of 1,000's of records, we NEED "a", and because of the complexity, "b" and "c". We use built in functions to handle #4. We seldom need to do anything w/ #5. So for us, enterprise-level, we use ODBC for SQL.
For folks that can't dictate to the SAs that they want/need a join form, that would be the way to go. Except for #2 and #5, I can't see reasons for using the Remedy ODBC. I believe (believe) you can run external processes w/ command line arguments from w/in the Remedy User Tool, meaning you can run a Crystal Reports viewer against an external Crystal Report and pass fields as parameters. Oops, I just thought of one more down-side to using external reports... you have to set up a seperate (read-only) user account into the Remedy database, and set up/share account credentials, and that may be considered a security/confidentiality/propriety data issue for some companies.
I actually worked with someone to overcome the no-join issue from w/in Remedy, but it wasn't pretty, and it wasn't quick. The result was a single report based off of multiple datasources -- all to the same datasource -- with joins between them. We have three defined datasources, say Remedy1, Remedy2, Remedy3, to the same server. While it worked, it ran like a wounded dog. The same report, run outside of Remedy was "split second", but they wanted it lauched from w/in Remedy. They wound up using a join form.
--
Marc Visconte
CSC
Lead RMS Developer
Crystal Reports