I did a thing that seemed to makes sense when I came up with the idea, but I am not sure if it is a reasonable standard practice. Basically I wanted to get the filtering calculations out of the actual portal filter dialog and make them easier to edit as need in a field. I have seen portal filtering done in a few ways, but never in this way. When I am doing something that I am not seeing anywhere else I start to wonder if there is a reason it is not done that way.
I have a Portal Filter table with three fields. UUID, Text, and Value. This is used for a value list storing the Value field but displaying the Text field.
Sample record entry:
Text: Last 7 days
Value: Class::Date ≥ (Get ( CurrentDate ) - 6)
I use the value list to set a global field, Global::DATE, with a refresh portal trigger on the popup.
The portal filter is selected and uses simply Evaluate(Global::DATE)
It is seeming to work well. The only downside I see is that there are no syntax checks on the text in the Value field.