© navision.pl | Opracowano na podstawie: Microsoft Learn (CC BY 4.0)
Przegląd wiersza księgowania dziennika głównego
Codeunit 12, Wiersz księgowania dz. gł., jest głównym obiektem aplikacji do księgowania w księdze głównej i jest jedynym miejscem do wstawiania zapisów księgi głównej, VAT oraz zapisów księgi nabywców i dostawców. Ten codeunit jest również używany do wszystkich operacji Zastosuj, Cofnij zastosowanie i Odwróć.
W Microsoft Dynamics NAV 2013 R2 codeunit został przeprojektowany, ponieważ stał się bardzo duży, z około 7 600 wierszami kodu. Architektura została zmieniona, a codeunit został uproszczony i łatwiejszy w utrzymaniu. Ta dokumentacja opisuje zmiany i dostarcza informacji potrzebnych do aktualizacji.
Stara architektura
Stara architektura miała następujące cechy:
- Występowało intensywne użycie zmiennych globalnych, co zwiększało możliwość ukrytych błędów spowodowanych użyciem zmiennych z niewłaściwym zakresem.
- Występowało wiele długich procedur (z ponad 100 wierszami kodu), które miały również wysoką złożoność cyklomatyczną (czyli wiele zagnieżdżonych instrukcji CASE, REPEAT, IF), co sprawiało, że kod był bardzo trudny do czytania i utrzymania.
- Kilka procedur, które były używane tylko lokalnie i miały być używane tylko lokalnie, nie było oznaczonych jako lokalne.
- Większość procedur nie miała parametrów i używała zmiennych globalnych. Niektóre używały parametrów i nadpisywały zmienne globalne lokalnymi.
- Wzorce kodu do wyszukiwania kont księgi głównej i tworzenia zapisów księgi głównej oraz VAT nie były ustandaryzowane i różniły się w zależności od miejsca. Ponadto występowało dużo duplikacji kodu i zaburzona symetria między kodem nabywców i dostawców.
- Duża część kodu w codeunit 12, około 30 procent, dotyczyła obliczeń rabatu płatności i tolerancji, chociaż te funkcje nie są potrzebne w wielu krajach lub regionach.
- Księgowanie, Zastosuj, Cofnij zastosowanie, Odwróć, Rabat płatności i Tolerancja oraz Korekta kursu wymiany były połączone razem w codeunit 12 przy użyciu długiej listy zmiennych globalnych.
Nowa architektura
W Business Central codeunit 12 otrzymał następujące ulepszenia:
- Codeunit 12 został zrefaktoryzowany na mniejsze procedury (wszystkie mają mniej niż 100 wierszy kodu).
- Ustandaryzowane wzorce wyszukiwania kont księgi głównej zostały zaimplementowane przy użyciu funkcji pomocniczych z tabel grup księgowych.
- Zaimplementowano strukturę silnika księgowania do zarządzania rozpoczęciem i zakończeniem transakcji oraz do izolowania tworzenia zapisów księgi głównej i VAT, zbierania korekt VAT oraz obliczania dodatkowych kwot walutowych.
- Duplikacja kodu została wyeliminowana.
- Wiele funkcji pomocniczych zostało przeniesionych do odpowiednich tabel zapisów księgi nabywców i dostawców.
- Użycie zmiennych globalnych zostało zminimalizowane, dzięki czemu każda procedura używa parametrów i enkapsuluje własną logikę aplikacji.
Powiązane informacje
Szczegóły projektowania: Struktura interfejsu księgowania
Szczegóły projektowania: Struktura mechanizmu księgowania
Design Details: General Journal Post Line (Dynamics NAV)
Znajdź bezpłatne moduły e-learningowe dla Business Central tutaj