Doporučené zásady pro XML import

Čeho se mám držet při importu XML?

Při importu XML je vhodné dodržovat pár zásad:

1. Vždy uvádějte <id>. Když není uvedeno, systém vždy zakládá nový záznam, což může být matoucí. Jako ID je ideální v případě dokladů uvádět kód, pokud ho generujete ručně (<id>code:KÓD</id>), případně externí ID, pokud jde o integraci s nějakým jiným systémem (<id>ext:SHOP:111</id>, což je konvence pro zápis, že doklad má v systému SHOP přiřazeno ID 111 – co znamená SHOP je čistě na Vás). Číselná ID ani ID ve tvaru ws:xxxxxx:111 raději nepoužívejte, ta jsou interní a jsou vidět jen při exportu (i když je v některých situacích lze použít i při importu).

2. V případě položkových dokladů buďto také dávejte všem položkám ID (tam už nejde použít kód, ten u položek není unikátní, nejlepší je tedy použít externí ID), nebo použijte atribut <polozkyObchDokladu removeAll="true">. Opět jde o to, aby nepřibývaly duplicity – položku, u které není ID, systém založí znovu. Pokud je uvedeno removeAll="true", pak systém ponechá jenom ty položky, které byly v XML uvedeny (tj. pokud nejsou uvedena ID, ponechá ty nově založené a původní smaže).

3. Pokud v XML uvedete nějaký element, bere se, že ho chcete na příslušnou hodnotu nastavit. Pokud je prázdný (např. <popis/> nebo <popis></popis>), znamená to, že chcete příslušnou vlastnost (zde popis) nastavit na prázdnou hodnotu. Pokud chcete u dokladu změnit jen některé vlastnosti, uveďte jen je a ty, které chcete ponechat beze změny, neuvádějte.

4. Uvádějte při importu jen ty vlastnosti, které „víte“ a potřebujete. Pro import minimálního dokladu typicky stačí tři nebo čtyři vlastnosti, stejně jako je musíte zadat v aplikaci (typ dokladu, datum vystavení, nějaké částky, příp. položky apod.). Další můžete přidávat postupně, jak je budete potřebovat.

5. Seznam vlastností, které můžete u každé evidence importovat, najdete na webu; pro přijatou objednávku je to http://demo.flexibee.eu/c/demo/objednavka-prijata/properties (pro vydanou fakturu by to bylo …/faktura-vydana/properties atd.), seznam všech evidencí je na http://demo.flexibee.eu/c/demo/evidence-list. Pokud Vaše licence podporuje REST API, kompletní obraz dokumentace najdete i na Vašem serveru, typicky http://localhost:5434/c/<vaše firma>/evidence-list. Referenční dokumentaci máte na http://localhost:5434/devdoc.

Identifikátor firmy

Když založím firmu, jak se jmenuje její strojový identifikátor společnosti „Nikdo Neví s.r.o.“?

Obecný postup je, že se řetězec odháčkuje, převede na malá písmena a všechny znaky, které nejsou a-z a 0-9 se nahradí podtržítkem. Proto například pro firmu „Nikdo Neví s.r.o.“ bude identifikátor „nikdo_nevi_s_r_o_“. Nicméně výsledný řetězec musí být unikátní. Pokud není, přidávají se na konec čísla, resp. v případě cloudového řešení může být mechanizmus ještě trochu složitější (kvůli škálovatelnosti).

Proto není možné spoléhat na název, ale založit firmu a výsledný název použit.

Pokud obnovíte firmu ze zálohy, jedná se o nově založenou firmu a bude mít jiný identifikátor než původní.

Výběr reportu do PDF

Jak určit, který report se má použít při tisku do PDF? V aplikaci se mně to ptá na výber. Jak se to naučit i přes REST API?

Je to samozřejmě možné i přes REST API. Obecně platí, že nejlepší je se podívat na webové rozhraní, tam si zvolit to co potřebujete a pak se podívat jaké URL to vygenerovalo.

Existuje kompletní přehled všech podporovaných parametrů.

Je tam i ?report-name=faktura. Výsledné URL pak vypadá takto: https://....<firma>/faktura-vydana/<id>.pdf?report-name=faktura.

Pokud chcete vidět přehled podporovaných reportů, najdete jej https://....<firma>/faktura-vydana/reports (např. pro fakturu). Výstup lze opět exportovat ve formátech XML či JSON.

Našli jste odpověď?