Prevazna vetsina soucasnych SQL databazi podporuje integritni omezeni a transakce. A je opravdu zbytecne zabyvat se transakcemi v kodu vlastni aplikace, kdyz je podle SQL standardu ma databaze podporovat. Co me spis neni jasne, jak zajistit nejakym rozumnym integritnim omezenim, aby se u slozeneho ucetniho zaznamu rovnalo MD=D. Obavam se, ze to asi mozne neni.
Urcite by sa to dalo (MD=D). Predpokladam ze na vkladanie zaznamov bude pouzita ulozena procedura a ta by to riesila.
Teraz si nasypem popol nahlavu: neviem kedy (v ramci transakcie) sa vyhodnocuju integritne obmedzenia. Ale v pripade ze sa vyhodnocuju (pred) kazdym insertom tak MD=D sa neda zabezpecit klasickymi integritnymi obedzeniami. (najprv insertnu riadky pre MD a az potom D, teda chvilu je to ,,integritne'' nekorektne).
Pokud ve výsledné aplikaci předpokládáte, že
účetní bude pořízovat účetní případy
prostřednictví tzv. účetního dokladu, který
bude bude členěn na záhlaví a řádky (doporučuji)
bývá v našich účetních krajích zvykem, že při
editaci takovéhoto případu se kontroluje po
ukončení posledního záznamu a pokusu o uložení
celého dokladu vyváženost stran MD a DAL.
Dokonce se vžil pojem pro parametrizaci tohoto
procesu (kontrolvoat: Měkce|Tvrdě|Nekontrolovat).
Na to je možno s výhodou využít triggerů v SQL
databázi pokud je podporuje.
Dále bývá zvykem, že účetní doklad, který neobsahuje
vyrovnané účetní zápisy nelze uzavřít, pokud se
s takovými stavy jako doklad Pořízen | Uzavřen|
Schválen|Uzavřen pro DPH|Stornován|Opraven
ve Vašem systému počítá. Na to většinou navazuje
i tzv. institut uzavření účetního období, kdy se
předpokládá, že není možno uzavřít účetní období,
které obsahuje neuzavřené účetní doklady.
Některé systémy nebo jejich agendy (přijaté
faktury) umožňují automaticky generovat vyrovnávací
účetní záznam na k tomu předem určený účet k roz-
účtování (v nastavení účetního deníku implicitní
účet), jehož nenulový zůstatek na dokladě generuje
stav, že doklad je určen k rozúčtování (na střediska, zakázky, nositele nákladů) s velkou
tradicí v českém účetnictví se k takovémuto
účelu používají analytické účty 395.