Zde naleznete komplexní návod, jak vytvořit objednávku do Skyplanneru se všemi souvisejícími údaji. Něco z toho bylo popsáno v návodu k integraci, ale zde projdeme strukturu dat Skyplanneru a proces integrace podrobněji.
Struktura dat #
Nejprve si projdeme, jak je strukturována objednávka Skyplanneru. Koncové body API pro datové entity zde uvedené jsou zvýrazněny takto: /phaser-orders
Na nejvyšší úrovni máme objednávku(/phaser-orders)
Každá objednávka musí mít zákazníka(/zákazníky).
Každá objednávka může mít více položek objednávky(/phaser-Order-items).
Ke každé položce objednávky může být připojen produkt(/products), ale není to povinné. Ke každému produktu je přiřazen jeden sklad(/saldos). Všimněte si, že entita stock je vytvořena automaticky při vytvoření produktu pomocí rozhraní API.
Každá položka objednávky může mít více úloh (neboli kroků procesu)(/phaser-jobs).
Každá úloha musí mít pracovní fázi(/workstages).
Pracovní postup integrace #
Zde je příklad, jak můžete krok za krokem strukturovat integraci vašeho ERP systému se Skyplannerem.
- načtení prodeje/objednávky z ERP
- Vytvořit zákazníka (v odpovědi získáte id zákazníka)
- Vytvořit objednávku s id zákazníka (získat id objednávky v odpovědi)
- načtení údajů o položkách prodejních/pracovních objednávek ze systému ERP
- Vytvořit produkt (v odpovědi získáte id produktu)
- Vytvoření položky objednávky s id objednávky a dalšími údaji (získání id položky objednávky v odpovědi)
- Získání dat o krocích procesu z ERP
- Vytvoření pracovní etapy (v odpovědi získáte id pracovní etapy)
- Vytvoření úlohy s id pracovní etapy a dalšími údaji
Další tipy #
Při mazání #
Mazání phaser-Order, phaser-Order-items nebo phaser-jobs prostřednictvím rozhraní API (a z uživatelského rozhraní) se provádí způsobem soft delete. To znamená, že data nejsou ve skutečnosti z databáze odstraněna, ale jsou označena jako archivovaná. Ve skutečnosti je atribut is_archive entity při smazání nastaven na hodnotu true. K archivovaným/odstraněným entitám lze stále přistupovat pomocí rozhraní API s použitím parametru include_archived. Pokud je include_archived=true, dotaz GET načte entitu, i když je archivovaná.
Všimněte si, že měkké mazání není k dispozici v každém koncovém bodě API! Musíte být tedy opatrní, protože mazání například zákazníků, lidí atd. je trvalé!
Použití výchozích kroků procesu pro vaši položku objednávky #
Pokud jste vytvořili některé výchozí kroky procesu pro produkt, který vaše položka objednávky vytváří, můžete systému říci, aby tyto výchozí kroky přenesl do položky objednávky pomocí rozhraní API pomocí atributu get_default_steps.
Přidání materiálů do položky objednávky #
Pokud jste k vyráběnému produktu připojili materiály, jsou automaticky připojeny k řádku objednávky.
Pokud však nechcete použít materiály připojené k výrobku (například pokud se jedná o speciální objednávku a chcete použít jiné materiály atd.), můžete použít atribut use_custom_materials.