Two different customers have contacted me recently because they were surprised to find a ‘new’ Crystal Reports feature in specific reports. They are usually puzzled as to why there is no way to make these features appear in ALL of their reports. Here are two examples:
- You go into File > Report Options and see an extra setting at the bottom that says “Convert DateTime Field:” and there are three choices: To Date, To Date-Time, To String.
- You go into the LINKS tab of the Database Expert and look at the properties of a join. There you see an extra section at the bottom with a check mark that says “Return all rows before joining” then below that you see:
When linking to two files from this file:
Look up both at the same time
Look up all of one and then all of the others
Look up all the combinations of the two files
Rather than being new features in CR, these are actually very old features, from version 8.5. These features have been ‘deprecated’ which means that they are no longer available in reports created in newer versions CR. But if you have an old v8.5 report and it uses one of these features you can still run the report. CR will maintain the functionality of that feature and even show that feature to you in the menu. That is what my customers were seeing.
However it is easy to lose these features while you are experimenting. If you change the first feature setting to be “convert to Date Time” and exit the menu the feature will be dropped from the menu. The only way to get it back would be to close the report without saving it. The same thing happens with the second setting if you take out the check mark for “Return all rows…”. In both cases there is no way to activate or reactivate that feature once you turn it off and save the report, short of going back to a backup copy of the file.
Losing the first feature isn’t much of a problem because you can replicate that functionality pretty quickly by writing a formula. The second feature would be tougher to replicate in current versions of CR which limit you to SQL style joins. But the old feature was only ever available in reports that used a non-SQL connection. These connections included native drivers for Dbase, paradox and the MS Access DAO driver. In those environments the setting allowed you to deal with many-to-many joins without as much duplication. There are workarounds if you know how to write some SQL but no simple menu options.