Způsob zápisu algoritmů
Aktualizováno 18. 7. 2026
V každém záznamu můžete definovat typ výkazu, označení řádku, text a vlastní algoritmus výpočtu. Hodnoty se přepočítávají pomocí funkce pro výpočet. Vyvoláte ji klávesou F10 při editaci algoritmů. Výpočet se také provede vždy při zobrazení tiskopisu výkazu či sestavy.
Při zápisu algoritmu můžete použít:
-
Účty
-
Řádky výkazů
-
Konstanty
-
Operátory
-
Funkce
-
Komentáře
Zadávané výrazy nerozlišují malá a velká písmena a při zadání se nekontroluje typ a počet parametrů.
Účty
účty se zapisují ve tvaru U211,
U zůstatek účtu (rozdíl zůstatku stran MD a Dal nebo Dal a MD - podle typu účtu)
P počáteční stav účtu
O obrat účtu (O=U-P)
UM zůstatek strany MD
PM počáteční stav na straně MD
OM obrat strany MD (OM=UM-PM)
UD zůstatek strany Dal
PD počáteční stav na straně Dal
OD obrat strany Dal (OD=UD-PD)
UA zůstatek účtu v případě, že je účet aktivní (jinak 0)
UP zůstatek účtu v případě, že je účet pasivní (jinak 0)
<číslo účtu> může nabýt číslo syntetického účtu (např. U321) nebo číslo analytického účtu (např. u321001)
Zápis U211+750 znamená zůstatek účtu 211 plus částka 750.
Řádky výkazů
[
-
lokální (ze stejného výkazu)
<číslo řádku> (např. r31) -
externí (z jiného výkazu) [
.] <číslo řádku> (např. RP.r51)
Typ hodnoty
V odkazech na výkaz Rozvahy je třeba u aktiv určit typ hodnoty - brutto nebo korekce.
V označení řádku v algoritmech se do prefixu přidá B - pro brutto nebo K - pro korekci (např. rb51, rk51). Odkaz na Netto se zadejte jako brutto + korekce (např. rb51+rk51).
Rozsah
K zadání rozsahu čísel účtů nebo řádků slouží operátor .. (dvě tečky). Rozsah proměnné se zapíše jako
Konstanty
-
celočíselné (např. 132)
-
reálné (např. 1572.56) oddělovačem desetinných míst je tečka
-
řetězcové (např. ABC) uzavřené v apostrofech
Operátory
-
sčítání
-
odčítání
-
násobení
/ dělení
- unární mínus
div celočíselné dělení
mod zbytek po dělení
^ negace
& logický součin (a zároveň, and)
| logický součet (nebo, or)
( ) závorky, závorky mohou být vnořené.
Funkce
ABS absolutní hodnota (např. ABS(-55)=55)
Min minimum z hodnot (např. Min(1,2,3,5)=1), argumentem může být i řetězec
Max maximum z hodnot (např. Max(1,2,3,5)=5), argumentem může být i řetězec
Round zaokrouhlení aritmetické (např. Round(1.6)=2)
RoundUp zaokrouhlení nahoru na stanovený počet míst (např. RoundUp(1625,2)=1600, RoundUp(1625.527,-2)=1625.53)
RoundDown zaokrouhlení dolů na stanovený počet míst
AVG průměrná hodnota (např. AVG(5,10)=7.5) seznam několika hodnot
AVGW vážený aritmetický průměr (např. AVGW(1.2,5,1.8,6)=(1.25+1.86)/(1.2+1.8) )
COND(výraz,výraz1,výraz2) podmíněný výraz - když je výraz>0 tak výsledkem je výraz1 jinak je výsledkem výraz2
GRZ(výraz) zjednodušená podmínka pro větší než nula = COND(výraz>0,výraz,0)
LEZ(výraz) zjednodušená podmínka pro menší než nula = COND(výraz<0,výraz,0)
TypUctu(číslo účtu) vrací typ účtu [A,P,N,V,bez typu]
AktZust(číslo účtu) zůstatek účtu je-li aktivní, jinak nula
PasZust(číslo účtu) zůstatek účtu je-li pasivní, jinak nula
Komentáře
{} text v komentářích nijak neovlivní výpočet. Používá se např. pro návod k vyplnění analytických účtů. Komentáře mohou být i vnořené.