Preskoči na glavno vsebino

Vykonávanie akcií

Vykonávanie akcií v REST API

Avtor: Petr Pech

Pri importe je možné namiesto bežného vytvorenia či zmeny záznamu vykonať inú akciu, napr. zmazanie či stornovanie dokladu. Na to slúži atribút action:

<?xml version="1.0"?>
<winstrom version="1.0">
<faktura-vydana action="delete">
<id>123</id>
<id>uuid:123456</id>
</faktura-vydana>
</winstrom>

Dostupné akcie

Akcia

Popis

Zmazanie
(delete)

Záznam bude zmazaný.

Stornovanie
(storno)

Záznam bude stornovaný. Dá sa použiť iba pre doklady.

⚠️ Pri vykonávaní akcií nie sú záznamy inak modifikované, preto nemá zmysel uvádzať iné elementy než id. Zároveň musia záznamy už existovať — odkaz na neexistujúce ID skončí chybou 400 s kódom idNotFound. Nedá sa teda napr. vytvoriť nová zmazaná faktúra.

ℹ️ Ak akciu použijete nad evidenciou, ktorá ju nepodporuje (napr. storno nad adresárom), server odpovie 400 s kódom importXmlActionNotSupported.


Akcie na položkách

Akcie sa dajú vyvolávať aj na položkách dokladu. Nie však priamo, ale rovnako ako pri aktualizácii je potrebné uviesť požiadavku prostredníctvom kolekcie položiek na príslušnom doklade.

Ukážka pre zmazanie položky s ID rovným 456 vo formáte XML:

<?xml version="1.0"?>
<winstrom version="1.0">
<faktura-vydana>
<id>123</id>
<polozkyFaktury>
<faktura-vydana-polozka id="456" action="delete"/>
</polozkyFaktury>
</faktura-vydana>
</winstrom>

To isté vo formáte JSON:

{
"winstrom": {
"@version": "1.0",
"faktura-vydana": [
{
"id": "123",
"polozkyFaktury": [
{ "id": "456", "@action": "delete" }
]
}
]
}
}


Súvisiace

Ste s tem dobili odgovor na svoje vprašanje?