8.1 KiB
8.1 KiB
Fakturace a dávky – poznámky pro Clauda
Přehled tabulek
FAK – faktury pojišťovnám
- 844 záznamů (k 2026-03-28)
- Primární klíč:
ID
| Sloupec | Popis |
|---|---|
ID |
primární klíč |
CISFAK |
číslo faktury (10 znaků) |
POJ |
pojišťovna (3 znaky, např. 111=VZP, 205=ČPZP, 207=OZP) |
ICZ, ICZ1 |
IČZ ordinace |
IDICZ |
FK → ICZ.IDICZ (jen jedna ordinace, neřešit) |
PORCISLO |
pořadové číslo |
DATUMOD, DATUMDO |
období faktury (od–do) |
DATVYS |
datum vystavení |
DATODE |
datum odeslání |
OBDOB |
období (5 znaků, např. "20260") |
VYKONY |
částka za výkony (Kč) |
KAPITACE |
kapitační platba (Kč) |
ZALOHA |
záloha |
CENA |
celková cena faktury (Kč) |
DRUH |
druh faktury (např. "konečná") |
TYP |
typ (1 znak) |
ROK |
rok |
SPLAT |
datum splatnosti |
PROPLACENO |
datum proplacení (NULL = nezaplaceno) |
ZAPLACENO |
zaplacená částka |
ZUM |
? |
HOSPAUSAL |
hospitalizační/paušální? |
FDAVKA |
BLOB – odkaz na dávku |
KAPDETAIL, AGRDETAIL |
BLOBy – detaily kapitace/agregace |
NAZFAK, POZFAK, OBDFAK |
název, poznámka, období faktury (texty) |
ICO, BANKA, UCET |
IČO, banka, účet |
ODJMENO/ULICE/MISTO/PSC |
adresa odesílatele |
PLNAZEV/ULICE/MISTO/PSC |
adresa plátce (pojišťovny) |
DRUHPOJ |
druh pojištění |
FAKDET – finanční detail faktury
- 1021 záznamů
- Vazba:
IDFAK→ FAK.ID - Typicky 1–2 řádky na fakturu (breakdown podle lékaře/IDUZI)
| Sloupec | Popis |
|---|---|
ID |
primární klíč |
IDFAK |
FK → FAK.ID |
ICP |
IČP ordinace (např. 09305001) |
ODB |
odbornost (001 = praktický lékař) |
IDUZI |
FK → UZIVATEL.IDUZI – který lékař |
CENAVYK |
výkony (Kč) |
CENALEC |
léky (Kč) |
CENAKAP |
kapitace (Kč) |
Poznámka: IDUZI=0 = systémový záznam (kapitace bez konkrétního lékaře).
FAKDAV – dávky zahrnuté ve faktuře
- 1296 záznamů
- Vazba:
IDFAK→ FAK.ID
| Sloupec | Popis |
|---|---|
ID |
primární klíč |
IDFAK |
FK → FAK.ID |
CISDAV |
číslo dávky |
DRUH |
druh dávky |
CENA |
celková cena dávky |
CENAVYK |
výkony |
CENALEC |
léky |
CENAPAU |
paušál |
ODB |
odbornost |
ICP |
IČP |
PORTAL – elektronické podání pojišťovně
- 180 záznamů
- Vazba:
IDFAK→ FAK.ID
| Sloupec | Popis |
|---|---|
ID |
primární klíč |
IDFAK |
FK → FAK.ID |
ODESLANO |
timestamp odeslání |
DATA, KDAVKA, FDAVKA |
BLOBy – pravděpodobně XML dávky |
CHYBA |
příznak chyby (1 znak) |
STAV |
stav podání (smallint) |
ID_PODANI |
ID podání u pojišťovny (32 znaků, UUID) |
IDPODANI |
interní ID podání |
IDCERT |
certifikát použitý pro podání |
DAVKA_ROK, DAVKA_DISK, DAVKA_IDICZ |
metadata dávky |
BB_DAVKA, BB_FAKTURA |
? |
DAVKA_DATUMOD, DAVKA_DATUMDO |
období dávky |
DAVKA_CASTKA |
částka dávky |
Schéma vazeb
FAK (faktura)
├── FAKDET (IDFAK → FAK.ID) – finanční breakdown podle lékaře
├── FAKDAV (IDFAK → FAK.ID) – seznam dávek ve faktuře
├── PORTAL (IDFAK → FAK.ID) – viz níže, IDFAK bývá NULL
└── ICZ (IDICZ → ICZ.IDICZ) – ordinace (jen jedna, neřešit)
UZIVATEL – lékaři a uživatelé
| IDUZI | Příjmení | Jméno | Zkratka | Aktivní |
|---|---|---|---|---|
| 2 | Jourová | Jana | JOU | F (neaktivní) |
| 3 | Sestra | — | SES | F (neaktivní) |
| 4 | Buzalková | Michaela | MBU | T – lékařka, manželka |
| 5 | Ševčíková | Ivana | ISE | T |
| 6 | Buzalka | Vladimír | VBU | T – uživatel (já) |
Ukázkové záznamy
FAK ID=856 (poslední)
- Faktura č. 260026, pojišťovna 205 (ČPZP), prosinec 2025
- Vystavena: 2026-03-12, druh: konečná
- VYKONY: 2 528,99 Kč, KAPITACE: 0, CENA: 2 528,99 Kč
- ZAPLACENO: NULL, PROPLACENO: NULL
FAKDET k FAK ID=856:
| ID | IDUZI | CENAVYK | CENALEC | CENAKAP |
|---|---|---|---|---|
| 1034 | 0 (systém) | 0 | 0 | 1 902,54 |
| 1035 | 4 (Buzalková) | 2 528,99 | 0 | 0 |
FAK ID=855 (předposlední)
- Faktura č. 260026, pojišťovna 207 (OZP), prosinec 2025
- Vystavena: 2026-03-01, druh: konečná
- VYKONY: 85 Kč, KAPITACE: 0, CENA: 85 Kč
- ZAPLACENO: NULL, PROPLACENO: NULL
FAKDET k FAK ID=855:
| ID | IDUZI | CENAVYK | CENALEC | CENAKAP |
|---|---|---|---|---|
| 1033 | 6 (Buzalka Vladimír) | 85 | 0 | 0 |
PORTAL – upřesnění (zjištěno 2026-03-28)
PORTAL nesouvisí s fakturací. Je to samostatná agenda – evidence registračních dávek odeslaných pojišťovně.
Co PORTAL skutečně je
- Medicus přes PORTAL odesílá pojišťovně dávky s přihlášením/odhlášením pacientů k lékaři (MUDr. Buzalková jako praktický lékař)
- Bez peněz – čistě administrativní agenda registrací
- IDFAK = NULL u všech registračních podání (není vazba na fakturu)
Klíčové sloupce
| Sloupec | Popis |
|---|---|
KDAVKA |
odeslaná dávka – pevný formát (hlavička + řádky I = pacienti, RC, datum) |
DATA |
odpověď pojišťovny jako XML (<statuscode>100</statuscode> = OK) |
ID_PODANI |
ID přidělené pojišťovnou (např. D01F260118593316.D01) |
DAVKA_DISK |
číslo dávky v roce (sekvenční) |
DAVKA_ROK |
rok dávky |
DAVKA_DATUMOD/DO |
období registrací v dávce |
CHYBA |
F = bez chyby |
Ukázka KDAVKA (hlavička dávky)
DP80093050000900202506 15 1 0 0.00180:6.2.46
H21109305001 179202506001
I 1Příjmení Jméno RC datum_registrace
I 2...
Ukázka DATA (odpověď pojišťovny)
<ekomunikace timestamp="20260127 063105">
<session id="ff59b436-...">
<statusline>Přijetí registrací proběhlo úspěšně</statusline>
<statuscode>100</statuscode>
<idpodani>D01F260118593316.D01</idpodani>
</session>
</ekomunikace>
PORTAL – dva typy dávek
Typ 1 – Registrační dávka (DP80)
- KDAVKA začíná
DP80 - IDFAK = NULL – bez vazby na fakturu
- Bez peněz (
DAVKA_CASTKA= NULL) - Přihlašuje/odhlašuje pacienty k lékaři (MUDr. Buzalková)
- Řádky
I= pacient (RC, datum registrace)
Typ 2 – Výkonová dávka (DP98)
- KDAVKA začíná
DP98 - IDFAK = ID faktury – napojeno na FAK
- Má peníze (
DAVKA_CASTKA, např. 15 452,91 Kč) STAV = 10(registrační mají NULL)- Obsahuje výkony vykázané pojišťovně za dané období
Struktura výkonové dávky (KDAVKA):
DP98... – hlavička dávky (IČP, rok, měsíc, disk, počet případů, částka)
A ... – ambulantní případ (RC pacienta, diagnóza)
V ... – výkon (datum, kód výkonu, body)
Z ... – ZULP (zvlášť účtovaný léčivý přípravek)
L ... – lékový řádek (kód, množství, cena)
DP05... – druhá část dávky (prevence / jiný typ)
P ... – preventivní prohlídka
Odpověď pojišťovny pro výkonovou dávku:
<statusline>Přijetí faktury proběhlo úspěšně</statusline>
<statuscode>100</statuscode>
Poznámky
- Faktury jsou vystavovány zvlášť pro každou pojišťovnu
- FAKDET má řádky zvlášť pro každého lékaře (IDUZI)
- IDUZI=0 v FAKDET = systémový záznam pro kapitaci
- Kapitace se v FAK.KAPITACE neukazuje (je 0), ale v FAKDET.CENAKAP ano – nutno ověřit
- PORTAL = registrační dávky, nesouvisí s fakturací, IDFAK bývá NULL
Kódování KDAVKA/FDAVKA – důležité!
Dávkové soubory (KDAVKA, FDAVKA) jsou uloženy v CP852 (DOS Latin-2, prahistorické kódování).
fdb je čte přes connection charset win1250 a vrací je jako Python str (špatně dekódované).
Správný postup dekódování:
# fdb vrátil string dekódovaný jako win1250 – musíme to zvrátit
raw_bytes = s.encode('cp1250', errors='replace')
spravny_text = raw_bytes.decode('cp852', errors='replace')
- KDAVKA, FDAVKA → cp852
- DATA (XML odpověď pojišťovny) → cp1250 (win1250), fdb dekóduje správně