Files
janssen/Feasibility/TRASH/sipiq_import_v1.2.md
T
2026-06-19 14:28:54 +02:00

41 lines
2.2 KiB
Markdown

# sipiq_import_v1.2 — import SIPIQ odpovědí (folder workflow + provenance)
**Verze:** 1.2 · **Datum:** 2026-06-17 · **Studie:** 77242113UCO3002 (ICONIC / DAWN)
## Změny
- **v1.2:** ke každé odpovědi `source_exported_at` = **datum/čas reportu podle filesystému**
(mtime CSV souboru). Mimo content-hash → nezpůsobuje zbytečné UPDATE; backfilluje se i na
"beze změny" cestě. v1.1 → `Feasibility\TRASH`.
- **v1.1:** FOLDER workflow (`--folder`) — sebere *.csv, delta import, přesun do `Zpracováno`.
## Kolekce
- `sipiq_questions` — slovník dotazníku (rekonstrukce SIPIQ jako v PDF).
- `sipiq_responses` — 1 dok = 1 odpověď (`_id`=ResponseId), ploché `answers{}`,
soft-link `investigator_oid`, `source_file` + `source_exported_at`, delta + `history[]`.
Zdroj = Qualtrics **CSV** (ř.1 Qcode, ř.2 text otázky, ř.3 ImportId=QID). Export labels,
desetinná tečka, recode unanswered vypnuté.
## Delta (přepíše JEN změněná data)
nová→INSERT; beze změn (shodný `content_sha256`)→jen `last_seen_at` + `source_file` + `source_exported_at`;
změna→`$set` jen změněných polí + `$push` do `history[]`.
## Soft-link na investigators (nedestruktivní)
pi_email → email/email2 (lower), pak recipient_email, fallback příjmení (bez diakritiky)+země.
## Použití
```
.venv\Scripts\python.exe Feasibility\sipiq_import_v1.2.py --dry-run # folder režim, default složka
.venv\Scripts\python.exe Feasibility\sipiq_import_v1.2.py --apply
.venv\Scripts\python.exe Feasibility\sipiq_import_v1.2.py --folder "<cesta>" --apply
.venv\Scripts\python.exe Feasibility\sipiq_import_v1.2.py --csv "<cesta.csv>" --apply # jediný soubor, NEpřesouvá
```
Default složka `…\77242113UCO2001\ImportSIPIQcompled`; přesun do `Zpracováno` jen v `--apply` + folder režimu.
`--scope czsk` (default) / `all`. Default = dry-run.
## Workflow
Uživatel pokládá kompletní SIPIQ reporty (Qualtrics CSV, název
`ICONIC+Phase+3b+UC+Study+(77242113UCO3002)_SipIQ_V1_13MAY2026_<datum>_<čas>.csv`) do
`ImportSIPIQcompled\`. Po `--apply` se naimportují (delta) a přesunou do `Zpracováno\`.
`source_exported_at` se bere z mtime souboru (datum/čas reportu dle filesystému).