The easiest solution I see is to simply put the listview within the dataview of the filter object. Whenever you refresh your filter object (which you do when you press the button), the datasource microflow is triggered again as it resides within the dataview.
As a result, the filter object is available as parameter within the listview datasource microflow as well. So you don't even need an association in your domain model to get the right parameters. You can even do everything within one retrieve action, instead of using exclusive splits. For every search condition you can do this:
($Filter/DateFrom = empty
DateFrom >= $Filter/DateFrom)
($Filter/DateTo = empty
DateTo <= $Filter/DateTo)
I would go for something like this:
Do make sure that the filter retrieves are reusable and when hitting the search button you fire the retrieve and set the DealList to the Filter and refresh the filter. That's it!
The filter is attached to session so when somebody logs of, your filter is deleted.
Refreshing the FilterDate entity doesn't refresh the listview.
Isn't it easier to add the startDate & endDate attributes to the Deal entity and then filter on it?
You can do like this
Problem is solved, indeed by placing my listview inside the Filter dataview, the list is correctly refreshing when I click on my Filter button.
Thank you all,