A [[Variable value]] gives the column of the row currently in hand. A group value gives something about the whole series of rows instead: the first of them, the last, the largest, or all of them at once.
It is written by putting the name of the group in front of the column, inside the same marker and separated by a colon:
```
$V{least:pjt.pjt_code}
```
Without a group name the current row is meant, so `$V{pjt.pjt_code}` and `$V{current:pjt.pjt_code}` say the same thing.
## Available Groups
- `current`: the row currently in hand. This is the default.
- `first`: the first row of the series.
- `last`: the last row of the series.
- `previous`: the row before the current one.
- `next`: the row after the current one.
- `least`: the row with the lowest value.
- `greatest`: the row with the highest value.
- `all`: every value of the series, joined and separated by a comma.
- `unique`: every distinct value of the series, joined and separated by a comma.
A group which has nothing to report yields nothing rather than an error: `previous` on the first row is empty, and so is `first` on a series without rows.
## Why It Exists
Two situations call for a group value.
The first is a header or a footer. Those are composed outside the repetition, where there is no current row, so a plain variable value has nothing to point at. A header saying which projects the page covers is written with `all` or with `first` and `last`.
The second is a sentence which summarises rather than lists: "the projects in this product group are `$V{all:pjt.pjt_code}`" produces one sentence where a repetition would produce a list.
A group value also works after a repetition has finished. The values of the last repetition are kept, so a closing sentence can still refer to what was walked.