Preskoči na glavno vsebino

Použitie includes na zistenie informácií z hlavičky dokladu

Ako zistiť vlastnosti hlavičky dokladu z jeho položky v API?

Avtor: Petr Pech

Vo výpise položiek sa nadradený doklad vracia len ako odkaz. Parametrom includes je možné namiesto odkazu vložiť do odpovede rovno aj jeho vlastnosti — hodí sa, keď z pozície položky potrebujete napríklad firmu z hlavičky dokladu.


Bez includes

Väzba na doklad je len referencia — viete, kam sa pozrieť, ale dáta v odpovedi nemáte:

<doklFak ref="/c/{firma}/faktura-vydana/2859.xml" showAs="KBF1">code:KBF1</doklFak>


S includes

Cesta v parametri includes hovorí, ktorá väzba sa má rozbaliť; detail=custom potom určuje, ktoré polia z rozbaleného dokladu chcete:

GET /c/{firma}/faktura-vydana-polozka/(id eq 3595).xml
?detail=custom:nazev,mnozMj,doklFak(kod,firma)
&includes=/faktura-vydana-polozka/doklFak/

Odpoveď má doklad rozbalený vnútri položky:

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

ℹ️ Cesta v includes sa skladá z názvov evidencií a väzieb, ktorými sa k cieľu dostanete — začína evidenciou, na ktorú sa pýtate. Rovnako to funguje aj v opačnom smere, teda z hlavičky na cenník položky, alebo cez niekoľko úrovní za sebou.

Ten istý princíp pri skladovom doklade — z položky na firmu z hlavičky:

GET /c/{firma}/skladovy-pohyb-polozka/(cenik.id eq 13).json
?detail=custom:nazev,mnozMj,cenik,doklSklad(firma)
&includes=/skladovy-pohyb-polozka/doklSklad/


Súvisiace

Ste s tem dobili odgovor na svoje vprašanje?