Differences From Artifact [1622437e4a]:

To Artifact [ca671d9e89]:


153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168


















169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
            GROUP BY compta_comptes.id;', ['id' => $old_id]);

        $diff = 0;
        $journal = new Journal;

        while ($row = $statement->fetchArray(SQLITE3_ASSOC))
        {
            $solde = abs($row['solde']);
            $solde = round($solde, 2);

            $diff += $solde;

            if (empty($solde))
            {
                continue;
            }



















            // Chaque solde de compte est reporté dans le nouvel exercice
            $journal->add([
                'libelle'       =>  'Report à nouveau',
                'date'          =>  $date,
                'montant'       =>  abs($solde),
                'compte_debit'  =>  ($solde < 0 ? NULL : $row['compte']),
                'compte_credit' =>  ($solde > 0 ? NULL : $row['compte']),
                'remarques'     =>  'Report de solde créé automatiquement à la clôture de l\'exercice précédent',
            ]);
        }
        
        // FIXME utiliser $diff pour équilibrer

        $db->exec('END;');







|
<

<
|




>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>





|
|
|







153
154
155
156
157
158
159
160

161

162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
            GROUP BY compta_comptes.id;', ['id' => $old_id]);

        $diff = 0;
        $journal = new Journal;

        while ($row = $statement->fetchArray(SQLITE3_ASSOC))
        {
            $solde = $row['solde'];



            // Solde du compte à zéro : aucun report à faire
            if (empty($solde))
            {
                continue;
            }

            // ce qui est à l'actif est en débit sauf les valeurs négatives
            // ce qui est au passif est en crédit, sauf valeurs négatives
            // cf. ticket [16af9ccf92]
            if ($row['position'] & Compta_Comptes::ACTIF)
            {
                $compte_debit = $solde < 0 ? NULL : $row['compte'];
                $compte_credit = $solde > 0 ? NULL : $row['compte'];
            }
            else
            {
                $compte_debit = $solde > 0 ? NULL : $row['compte'];
                $compte_credit = $solde < 0 ? NULL : $row['compte'];
            }

            $solde = round(abs($solde), 2);

            $diff += $solde;

            // Chaque solde de compte est reporté dans le nouvel exercice
            $journal->add([
                'libelle'       =>  'Report à nouveau',
                'date'          =>  $date,
                'montant'       =>  $solde,
                'compte_debit'  =>  $compte_debit,
                'compte_credit' =>  $compte_credit,
                'remarques'     =>  'Report de solde créé automatiquement à la clôture de l\'exercice précédent',
            ]);
        }
        
        // FIXME utiliser $diff pour équilibrer

        $db->exec('END;');