I recently wrote about using ALL when working with parameter fields. After my newsletter went out I got a comment from Bruce Ferguson of Crystal Kiwi in New Zealand (thanks Bruce!). He mentioned that he prefers to use an asterisk instead of the word ALL. This sorts to the top of the list automatically, and us old-timers are used to thinking of the asterisk as a wildcard. It also doesn’t get confused with similar values, like the state abbreviation “AL”
This reminded me of a lesson from my advanced class. We create a string parameter and write a selection formula like this:
{Customer.PostalCode} like {?Zip}
This can be used three ways by the user.
1) If they enter the full code like 20176 they will get exact matches.
2) They could also do a partial match like 601*. This would give them all postal codes that started with 601. They could enter any number of characters to get a broader or narrower group.
3) If they enter just an asterisk, they would get ALL values, with one exception. They would get records that have a blank postal code, but they would NOT get records that have a NULL postal code.
So, if you want to use LIKE and still have the asterisk return all values, including NULL values, you would need to do something like this:
if {?zip} = "*"
then True
else {Customer.PostalCode} like {?Zip}