1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
-
+
-
+
|
# Design de la compta à double entrée dans Garradin
En compta à double entrée on reflète l'idée que l'argent n'est jamais créé ou détruit mais simplement transféré d'un compte à l'autre. « Rien ne se crée, rien ne se perd, tout se transfère ! »
## Design original (2012-2018)
## Design original (2012-2019)
Le design de stockage et gestion de la compta à double entrée adopté au début de Garradin est comme suit :
* une table compta_journal stocke les écritures, chaque écriture est une ligne dans la table, avec un montant, le numéro du compte de débit et le numéro du compte de crédit
* le solde des comptes est calculé dynamiquement en SQL quand on en a besoin
* les bilans, compte de résultat, etc. sont calculés dynamiquement
* les montants sont stockés en nombre à virgule flottante (FLOAT)
Avantages de ce design :
* Simplicité du stockage des données, simplicité de l'entrée des écritures
Problèmes avec ce design :
* Il y a eu des bugs avec des erreurs d'arrondi
* Impossible de faire une écriture complexe qui créditerait/débiterait plusieurs comptes à la fois (mais avec toujours une égalité crédit/débit de l'écriture)
* Requêtes SQL très complexes (et parfois lentes) pour obtenir des infos
* Requête SQL trop lente pour le report à nouveau
## Nouveau design (2018+)
## Nouveau design (2020+)
### Fonctionnalités désirées :
* Portabilité des données depuis le design actuel
* Possibilité d'avoir plusieurs entrées (plusieurs débits/crédits sur plusieurs comptes) dans une écriture
* Amélioration des performances
* Simplification des requêtes de visualisation (amenant une amélioration des performances)
|