Here is a simple example. Say this is your record selection:
{SO1_SOEntryHeader.SalesOrderDate}=today
and
{SO1_SOEntryHeader.UsrId}<>"MLE"
and
{SO_90_UDF_Sales_Order.Promo_Code}<>"FREE"
and
{AR1_CustomerMaster.CustomerType}<>["RR","RT","RF","RY","RU","RO","SA","SC","SD","SH","SJ","SK"
"SL","SM","SB","SN","SE","SF","SG","SO","DD","DF","DS","DY"]
Sometimes you can speed things up by making these four seperate formulas:
Formula1:
if {SO1_SOEntryHeader.SalesOrderDate}=today then true else false
Formula2:
if {SO1_SOEntryHeader.UsrId}<>"MLE" then true else false
Formula3:
if {SO_90_UDF_Sales_Order.Promo_Code}<>"FREE" then true else false
Formula4:
if {AR1_CustomerMaster.CustomerType}<>["RR","RT","RF","RY","RU","RO","SA","SC","SD","SH","SJ","SK"
"SL","SM","SB","SN","SE","SF","SG","SO","DD","DF","DS","DY"] then true else false
Then for your record selection, simply call the formulas:
{@Formula1} and {@Formula2} and {@Formula3} and {@Formula4}
Again, I have never understood why this speeds things up, but it can make a big difference. (remember, this is a simple example, some of my reports have much bigger and uglier record selection criteria, and these are the reports that this makes a difference for.)
-k