# 3.3. Schéma databáze

Komponenta má data uložena ve vlastní databázi PostgreSQL. Schéma spravuje Liquibase (viz Migrace z Imwhooseru).

## 3.3.1. Fond

Tabulka: `pv_fund`

Stažené archivní soubory (fondy) z PEvA.

Sloupec | Datový typ | Popis
--- | --- | ---
fund_id | long | primární klíč
uuid | uuid | identifikátor fondu v PEvA
fund_name | string | název fondu
fund_number | string | evidenční číslo (jen u primárního NAD listu)
institution_id | string | externí identifikátor instituce
ruleset_code | string | kód pravidel (např. ZP2015)
internal_code | string | interní kód (zatím nevyplňováno)
date_range | string | časový rozsah fondu
mark | string | značka fondu
department_name | string | název oddělení v PEvA (pro výběr výchozích administrátorů fondu)

## 3.3.2. Stav stahování

Tabulka: `property`

Klíč-hodnota pro inkrementální stahování (pozice ve stránkování a časová značka poslední úspěšné synchronizace), např. `PEVA_SEARCH_AFTER` a `PEVA_UPDATE_AFTER`.

Sloupec | Datový typ | Popis
--- | --- | ---
property_id | int | primární klíč
name | string | název vlastnosti
value | text | hodnota

## 3.3.3. Odchozí fronta do Elza

Tabulka: `elza_queue`

Obsahuje fondy připravené k odeslání do Elza. Po úspěšném odeslání je záznam z tabulky odstraněn. V PEVA Connectoru je fronta určena pouze pro fondy (na rozdíl od Imwhooseru, kde tatáž tabulka sloužila i pro entity).

Sloupec | Datový typ | Popis
--- | --- | ---
elza_queue_id | long | primární klíč
fund_id | long | odkaz na odesílaný fond do tabulky `pv_fund`
status | text | text poslední chyby odeslání záznamu, null pokud není chyba
request_id | uuid | identifikátor požadavku pro odeslání
scope | string | kód oblasti (scope), do které se záznam v Elze odesílá
action | string | obvykle NULL - položka k odeslání, hodnota `DISABLED` umožňuje zakázat odesílání záznamu
create_time | timestamp | čas vložení záznamu do fronty
send_time | timestamp | čas posledního pokusu o odeslání

Poznámka

Při převzetí databáze Imwhooseru zůstává v tabulce navíc sloupec `entity_id` (PEVA Connector jej nevyužívá). Lze jej odstranit úklidovým krokem - viz Migrace z Imwhooseru.