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//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.
Je tam i ?report-name=faktura
. Výsledné URL pak vypadá takto: https://..../faktura-vydana/.pdf?report-name=faktura
.
Pokud chcete vidět přehled podporovaných reportů, najdete jej https://..../faktura-vydana/reports
(např. pro fakturu). Výstup lze opět exportovat ve formátech XML či JSON.