V návodu se podíváme na návratové hodnoty. Ve dvou předchozích článcích jste se naučili zakládat nové záznamy do ABRA Flexi, tento článek poodhalí, co ABRA Flexi na tuto akci odpovídá.

Flexi na požadavek typu PUT nebo POST vrací strukturu, která informuje uživatele o změnách.

Pokud posíláte data na adresu XML, vrátí ABRA Flexi strukturu v XML formátu.

<winstrom version="1.0"> <success>true</success> <stats> <created>1</created> <updated>0</updated> <deleted>0</deleted> <skipped>0</skipped> <failed>0</failed> </stats> <results> <result> <id>804</id> <ref>/c/demo/adresar/804.xml</ref> </result> </results> </winstrom>

Pokud ale zvolíme adresu JSON, tak systém návratovou hodnotu také vrátí ve formátu JSON.

{"winstrom":{"@version":"1.0","success":"true","stats":{"created":"1","updated":"0","deleted":"0","skipped":"0","failed":"0"},"results":[{"id":"805","ref":"/c/demo/adresar/805.json"}]}}

Copy

Návratové hodnoty je možné zpracovat a zjistit z nich potřebné informace.

Návratová hodnota obsahuje pole:
1. success

Možné hodnoty jsou true a false. V případě, že se zápis podařil, návratovou hodnotou je true. Pokud při zápisu došlo k chybě, vrací ABRA Flexi hodnotu false.

2. stats

Flexi také vrací statistiky obsahující informace, kolik objektů bylo vytvořeno (created), změněno (updated), smazáno (deleted). Kolik objektů bylo přeskočeno (skipped) a kolik objektů se nepodařilo vložit kvůli nějaké chybě (failed).

3. results

Tato kolekce obsahuje identifikátory objektů, které byly v ABRA Flexi založeny a případné výpisy chyb u jednotlivých objektů.

<winstrom version="1.0"> <success>false</success> <stats> <created>0</created> <updated>0</updated> <deleted>0</deleted> <skipped>0</skipped> <failed>1</failed> </stats> <results> <result> <errors> <error for="kod" code="INVALID"> Zkratku 'CHARLIEB' již používá jiný záznam. [CHARLIEB] </error> </errors> </result> </results> </winstrom>

Ukázka chybové XML návratové hodnoty:

{"winstrom":{"@version":"1.0","success":"false","stats":{"created":"0","updated":"0","deleted":"0","skipped":"0","failed":"1"},"results":[{"errors":[{"message":"Zkratku 'CHARLIEB' již používá jiný záznam. [CHARLIEB]","for":"kod","code":"INVALID"}]}]}}

Ukázka chybové JSON návratové hodnoty.

Vaše aplikace tedy hned pozná, co se v ABRA Flexi odehrálo. Může zkontrolovat zda došlo k založení všech objektů a při případné chybě vypsat uživateli chybové hlášení a nechat ho data opravit.

Našli jste odpověď?