feat: repeat claim items in document tables

This commit is contained in:
Marcel Peterkau
2026-06-21 22:33:24 +02:00
parent 6c7bf63280
commit c58072fe45
6 changed files with 157 additions and 17 deletions
+15 -1
View File
@@ -49,7 +49,7 @@ member-store/
├── housekeeper.json
├── rules/
├── templates/
│ ├── Forderung.fodt
│ ├── Forderung mit Positionen.fodt
│ ├── Mahnung.fodt
│ └── Mitglied.fodt
└── members/
@@ -97,6 +97,20 @@ available when a reminder row is selected before opening the document dialog.
Unknown or unavailable placeholders stop generation with a clear error rather
than producing an incomplete letter.
To repeat a formatted table row for every claim item, place both loop markers
inside the same template row:
```text
{{#claim.items}}
{{item.description}} | {{item.type}} | {{item.quantity}} | {{item.unit_price}} | {{item.amount}}
{{/claim.items}}
```
The opening marker may share the first cell with its value and the closing
marker may share the last cell. CCMA removes both markers and clones the whole
row, including its formatting, once per item. With no items, the template row
is removed. A loop that is not closed in the same row is rejected.
## Housekeeper rules
The housekeeper runs every rule for every member. Built-in Python rules live in