Přeskočit na hlavní obsah

Diagnostika chybných skladových cen

Postup, jak zjistit, proč nesedí cena na výdejce nebo hodnota na skladové kartě, a jaký opravný nástroj na kterou příčinu použít.

Autor: Petr Pech

Nesedí vám cena na výdejce, hodnota na skladové kartě nebo zůstatek celého skladu? Tento článek je postup, jak příčinu rozdílu zúžit a jak ji opravit. Provede vás od ověření vlastního výpočtu přes určení projevu až po volbu správného opravného nástroje.

ℹ️ Ceny skladových pohybů dopočítává Flexi sama podle metody oceňování zásob nastavené na skladě. Než začnete hledat chybu, zjistěte si, jakou metodu máte nastavenou, protože se od toho odvíjí i to, které opravy budou fungovat a které ne. Pomůže i znalost FIFO vazeb.


Krok 1: Ověřte, jak jste k rozdílu došli

Častým zdrojem falešného poplachu není chyba ve Flexi, ale chyba v kontrolním výpočtu. Typický případ z praxe: zákazník si vyexportoval pohyby skladové karty do tabulky, sečetl je a porovnal s hodnotou na kartě. V exportu měl ale ceny v eurech, protože příjemky byly cizoměnové, zatímco karta je vedená v korunách. Kdyby částky přepočetl kurzem uvedeným na dokladu, vyšly by přesně. Ve Flexi žádná chyba nebyla.

Než začnete zasahovat do dat, projděte tyto čtyři otázky:

  • Odkud kontrolní číslo pochází? Jiný výsledek dá součet položek dokladů, jiný sestava stavu skladu a jiný zůstatek účetního účtu. Porovnávejte vždy srovnatelné.

  • V jaké měně jsou ceny v exportu a v jaké je veden sklad? Cizoměnové doklady mají v položkách cenu v měně dokladu i přepočtenou cenu v měně skladu. Snadno se zamění.

  • Za jaké období je výpočet sestavený? Skladová karta existuje pro každé účetní období samostatně. Součet pohybů za celou historii nikdy nebude odpovídat hodnotě karty v jednom roce.

  • Nevstupují do součtu nevyrovnané požadavky na výdej? Ty mají nulovou cenu a v součtu chybí, i když příslušné zboží už fyzicky vydáno bylo.


Krok 2: Určete, jak se rozdíl projevuje

Projev zúží okruh možných příčin dřív, než začnete procházet jednotlivé pohyby. Vyjděte z řádku, který odpovídá vaší situaci, a příčinu ověřte podle třetího sloupce. Podrobný popis každé příčiny najdete v kroku 3.

Projev

Pravděpodobná příčina

Jak to ověřit

Na kartě je nula kusů, ale nenulová hodnota v korunách

Ručně pořízená záporná příjemka, nebo změna metody oceňování nad nevyskladněnou zásobou

Otevřete skladovou kartu a projděte její pohyby. Hledáte příjemku se záporným množstvím. Pokud tam žádná není, porovnejte datum, od kterého hodnota nesedí, s datem, kdy se u skladu měnila metoda oceňování.

Množství v měrných jednotkách sedí, hodnota v korunách ne

Chybná cena na některém pohybu, nejčastěji na výdejce

V pohybech karty si zobrazte sloupec s cenou za MJ. Hledáte pohyb, jehož cena se vymyká okolním. Postup na dohledání konkrétního pohybu je v kroku 4.

Cena za MJ je řádově mimo, například 1 Kč místo 30 Kč

Doklad je v jiné měně než sklad, nebo je chybně nastavený kurz

Otevřete dotčenou příjemku a porovnejte měnu dokladu s měnou skladu, na který příjemka jde. U prodeje navíc zkontrolujte, jaký kurz je nastaven pro cenotvorbu.

Výdejka má nulové množství i nulovou cenu

Nevyrovnaný požadavek na výdej

V přehledu skladových karet použijte Stav k datu a zobrazte si sloupce Požadavky a Stav zásob v MJ s požadavky. Nenulová hodnota ve sloupci Požadavky potvrzuje příčinu.

