Hi Brian, In my statements github repository [1] I am using Apache Isis v1.16.2, in this there are many view model I am using as dashboard and I think it is preferred way to manage bulk actions, search/filter, etc. at view model level. Under this repo you will find ManageTransactionDashboard view model that has below capabilities 1) It shows list of statement source on left side, transaction filter area on right top and transactions grid on right bottom 2) Transactions panel as below actions a) Add Expense - this action is used for adding expense entry to transaction b) Add Income - this action is used for adding income entry to transactions a) Filter - this action shows a popup with filter criteria like text field, drop downs, date range, amount range, etc. a) Update category - this is bulk action which shows a popup with a field that shows all selected transactions and two drop down for category and sub-category 3) See screenshot of manage transaction dashboard at [2] 4) See screenshot of manage transaction dashboard with filter at [3] 5) See screenshot of bulk action at [4] 6) One of the problem for filter to work correctly is that ID for view models are regenerated every-time and hence you will need to make use of HintIdProvider interface 7) In ManageTransactionDashboard I have used TransactionFilter object to record filter provided by user and converting it to string for usage as ID of the view model; this is because logically my view model is attached to filter specified by user
I hope this will help. Thanks, Jayesh [1] - https://github.com/Jayeshecs/statements [2] - https://github.com/Jayeshecs/statements/blob/master/images/manage-transaction.png [3] - https://github.com/Jayeshecs/statements/blob/master/images/manage-transaction-with-filter.png [4] - https://github.com/Jayeshecs/statements/blob/master/images/bulk-action-change-category.png On Fri, Jun 7, 2019 at 11:57 PM Brian K <harvestmoon...@gmail.com> wrote: > Hi, > > I'm looking to use the feature described in ISIS-1585 [1]. I can't find it > in the docs. I have an action that, given date range parameters, returns a > List of domain objects. I would like to select all or some of the objects > returned and invoke one of the object's actions for each selected object. > I imagine that it would return a list of the objects that were processed > and would be enabled by a simple @Action parameter. > > The alternatives I see in the docs are > 1. Have a collection property of a view model and have the action > annotated with `@Action(associateWith=[the name of the property])` > 2. Have a domain service action take a collection parameter. I'd need > a choices... facet method. > 3. Bulk actions using `@Action(invokeOn=OBJECT_AND_COLLECTION)` - not > really a choice for me because the version I am using does not have it > available. > > I think alternatives (1) and (2) would require that the date range > parameters to be defined as members of the view model or domain service > because a collection property or choices facet cannot take parameters. > > I am currently running 2.0.0-M2. > > Thanks! > Brian > > [1] https://issues.apache.org/jira/browse/ISIS-1585 >