Crystal Reports Training by Ken Hamady, MS, Reporting
and Training Nationwide

The
Crystal Reports Underground News Volume
2009.03
an independent source for Crystal Reports
Information
by Ken Hamady, MS
Contents for March 2009:
** New license restrictions for Crystal Reports
** Expert Techniques vol. 2 updated for CR 2008
** Learn Crystal Reports (your place or mine):
** New options for Web app developers
** Finding old (and new) downloads on the SAP site
** My library of Crystal Reports materials
** Reporting on data that isn't there Part 1
** Other recent blog articles:
Mapping versions to Service Packs
Gag orders in software contracts?
Founder of Business Objects goes open source
Free DataDirect ODBC drivers v5.3 for CR 2008
CR 2008 SP1 is released
SAP 'fully integrates' Business Objects sales
New license restrictions for Crystal Reports
Here we go again. Every two years I have to fire
up the press because someone starts abusing the Crystal Reports End
User License Agreement (EULA). This change is tied to Crystal Reports
2008 Release 2 (due in May). I don't know anything about the fixes or
new features of the release, but I have read the new EULA and I am
disappointed. There is a new restrictions that affect every user
who takes a Crystal Reports class. I was asked not to publish the
actual license but here is my paraphrase of restriction (a):
"When you take a class anywhere, on any of our products, you agree to pay us an additional fee - in whatever amount we choose"
Now they don't use that exact wording, but that is what it means to
you. They expect every copy of courseware, written or sold by anyone,
to generate revenue to SAP. The last I heard they wanted between $35
and $50 per book, but that will go up more once they control all of the
courseware vendors. I was told two years ago that the authorized
training vendors pay between $150 and $200 per book for 'authorized'
courseware, so you know what they consider a 'fair' price.
Since 2005 SAP has been trying to convince independent courseware
vendors that the use of screenshots is illegal without SAP's
permission. Two courseware vendors went along in 2005 and simply raised
the price of their books. But Mark Myers of Vision Harvest in Colorado
has simply ignored the threats. I have previously discussed one nasty
letter he received in December. But, since these threats haven't
worked, SAP has now added restrictions to the EULA. Restriction "A"
forbids a licensed user of the software from using screenshots in
"commercial training material". This puts all courseware under their
control and allows them to charge whatever fee they want to the
vendors. The cost will get passed on to the users. Do you think SAP is
entitled to add this 'tax' onto users, after the users have already
paid for Crystal Reports?
I see it this way:
1) SAP creates a valuable product and SAP is paid for the product.
2) SAP adds value to their 'authorized' courseware by certifying it and
promoting it. SAP can charge a fair price for that added
value. The books will sell at a premium that reflects the added
value.
But SAP wants the premium to be invisible. That way they can set the
premium as high as they want, without regard to its value. And if this
works for courseware do you really think SAP will stop there? I predict
they will go after independent reference books next, like my "Expert"
series. Then independent training and finally independent
consulting. The last two have already been restricted in the
licenses for BO Enterprise and Xcelsius, so I think the only reason SAP
hasn't added them to the CR license is the response from users.
So, if you are concerned by SAP's approach then I recommend that you at
least ask some questions. You don't even need to complain.
1) First send an Email to Beth Christopher (first name , period, last
name @SAP.com) and request a copy of the new license to review. Beth is
the person that notified Mark Myers of the new license restrictions.
Just say you are concerned and want to know more. You might even
suggest that they post the new license publicly. You will be amazed at
the impact a group of users can have just by saying that you are paying
attention.
2) When you get a copy of the license, review it. If you want, skip to
section 4 (the new part). Then share whatever concerns you have with
Beth about the direction SAP is taking with their license.
3) If you are part of a user group or a large organization, see if you
can get a representative to send a message for that group. If you
have contact with any publications or journalists who cover the "BI"
market, forward this info on to them.
4) And, if you don't mind, please keep me in the loop. You could CC/BCC
me on the message or just drop me a line. If you have additional
concerns, let me know. If you have any questions please don't hesitate
to ask.
I have gone down this road several times now and I have found that user input has a huge impact.
Expert Techniques vol. 2 updated for CR 2008
After updating Volume 1 of Expert Techniques
in January, I decided to read through the other two volumes to see if
any of those articles needed to be updated. I didn't find
anything to update in Volume 3, but I found a handful of improvements
to make in Volume 2. So this week I updated the text and a few reports
in Volume 2.
If you purchased this volume in 2009 you already have the updated
version. If you purchased Volume 2 in 2008 (or earlier) please let me
know and I will send you the update. Here are the updated
articles:
35. Grouping subtotals into ranges
41. Carving a memo field into smaller pieces
42. Expanding the design area in Crystal Reports
43. Reading an external image at runtime (or an image path stored in the database)
58. Suppress the Group Footer or change other properties at Drill-Down
New license options for Web app developers
According to this Blog post
on the SAP network, SAP is now selling a license that allows you to
redistribute web applications AND include the Crystal Reports 2008
runtime engine. Before this license, every deployment of a web
application required the client to purchase one copy of Crystal Reports
2008 to provide the runtime license for the Crystal web engine. Now the
application developer can purchase a "Developer Advantage" distribution
license. For $2,500 you are allowed unlimited distribution of the
runtime engine with your web app. This only applies to CR
2008. Deploying a web application on any prior version still
requires that you follow the licensing model for that version.
Developer Advantage does NOT allow you to distribute the Crystal
Reports designer, and it does NOT allow for "Software as a Service"
deployments, both of which you should discuss with the OEM team at SAP
Business Objects.
There is still the option to purchase a single copy of Crystal Reports
2008 to support each deployment, but this option is going to be phased
out in favor of the Developer Advantage license. The good news is
that this has no effect on "Thick Client" or local application
deployments where the runtime engine is installed/run on a
workstation. Crystal Reports still allows unlimited deployment of
client based applications if you use the Developer Edition of any prior
version of Crystal, or CR 2008 (which only comes in one edition).
Finding old (and new) downloads on the SAP site
In the middle of 2008, SAP moved all of the BO
support documents and files to the SAP support servers. What they
didn't do is put in any forwarding links from the old file locations to
the new file locations. So web pages (like mine) that have links to
those files had to be updated for the new links. That in itself would
be no big deal, except there was no easy way to find the links to the
new files. It has taken me 6 months to locate the 15 files
referenced on my LINKS page. I found some and Mike McCracken of LM
Computing & Consulting found some others. A few we couldn't find at
all until yesterday when I noticed a new download search page feature on SAP's web site. So I have finally updated all of my links.
The next step would be for Business Objects to update their own links.
Almost every support document or knowledgebase article I have seen
still has links that point to the old servers. Of course none of these
links work anymore, so you get dumped onto the general support page on
SAP's site. Don't bother with the search box at the top if you want to
find files. To find files you have to to go to "downloads" and follow a
couple of page hops to get to the downloads search page I mentioned
above. But once you are there you have about 1500 files, covering
versions as old as v2.
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.
Reporting on data that isn't there Part 1 (padding)
Crystal will not create a group in a report unless
there is at least one record for that group in the report's
dataset. This also affects Cross-tabs and Charts, where you won't
see a row, column or bar unless there is a corresponding record.
But, it is not unusual for users to request that missing groups show up
with a zero. There are several ways to do this and the approach
to use depends on a number of factors. Everyone's first thought is to
use an outer join, but I have found that the outer join solution isn't
compatible with the filtering and grouping required in most reports.
One of my favorite workarounds is the "padding" method. Say that you
need a report to list total sales for each salesman in a single
month. You want each salesmen listed - even those with no sales
in the month. You could "pad" the data by expanding the criteria
to include normally irrelevant records. So if the
transaction table includes both sales and calls, and you are confident
that every salesman has at least one call per month, then we could
select the records for BOTH sales and calls and include them in the
dataset. This would ensure that every salesman has at least one
record in the report. To make sure that these extra records don't
affect the totals, you would write a formula to use for totals:
if {Type} = "Sale"
then {Amount} else 0
If you subtotal this formula by salesman you will have a group for
every salesman, but a total of only the sales. If you are
printing the details you could suppress the call details and only show
the sales details. The advantage of this method is that both
charts and cross-tabs can also include the no-sale groups with a total
of zero.
Another way to pad your data is to pull in a much larger time period
than you need. So if you have a Date Range parameter you could
write a selection formula that says:
{Date} in Minimum ({?Date Range}) - 90 to Maximum ({?Date Range})
This would add 90 extra days of data to your report, making it more
likely that every salesman will be represented by a sale. Then
you use the following formula for your totals:
if {Date} = {?Date Range}
then {Amount} else 0
The risk is finding the right amount of padding. You need enough
data to fill in all the gaps, but not so much that you hamper the
performance of the report.
There are other methods that I will discuss in later posts. If
you like to learn techniques like this, then you should check out my 3
volumes of Expert Techniques.
Other recent blog articles
Mapping Versions to Service Packs
Gag orders in contracts?
Founder of Business Objects goes Open Source
Free DataDirect ODBC Drivers v5.3 for CR 2008
CR 2008 SP1 is released
SAP 'Fully Integrates' Business Objects Sales
Contact Information
Ken Hamady,
MS
525K East
Market St.
PMB 299
Leesburg,
VA 20176
(540)
338-0194
ken@kenhamady.com
http://www.kenhamady.com
Copyright
2009 by Ken Hamady
All rights
reserved - Republishing this material requires written permission