This month's
contents:
** New Bugs in Crystal Reports v8.5
Inability to link Goldmine (Xbase) Tables
Linking subreports using existing parameters
** "Free" Crystal Decisions Tech Support for 60 days
** Save $50 on the CrystalDesk Scheduler Program
** Hot tips for the month of October
Default
settings
you should change
Mystery DLL
Names
in Crystal
Dates in QRY
files
** Getting expert on-site
training
or consulting
** Public Crystal Reports class schedule
** Getting trained or getting help by phone.
** My Quick Reference to Crystal Reports in Visual Basic
1) Error Reading
Goldmine
Tables.
The Xbase DLL (P2Bxbse.dll) is incompatible with some Xbase formats,
specifically
those used by Goldmine 5.0. The bug appears whenever you try to
link
tables in a one-to-many relationship, going from "one" to "many".
This
worked fine in V8, but doesn't with V8.5. You get a message that says:
Xbase Error: Bad User Specified Key Expression
The workaround is to use the old V8 dll file. First rename the V8.5 dll and then put the V8 dll in the same directory. If you do an Windows Explorer search for this file name you may find both versions already on your PC in different directories. I did. Crystal Tech support also suggested using a HotFix for their Export Dlls, saying that this 'might' fix the problem. I didn't bother with the Hotfix once I got the V8 dll to work. If you want the HotFix and the latest export dlls, contact Crystal Tech Support.
2) Linked Subreports.
If you have used linked subreports, you know that you can either have
CR
add the parameter to the subreport, or you can create the parameter in
the
subreport first and then select it from the container at the time you
make
the link. I prefer the second option, which allows you to name
the
parameter as you wish. However in V8.5 the ability to select an
existing
parameter is hidden by a bug. When you drop down the list of
parameters
it will only show you the new, automatically created, parameter.
It
appears that you can only select this option. However, if you
look
closely below the drop down arrow, you will notice two tiny "smushed"
arrows
to the right of the drop down. If you click the lower of these
arrows
it will scroll down through the list to show you the existing
parameters
in the subreport. They made the drop-down window the wrong size,
and
have plans to correct this in a maintenance release.
You can also Email them a
question
through the Crystal Decisions web site. They have
streamlined
the process of submitting a question, however these questions are
prioritized
based on your support plan. That means that free support Email
questions
could take a while to get a response. I submitted 3
questions
yesterday and I will tell you next month how long it takes to receive
an answer.
CrystalDesk is different. It is a third party scheduler that will allow you to schedule the report WITH its parameters. I have tried it out and found it easy to use. You can download the full application for free with a limited time license and try it yourself. You buy a key to remove the time limit. The regular price for Crystal Desk is $199, but for the month of October Gary (the developer) has agreed to give my readers 25% off this price. Download the demo at:
http://www.crystaldesk.com
http://www.kenhamady.com/settings.html
2) Mystery DLL names.
If you have used the Crystal feature "Convert Database Driver..." you
will
notice a list of DLL files in the pull down list. However, if you
were
to try to find these drivers on your PC, you would search for a long
time.
The reason is that the list of driver names hasn't been updated.
These
are the names of the DLL files used in the original 16bit version of
the
Crystal. To get the equivalent 32 bit file names, replace the
first
2 letters "PD" with the "P2". So PDSODBC.dll becomes
P2SODBC.dll.
This is a file that you will actually find on your PC. These old
file
names also show up in error messages, so it helps to know how to decode
them.
3) Dates in QRY files.
The SQL designer is great feature for extracting a portable data
set. It also allows more sophisticated SQL than the report
designer. One weakness is that it converts DateTime values into
Strings. This will still sort correctly in the report, but will
not allow you to do any date math in formulas. The workaround is
to use the DTSToDateTime() function to convert this field to a DateTime
value which can be formatted as a date. If you want to convert it
to a Date instead of a DateTime you have to use the following two
functions together:
DateTimetoDate ( DTSToDateTime ( {Query.OrderDate} ) )
There is another Crystal
function
that SHOULD do this in one step, the DTSToDate() function.
Unfortunately,
this function does not work.
Do I know my stuff? Go to Tek-Tips.com and you will find me listed as the all-time top rated Crystal Reports expert out of 30,000 members in the General Crystal Forum.
Do I teach a good class?
Ask to speak to a recent customer as a reference. Call for
more
information at (540) 338-0194.
Telephone training available:
VB Quick Reference Guide: