Repeater row per row for same groups

Dear all!

I have a repeater with several items where items are grouped by a common item value. (item.group = 1 for group 1, 2 for group2 …)

I want to show the date of one row of one group,
For that I use multiple pages with items per page = 1

I evaluate the date and use a click event to show the next page.

Now I would like to show a different screen if the last item of the group has been confirmed. after confirming this screen i want to continue with the items of the next group.

Anybody can help me on that. I couldnt figure out a good way to do that yet.

Thanks
Franz

Hi Franz!

The difficulty here is that you can’t really look ahead to the next row, so you have to wait until you get there. Fortunately, you can show an object on top of the repeater before you can see the repeater change to the next row.

Here there are two (hidden) objects on top of the repeater (not inside of it - the Go Next “screen” and the Done “screen”

Live sample

File: paged_repeater_with_groups.rp (219.0 KB)

[ Edit ] This is an interesting topic, because I don’t deal with paged repeaters very often. So naturally I forget a bunch of stuff. For instance:

[[Item.index]] is per page! So in this example, with one-item-per-page repeater, every row’s [[Item.index]] value is 1, because every row is the first row on that page. If you want the current row’s index in the repeater as a whole, there is no keyword for it. You have to calculate it:

    [[Item.index + (Item.Repeater.pageIndex - 1) * itemsPerPage]]

… where itemsPerPage is a global or local variable, because the repeater style “Items per page” is not gettable. (Don’t get me started…)

The same is true for [[Item.isFirst]] and [[Item.isLast]] - i.e., they refer to the first and last rows of the given page, so both evaluate to TRUE for every row of a one-item-per-page repeater.

Useful properties for dealing with paged repeaters:

  • [[Item.Repeater.pageCount]] - number of pages in the repeater

  • [[Item.Repeater.pageIndex]] - which page the current row is on, starting at 1

  • [[Item.Repeater.visibleItemCount]] - how many rows appear on a given page. Note that this is not the same as the missing “itemsPerPage” keyword, as there may be fewer rows on a page than the “Items per page” style specifies. For example, in a repeater with 23 rows and 10 items per page, visibleRowCount will be 3 on the third page.