Ceny sedí do určitého data a od něj se rozjely

Změna metody oceňování, nebo pohyb se špatným skladovým datem

Najděte první pohyb, u kterého cena přestala odpovídat, a podívejte se na jeho skladové datum. Porovnejte je s datem vystavení dokladu a s datem případné změny nastavení skladu.

Existuje výdejka, která nemá navázanou příjemku

Poškozená nebo chybějící FIFO vazba, typicky v souvislosti se šaržemi

Otevřete výdejku a zkontrolujte, zda má vyplněnou vazbu na příjemku. Používáte-li šarže, ověřte, zda šarže uvedená na výdejce ještě na skladě existuje.

Počáteční stav roku nesedí na konečný stav minulého roku

Sklad nebyl po dodatečném pohybu znovu převeden

Přepněte se do minulého období, zjistěte konečný stav karty a porovnejte jej s počátečním stavem téže karty v novém období.


Krok 3: Projděte nejčastější příčiny

Příčiny jsou seřazené podle četnosti výskytu. U každé je popsáno, jak vzniká, jak ji poznáte a co s ní.

Ručně pořízená záporná příjemka

Nejčastější příčina rozjetých cen. Příjemka se záporným množstvím se chová jako výdej ze skladu, cenu na ní ale zadává uživatel, ne metoda oceňování. Do skladu se tím dostane výdej v ceně, kterou Flexi nestanovila, a od tohoto okamžiku přestává hodnota karty odpovídat pohybům.

Jak ji poznáte: v pohybech skladové karty je příjemka se záporným množstvím. V přehledu příjemek ji najdete tak, že si zobrazíte sloupec s množstvím a seřadíte jej vzestupně.

Proč to zákazníkům dlouho procházelo: na zcela nové kartě příjem pěti kusů a záporná příjemka pěti kusů za stejnou cenu vyjde na nulu a vypadá to v pořádku. Jakmile má ale karta jakoukoliv předchozí historii, cena na záporné příjemce se rozejde s cenou, kterou by stanovila metoda oceňování, a rozdíl zůstane.

Legitimně vzniká záporná příjemka pouze automaticky, typicky z dobropisu, kde si Flexi správnou cenu doplní sama. Podrobně to popisuje článek o tom, proč jsou záporné příjemky problém.

Cena zapsaná ručně přes REST API

V aplikaci pole Cena za MJ na výdejce editovat nelze, je pouze informativní. Přes REST API to ale technicky možné je, ruční zadání ceny se povolí příznakem cenaRucne. Zapíše-li integrace, e-shopové napojení nebo migrační skript cenu tímto způsobem, přestane odpovídat metodě oceňování a rozdíl se projeví až s odstupem několika měsíců.

Jak ji poznáte: výdejka má cenu, která neodpovídá žádné z předchozích příjemek ani průměru, a přitom na kartě nejsou žádné jiné podezřelé pohyby. Potvrdit to lze dotazem na výdejky s příznakem cenaRucne nastaveným na true.

🚨 Tímto způsobem cenu nezadávejte ani při implementacích. Platí, že cena na výdejce se nezadává ručně.

Změna metody oceňování nad nevyskladněnou zásobou

Změníte-li metodu oceňování v okamžiku, kdy je na kartě ještě zásoba, počítá Flexi do data změny jednou metodou a od data změny druhou. Příklad: do změny se vydávalo průměrnou cenou, po přepnutí na FIFO se začne vydávat cenou prvního dosud nevyčerpaného příjmu. Ta se od dosavadního průměru zpravidla liší a rozdíl na kartě zůstane.

Jak ji poznáte: typickým projevem je karta, na které je po vyprodání celé zásoby nula kusů a přitom nenulová hodnota v korunách, kladná i záporná. Ceny přitom sedí do určitého data a od něj se rozcházejí.

Co s tím: přepočet skladu tuto situaci neopraví, protože nejde o chybu výpočtu. Zbylou hodnotu srovnáte příjemkou s nulovým množstvím, ale jen pokud máte nastavenou průměrnou cenu, viz krok 5. Metodu oceňování nad skladem s pohyby zásadně neměňte. Potřebujete-li přejít na jinou metodu, založte nový sklad s požadovanou metodou a zásobu do něj převeďte.

