When a field is selected to appear on a
report, field values from every record in the active table(s) are printed by
default. In many cases, you may not want to include all the values, but only a
subset of those values. For example, you may want to include:
Records only for a specific group of
customers.
Records for a specific range of
account numbers out of the total number of records in the database.
Values from only those records that
fall within a particular date range.
Options for selecting
records
Crystal Reports includes a very
sophisticated formula language that you can use to specify virtually any type
of record selection. However, you may not always need the flexibility in record
selection that the formula language provides. The Record Filter dialog is
designed for such instances.
You can select records in one of two
ways:
Using the Record Filter dialog
Using formulas for record selection
Once you are familiar with the Record
Filter dialog and formulas, you can use your record selection techniques to
improve the performance of your reports.
Determining which field(s) to
use
When you select records, you are basing
your report only on those records that meet some conditions that you have set.
You base those conditions on the kind of information you want in the finished
report.
Assume, for example, that you want a
report that only shows data from California. The challenge is to find the best
way to identify those records that come from California.
If the table used in a report has a
State or Region field, you can specify in your request that the program use
only those records in which the value in the state field is equal to California
(Region is equal to CA).
If the table does not have a State
field and you still want to report only on California data, there may be
another way to identify that data.
If the table has a Postal Code
field, you could base your record selection on the range of ZIP codes that
apply to California (Postal Code is between
n
and
N).
If the table has an Area Code
field, you could base your record selection on California Area Codes (Area Code
is one of x, y,....z).
Note:
If the Area Code is
stored in the telephone number field, you will not be able to do this same
record selection using the Record Filter dialog based on the Area Code. You
will have to create a record selection formula using the formula language to
extract the Area Code part of the phone number and then do record selection
based on that.
As a general rule, if
you can base your record selection on a number of fields (as in this example),
you should select an indexed field instead of a field that is not indexed for
better performance.