16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
$exercice = $db->querySingle('SELECT id FROM compta_exercices WHERE cloture = 0 LIMIT 1;');
$query = 'SELECT
COALESCE((SELECT SUM(montant) FROM compta_journal WHERE compte_debit = :compte AND id_exercice = :exercice AND date < :date), 0)
- COALESCE((SELECT SUM(montant) FROM compta_journal WHERE compte_credit = :compte AND id_exercice = :exercice AND date < :date), 0)';
$solde_initial = $solde = $db->simpleQuerySingle($query, false, [
'compte' => $compte,
'date' => $debut,
'exercice' => $exercice
]);
$query = '
SELECT j.*, strftime(\'%s\', j.date) AS date,
(CASE WHEN j.compte_debit = :compte THEN j.montant ELSE -(j.montant) END) AS solde,
r.date AS date_rapprochement
FROM compta_journal AS j
LEFT JOIN compta_rapprochement AS r ON r.id_operation = j.id
WHERE (compte_debit = :compte OR compte_credit = :compte) AND id_exercice = :exercice
AND j.date >= :debut AND j.date <= :fin
ORDER BY date ASC;';
$result = $db->simpleStatementFetch($query, DB::ASSOC, [
'compte' => $compte,
'debut' => $debut,
'fin' => $fin,
'exercice' => $exercice
]);
foreach ($result as &$row)
|
|
|
|
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
$exercice = $db->querySingle('SELECT id FROM compta_exercices WHERE cloture = 0 LIMIT 1;');
$query = 'SELECT
COALESCE((SELECT SUM(montant) FROM compta_journal WHERE compte_debit = :compte AND id_exercice = :exercice AND date < :date), 0)
- COALESCE((SELECT SUM(montant) FROM compta_journal WHERE compte_credit = :compte AND id_exercice = :exercice AND date < :date), 0)';
$solde_initial = $solde = $db->firstColumn($query, [
'compte' => $compte,
'date' => $debut,
'exercice' => $exercice
]);
$query = '
SELECT j.*, strftime(\'%s\', j.date) AS date,
(CASE WHEN j.compte_debit = :compte THEN j.montant ELSE -(j.montant) END) AS solde,
r.date AS date_rapprochement
FROM compta_journal AS j
LEFT JOIN compta_rapprochement AS r ON r.id_operation = j.id
WHERE (compte_debit = :compte OR compte_credit = :compte) AND id_exercice = :exercice
AND j.date >= :debut AND j.date <= :fin
ORDER BY date ASC;';
$result = $db->get($query, [
'compte' => $compte,
'debut' => $debut,
'fin' => $fin,
'exercice' => $exercice
]);
foreach ($result as &$row)
|