Přeskočit na hlavní obsah

Zamykání dokladů přes API

Akce lock, unlock a lock-for-ucetni — a proč odemknutí a úpravu nelze spojit

Autor: Petr Pech

Jednotlivé doklady lze přes API zamknout proti změnám — a stejně tak odemknout. Slouží k tomu akce nad evidencí dokladu.


Akce

Akce

Co dělá

lock

Zamkne záznam.

lock-for-ucetni

Zamkne záznam pro účetní.

unlock

Odemkne záznam.

Zápis je obyčejný import s atributem action:

<winstrom version="1.0">
<faktura-vydana action="lock">
<id>123</id>
</faktura-vydana>
</winstrom>

Akci lze spustit i dávkově nad skupinou záznamů určenou filtrem:

<winstrom version="1.0">
<faktura-vydana action="lock"
filter="stavUhrK = 'stavUhr.uhrazeno' and typDokl = 'code:INTERNET'">
</faktura-vydana>
</winstrom>


Změna zamčeného dokladu

Pokus zamčený záznam upravit skončí chybou:

Záznam je zamčený.

🚨 Odemknutí a úpravu nelze spojit do jednoho požadavku. Pošlete-li action="unlock" a zároveň změněné vlastnosti, server odpoví success=true, ale změny zahodí — projeví se jen odemknutí. Rozdělte proto operaci na dva samostatné požadavky: nejdřív odemknout, potom upravit.


Doklad v zamčeném období

Zámek dokladu je něco jiného než zámek období. Doklad do zamčeného období vložit nelze, dokud zámek nepřepnete na zamek.otevreno — postup popisuje článek Zamykání období přes REST API.


Související

Dostali jste odpověď na svou otázku?