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
>

Reply via email to