To set the sort order using parameter
fields, you need to first create a formula that includes a parameter field and
then sort based on that formula. For example, assume that you have a customer
list report. For each customer, you show the Customer Name, City, Region,
Country, and Phone Number. You want to be able to sort the report by Country,
by Region, or by City, depending on your needs at the time.
Create a parameter field
and call it
SortField.
Select
String from the
Type
list.
In the
Prompt Text
field, enter a prompt similar to this:
Type R to sort by Region or C to sort by City; otherwise, data will be sorted by Country.
To limit the number of
characters a user can type, enter 1 as both the
Min
Length and the
Max
Length.
Now the parameter field will only
accept single-character values. The field will accept "C" as a value, but not
"City."
Create a formula similar
to this and call it
Sort:
If {?SortField} = "C" Then {customer.CITY}
Else
If {?SortField} = "R" Then {customer.REGION}
Else
{customer.COUNTRY}
This formula prompts for a value for
the parameter field {?SortField}. If you enter "C", the formula will sort by
the City field. If you enter "R" it will sort by the Region field. If you enter
anything else, or do not enter anything at all, the formula will sort by the
Country field.
On the
Layout tab, place the formula in the Report Header
section, and hide the section so that it does not appear when you preview the
report.
Click
Record
Sorting.
Choose your formula, and
then click
OK.
Now when you run the report, the program
will prompt you for a sort field, the formula will return a value based on your
selection, and the sort facility will use that value as your sort field.