⚠️ Změna metody oceňování nemusí být z nastavení skladu patrná, protože v něm vidíte pouze aktuální stav, ne historii. Máte-li podezření, že se metoda v čase měnila, napište nám na podporaflexi@abra.eu. Kdy a kým byla změněna, lze dohledat v žurnálu.

Doklad v jiné měně, než je měna skladu

Sklad může být veden v tuzemské i v cizí měně a od toho se odvíjí, v jaké měně se ukládají skladové ceny. Vstoupí-li na korunový sklad příjemka s cenou v eurech, aniž by proběhl přepočet kurzem, bude cena za MJ řádově mimo, typicky pětadvacetkrát nižší.

Jak ji poznáte: otevřete dotčenou příjemku a porovnejte měnu dokladu s měnou skladu uvedenou na kartě skladu. Zkontrolujte také kurz na dokladu. Vydělíte-li spornou cenu tímto kurzem nebo ji jím vynásobíte a dostanete očekávanou hodnotu, máte příčinu potvrzenou.

Na prodejní straně má stejný efekt chybně nastavený kurz pro cenotvorbu, kdy se prodejní cena vyfakturuje v cizí měně místo přepočtu do korun. Rozdíly mezi oběma typy skladu popisuje článek o tom, jak se liší sklad v cizí měně od skladu v tuzemské měně.

Skladové datum se liší od data vystavení

Pro ocenění pohybu a pro pořadí FIFO vazeb je rozhodující skladové datum (datSklad), ne datum vystavení dokladu (datVyst), které vidíte v přehledech jako první. Příjemka vystavená k 1. lednu, ale pořízená do systému až v březnu, může mít skladové datum v březnu. Výdeje z ledna a února se pak neocení z ní, ale z jiného příjmu, případně z nich vzniknou požadavky na výdej.

Jak ji poznáte: v přehledu příjemek a výdejek si zobrazte oba sloupce vedle sebe a porovnejte je. Rozdíl u dokladů, po kterých se ceny rozjely, je silná indicie.

Co s tím: skladové datum lze na dotčených dokladech opravit a následným přepočtem skladu se ocenění navazujících výdejů srovná. Hromadně slouží k témuž funkce Narovnej datumy. Používejte ji ale až po konzultaci s podporou, protože zasahuje do všech dotčených pohybů najednou a v některých případech rozdíl spíš prohloubí, než vyřeší.

Nevyrovnané požadavky na výdej

Vydáváte-li zboží, které v daný okamžik není skladem, vznikne požadavek na výdej. Výdejka pak má nulové množství i nulovou cenu. Není to chyba a v běžném provozu se to stává, ale dokud požadavek trvá, cena na výdejce být nemůže, protože ještě není z čeho ji odvodit.

Jak je poznáte: nad přehledem skladových karet spusťte Stav k datu. Zobrazí se sloupce Požadavky a Stav zásob v MJ s požadavky. Nenulová hodnota ve sloupci Požadavky znamená, že karta má nevyrovnané požadavky.

Co s tím: po dodatečném příjmu je vyrovnáte funkcí aktualizace požadavků na výdej. Přepočet skladu ani inventura ji nenahradí. Do nového účetního období by žádný nevyrovnaný požadavek přejít neměl, viz kontrola skladu před závěrkou.

Poškozené nebo chybějící FIFO vazby

Při metodě FIFO se každá výdejka váže na konkrétní příjemku, ze které zboží čerpá. Tato vazba může chybět úplně, nebo ukazovat na příjem, který výdeji neodpovídá. Nejčastější příčinou jsou šarže: výdej se snaží navázat na příjemku s toutéž šarží, ale zboží z ní už na skladě není, případně šarže na skladě zůstala, ačkoliv příslušná příjemka je vyčerpaná.

Jak je poznáte: otevřete výdejku a zkontrolujte, zda má vyplněnou vazbu na příjemku. U šarží ověřte, že šarže uvedená na výdejce má na skladě odpovídající zůstatek.

