Présentation de la ligne de comptabilisation feuille comptabilité
Codeunit 12, Gen. Jnl.-Post Line, est le principal objet applicatif pour la comptabilisation dans la comptabilité générale et est le seul emplacement permettant d'insérer des écritures comptables, de TVA et de client et fournisseur. Cette codeunit est également utilisée pour toutes les opérations de lettrage, de contrepassation de lettrage et d'extourne.
Dans Microsoft Dynamics NAV 2013 R2, la codeunit a été repensée parce qu'elle était devenue très volumineuse, avec environ 7 600 lignes de code. L'architecture a été modifiée et la codeunit a été rendue plus simple et plus facile à maintenir. Cette documentation décrit les modifications et fournit les informations nécessaires pour la mise à niveau.
Ancienne architecture
L'ancienne architecture présentait les caractéristiques suivantes :
- Les variables globales étaient très utilisées, ce qui augmentait le risque d'erreurs cachées dues à l'utilisation de variables avec une portée incorrecte.
- Il y avait de nombreuses procédures longues (de plus de 100 lignes de code) qui présentaient également une complexité cyclomatique élevée (c'est-à-dire beaucoup d'instructions CASE, REPEAT, IF imbriquées), ce qui rendait le code très difficile à lire et à maintenir.
- Plusieurs procédures qui n'étaient utilisées que localement et qui n'étaient censées être utilisées que localement n'étaient pas marquées comme locales.
- La plupart des procédures n'avaient pas de paramètres et utilisaient des variables globales. Certaines utilisaient des paramètres et remplaçaient les variables globales par des variables locales.
- Les modèles de code pour la recherche des comptes du grand livre et la création des écritures du grand livre et de TVA n'étaient pas normalisés et variaient d'un endroit à l'autre. De plus, il y avait beaucoup de duplication de code et une symétrie rompue entre le code client et fournisseur.
- Une grande partie du code de la codeunit 12, environ 30 %, concernait les calculs d'escompte de règlement et de tolérance, bien que ces fonctionnalités ne soient pas nécessaires dans de nombreux pays ou régions.
- Comptabilisation, lettrage, contrepassation de lettrage, extourne, escompte de règlement et tolérance, et ajustement de taux de change étaient liés dans la codeunit 12 au moyen d'une longue liste de variables globales.
Nouvelle architecture
Dans Business Central, la codeunit 12 a bénéficié des améliorations suivantes :
- La codeunit 12 a été restructurée en procédures plus petites (toutes de moins de 100 lignes de code).
- Des modèles normalisés pour la recherche de comptes du grand livre ont été implémentés en utilisant des fonctions d'aide des tables de groupes de comptabilisation.
- Un cadre de moteur de comptabilisation a été implémenté pour gérer le début et la fin des transactions, et pour isoler la création des écritures comptables et de TVA, le recueil des ajustements de TVA et le calcul des montants en devise supplémentaire.
- La duplication de code a été éliminée.
- De nombreuses fonctions d'aide ont été transférées dans les tables d'écritures comptables client et fournisseur correspondantes.
- L'utilisation des variables globales a été réduite au minimum, de sorte que chaque procédure utilise des paramètres et encapsule sa propre logique applicative.
Informations connexes
Détails de conception : Structure de l'interface de comptabilisation
Détails de conception : Structure du moteur de comptabilisation
Détails de conception : Ligne de comptabilisation feuille comptabilité (Dynamics NAV)
Trouvez des modules d'apprentissage en ligne gratuits pour Business Central ici