Problém s vracením polí

API mi nevrací všechna pole. Jak je získám všechna?

Lenka Haringerová avatar
Autor: Lenka Haringerová
Aktualizováno před více než týdnem

K získání všech polí z dané evidence je nutné doplnit parametr detail=full.

Výchozí úrovní detailu je detail=summary, který obsahuje jen nejdůležitější pole.

Detail=full je řešením, jak vypsat všechna pole. Obvykle však všechna pole nejsou ve výstupu potřeba. Váš program tímto způsobem načte spoustu dat, přičemž skutečně využijete jen některá. Pole, která program bude zpracovávat, jsou už ale známá dopředu. Není tedy důvod používat detail=full.

Správně by otázka měla znít, jak získám všechna pole, která potřebuji mít ve výstupu? Odpovědí je použití parametru detail=custom:…, ve kterém je možné vyjmenovat pole, která má ABRA Flexi vrátit.

Při použití detail=custom navíc opět můžete zrychlit odezvu ABRA Flexi. Nebudou se totiž z databáze načítat objekty, které neuvedete a tím pádem odpadne mnoho SQL dotazů. Kromě zrychlení odpovědí od ABRA Flexi se také sníží paměťová náročnost vašeho programu. Nebude totiž nutné držet v paměti tak velké odpovědi od ABRA Flexi.

Ke zjištění, jaká pole daná evidence poskytuje, je nejjednodušší a nejpřehlednější možností využití /properties (např. https://demo.flexibee.eu/c/demo/faktura-vydana/properties).

V tomto výstupu se dozvíte, jakých hodnot mohou jednotlivá pole nabývat. U vazebních objektů zjistíte, do jaké evidence odkazují a v neposlední řadě, zda bude pole uvažováno při importu XML.

Ukázka:

https://demo.flexibee.eu/c/demo/faktura-vydana.xml – detail=summary https://demo.flexibee.eu/c/demo/faktura-vydana.xml?detail=full – detail=full https://demo.flexibee.eu/c/demo/faktura-vydana.xml?detail=custom:id,typDokl,nazFirmy,sumCelkem,zbyvaUhradit – detail=custom, který vrací jen potřebná pole
Dostali jste odpověď na svou otázku?