Preskoči na glavno vsebino

Úroveň detailu v reláciách (relations)

Avtor: Petr Pech

Keď do výstupu pridáte naviazanú evidenciu, vrátia sa všetky jej záznamy. Parametrom detail=custom môžete určiť, ktoré polia z nich chcete — a to zvlášť pre hlavnú evidenciu a zvlášť pre každú reláciu.


Zápis

Názov relácie sa uvedie ako pole a do zátvorky za neho patrí zoznam jej vlastností:

GET /c/{firma}/faktura-vydana.xml
?detail=custom:kod,polozkyDokladu(nazev,mnozMj)

Takto vyzerá výsledok — pri doklade len kód, pri položkách len názov a množstvo:

<faktura-vydana>
<id>2859</id>
<kod>KBF1</kod>
<polozkyDokladu>
<faktura-vydana-polozka>
<id>3595</id>
<nazev>FRadek 1</nazev>
<mnozMj>1.0</mnozMj>
</faktura-vydana-polozka>
</polozkyDokladu>
</faktura-vydana>

💡 Relácia uvedená v detail=custom sa do výstupu dostane aj bez parametra relations — stačí ju spomenúť v zátvorkovom zápise.


Iné relácie ako položky

Rovnako sa postupuje pri akejkoľvek inej naviazanej evidencii. Napríklad prílohy cenníkovej položky:

GET /c/{firma}/cenik/1.json
?detail=custom:id,nazev,popis,prilohy(nazSoub,content,link,typK)
&relations=prilohy

📝 Vlastnosť content pri prílohe vracia obsah súboru zakódovaný v base64 — v odpovedi to potvrdzuje sprievodný údaj content@encoding.

Alebo atribúty cenníkovej položky:

GET /c/{firma}/cenik/49.xml
?detail=custom:kod,atributy(typAtributu)

ℹ️ Identifikátor záznamu sa vo výstupe objaví vždy, aj keď ho vo výčte polí neuvediete. Pri niektorých reláciách pribudnú aj ďalšie polia, ktoré Flexi potrebuje na jednoznačný popis väzby (napríklad suma a mena pri väzbách medzi dokladmi).


Súvisiace

Ste s tem dobili odgovor na svoje vprašanje?