REST API umožňuje přepočítat nákupní a prodejní cenu kusovníku pomocí akcí prepocti-nakupni-cenu a prepocti-prodejni-cenu. Slouží k úpravě ceny výrobku ve chvíli, kdy se změnily ceny materiálů, ze kterých se výrobek skládá. Jde o stejné služby, jaké v aplikaci obsluhují tato tlačítka:
Přepočet sečte ceny materiálu vynásobené jeho množstvím a výsledek zapíše nadřazené ceníkové položce — do nakupCena, respektive cenaZakl. Samotná evidence kusovnik žádné ceny nedrží.
⚠️ Akce sčítají pouze ceny z jedné úrovně kusovníku. Skládá-li se kusovník z dalších kusovníků, přepočítejte nejprve je — postupujte tedy od nejnižší hladiny nahoru.
ℹ️ Při samotné výrobě, tedy při příjmu výrobku na sklad, se cena přijatého výrobku spočítá sama podle skutečné ceny spotřebovaného materiálu — bez ohledu na cenu uvedenou v kusovníku. Více o kusovníku najdete v popisu evidence.
Přepočet konkrétního kusovníku
Akce se vyvolává importem přes atribut action; požadavek posíláte metodou POST nebo PUT:
POST https://demo.flexibee.eu/c/demo/kusovnik.xml
<winstrom version="1.0">
<kusovnik id="123" action="prepocti-nakupni-cenu"/>
</winstrom>
Totéž v JSON — název akce se zapisuje jako @action:
{
"winstrom": {
"kusovnik": {
"id": "123",
"@action": "prepocti-nakupni-cenu"
}
}
}
Odpovědí je standardní výsledek importu s 201 Created a identifikátorem přepočítaného kusovníku:
{
"winstrom": {
"@version": "1.0",
"success": "true",
"stats": {
"created": "0",
"updated": "1",
"deleted": "0",
"skipped": "0",
"failed": "0"
},
"results": [
{
"id": "123",
"request-id": "123",
"ref": "/c/demo/kusovnik/123.json"
}
]
}
}
Přepočet celé hladiny
Hladina kusovníku (hladina) určuje úroveň, kterou se chystáte přepočítat. Místo ID použijte atribut filter a akce se provede nad všemi kusovníky, které filtru odpovídají:
<winstrom version="1.0">
<kusovnik filter="hladina eq 1" action="prepocti-nakupni-cenu"/>
</winstrom>
A stejný dotaz v JSON:
{
"winstrom": {
"kusovnik": {
"@filter": "hladina eq 1",
"@action": "prepocti-nakupni-cenu"
}
}
}
Počet skutečně přepočítaných záznamů si přečtěte z updated v odpovědi — filtr na hladinu zpravidla zasáhne desítky kusovníků.
Neúspěšné požadavky
Situace | Odpověď |
Zadaný kusovník neexistuje |
|
Překlep v názvu akce |
|
Filtr nedodržuje pravidla filtrace |
|
Filtrovaná hladina neobsahuje žádný kusovník |
|