Co s tím: standardní vazby obnoví přepočet skladu, který je znovu naváže podle skladového data. Rozpad vazeb způsobený šaržemi je ale nutné posoudit případ od případu a zpravidla vyžaduje pohled do databáze. Obraťte se na podporu.

Nepřevedený sklad z minulého období

Skladové karty jsou vedeny pro každé účetní období zvlášť. Počáteční stav nového roku vytváří převod skladu, který je součástí inicializace následujícího účetního období. Pokud se po převodu do končícího roku dodatečně zapsal další pohyb, například pozdě došlá faktura, počáteční stav nového roku už neodpovídá.

Jak to poznáte: přepněte se do minulého období, zjistěte konečný stav karty a porovnejte jej s počátečním stavem téže karty v novém období. Neshoda potvrzuje příčinu.

Co s tím: karty neopravujte ručně a nezakládejte příjemky, které mají počáteční stav nahradit. Znovu spusťte inicializaci následujícího účetního období se zaškrtnutým příznakem Provést převod skladu. Přepočet skladu k tomu potřeba není.


Krok 4: Dohledejte konkrétní chybný pohyb

Když z projevu není zřejmé, který pohyb rozdíl způsobil, pomůže kontrolní součet pohybů v tabulkovém editoru. Postup vychází z toho, že hodnota skladu je průběžný součet všech pohybů a nikdy by neměla klesnout pod nulu.

  1. Vyexportujte položky příjemek a výdejek dané skladové karty do tabulky. Potřebujete alespoň ID položky dokladu, datum, množství a hodnotu pohybu.

  2. Seřaďte řádky vzestupně podle ID položky dokladu, tedy v pořadí, v jakém pohyby vznikaly. Neřaďte podle ID ceníkové položky ani podle data, protože doklady mohou být pořízeny se zpětným datem.

  3. Přidejte vedle sloupec s průběžným součtem hodnot. První řádek obsahuje hodnotu prvního pohybu, každý další přičítá hodnotu svého pohybu k předchozímu součtu.

  4. Projděte tento sloupec shora dolů. Každý řádek ukazuje hodnotu zásoby po daném pohybu, tedy mezistav.

Pokud průběžný součet v některém místě spadne do záporu, je u tohoto pohybu pravděpodobně chybná cena. Znamená to, že se ze skladu vydalo v ceně vyšší, než jaká měla podle metody oceňování vyjít. Nejčastěji jde právě o zápornou příjemku nebo o výdejku s ručně zapsanou cenou.

📝 Kontrolní součet je vodítko, ne důkaz. Ne každý problém se takto projeví a záporný mezistav může mít i jiné vysvětlení. Slouží k potvrzení hypotézy, ke které jste došli v kroku 2, ne k jejímu vytvoření.


Krok 5: Zvolte způsob opravy

Každý nástroj řeší jiný typ rozdílu a vzájemně se nezastupují. Plošné spouštění všech funkcí za sebou problém obvykle nevyřeší a sklad jen na dlouhou dobu zablokuje. Než sáhnete po některém z nich, mějte určenou příčinu.

🚨 Skladové zásahy mají účetní dopad.

Účtujete-li zásoby způsobem A, promítne se každý opravný pohyb okamžitě do účetnictví. Oprava ve starším roce navíc mění zůstatek na účtu skladu a je po ní nutné zopakovat inicializaci pro každé následující období až do aktuálního roku.

Zasahujete-li do období, za které už byly podány účetní výkazy nebo daňové přiznání, vždy nejprve proberte dopad se svou účetní.

Co je špatně

Nástroj

Jak postupovat a co si ohlídat

Špatná nebo nulová cena na kladné příjemce

Otevřít příjemku a cenu přepsat

Nejspolehlivější cesta, protože dostane správnou cenu do všech míst najednou. Vstoupit lze i zpětně do příjemky, na kterou už navazují výdeje. Uložením se automaticky spustí přepočet pro dotčenou kartu. Vznikla-li příjemka z přijaté faktury, opravte cenu na faktuře.

Ručně pořízená záporná příjemka

Doklad smazat a nahradit výdejkou nebo inventurou ke stejnému datu

