Standardní převod mezi sklady (převodka) má v ABRA Flexi vždy dvě strany — výdej a příjem. Jeho běžnou tvorbu popisuje článek Převodka - REST API. Tento návod řeší situaci, kdy výdejka vznikla realizací objednávky, a proto ji převodkou standardně dokončit nelze.
Scénář
V systému existuje od zákazníka přijatá objednávka na zboží. Zboží je nutné vydat z jednoho skladu a teprve později, ve druhém kroku, převést na jiný sklad — tedy dokončit převodku.
Tento postup není standardně možný. Realizace objednávky skladovým pohybem nastaví výdejce typ pohybu Výdej po objednávce a dokončení převodky přes API pak skončí chybou correctDoklTypeNotFound.
Řešení
1. Realizace objednávky skladovým pohybem
Nejprve z objednávky vygenerujeme výdejku. Podrobnosti najdete v článku o realizaci objednávky, zde uvádíme jen příklad:
POST https://demo.flexibee.eu/c/demo/objednavka-prijata.xml
<?xml version="1.0"?>
<winstrom version="1.0">
<objednavka-prijata>
<id>code:OBP001/2023</id>
<realizaceObj type="skladovy-pohyb">
<polozkyObchDokladu>
<polozka>
<cisRad>1</cisRad>
<mj>1</mj>
</polozka>
</polozkyObchDokladu>
</realizaceObj>
</objednavka-prijata>
</winstrom>
Vytvořená výdejka má typ pohybu typPohybuSklad.vydejPoObch:
<?xml version="1.0"?>
<winstrom>
<skladovy-pohyb>
<id>123</id>
<kod>S-001/2023</kod>
...
<typPohybuSkladK showAs="Výdej po objednávce">
typPohybuSklad.vydejPoObch
</typPohybuSkladK>
...
</skladovy-pohyb>
</winstrom>
⚠️ Odpověď na realizaci obsahuje ID objednávky, ne nově vzniklé výdejky. Její identifikátor si dohledejte přes vazby dokladu:
GET /c/{firma}/objednavka-prijata/{id}/vazebni-doklady.json
2. Povolení změny typu pohybu
Typ pohybu Výdej po objednávce blokuje dokončení převodky, potřebujeme ho tedy změnit. Umožní to pokročilá parametrizace — parametr zmenaPohybuRealizace (Umožnit změnu upřesnění typu pohybu na výdejce/příjemce vytvořené z objednávky/faktury):
POST https://demo.flexibee.eu/c/demo/parametr.xml
<winstrom version="1.0">
<parametr>
<paramK>zmenaPohybuRealizace</paramK>
<hodnota>true</hodnota>
</parametr>
</winstrom>
Bez tohoto parametru vrací úprava výdejky 400 s kódem valueCannotBeChanged a hlášením Hodnotu vlastnosti 'typPohybuSkladK' ("Typ pohybu + upřesnění") není možné změnit z 'typPohybuSklad.vydejPoObch' na hodnotu 'typPohybuSklad.vydejPrevod'.
3. Úprava výdejky
Nyní lze na výdejce nastavit správný typ pohybu a cílový sklad. Pro převodku je to typPohybuSklad.vydejPrevod:
POST https://demo.flexibee.eu/c/demo/skladovy-pohyb.xml
<?xml version="1.0"?>
<winstrom version="1.0">
<skladovy-pohyb>
<id>123</id>
<typPohybuSkladK>typPohybuSklad.vydejPrevod</typPohybuSkladK>
<skladCil>code:SKLAD CÍL</skladCil>
</skladovy-pohyb>
</winstrom>
Pro úplnost uvádíme všechny výdejové typy pohybu; jejich celý výčet i s příjmovými hodnotami najdete v popisu evidence skladovy-pohyb.
Hodnota | Typ pohybu |
| „Holý" výdej |
| Výdej polotovaru |
| Výdej po faktuře |
| Výdej po objednávce |
| Výdej pro převodku |
| Výdej pro fakturaci (ceny z ceníku) |
| Výdej pro fakturaci (ceny ručně) |
| Výdej výrobku |
| Výdej (dobropis, vratka) |
4. Dokončení převodky
Nyní je vše připraveno dokončit převodku z objednávkou vygenerované výdejky standardním způsobem — akcí dokoncit-prevodku:
POST https://demo.flexibee.eu/c/demo/skladovy-pohyb.xml
<?xml version="1.0"?>
<winstrom version="1.0">
<skladovy-pohyb action="dokoncit-prevodku">
<!-- jako ID lze použít i interní číslo výdeje pro převod -->
<id>123</id>
</skladovy-pohyb>
</winstrom>
Odpověď 201 obsahuje ID výdejky, na které jste akci spustili. Příjemku vzniklou na cílovém skladu najdete opět mezi vazebními doklady.
Neúspěšné požadavky
Situace | Odpověď |
Akce |
|
Změna typu pohybu bez nastaveného parametru |
|
Akce |
|
FAQ
Dojde k provázání dokladů?
Ano. Objednávka přijatá, výdejka i příjemka na cílovém skladu zůstanou ve vazbě — všechny tři doklady vrací dotaz na vazebni-doklady objednávky.
Musí parametr zůstat zapnutý natrvalo?
Ne. Parametr pouze povoluje změnu typu pohybu, takže stačí, aby platil ve chvíli, kdy výdejku upravujete.
