Good afternoon jacobjz,
I hope your day is going well. I think I would begin by adding a text field to the Reports table you mentioned and name it something like "Tags". Then create a value list that contains the tags you need. When someone adds a Report record, provide an object on the layout that points to the Report::Tags text field. Set the control style to of that layout object to Checkbox set and point the Values from: option to the the Tags value list you created. This will allow the user to select as many values as they like, which will be inserted into the Report::Tags text field as a return delimited list.
When you generate the report, use a conditional PatternCount(Report::Tags;"tag of your choice") = 1 statement to set up the filtering of the data. I think something along this line of thought would work. Good luck!
Sorry, I followed you until the PatternCount. Where would I use this in the report?
sometimes remembering that Filemaker is a DBMS is a good exercise.
I would use a script something like this either when the report layout loads or when the user selects a filter option:
Show all records
Go to Record/Request/Page [First]
If (PatternCount (Report::Tags; Get (ScriptParameter)) = 0)
Go to Record/Request/Page [Next] /* make sure you select Exit after last
Using Get (ScriptParameter) makes the script more modular. You can pass the parameter value (i.e. your tag) to the script based on whatever criteria you choose. Hopefully that makes some sense. I'm sure, like most everything in FileMaker Pro, there are multiple ways to accomplish the same task. Good luck!
NOTE: If the last record in the found set does not include the specified tag, this script will loop through the records a second time. I'm sure there is a more efficient way to accomplish your goal, but I'd need to see a sample of your solution to figure it out.