
The Crystal Reports Underground News - Volume 2007.09 (September 2007)
an independent source for Crystal Reports Information by Ken Hamady
Contents for September 2007:
** Understanding "named user" licensing for Crystal Reports
** The new Authorized Consulting Partner (ACP) designation
** Open enrollment classes October 2007
** Spell check or "verify database" for a batch of reports
** Blog highlights:
Crystal Reports admin position in Richmond
Crystal Reports v8.x and Vista
Crystal Reports Viewer XI officially released
An Introduction to Eclipse for Visual Studio users
Calculating periods in 5-4-4
Printing check marks and other symbols from formulas
** My library of Crystal Reports guides
** Don't rouse sleeping tables
** Multi-page cross-tabs missing page numbers
** Read back issues at http://www.kenhamady.com/news.html
Understanding "named user" licensing for Crystal Reports:
Crystal Reports is licensed under a "Named User" license, called a NUL. This means that if you have 5 people creating reports, then you need to own 5 licenses for Crystal Reports. This doesn't mean you can have 5 simultaneous users, it means 5 specific individuals can create reports. The limit is enforced on the honors system - unless they decide to audit you.
Surprisingly, this is not connected to how many PCs have Crystal Reports installed. A single user, with a single license, can legitimately install Crystal Reports on several different PCs - as long as he is the ONLY person who uses Crystal Reports on those PCs. The flip side? If two people share one PC and both use Crystal Reports, then they are supposed to own 2 separate licenses. Even though they can't use them at the same time. Users aren't allowed to share a NUL.
This often comes up when my customers configure a training room for an on-site class. Someone in IT will hesitate to install additional copies of the software without additional licenses. But if they have sufficient licenses for the students to work at their desks, then giving those same people another PC to work on in class doesn't violate the license.
How do I know this? When Crystal Reports XI was released I asked some questions about the new license. One of the Crystal Reports product managers was assigned to give me official answers. This was one of the questions he answered and you can read his response for yourself in my blog.
The new Authorized Consulting Partner (ACP) designation:
Business Objects has just announced a new Authorized Consulting Partner Program (ACP) so that consultants can "distinguish" themselves in the market. The following is a quote from an article in the IT News Online:
"Business Objects customers have come to expect a certain level of service quality when it comes to consulting engagements. However, in the wider marketplace, the skills of individuals and the approach to implementation can be highly variable."
This sounds like the reasoning BO used when they initiated the program for authorized training two years ago. They claimed it was in part to ensure the quality of training manuals. But the only tangible result I saw was a 50% price increase on several standard Crystal course books. Do you think a consultant who pays to be certified, pays commissions to BO and then raises their rates, is going to be a better value to the customer? Or is BO is simply trying to steer independent Crystal consulting into their revenue stream.
Open enrollment classes October 2007:
Do you want better reports? Come join me in one of my small classes (3-5 students) and learn how to make Crystal work for you. My Intro class makes sure you know all of the basics. We even include material on cross-tabs, charts and some formulas. The Advanced class shows you how to solve several common reporting problems as well as when to use advanced features like running totals, subreports, parameters and commands. Users of any version are welcome. Classes are held in Frederick, MD and the next round is mid-October 2007. See my web site for more details or call me at (540) 338-0194.
So what makes my class different besides the small size? I have written my own course materials and have used them to teach over 2,000 satisfied students. And every student gets a toll-free number that they can use to call me after class with questions.
Or, if you want to schedule a class at your office, using your data, that is my specialty. And I have found several other top-notch instructors around the US, UK and Canada that can deliver my class at your location for a very competitive price. Call or visit my web site for more details.
Spell check or "verify database" for a batch of reports:
David Martinko of Redeemed Software has just released two specialized tools for Crystal Reports users.
The first is called SpellCheck and is pretty self explanatory. It lets you spell check all the labels, text fields, formula fields, and report properties (report name, description, etc.). This fills a gap in the Crystal Reports product line. This tool costs $150 per user but there is a 10% discount for my readers.
The second is called Mass Verify. It performs the "Verify Database" step for multiple reports in one step. It will create a backup of each report first, verifies and saves after verification. A list of reports which have been verified is generated. This tool is $100 but again, my readers get a 10% discount.
To purchase these tools you download the EXE and then purchase an 'unlock' code to install the software. The download won't work at all without the code. If you decide to try one of these these tools please let me know what you think.
Other recent Blog articles:
Crystal Reports admin position available in Richmond
Crystal Reports v8.x and Vista
Crystal Reports Viewer XI officially released
An Introduction to Eclipse for Visual Studio users
Printing check marks and other symbols from formulas
Calculating your 5-4-4 periods automatically
My complete Library of Crystal Reports Materials:
Let a master teacher help you understand these Crystal Topics. Each guide comes with clear explanations and sample files to illustrate each concept.
Expert's Guide to Formulas ($36)
Expert's Guide to Subreports, Parameters and Alerts ($28)
Expert's Guide to Totals ($24)
Expert's Guide to Cross-Tabs ($22)
Expert Techniques Vol. I ($19)
Expert Techniques Vol. II ($19)
Expert Techniques Vol. III($19)
Quick Reference to Crystal Reports in Visual Basic ($16)
Quick Reference to Crystal Reports in .NET ($14)
You will find these on the LIBRARY page of my site.
Don't rouse sleeping tables:
One of my roles as a Crystal Reports consultant is to troubleshoot reports that mysteriously stop working. Often the culprit is what I call a "sleeping" table in the report that somehow gets activated. A sleeping table is a table that is not being used in the report, but that someone has decided to include anyway. I recommend that you avoid sleeping tables, even though they don't have any effect on how the report behaves (now). They invite problems down the road.
Say you create an initial draft of a report that requires 3 tables, but you decide to include an extra fourth table. You don't need this table now but you figure you might want to use it later. So you add all 4 tables and link them together. You then use 3 of the tables and leave the 4th one sleeping. You test and polish the report and it works perfectly. Next week someone tries to use a field from that extra (sleeping) table. At this point the report will often develop problems like duplicate records, missing records or sometimes it will display no records at all. But the table configuration in the report hasn't changed.
The problem stems from the fact that Crystal Reports generates a SQL statement for the report based on the fields used in the report. Therefore, Crystal will not include any sleeping tables in the SQL. So, you won't see the effect of including a table in a report unless you use at least one field from that table. When you incorporate the first field from a sleeping table it becomes activated and is then included in the SQL. Often that is the first time you see the distortion caused by the extra table.
If you get distortion when you activate a sleeping table, it is typically caused by one of two things. It could be that the sleeping table is the 'many' end of a one-to-many relationship, which causes the original records to duplicate. Or it could be that some records in the original report don't have a match in the newly activated table, which causes some or all of the report records to disappear.
So here are the 2 things that I recommend, especially for people still learning about their data:
1) Try to remove any sleeping tables from the report. That way you won't accidentally distort your data by activating these tables with a future change. Note that a table used as a join between two other tables is not really a sleeping table as long as the other tables are used.
2) If the sleeping table is going to be needed later, then take at least one field from that table and put it physically on the report somewhere, even somewhere hidden. This way the table is activated and you know that your results take this table into account. Now you can test to make sure this table isn't distorting your report.
Multi-page cross-tabs missing page numbers:
When you place a large cross-tab or subreport in a report header, page numbers won't appear until that object is complete. This is because the page number is in the page header or footer and these sections don't show until the Report Header has completely printed. So, if a cross-tab takes up 3 pages, you won't see page numbers until page 4. Some folks have tried moving the page number in the Report Header with the Cross-tab, however this will only put the page number on the first page.
The workaround is to create what I call a "dummy" group. This is a group that contains all of the records in the report. You can then use this group's Group Header in place of the report header. And since Group Headers print within the Page Header and Footer, your page numbers will appear. Here are the 3 steps:
1) Add the following formula to your report:
WhileReadingRecords; 1
2) Group on this field, and make it the primary group of the report. This won't change the way the rest of the report works, but it will add a Group Header to the report that only prints once (on the first page). It will behave just like a Report Header, except that it will print between the Page Header and Page Footer on the first page. You should suppress the Group Footer for this group.
3) Move your Cross-tab from the Report Header to the new Group Header. The cross-tab numbers will be the same since this 'Group' contains all records. The only difference is that your have page numbers on each page of the Cross-tab.
If your report will has columnar data after the cross-tab, you may have to learn how to suppress column headings until the cross-tab is complete. You will find an example of how to do this in my Expert Techniques Volume I.
Contact Information:
Ken Hamady
525K East Market St.
PMB 299
Leesburg, VA 20176
(540) 338-0194
ken@kenhamady.com
http://www.kenhamady.com
Copyright 2007 by Ken Hamady
All rights reserved - Republishing this material requires written permission