Smazat lze jen doklad, na který nenavazují další doklady. Nahradit ji výdejkou je bezpečnější než opravovat cenu přímo na ní, protože správnou cenu stanoví metoda oceňování, ne uživatel.

Chybějící cena na výdejce, poškozené FIFO vazby

Neopraví ceny na příjemkách, výdejky s ručně zapsanou cenou ani důsledky změny metody oceňování. Spouštějte jej mimo pracovní dobu, během běhu nelze se skladem pracovat.

Nesedí skutečné množství na skladě

Inventura, u jednotlivé položky výdejka s typem pohybu holý výdej

Množství na již uloženém dokladu upravit nelze, rozdíl se proto doplňuje novým pohybem ke správnému datu. Inventura zohledňuje pouze požadavky na výdej z aktuálního období.

Množství sedí, nesedí jen hodnota, a příjemku už opravit nelze

Příjemka s nulovým množstvím a s částkou, o kterou se má hodnota změnit

Funguje pouze při průměrné ceně, viz upozornění pod tabulkou. Používá se typicky tehdy, když je období vzniku chyby už uzavřené a zákazník do něj nechce zasahovat.

Nevyrovnané požadavky na výdej

Aktualizace požadavků na výdej

Nelze nahradit přepočtem ani inventurou. Vyžaduje, aby zboží už bylo naskladněno.

⚠️ Příjemka s nulovým množstvím funguje jen u průměrné ceny. Neváže se totiž na konkrétní přijatý pohyb, pouze mění celkovou hodnotu karty, ze které se přepočte průměrná cena. Máte-li nastaveno FIFO, vydává se dál z původní vrstvy s původní cenou a oprava se do navazujících výdejů vůbec nepromítne.


Když se příčinu nepodaří najít

Někdy nelze rozdíl vysvětlit z pohybů na kartě a je nutné projít celou historii skladu a připravit kontrolní dotaz nad databází. Takový rozbor je individuální službou nad rámec běžné podpory a je zpoplatněn. Ukáže-li se, že rozdíl způsobila chyba na straně Flexi, účtován není.

💡 Než nás oslovíte, připravte si prosím název skladové karty, období, kterého se rozdíl týká, částku rozdílu a popis toho, jak jste k němu došli. Ušetří to čas na obou stranách. Napište nám na podporaflexi@abra.eu.


FAQ

Vyřeší přepočet skladu všechno?

Ne. Přepočet pracuje s cenami výdejů a znovu naváže FIFO vazby. Neopraví ceny na příjemkách, výdejky s ručně zapsanou cenou, nevyrovnané požadavky na výdej, rozdíl ve skutečném množství ani důsledky změny metody oceňování.

Můžu chybnou příjemku prostě smazat?

Jen tehdy, pokud na ni nenavazují další doklady. Naváže-li se na příjemku výdejka nebo faktura, smazání Flexi nedovolí a je nutné nejprve zrušit navazující doklady. U starších dokladů to zpravidla nepřipadá v úvahu a rozdíl se řeší jinou cestou.

Proč nemůžu opravit množství na uložené příjemce?

Množství skladového pohybu je po uložení neměnné, protože na něj navazuje ocenění všech následujících výdejů. Rozdíl se proto neopravuje na původním dokladu, ale doplňujícím pohybem ke správnému datu, tedy inventurou nebo novou příjemkou či výdejkou.

Na kartě mám nula kusů a zbylou hodnotu v korunách. Co s tím?

Typicky jde o pozůstatek po změně metody oceňování nebo po ručně pořízené záporné příjemce. Máte-li nastavenou průměrnou cenu, srovná hodnotu příjemka s nulovým množstvím a opačnou částkou. U metody FIFO tento postup nefunguje a je nutné dohledat a opravit původní chybný pohyb.

Musíme opravovat i uzavřené roky?

Záleží na výši rozdílu. Oprava v roce, kde chyba vznikla, je jediné úplné řešení, znamená ale opravné výkazy za každý dotčený rok. U drobných částek se v praxi volí vyrovnání v aktuálním roce. Rozhodnutí patří vaší účetní.


Související články

Dostali jste odpověď na svou otázku?