Přeskočit na hlavní obsah

Smazání poplatku přes REST API

Jak smazat poplatek přes API?

Autor: Petr Pech

Poplatek je ve Flexi dvojí věc: samostatný záznam v evidenci poplatek, který spojuje poplatek s konkrétní ceníkovou položkou, a zároveň ceníková položka, která poplatek představuje. Odstranění proto probíhá ve dvou krocích.


1. Odebrání poplatku od položky

Nejprve zjistěte ID vazby — vypíše ji ceníková položka s relací poplatky:

GET /c/{firma}/cenik/code:FEN.xml?relations=poplatky&detail=custom:kod,poplatky(id,cenik,cenikOtec)

Toto ID pak použijete ke smazání záznamu v evidenci poplatek:

<winstrom version="1.0">
<poplatek action="delete">
<id>7</id>
</poplatek>
</winstrom>

Poplatek tím zmizí od ceníkové položky; samotná položka představující poplatek zůstává v ceníku.


2. Smazání ceníkové položky poplatku

Nepoužíváte-li poplatek nikde jinde, lze smazat i jeho ceníkovou položku:

<winstrom version="1.0">
<cenik action="delete">
<id>code:RECYKLPOPL</id>
</cenik>
</winstrom>

⚠️ Položka nesmí být navázaná nikde jinde — dokud je přiřazená k jiné ceníkové položce nebo použitá na dokladu, mazání neprojde. Nejdřív tedy odeberte všechny vazby podle prvního kroku.

ℹ️ Ceníková položka, která má poplatek představovat, musí mít typ zásoby Poplatek (<typZasobyK>typZasoby.poplatek</typZasobyK>). Jinak přiřazení skončí chybou Vybraná položka z ceníku musí mít typ zásoby typu poplatek.


Související

Dostali jste odpověď na svou otázku?