Skip to content

Commit 7220027

Browse files
feat(v0.8.5): add run_special.py — special runner with configurable start date
- scripts/run_special.py: new standalone runner for evolution reports and comparison matrices starting from a configurable date (--start YYYY-MM, default: 2025-07). Start date is used as year label in filenames (e.g. evolutie-care-2025-07-nl_...md) and output follows normal per-pillar folder structure. Supports --chart, --no-matrix, --force-csv, --output. - docs/03-operationeel/tools/run-special.md: full user guide for run_special.py (summary, when-to-use, usage examples, arguments, period logic, output structure, troubleshooting, related scripts) - docs/03-operationeel/operations-runbook.md v1.3: added section 10 (special run procedure) and reference to run-special.md in section 8 - docs/CHANGELOG.md v0.8.5: documented all changes - output/2026-05-11/*/: generated special run output (2025-07 start date)
1 parent fa08f9f commit 7220027

24 files changed

Lines changed: 13378 additions & 1 deletion

docs/03-operationeel/operations-runbook.md

Lines changed: 55 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -163,6 +163,7 @@ Lokale lint voor commit:
163163
| Document | Beschrijving |
164164
|---|---|
165165
| `docs/03-operationeel/tools/run-monthly.md` | Gebruiksgids batch-runner |
166+
| `docs/03-operationeel/tools/run-special.md` | Gebruiksgids special runner (instelbare begindatum) |
166167
| `docs/03-operationeel/tools/export-data.md` | Gebruiksgids data-export |
167168
| `docs/03-operationeel/kwaliteitscontrole.md` | Kwaliteitscontroles op output |
168169
| `docs/02-tactisch/implementatie-gids.md` | Overzicht alle implementatiefasen |
@@ -237,11 +238,64 @@ Dan in Copilot Chat:
237238

238239
---
239240

241+
## 10. Special run — intern beeld met instelbare begindatum
242+
243+
Naast de standaard maandelijkse run bestaat er een **special runner** voor analyses
244+
die starten op een andere datum dan januari. Typisch gebruik: intern PHARMA-beeld
245+
vanaf **juli 2025**.
246+
247+
> Volledig verschil met de standaardrun: zie `docs/03-operationeel/tools/run-special.md`.
248+
249+
### 10.1 — Wanneer uitvoeren
250+
251+
Voer `run_special.py` uit wanneer:
252+
253+
- een intern beeld gewenst is op basis van data **vanaf juli 2025** (of een andere maand)
254+
- de PHARMA-pijler apart geanalyseerd moet worden t.o.v. het ZORGI-totaalplaatje
255+
- maandelijks, aanvullend aan `run_monthly.py` — niet ter vervanging
256+
257+
### 10.2 — Volledige run (aanbevolen)
258+
259+
```powershell
260+
cd C:\Users\danndepe\Documents\AI\CSAT-Compass
261+
.venv\Scripts\Activate.ps1
262+
.venv\Scripts\python.exe scripts/run_special.py --start 2025-07 --chart
263+
```
264+
265+
Verwacht: **30 bestanden** in `output\YYYY-MM-DD\{pijler}\`
266+
(10 matrices + 10 evolutierapporten + 10 PNG's)
267+
268+
### 10.3 — Uitvoerstructuur
269+
270+
Bestanden staan in **dezelfde mappenstructuur** als de standaard run.
271+
Het onderscheid is zichtbaar in de bestandsnaam:
272+
273+
| Type | Standaard | Special |
274+
|---|---|---|
275+
| Evolutierapport NL | `evolutie-care-2026-nl_...md` | `evolutie-care-2025-07-nl_...md` |
276+
| Matrix NL | `matrix-care-2026-nl_...md` | `matrix-care-2025-07-nl_...md` |
277+
278+
### 10.4 — Checklist special run
279+
280+
- [ ] Omgeving actief (`Activate.ps1`)
281+
- [ ] Run uitgevoerd met `--start 2025-07 --chart`
282+
- [ ] 30 bestanden aanwezig — geen `[FOUT]`-meldingen
283+
- [ ] Bestandsnamen bevatten `2025-07` als jaarlabel
284+
- [ ] PDF-conversie indien gewenst (zie §9.3)
285+
286+
### 10.5 — Noodrun (SQL niet beschikbaar)
287+
288+
```powershell
289+
.venv\Scripts\python.exe scripts/run_special.py --start 2025-07 --chart --force-csv
290+
```
291+
292+
---
293+
240294
## Versiehistorie
241295

242296
| Versie | Datum | Wijzigingen | Auteur |
243297
| ------ | ---------- | --------------- | ------ |
244298
| 1.0 | 26/03/2026 | Initiële versie — fasen 1 t/m 3e operationeel | Danny Depecker + GHC |
245299
| 1.1 | 21/04/2026 | §8 referenties uitgebreid | Danny Depecker + GHC |
246300
| 1.2 | 05/05/2026 | §9 Nieuw maand checklist toegevoegd incl. PDF-procedure met PNG-vereiste | Danny Depecker + GHC |
247-
| 1.2 | 04/05/2026 | §9 Nieuw maand checklist toegevoegd (data run, verificatie, PDF, distributie, dashboard, periodiek onderhoud, statustracking) | Danny Depecker + GHC |
301+
| 1.3 | 11/05/2026 | §10 Special run toegevoegd; §8 run-special.md toegevoegd aan referenties | Danny Depecker + GHC |
Lines changed: 194 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,194 @@
1+
# CSAT-Compass - run_special.py
2+
3+
**Versie:** 1.0
4+
**Laatst bijgewerkt:** 11/05/2026
5+
6+
**Doel:** Operationele gebruiksgids voor de special runner (instelbare begindatum)
7+
**Type:** Tool-documentatie
8+
**Auteur:** Danny Depecker + GHC
9+
**Status:** Actief
10+
11+
**Bestandsnaam:** run-special.md
12+
**Path:** docs/03-operationeel/tools/
13+
14+
---
15+
16+
## Samenvatting
17+
18+
`scripts/run_special.py` genereert dezelfde output als de standaard maandelijkse run,
19+
maar met een **instelbare begindatum**. Hiermee is het mogelijk om analyses te beperken
20+
tot een specifieke startperiode — onafhankelijk van de reguliere ZORGI-rapportage.
21+
22+
**Typisch gebruik:** intern PHARMA-beeld op basis van data **vanaf juli 2025** t/m de
23+
volledige afgelopen maand, ter aanvulling van (niet ter vervanging van) het ZORGI-geheel.
24+
25+
Per pijler worden **6 bestanden** gegenereerd — identiek aan de standaardstructuur:
26+
27+
| Bestand | Inhoud |
28+
|---|---|
29+
| `matrix-{pijler}-{start}-nl/fr_...md` | Maandmatrix NL + FR (start t/m huidig) |
30+
| `evolutie-{pijler}-{start}-nl/fr_...md` | Evolutierapport NL + FR |
31+
| `evolutie-{pijler}-{start}-nl/fr_...png` | Visualisatie NL + FR |
32+
33+
**Bestandsnamen bevatten altijd de begindatum** — zo is het onderscheid met de
34+
standaard output (`evolutie-care-2026-nl_...md`) direct zichtbaar
35+
(`evolutie-care-2025-07-nl_...md`).
36+
37+
**Volledig commando:**
38+
39+
```powershell
40+
cd C:\Users\danndepe\Documents\AI\CSAT-Compass
41+
.venv\Scripts\Activate.ps1
42+
.venv\Scripts\python.exe scripts/run_special.py --start 2025-07 --chart
43+
```
44+
45+
---
46+
47+
## Wanneer gebruiken
48+
49+
| Situatie | Script |
50+
|---|---|
51+
| Maandelijkse standaardrapportage (volledig jaar 2025 als baseline) | `run_monthly.py` |
52+
| Intern PHARMA-beeld — data enkel vanaf een specifieke maand | `run_special.py` |
53+
| Adhoc evolutie voor één pijler met vrije periodes | `generate_evolution.py` |
54+
55+
---
56+
57+
## Gebruik
58+
59+
### Standaardrun (begindatum = juli 2025, vorige maand als einddatum)
60+
61+
```powershell
62+
.venv\Scripts\python.exe scripts/run_special.py --start 2025-07 --chart
63+
```
64+
65+
### Specifieke doelmaand
66+
67+
```powershell
68+
.venv\Scripts\python.exe scripts/run_special.py --start 2025-07 --month 2026-04 --chart
69+
```
70+
71+
### Selectie van pijlers
72+
73+
```powershell
74+
.venv\Scripts\python.exe scripts/run_special.py --start 2025-07 --pillar pharma care --chart
75+
```
76+
77+
### Zonder PNG-visualisaties
78+
79+
```powershell
80+
.venv\Scripts\python.exe scripts/run_special.py --start 2025-07
81+
```
82+
83+
### Zonder vergelijkingsmatrix
84+
85+
```powershell
86+
.venv\Scripts\python.exe scripts/run_special.py --start 2025-07 --chart --no-matrix
87+
```
88+
89+
### Noodrun (SQL niet beschikbaar)
90+
91+
```powershell
92+
.venv\Scripts\python.exe scripts/run_special.py --start 2025-07 --chart --force-csv
93+
```
94+
95+
Vereist dat `data/fallback/` een recente CSV-export bevat (zie `export_data.py`).
96+
97+
---
98+
99+
## Argumenten
100+
101+
| Argument | Beschrijving | Standaard |
102+
|---|---|---|
103+
| `--start YYYY-MM` | Begindatum van de analyse — baseline start hier | `2025-07` |
104+
| `--month YYYY-MM` | Einddatum huidige periode | vorige maand |
105+
| `--pillar ...` | Pijlers (een of meer) | alle 5: zorgi pharma care care_admin erp4hc |
106+
| `--chart` | Genereer PNG-visualisaties (NL + FR per pijler) | uit |
107+
| `--no-matrix` | Sla vergelijkingsmatrices over | uit (matrix AAN) |
108+
| `--force-csv` | SQL omzeilen, CSV-fallback forceren | uit |
109+
| `--output MAP` | Alternatieve basisuitvoermap | `output/` |
110+
111+
---
112+
113+
## Periodelogica
114+
115+
De begindatum (`--start`) bepaalt automatisch de splitsing:
116+
117+
| Parameter | Afleiding | Voorbeeld (--start 2025-07 --month 2026-04) |
118+
|---|---|---|
119+
| Baseline van | `--start` | `2025-07` |
120+
| Baseline tot | einde van het startjaar | `2025-12` |
121+
| Current van | 1 januari volgend jaar | `2026-01` |
122+
| Current tot | `--month` | `2026-04` |
123+
| Matrix van | `--start` | `2025-07` |
124+
| Matrix tot | `--month` | `2026-04` |
125+
126+
> ⚠️ `--start` en `--month` **moeten in verschillende jaren vallen**.
127+
> De splitsing baseline/current loopt altijd op de jaargrens (31 december / 1 januari).
128+
129+
---
130+
131+
## Output
132+
133+
Bestanden worden weggeschreven naar de **gewone per-pijler mappenstructuur** in `output/`:
134+
135+
```text
136+
output/
137+
YYYY-MM-DD/
138+
zorgi/
139+
matrix-zorgi-2025-07-nl_TIMESTAMP.md
140+
matrix-zorgi-2025-07-fr_TIMESTAMP.md
141+
evolutie-zorgi-2025-07-nl_TIMESTAMP.md
142+
evolutie-zorgi-2025-07-fr_TIMESTAMP.md
143+
evolutie-zorgi-2025-07-nl_TIMESTAMP.png
144+
evolutie-zorgi-2025-07-fr_TIMESTAMP.png
145+
pharma/
146+
matrix-pharma-2025-07-nl_TIMESTAMP.md ← let op: "2025-07" i.p.v. "2026"
147+
...
148+
care/ ...
149+
care_admin/ ...
150+
erp4hc/ ...
151+
```
152+
153+
**Totaal bij volledige run** (`--chart`): **30 bestanden**
154+
(10 matrices + 10 evolutierapporten + 10 PNG's)
155+
156+
### Onderscheid met standaard output
157+
158+
| | Standaard (`run_monthly.py`) | Special (`run_special.py`) |
159+
|---|---|---|
160+
| Bestandsnaam | `evolutie-care-2026-nl_...md` | `evolutie-care-2025-07-nl_...md` |
161+
| Baseline | volledig 2025 (jan–dec) | H2 2025 (jul–dec) |
162+
| Mappenstructuur | `output/.../care/` | `output/.../care/` (zelfde) |
163+
164+
---
165+
166+
## Probleemoplossing
167+
168+
| Symptoom | Oorzaak | Oplossing |
169+
|---|---|---|
170+
| `ValueError: --start moet in een eerder jaar liggen` | `--start` en `--month` vallen in hetzelfde jaar | Kies een `--start` in het jaar vóór `--month` |
171+
| `ConnectionError` bij start | SQL Server niet bereikbaar | Gebruik `--force-csv` |
172+
| `0 rijen geladen` voor een pijler | Geen data in die periode | Controleer of de startdatum niet te recent is |
173+
| Matrix-bestand mist | Pijler-fout tijdens matrix-stap | Bekijk `[FOUT]`-regel in console + `logs/` |
174+
| PNG ontbreekt | `--chart` niet meegegeven | Herrun met `--chart --no-matrix` (matrix niet opnieuw aanmaken) |
175+
176+
---
177+
178+
## Gerelateerde scripts
179+
180+
| Script | Gebruik |
181+
|---|---|
182+
| `scripts/run_monthly.py` | Standaard maandelijkse run (volledig jaar 2025 als baseline) |
183+
| `scripts/generate_evolution.py` | Evolutierapport voor één pijler met vrije periodes |
184+
| `scripts/generate_matrix.py` | Enkel de matrix genereren |
185+
| `scripts/export_data.py` | CSV-snapshot aanmaken voor fallback |
186+
187+
---
188+
189+
## Versiehistorie
190+
191+
| Versie | Datum | Wijzigingen | Auteur |
192+
| ------ | ---------- | --------------- | ------ |
193+
| 1.0 | 11/05/2026 | Initiële versie | Danny Depecker + GHC |
194+

docs/CHANGELOG.md

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,19 @@
33
Alle noemenswaardige wijzigingen aan dit project worden hier gedocumenteerd.
44
Formaat gebaseerd op [Keep a Changelog](https://keepachangelog.com/nl/1.0.0/).
55

6+
## [0.8.5] — 11/05/2026
7+
8+
### Toegevoegd
9+
10+
- `scripts/run_special.py` — nieuwe standalone runner voor evolutierapporten én vergelijkingsmatrices met instelbare begindatum (`--start YYYY-MM`, standaard: `2025-07`). De begindatum fungeert als jaarlabel in de bestandsnamen (bv. `evolutie-care-2025-07-nl_...md`), waardoor de bestanden direct te onderscheiden zijn van de standaard output (`evolutie-care-2026-nl_...md`). Genereert NL + FR matrix + evolutierapport voor alle 5 pijlers (of subset via `--pillar`), in de gewone per-pijler mappenstructuur (`output/YYYY-MM-DD/{pijler}/`). Ondersteunt `--chart`, `--no-matrix`, `--force-csv`, `--output`.
11+
- `docs/03-operationeel/tools/run-special.md` — volledige gebruiksgids voor `run_special.py`: samenvatting, wanneer-gebruiken tabel, alle gebruik-voorbeelden, argumententabel, periodelogica, outputstructuur, probleemoplossing en gerelateerde scripts.
12+
13+
### Gewijzigd
14+
15+
- `docs/03-operationeel/operations-runbook.md` → versie 1.3: §10 Special run toegevoegd (wanneer uitvoeren, volledig commando, uitvoerstructuur, checklist, noodrun); §8 referentie naar `run-special.md` toegevoegd.
16+
17+
---
18+
619
## [0.8.4] — 05/05/2026
720

821
### Toegevoegd

0 commit comments

Comments
 (0)