phone: (540)338-0194
email: ken@kenhamady.com

ReCrystalize

Crystal v9 Application Deployment Options:

You can deploy CRv9 in both Client Based Applications and Web Based Applications.   Client Based Applications are those installed and run on the user's PC.  Web Based Applications only require that the user have a browswer, and the application is run on a web server. 

Client Based Applications using RDC:
CRv9 no longer supports the 4 integration methods that were available in prior versions of Crystal Reports.  You are now limited to the Report Design Component (the RDC).  The licensing for the CRv9 RDC is similar to v8.5.  You can deploy a client based app to as many people as you want, with no fees or royalties required. 

You have an added option of including Report Creation capabilities in your application.  If you decide to use these functions, you have to buy end user licenses that cost $199 for each installation of your application.  These calls are unavailable until you buy these licenses.  With v8.5 you could use the calls in your application, but you were supposed to pay royalties for each installation.  There was only a "nag screen" to remind you of the royalty requirement.


Web Application Options:
There are 6 basic ways to do a web deployment:

1) The Report Designer Component (RDC):

You are also allowed to use the RDC on a web server.  You can then write ASP pages to control the report through the RDC. 
Crystal recommends that you used RAS (discussed below) instead.  I was told that is because the RAS processing fits better into the processing style of a web server.  I was also told that upgrading an RDC application to a Crystal Enterprise was much more work than upgrading from RAS.   So, those going to Crystal Enterprise would certainly want to user RAS.

However, some users might find an advantage in staying with the RDC - especially if they have an existing RDC Application.  The RDC that comes with the Developer Edition allows you to make some report modifications (changing a sort, a group or the selecton formula) at runtime. To make runtime changes like these with a RAS application would require that you upgrade to the Advanced Edition.

What isn't clear to me (yet) is how many users can be logged into a web based RDC Application, at one time.  

2) Crystal Enterprise RAS Edition with CR Proffessional:
The Report Application Server (RAS) Edition of Crystal Enterprise is a brand new product.  It allows you to deploy reports on the web using a prepackaged interface called E-portfolio lite.  This is much different from the ePortfolio that came for free with CRv8.5.  The v9 version doesn't include scheduling, a Management Console, stored instances or even caching of report pages. 

You can deploy a web sites with this edition, however, the performance will be severly limited.  This is because the RAS Edition of Crystal Enterprise is limited to 3 simultaneous browser activities, sometimes referred to as 3 'threads'.   This means that you can only have 3 people actively requesting information from the report server.  If a 4th person makes a request while the first 3 are active, he will be denied. 

First the good news.  There is a difference between these threads and the older CALs.  A CAL was active as long as the person was logged into Crystal Enterprise, and the CAL even persisted for several minutes after the user was done.  Threads are released as soon as the request is complete.  When you see the first page of your report, your thread is free for someone else.  

Now the bad news.  When your thread is released, your report is completely dumped from the server's memory.  So, when you click to go to the next page, the server must generate the entire report from scratch, including a requery of the database.  In other words, if I run a 4-page report and view all 4 pages I have made 4 requests and have 'hit' the database 4 times.  When I then hit Print, I 'hit' the database again.  This is what CD means when they say that the Professional or Developer editions are intended for testing rather than deployment.  You can deploy them, but you may not like the performance.  If you upgrade to the Advanced Edition discussed below, you get a chaching, which solves this problem.

There is another limitation on performance if you are trying to deploy with only the Professional or Developer Editions. When your 3 threads are used up, the 4th person is denied.  So 20 users can be looking at pages in preview, but if 4 of them change pages at the same time, one of them will be denied and will have to try again.
 If you upgrade to the Advanced Edition discussed below, the 4th person and others are put into a queue and are processed as soon as a slot is freed.


3) Crystal Enterprise RAS Edition with CR Developer:
If you buy the Developer Edition of CR you get everything mentioned in the last section (CR Professional) and in addition you get a 'base' level SDK.  This allows you to launch a report from code (Java/Com/.NET) and pass  parameter values to the report, including Logon Parameters.  You also have a prebuilt user interface called ePortfolio lite which you can customize.  Some developers may assume that you can change a sort, change a group, or pass a selection formula to the report at runtime.  However, these features are not supported until you get to the Advanced Edition.


4)
Crystal Enterprise RAS Edition with CR Advanced:
If you want to deploy a web application you can Upgrade to the new Advanced Edition.  What do you get for the extra $1,645?  The 4 most importan things are:

A) Your report server will now queue users.  This means that instead of your 4th active request being denied, it will be put in a queue and will be processes as soon as there is an open thread. 

B) Your report server will now cache your report pages, so that you can page through a report or print a report without the server having to hit the database for every page.  Caching can even reuse a report instance for another user.   So if 2 people request the same exact report within a few minutes, the second person will get the report that was generated by the first person.  I was told that a report is cached for 20 minutes by default, and that this cab be changed by the RAS Administrator.


C)
Advanced also provides additional API calls for programmers. These allow you to make changes to reports at runtime like changing a sort, changing a group, changing a formula or changing the selection formula.   These options were available with the Developer Edition of CRv8.5, but that is no longer the case.  You now have to upgrade to the Advanced Edition to use these functions.
If the Advanced Edition has the features you need, but you don't want to be limited to three threads, your only option (currently) is to bump up to an unlimited processor license for the RAS.   Then the number of active process (threads) is limited only by the amout of processing your server can handle.  The processor license lists for $25,000 but this may be negotiable with your reseller. 

D)  The Advanced Edition also includes "Report Creation" functions that you can put into your web application.  These allow an end user to modify a report or even create a new report using a wizard.  Crystal has writtten a sample application to highlight this feature called the DHTML Web Wizard.  You can use this as it is, or as a starting point for your own application.   This sample application comes on the RAS Edition CD that comes with V9, but you are not allowed to use this functionality unless you upgrade to the Advanced Edition.

5) Crystal Enterprise v9 Standard Edition:  (optional free uprade from CR Advanced - allows 5 unnamed users)
If you upgrade to Crystal Enterprise Standard v9, you have the same features that you can get with CE Standard v8.5.  This includes the Management Console, report scheduling and the ability to save and manage instances of reports.   There is no built in security, but  there are third party tools that allow user, group and even row level security.  See my LINKS page for third party tools.

6) Crystal Enterprise v9 Professional Edition
(optional free upgrade from CR Pro, Dev or Advanced - allows 5 named users):
By upgrading to the Professional Edition of Crystal Enterprise you get a full security model.  You can have named users and groups with different levels of access.  You can upgrade further to provide certain users the ability to do ad hoc reporting, called Smart Reporting.


One note for developers that have used Crystal Server Pages (CSP) for developing applications.  You will no longer need to use CSP.  The RAS Edition SDK supports ASP, Java or .NET.    CE will also allow you to program in the languages above.  Crystal has found that people want to run their own app server.   CE Standard / Pro supports CSP but the RAS Edition does not have the CSP procdessing engine.  CSP will not be emphaisized in CE Standard / Pro.