The simplest solution would probably be to set up a number parameter that allows multiple values, and use dayofweek as the value, and add the day descriptions. Then let the users select the specific days.
Or you could set up two parameters, one a string parameter {?DayType} with options: all, weekend, weekdays, specific days. Then add a multiple value number parameter {?WhichDays} with prompt text like this:
If you selected DayType = "specific days", select the day or days you would like to report on; otherwise, select "N/A"
Then add day of week numbers as the values, and day descriptions to that. Add 0 as the "N/A" value, and only display the description. Then your record selection formula would be:
select {?DayType}
case "Weekend" : dayofweek({table.date}) in [1,7]
case "Weekdays" : dayofweek({table.date}) in 2 to 6
case "Specific Days" : dayofweek({table.date}) in {?WhichDays}
case "All" : dayofweek({table.date}) in 1 to 7
Whether or not they selected 0 for {?WhichDays}, it would only affect record selection if "Specific Days" was selected, but it is more logical to the user to see that option, I think.
-LB