Archive for April, 2009



Handy custom functions in a free DLL

Tuesday 21 April 2009 @ 6:58 pm

One of my readers tipped me off to a web site that has a handy Crystal Reports DLL that you can download for free.  This DLL adds several custom functions to your formula editor that allow your formulas to do all sorts of new things (and some I don’t recommend that you try).

There are about 40 functions in the DLL that allow your formulas to interact with the operating system. Here are some examples: Continue Reading »
Handy custom functions in a free DLL




Update to the Expert’s Guide to CR Formulas

Sunday 12 April 2009 @ 3:29 pm

I recently finished updating the three volumes of my Expert Techniques guides and turned my attention to the The Expert’s Guide to Crystal Reports Formulas.  I found a handful of improvements to make and decided to include two new functions that I find myself using more and more.  They are Split() and DrillDownGroupLevel.

I have sent the update to those of you who purchased this volume in April 2009. If you purchased this guide in an earlier month, please let me know (along with the Email address that you used) and I will send you the update link.




Calculate your share of a billion dollar expenditure

Thursday 9 April 2009 @ 10:34 pm

This article isn’t about Crystal Reports, but instead is for all of you who are doing your taxes this week.  I have a simple exercise you can do while you have your tax forms out.  And then the next time you read about a federal outlay in the billions or trillions, you will be able to calculate your exact share as easily as calculating a tip on a dinner check.

All you need to know is how much your tax bill was for last year.  It doesn’t matter if you got a refund or had to Continue Reading »
Calculate your share of a billion dollar expenditure




Moving values backward in a report

Tuesday 7 April 2009 @ 10:21 am

Here is a technique I have named the “wormhole”, because it lets Crystal go back in time.  It allows you to take one or several database values from the last record of a report, and then display them or use them in formulas that occur earlier in the report.  Likewise, it can take the last record of a group and print it’s values anywhere in the group, including the group header.  Variables can’t do this because they can only be used ‘downstream’, and subreports can slow things down significantly, so this method has some advantages.  Your report must be sorted, and the values you want to move have to be database values or formulas that can be totaled. Unfortunately, PrintTime formulas can’t be moved using this method. For that you would need a subreport.

Lets say that you have 300 orders sorted by a DateTime field in ascending order.  You are not allowed to change the sort of the report.  But, you need to start the first page of the report with the Date, Amount and Shipping method of the last order on the last page:

First you create the WormHole formula.  You do this by Continue Reading »
Moving values backward in a report





Recrystallize Pro