I think something like this would work however unless you are using version 2008 or above parameters are not optional. ALso I do not kno what your verbiage for the date range would be so I put it in red
(
({?Run Period} = 'Daily' and
{MTL_MATERIAL_TRANSACTIONS.TRANSACTION_DATE} = DateAdd("d",-1,currentdate))
or
({?Run Period} = 'Weekly' and
{MTL_MATERIAL_TRANSACTIONS.TRANSACTION_DATE} in lastfullweek)
or
({?Run Period} = 'Monthly' and {MTL_MATERIAL_TRANSACTIONS.TRANSACTION_DATE} in lastfullmonth)
or
({?Run Period} = 'Range' and {MTL_MATERIAL_TRANSACTIONS.TRANSACTION_DATE} in {?Start Date} to{?End Date})
)