Ajout du support des écritures ventilées.
[garradin.git] / include / data / schema.sql
index 2cc846f..0c2bfba 100644 (file)
@@ -247,30 +247,34 @@ CREATE TABLE compta_journal
     remarques TEXT,
     numero_piece TEXT, -- N° de pièce comptable
 
-    montant REAL,
-
     date TEXT DEFAULT CURRENT_DATE,
     moyen_paiement TEXT DEFAULT NULL,
     numero_cheque TEXT DEFAULT NULL,
 
-    compte_debit TEXT, -- N° du compte dans le plan
-    compte_credit TEXT, -- N° du compte dans le plan
-
     id_exercice INTEGER NULL DEFAULT NULL, -- En cas de compta simple, l'exercice est permanent (NULL)
     id_auteur INTEGER NULL,
     id_categorie INTEGER NULL, -- Numéro de catégorie (en mode simple)
 
     FOREIGN KEY(moyen_paiement) REFERENCES compta_moyens_paiement(code),
-    FOREIGN KEY(compte_debit) REFERENCES compta_comptes(id),
-    FOREIGN KEY(compte_credit) REFERENCES compta_comptes(id),
     FOREIGN KEY(id_exercice) REFERENCES compta_exercices(id),
     FOREIGN KEY(id_auteur) REFERENCES membres(id),
     FOREIGN KEY(id_categorie) REFERENCES compta_categories(id)
 );
 
+CREATE TABLE compta_flux
+(
+    id_journal INTEGER,
+
+    compte TEXT, -- N° du compte dans le plan
+    montant REAL,
+
+    FOREIGN KEY(id_journal) REFERENCES compta_journal(id) ON DELETE CASCADE,
+    FOREIGN KEY(compte) REFERENCES compta_comptes(id) ON DELETE CASCADE
+);
+
 CREATE INDEX compta_operations_exercice ON compta_journal (id_exercice);
 CREATE INDEX compta_operations_date ON compta_journal (date);
-CREATE INDEX compta_operations_comptes ON compta_journal (compte_debit, compte_credit);
+--CREATE INDEX compta_operations_comptes ON compta_journal (compte_debit, compte_credit);
 CREATE INDEX compta_operations_auteur ON compta_journal (id_auteur);
 
 CREATE TABLE compta_moyens_paiement
@@ -313,4 +317,4 @@ CREATE TABLE plugins
     version TEXT NOT NULL,
     menu INTEGER NOT NULL DEFAULT 0,
     config TEXT
-);
\ No newline at end of file
+);