Preskoči na glavno vsebino

Často kladené otázky API

Odporúčané zásady, Identifikátor firmy, Výber reportu do PDF

Avtor: Petr Pech

Odporúčané zásady pre XML import

Čoho sa mám držať pri importe XML?

Pri importe XML je vhodné dodržiavať niekoľko zásad:

1. Vždy uvádzajte <id>. Keď nie je uvedené, systém vždy zakladá nový záznam, čo môže byť mätúce. Ako ID je ideálne v prípade dokladov uvádzať kód, ak ho generujete ručne (<id>code:KÓD</id>), prípadne externé ID, ak ide o integráciu s nejakým iným systémom (<id>ext:SHOP:111</id>, čo je konvencia pre zápis, že doklad má v systéme SHOP priradené ID 111 – čo znamená SHOP, je čisto na Vás). Číselné ID ani ID v tvare ws:xxxxxx:111 radšej nepoužívajte, tie sú interné a sú viditeľné len pri exporte (aj keď ich v niektorých situáciách možno použiť aj pri importe).

2. V prípade položkových dokladov buď tiež dávajte všetkým položkám ID (tam už nejde použiť kód, ten pri položkách nie je unikátny, najlepšie je teda použiť externé ID), alebo použite atribút <polozkyObchDokladu removeAll="true">. Opäť ide o to, aby nepribúdali duplikáty – položku, ktorá nemá ID, systém založí znova. Ak je uvedené removeAll="true", systém ponechá iba tie položky, ktoré boli v XML uvedené (t. j. ak nie sú uvedené ID, ponechá tie novo založené a pôvodné vymaže).

3. Ak v XML uvediete nejaký element, berie sa, že ho chcete nastaviť na príslušnú hodnotu. Ak je prázdny (napr. <popis/> alebo <popis></popis>), znamená to, že chcete príslušnú vlastnosť (tu popis) nastaviť na prázdnu hodnotu. Ak chcete pri doklade zmeniť len niektoré vlastnosti, uveďte len tie a tie, ktoré chcete ponechať bez zmeny, neuvádzajte.

4. Uvádzajte pri importe len tie vlastnosti, ktoré „poznáte" a potrebujete. Pre import minimálneho dokladu typicky stačia tri alebo štyri vlastnosti, rovnako ako ich musíte zadať v aplikácii (typ dokladu, dátum vystavenia, nejaké sumy, príp. položky a pod.). Ďalšie môžete pridávať postupne, ako ich budete potrebovať.

5. Zoznam vlastností, ktoré môžete pri každej evidencii importovať, nájdete na webe; pre prijatú objednávku je to http://demo.flexibee.eu/c/demo/objednavka-prijata/properties (pre vydanú faktúru by to bolo …/faktura-vydana/properties atď.), zoznam všetkých evidencií je na http://demo.flexibee.eu/c/demo/evidence-list. Ak Vaša licencia podporuje REST API, kompletný obraz dokumentácie nájdete aj na Vašom serveri, typicky http://localhost:5434/c//evidence-list. Referenčnú dokumentáciu máte na http://localhost:5434/devdoc.

Identifikátor firmy

Keď založím firmu, ako sa volá jej strojový identifikátor spoločnosti „Nikdo Neví s.r.o."?

Všeobecný postup je taký, že sa reťazec odháčkuje, prevedie na malé písmená a všetky znaky, ktoré nie sú a-z a 0-9, sa nahradia podčiarkovníkom. Preto napríklad pre firmu „Nikdo Neví s.r.o." bude identifikátor „nikdo_nevi_s_r_o_". Výsledný reťazec však musí byť unikátny. Ak nie je, pridávajú sa na koniec čísla, resp. v prípade cloudového riešenia môže byť mechanizmus ešte trochu zložitejší (kvôli škálovateľnosti).

Preto nie je možné spoliehať sa na názov, ale je potrebné firmu založiť a výsledný názov použiť.

Ak obnovíte firmu zo zálohy, ide o novo založenú firmu a bude mať iný identifikátor ako pôvodná.

Výber reportu do PDF

Ako určiť, ktorý report sa má použiť pri tlači do PDF? V aplikácii sa ma pýta na výber. Ako to dosiahnuť aj cez REST API?

Je to samozrejme možné aj cez REST API. Vo všeobecnosti platí, že najlepšie je pozrieť sa na webové rozhranie, tam si zvoliť to, čo potrebujete, a potom sa pozrieť, aké URL to vygenerovalo.

Je tam aj ?report-name=faktura. Výsledné URL potom vyzerá takto: https://..../faktura-vydana/.pdf?report-name=faktura.

Ak chcete vidieť prehľad podporovaných reportov, nájdete ho https://..../faktura-vydana/reports (napr. pre faktúru). Výstup možno opäť exportovať vo formátoch XML či JSON.

Ste s tem dobili odgovor na svoje vprašanje?