Preskoči na glavno vsebino

Presun do iného skladu po vyskladnení tovaru z prijatej objednávky pomocou REST API

Ako po vyskladnení tovaru po realizácii prijatej objednávky vykonať prevod na iný sklad v REST API.

Avtor: Petr Pech

Štandardný prevod medzi skladmi (prevodka) má vždy v ABRA Flexi vždy dve strany – výdaj a príjem. Štandardné vytvorenie prevodky v REST API nájdete tu.

Scenár

V systéme existuje od zákazníka prijatá objednávka na tovar. Tento tovar je potrebné vydať z jedného skladu a potom v druhom kroku (neskôr) je potrebné tovar previesť na iný sklad, teda dokončiť prevodku.

Tento postup nie je štandardne možný. Realizácia objednávky skladovým pohybom nastavuje výdajke typ pohybu "Výdaj po objednávke", dokončenie prevodky cez API tak končí chybou Nepodarilo sa nájsť správny typ dokladu.

V tomto návode sa pozrieme na to, ako situáciu riešiť.

Riešenie

Prvým krokom je realizácia objednávky skladovým pohybom, viac informácií nájdete v dokumentácii vyššie, tu uvedieme iba príklad:

<?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>

Týmto API požiadavkom zabezpečíme vygenerovanie výdajky z objednávky, ktorá bude mať nastavený typ pohybu výdaj po objednávke. Pre nás je ďalej dôležité ID alebo interné číslo tejto výdajky pre budúcu úpravu a dokončenie prevodu:

<?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>

Parametrizácia aplikácie

Naším cieľom je umožniť zmenu tohto typu pohybu, keďže blokuje dokončenie prevodky. Riešenie existuje pomocou pokročilej parametrizácie aplikácie, ktorá nám umožní meniť typ pohybu na skladových pohyboch. Parameter v XML vyzerá nasledovne:

<winstrom version="1.0">
<parametr>
<paramK>zmenaPohybuRealizace</paramK>
<hodnota>true</hodnota>
</parametr>
</winstrom>

Úprava výdajky

Tento parameter zabezpečí možnosť zmeniť typ pohybu na výdajke. Po inštalácii parametra je teda možné upraviť výdajku na správny typ pohybu a nastaviť cieľový sklad. Pre úplnosť tu uvedieme možné typy pohybu. Viac informácií v popise evidencie skladovy-pohyb.

„Holý" výdaj - typPohybuSklad.vydejHoly

Výdaj polotovaru - typPohybuSklad.vydejPolot

Výdaj po faktúre - typPohybuSklad.vydejPoFak

Výdaj po objednávke - typPohybuSklad.vydejPoObch

Výdaj pre prevodku - typPohybuSklad.vydejPrevod

Výdaj pre fakturáciu (ceny z cenníka) - typPohybuSklad.vydejProFakCenik

Výdaj pre fakturáciu (ceny ručne) - typPohybuSklad.vydejProFakRucne

Výdaj výrobku - typPohybuSklad.vydejVyrob

Výdaj (dobropis, vratka) - typPohybuSklad.prijemVydejVratka

<?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>

Dokončenie prevodky

Teraz je všetko pripravené na dokončenie prevodky z objednávkou vygenerovanej výdajky nasledujúcim štandardným spôsobom pomocou akcie "dokoncit-prevodku":

<?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>

FAQ

Dôjde k prepojeniu dokladov?

Áno, všetky doklady – prijatá objednávka, výdaj aj príjem budú vo väzbe.

Potrebujete poradiť?

V prípade otázok k aplikácii nás kontaktujte na podporaflexi@abra.eu prípadne prostredníctvom okna chatu v pravom dolnom rohu.

Ste s tem dobili odgovor na svoje vprašanje?