From aae9580ee0a1d2ab59be8a637bb18a053630a382 Mon Sep 17 00:00:00 2001 From: Jean-Christophe Engel Date: Wed, 1 Apr 2026 11:03:11 +0200 Subject: [PATCH 1/8] =?UTF-8?q?V=C3=A9rification=20existence=20table=20mod?= =?UTF-8?q?ule?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- _immobilisations.html | 13 +++++++++++-- _immobilisations_autres.html | 27 ++++++++++++++++++++------- 2 files changed, 31 insertions(+), 9 deletions(-) diff --git a/_immobilisations.html b/_immobilisations.html index f4843cb..d287632 100644 --- a/_immobilisations.html +++ b/_immobilisations.html @@ -29,6 +29,14 @@ + {{* vérifier l'existence de la table du module *}} + {{#load limit="1"}} + {{:assign table_presente=true}} + {{else}} + {{:assign table_presente=false}} + {{/load}} + + {{if $table_presente}} {{* lister les immobilisations *}} {{:assign account_condition="("}} {{#foreach from=$module.config.prefixes item="code"}} @@ -199,8 +207,8 @@ label="Paramètres" href="add_infos.html?immo_line_id=%s&type_immo=%s"|args:$immo_line_id:$type_immo shape="settings" - target="_dialog" }} +{{* target="_dialog"*}} {{/if}} {{:linkbutton label="Amortissements" @@ -242,8 +250,9 @@ {{/if}} +{{/if}} - {{if $nb_immo == 0}} + {{if $nb_immo == 0 || ! $table_presente}}

Aucune immobilisation

{{/if}} diff --git a/_immobilisations_autres.html b/_immobilisations_autres.html index 69f2603..1f08e9b 100644 --- a/_immobilisations_autres.html +++ b/_immobilisations_autres.html @@ -48,6 +48,19 @@ + {{* vérifier l'existence de la table du module *}} + {{#load limit="1"}} + {{:assign columns="$$.duration as duration, $$.status as status,"}} + {{:assign table_join="LEFT JOIN !table AS info ON $$.line = line.id"}} + {{:assign doc_condition1="($$.status == 'ignored')"}} + {{:assign doc_condition2="$$.status IS NULL"}} + {{else}} + {{:assign columns=""}} + {{:assign table_join=""}} + {{:assign doc_condition1="0"}} + {{:assign doc_condition2="1"}} + {{/load}} + {{* lister les immobilisations *}} {{:assign account_condition="("}} {{#foreach from=$module.config.prefixes item="code"}} @@ -55,7 +68,6 @@ {{:assign account_condition=$account_condition|cat:" account.code LIKE "|cat:$code|cat:" OR "}} {{/foreach}} {{:assign account_condition=$account_condition|cat:"0)"}} - {{:assign doc_condition="($$.status == 'ignored')" }} {{if $unhide == null}} {{:assign filter_condition="NOT ("}} @@ -67,9 +79,9 @@ {{else}} {{:assign filter_condition="1"}} {{/if}} - {{:assign filter_condition="($$.status IS NULL AND NOT (trans.status & 16) AND "|cat:$filter_condition|cat:")"}} + {{:assign filter_condition="("|cat:$doc_condition2|cat:" AND NOT (trans.status & 16) AND "|cat:$filter_condition|cat:")"}} - {{:assign condition=$account_condition|cat:" AND debit > 0 AND ("|cat:$filter_condition|cat:" OR "|cat:$doc_condition|cat:")"}} + {{:assign condition=$account_condition|cat:" AND debit > 0 AND ("|cat:$filter_condition|cat:" OR "|cat:$doc_condition1|cat:")"}} {{:assign nb_immo=0}} {{#select @@ -82,16 +94,17 @@ account.id as account_id, account.code as account_code, account.label as account_label, - trans.id_year as trans_id_year, - $$.duration as duration, - $$.status as status + !columns + trans.id_year as trans_id_year FROM acc_transactions AS trans INNER JOIN acc_transactions_lines AS line ON line.id_transaction = trans.id INNER JOIN acc_accounts AS account ON line.id_account = account.id INNER JOIN acc_years AS years ON trans.id_year = years.id - LEFT JOIN !table AS info ON $$.line = line.id + !table_join WHERE !condition ORDER BY trans.date DESC; + !columns=$columns + !table_join=$table_join !table=$module.table !condition=$condition }} From 578450da42954e43098c82e38c35887f301b7ff4 Mon Sep 17 00:00:00 2001 From: Jean-Christophe Engel Date: Mon, 20 Apr 2026 11:18:44 +0200 Subject: [PATCH 2/8] Corrections syntaxiques href --- _archives.html | 4 ++-- _immobilisations.html | 4 ++-- _immobilisations_autres.html | 4 ++-- _unfinished.html | 4 ++-- add_infos.html | 2 +- amortization.html | 6 +++--- ignore.html | 2 +- other_amortizations.html | 4 ++-- 8 files changed, 15 insertions(+), 15 deletions(-) diff --git a/_archives.html b/_archives.html index 56f6b14..9f06778 100644 --- a/_archives.html +++ b/_archives.html @@ -149,12 +149,12 @@ {{/select}} - #{{$trans_id}} + #{{$trans_id}} {{$trans_date|date_short}} {{$exit_date|date_short}} {{$trans_label}}{{if $line_label != null && $line_label != $trans_label}} — {{$line_label}}{{/if}} {{"%f"|math:$montant_immo|money_html:false|raw}} - {{$account_code}} + {{$account_code}} {{$account_label}} {{$project_label}} diff --git a/_immobilisations.html b/_immobilisations.html index d287632..9c4b6e6 100644 --- a/_immobilisations.html +++ b/_immobilisations.html @@ -193,14 +193,14 @@ {{:assign var="montant" from="sommes_immo.%s"|args:$account_code}} {{:assign var="sommes_immo.%s"|args:$account_code value="%d+%d"|math:$montant:$montant_immo}} - #{{$immo_trans_id}} + #{{$immo_trans_id}} {{$trans_date|date_short}} {{$trans_label}}{{if $line_label != null && $line_label != $trans_label}} — {{$line_label}}{{/if}} {{$montant_immo|money_html:false|raw}} {{if $duration != null}}{{$duration}}{{/if}} {{$amort_amount|money_html:false|raw}} {{"%d-%d"|math:$montant_immo:$amort_amount|money_html:false|raw}} - {{$account_code}} + {{$account_code}} {{if ! $exist_amort || $status == "unknown"}} {{:linkbutton diff --git a/_immobilisations_autres.html b/_immobilisations_autres.html index 1f08e9b..5327a7b 100644 --- a/_immobilisations_autres.html +++ b/_immobilisations_autres.html @@ -172,11 +172,11 @@ {{:assign nb_immo="%d+1"|math:$nb_immo}} - #{{$immo_trans_id}} + #{{$immo_trans_id}} {{$trans_date|date_short}} {{$trans_label}}{{if $line_label != null && $line_label != $trans_label}} — {{$line_label}}{{/if}} {{"%f"|math:$debit|money_html:false|raw}} - {{$account_code}} + {{$account_code}} {{$account_label}} {{:linkbutton diff --git a/_unfinished.html b/_unfinished.html index a222475..37ab4c9 100644 --- a/_unfinished.html +++ b/_unfinished.html @@ -154,11 +154,11 @@ {{:input type="checkbox" name="selected[]" value=$trans_id}} - #{{$trans_id}} + #{{$trans_id}} {{$trans_date|date_short}} {{$trans_label}} {{"%f"|math:$debit|money_html:false|raw}} - {{$account_code}} + {{$account_code}} {{$account_label}} {{:linkbutton diff --git a/add_infos.html b/add_infos.html index 1ee848b..718f8a1 100644 --- a/add_infos.html +++ b/add_infos.html @@ -172,7 +172,7 @@
Immobilisation
-
#{{$ligne_immo.immo_trans_id}} {{$ligne_immo.label}}{{if $ligne_immo.line_label != null && $ligne_immo.line_label != $ligne_immo.label}} — {{$ligne_immo.line_label}}{{/if}}
+
#{{$ligne_immo.immo_trans_id}} {{$ligne_immo.label}}{{if $ligne_immo.line_label != null && $ligne_immo.line_label != $ligne_immo.label}} — {{$ligne_immo.line_label}}{{/if}}
Montant
{{"%f"|math:$ligne_immo.montant|money_currency_html:false|raw}}
Date de l'écriture d'immobilisation
diff --git a/amortization.html b/amortization.html index cf162a2..12df9fa 100644 --- a/amortization.html +++ b/amortization.html @@ -238,7 +238,7 @@
Immobilisation
-
#{{$ligne_immo.immo_trans_id}} {{$ligne_immo.label}}{{if $ligne_immo.line_label != null && $ligne_immo.line_label != $ligne_immo.label}} — {{$ligne_immo.line_label}}{{/if}}
+
#{{$ligne_immo.immo_trans_id}} {{$ligne_immo.label}}{{if $ligne_immo.line_label != null && $ligne_immo.line_label != $ligne_immo.label}} — {{$ligne_immo.line_label}}{{/if}}
Montant
{{"%f"|math:$ligne_immo.montant|money_currency_html:false|raw}}
Début d'amortissement
@@ -283,7 +283,7 @@ {{:assign compte_url="%s/acc/accounts/journal.php?id=%s&year=%s"|args:$admin_url:$line.account_id:$line.amort_year}} {{:assign solde="%f-%d"|math:$solde:$line.amort_amount}} - #{{$line.amort_trans_id}} + #{{$line.amort_trans_id}} {{$line.amort_date|date_short}} {{"%f"|math:$line.amort_amount|money_html:false|raw}} {{"%f"|math:$solde|money_html:false|raw}} @@ -293,7 +293,7 @@ — {{$line.amort_line_label}} {{/if}} - {{$line.account_code}} + {{$line.account_code}} {{$line.account_label}} {{:linkbutton label="Détacher" href="detach_amort.html?amort_line_id=%d&immo_line_id=%d"|args:$line.amort_line_id:$ligne_immo.immo_line_id shape="minus"}} diff --git a/ignore.html b/ignore.html index e396a77..96254fd 100644 --- a/ignore.html +++ b/ignore.html @@ -62,7 +62,7 @@
Écriture
-
#{{$ligne_immo.trans_id}} {{$ligne_immo.label}}
+
#{{$ligne_immo.trans_id}} {{$ligne_immo.label}}
Montant
{{"%f"|math:$ligne_immo.amount|money_currency_html:false|raw}}
diff --git a/other_amortizations.html b/other_amortizations.html index 91b379a..632c37e 100644 --- a/other_amortizations.html +++ b/other_amortizations.html @@ -140,13 +140,13 @@ {{:assign trans_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$line.amort_trans_id}} {{:assign compte_url="%s/acc/accounts/journal.php?id=%s&year=%s"|args:$admin_url:$line.account_id:$line.amort_year}} - #{{$line.amort_trans_id}} + #{{$line.amort_trans_id}} {{$line.trans_date|date_short}} {{"%f"|math:$line.amort_amount|money_html:false|raw}} {{$line.trans_label}} {{if $line.line_label != null && $line.line_label != $line.trans_label}} - {{$line.line_label}}{{/if}} - {{$line.account_code}} + {{$line.account_code}} {{$line.account_label}} {{:linkbutton label="Attacher" href="attach_amort.html?amort_line_id=%d&immo_line_id=%d"|args:$line.amort_line_id:$_GET.immo_line_id shape="plus"}} From f34af9b3fdc24e713221bfb1f7613025e4923533 Mon Sep 17 00:00:00 2001 From: Jean-Christophe Engel Date: Thu, 23 Apr 2026 11:32:29 +0200 Subject: [PATCH 3/8] Correction erreur sortie bilan --- balance_sheet_exit.html | 6 ++++-- write_exit.html | 5 ++++- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/balance_sheet_exit.html b/balance_sheet_exit.html index e7d9ba7..c9a0c0d 100644 --- a/balance_sheet_exit.html +++ b/balance_sheet_exit.html @@ -77,9 +77,11 @@ WHERE l_immo.id = :line_id AND account.code LIKE '28%' ; :line_id = $_GET.immo_line_id|intval - assign="amort_line" + assign="amort_lines." }} +{{/select}} +{{#foreach from=$amort_lines item="amort_line"}} {{#load type="link" where="$$.immo_line_id = :immo_line_id AND $$.amort_trans_id = :amort_trans_id" assign="line" @@ -113,7 +115,7 @@ {{:assign last_amort_date=$amort_line.date}} {{/if}} {{/load}} -{{/select}} +{{/foreach}} {{if $total_amort == 0}} {{if $info_immo.status == "amortized"}} diff --git a/write_exit.html b/write_exit.html index a4de1cd..252a462 100644 --- a/write_exit.html +++ b/write_exit.html @@ -3,7 +3,7 @@ {{* Enregistrer les écritures de sortie du bilan paramètres : - - immo_line_id : numéro de ligne de l'écriture d'immobilisation + - immo_line_id : numéro de ligne de l'écriture d'immobilisation - amort_amount : montant des amortissements - year : exercice de la date de sortie de l'immobilisation - date_mes : date de mise en service de l'immobilisation @@ -30,6 +30,9 @@ }} {{/select}} +{{#load type="immo" assign="info_immo" where="$$.line = :line_id" :line_id=$_GET.immo_line_id|intval}} +{{/load}} + {{* chercher des écritures liées à l'immo courante au crédit du même compte et déduire leur montant de celui de l'immo *}} From f3ce9858ef5bb1e8a145369c1a0e3d95a92173ab Mon Sep 17 00:00:00 2001 From: Jean-Christophe Engel Date: Sat, 9 May 2026 10:51:45 +0200 Subject: [PATCH 4/8] Ajout affichage montant avoir --- add_infos.html | 11 ++++++++++- amortization.html | 20 +++++++++++++------- 2 files changed, 23 insertions(+), 8 deletions(-) diff --git a/add_infos.html b/add_infos.html index 718f8a1..65eddda 100644 --- a/add_infos.html +++ b/add_infos.html @@ -27,11 +27,13 @@ {{/select}} {{* chercher les liaisons de l'écriture d'immobilisation *}} +{{:assign total_credits=0}} {{#select CASE links.id_related = :immo_trans_id WHEN true THEN links.id_transaction WHEN false THEN links.id_related END as linked_id, + line.credit, acc.code FROM acc_transactions_links as links INNER JOIN acc_transactions_lines AS line on line.id_transaction = linked_id @@ -41,6 +43,7 @@ ; :immo_trans_id = $ligne_immo.immo_trans_id }} + {{:assign total_credits="%d+%d"|math:$total_credits:$credit}} {{:assign var="linked_transactions.%d."|args:$code value=$linked_id}} {{/select}} {{:assign var="immo_transactions" from="linked_transactions.%d"|args:$ligne_immo.code}} @@ -173,8 +176,14 @@
Immobilisation
#{{$ligne_immo.immo_trans_id}} {{$ligne_immo.label}}{{if $ligne_immo.line_label != null && $ligne_immo.line_label != $ligne_immo.label}} — {{$ligne_immo.line_label}}{{/if}}
-
Montant
+
Montant de l'immobilisation
{{"%f"|math:$ligne_immo.montant|money_currency_html:false|raw}}
+ {{if $total_credits > 0}} +
Montant des avoirs
+
{{"%f"|math:$total_credits|money_currency_html:false|raw}}
+
Montant à amortir
+
{{"%d-%d"|math:$ligne_immo.montant:$total_credits|money_currency_html:false|raw}}
+ {{/if}}
Date de l'écriture d'immobilisation
{{$ligne_immo.date_achat|date_short}}
diff --git a/amortization.html b/amortization.html index 12df9fa..3875a05 100644 --- a/amortization.html +++ b/amortization.html @@ -59,8 +59,8 @@ }} {{:assign total_credits="%d+%d"|math:$total_credits:$credit}} {{/select}} -{{:assign var="ligne_immo.montant" value="%d-%d"|math:$ligne_immo.montant:$total_credits}} -{{:assign solde=$ligne_immo.montant}} +{{:assign montant_amortissable="%d-%d"|math:$ligne_immo.montant:$total_credits}} +{{:assign solde=$montant_amortissable}} {{* lister les lignes des écritures d'amortissement liées à l'immobilisation *}} {{#select @@ -105,10 +105,10 @@ {{/select}} {{if $status == "amortized"}} - {{:assign amort_amount=$ligne_immo.montant}} + {{:assign amort_amount=$montant_amortissable}} {{:assign valeur_residuelle=0}} {{else}} - {{:assign valeur_residuelle=$ligne_immo.montant}} + {{:assign valeur_residuelle=$montant_amortissable}} {{#foreach from=$linked_amort}} {{:assign valeur_residuelle="%d-%d"|math:$valeur_residuelle:$amort_amount}} {{/foreach}} @@ -239,8 +239,14 @@
Immobilisation
#{{$ligne_immo.immo_trans_id}} {{$ligne_immo.label}}{{if $ligne_immo.line_label != null && $ligne_immo.line_label != $ligne_immo.label}} — {{$ligne_immo.line_label}}{{/if}}
-
Montant
+
Montant de l'immobilisation
{{"%f"|math:$ligne_immo.montant|money_currency_html:false|raw}}
+ {{if $total_credits > 0}} +
Montant des avoirs
+
{{"%f"|math:$total_credits|money_currency_html:false|raw}}
+
Montant à amortir
+
{{"%f"|math:$montant_amortissable|money_currency_html:false|raw}}
+ {{/if}}
Début d'amortissement
{{$date_debut|date_short}}
{{if $duree != null}} @@ -249,13 +255,13 @@ {{/if}} {{if $valeur_residuelle > 0}}
Montant des amortissements
-
{{"%d-%d"|math:$ligne_immo.montant:$valeur_residuelle|money_currency_html:false|raw}}
+
{{"%d-%d"|math:$montant_amortissable:$valeur_residuelle|money_currency_html:false|raw}}
Valeur nette comptable
{{$valeur_residuelle|money_currency_html:false|raw}}
{{/if}} {{if $duree != null && $valeur_residuelle > 0}}
Annuité estimée
-
{{"min(%d, %f/%d)"|math:$valeur_residuelle:$ligne_immo.montant:$duree|money_currency_html:false|raw}}
+
{{"min(%d, %f/%d)"|math:$valeur_residuelle:$montant_amortissable:$duree|money_currency_html:false|raw}}
{{/if}}
From a89ec26574d3fa4b33e0dacd56e1521ec3dae930 Mon Sep 17 00:00:00 2001 From: Jean-Christophe Engel Date: Sat, 9 May 2026 13:20:40 +0200 Subject: [PATCH 5/8] Version initiale aide --- aide.md | 145 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 145 insertions(+) create mode 100644 aide.md diff --git a/aide.md b/aide.md new file mode 100644 index 0000000..9f020ad --- /dev/null +++ b/aide.md @@ -0,0 +1,145 @@ +# Module de gestion d'immobilisations et amortissements pour Paheko + +## Préambule +* Ce module recense les écritures d'immobilisation et d'amortissement + présentes dans la comptabilité et offre la possibilité de saisir de + nouvelles écritures d'immobilisation, de calculer et d'enregistrer + les écritures d'amortissement. +* Les écritures d'amortissement **liées à une écriture + d'immobilisation** lui sont automatiquement associées par le module + ; par contre, les écritures d'amortissement qui ne sont **pas liées + à une écriture d'immobilisation** sont détectées mais doivent être + associées manuellement à leur immobilisation. + +### Fonctionnalités + * créer une immobilisation + * créer des écritures d'amortissement pour une immobilisation + * associer une écriture d'amortissement « orpheline » à une écriture + d'immobilisation + * sortir une immobilisation du bilan en fin de de vie ou par cession + * réunir des écritures d'immobilisation en cours de constitution + pour créer une immobilisation amortissable + * filtrer les écritures d'immobilisation et d'amortissement par + libellé + * classer manuellement une écriture d'immobilisation (utile pour les + immobilisations créées avant la mise en service du module) + +## Comment faire pour ... + +### Enregistrer une écriture d'immobilisation +Il s'agit de créer une nouvelle écriture d'immobilisation ; pour cela, +cliquer le bouton « Ajouter une immobilisation » qui est présent sur +la plupart des onglets ; dans la fenêtre de saisie qui s'affiche il +suffit de saisir les données de l'immobilisation puis de cliquer +« Ajouter » : + * Exercice : sélectionner l'exercice dans lequel enregistrer l'écriture + * Date d'acquisition : doit être située dans l'exercice sélectionné + * Libellé + * Montant + * Compte de décaissement + * Compte d'immobilisation + * Projet + * case Amortir : laisser cochée pour amortir l'immobilisation, + dé-cocher pour ne pas l'amortir + * Durée d'amortissement en années : à saisir uniquement si + l'immobilisation doit être amortie + * Date de mise en service : c'est la date de première utilisation ; + à renseigner uniquement si différente de la date d'acquisition ; + doit être postérieure ou égale à la date d'acquisition + +### Enregistrer une écriture d'amortissement + * Il n'est possible d'enregistrer une nouvelle écriture + d'amortissement pour une immobilisation que si la date + d'acquisition et la durée d'immobilisation ont été préalablement + définies. + * À partir de l'onglet « Amortissables », cliquer le bouton + « Amortissements » en face de l'immobilisation choisie ; dans la + page suivante, cliquer le bouton « Enregistrer un amortissement » + ; dans la fenêtre de saisie qui s'affiche, il faut renseigner les + informations suivantes : + * Exercice : sélectionner l'exercice dans lequel enregistrer l'écriture + * Date de l'écriture : doit être située dans l'exercice + sélectionné et postérieure à la date de mise en service + * Libellé + * Montant : caclculé par le module ; il peut être modifié si + nécessaire, par exemple pour l'arrondir à un nombre entier + * Compte de débit : par défaut c'est le compte *6811 : Dotation + aux amortissements des immobilisations* + * Compte d'amortissement : par défaut c'est le compte qui + correspond au compte de l'immobilisation + +### Attacher une écriture d'amortissement à une immobilisation +* Il se peut qu'il existe des écritures d'amortissement qui ont été + saisies à l'extérieur du module et qui ne sont pas liées à une + écriture d'immobilisation : le module ne peut donc pas les associer + automatiquement à leur écriture d'immobilisation. +* Quand on affiche la liste des amortissements d'une immobilisation en + cliquant le bouton « Amortissements », on peut voir la liste des + écritures d'amortissements qui ne sont associées à aucune + immobilisation en cliquant le bouton « Rattacher une écriture » ; on + peut alors choisir d'en attacher certaines à l'immobilisation + courante. + +### Sortir une immobilisation du bilan + +### Incorporer une écriture d'immobilisation existante dans le module + +### Transformer des immobilisations en cours en immobilisation amortissable + +### Marquer « à ignorer » des écritures + +### Ignorer des écritures selon leur libellé + + + +## Description de l'interface + +Les écritures d'immobilisation sont réparties en plusieurs onglets. + +### Amortissables +Cet onglet liste les immobilisations en cours d'amortissement. + +##### bouton Paramètres + +Ce bouton affiche une page qui permet de modifier les caractéristiques +d'une immobilisation ; + +On peut décider de son classement : + * Amortir ; c'est le choix par défaut pour les immobilisations de + cet onglet + * Amortissement terminé : cette immobilisation sera alors classée + parmi les immobilisations amorties ; c'est le choix par défaut + pour les immobilisations de l'onglet Amorties + * Ignorer l'écriture : cette écriture n'apparaîtra plus dans la + liste des immobilisations + +Pour les immobilisations à amortir, on peut préciser : + * obligatoirement la durée d'amortissement en années + * optionnellement la date de mise en service si elle est différente + de la date d'acquisition + +###### bouton Amortissements + +Ce bouton affiche la liste des amortissements déjà réalisés pour une +immobilisation ; à partir de cette page, il est possible d'enregistrer +un nouvel amortissement ou bien d'attacher une écriture +d'amortissement à l'immobilisation + +### Amorties +Cet onglet liste les immobilisations dont l'amortissement est terminé +mais toujours en service dans l'association. + +### Sorties du bilan +Cette page liste les immobilisations sorties du bilan, donc qui ne sont +plus en service dans l'association, soit parce qu'elles sont hors +d'usage, soit parce qu'elles ont été cédées. + +### En cours +Cette page liste les immobilisations en cours de constitution, donc +non amortissables ; à terme, elles sont destinées à être regroupées +pour être transformées en immobilisation amortissable. + +### Autres +Cette page liste les écritures d'immobilisation pas (encore) prises en +charge par le module et sans écriture d'amortissement associée. + From 82d42352e61cb555ad9ae98327d90fd0a8e3f279 Mon Sep 17 00:00:00 2001 From: Jean-Christophe Engel Date: Mon, 11 May 2026 09:07:13 +0200 Subject: [PATCH 6/8] =?UTF-8?q?Ajout=20Incorporer=20une=20=C3=A9criture=20?= =?UTF-8?q?d'immobilisation=20et=20modif=20Attacher=20une=20=C3=A9criture?= =?UTF-8?q?=20d'amortissement?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- aide.md | 78 ++++++++++++++++++++++++++++++++++++++++++--------------- 1 file changed, 58 insertions(+), 20 deletions(-) diff --git a/aide.md b/aide.md index 9f020ad..90849fa 100644 --- a/aide.md +++ b/aide.md @@ -14,7 +14,7 @@ ### Fonctionnalités * créer une immobilisation * créer des écritures d'amortissement pour une immobilisation - * associer une écriture d'amortissement « orpheline » à une écriture + * associer une écriture d'amortissement *orpheline* à une écriture d'immobilisation * sortir une immobilisation du bilan en fin de de vie ou par cession * réunir des écritures d'immobilisation en cours de constitution @@ -26,12 +26,63 @@ ## Comment faire pour ... +### Incorporer une écriture d'immobilisation existante dans le module +Si on a créé des immobilisations et éventuellement des amortissements +avec Paheko *avant* la mise en service du module *Amortissements*, +il est possible de les prendre en charge avec le module. Les +immobilisations concernées sont regroupées dans l'onglet Autres. + +- cliquer le bouton *Paramètres* en face de l'immobilisation à prendre + en charge +- cocher *Immobilisation à amortir* pour spécifier qu'on veut amortir + l'immobilisation ; plusieurs champs d'informations s'affichennt : + - Durée d'amortissement : renseigner la durée (obligatoire) + - Écritures liées au crédit du compte d'immobilisation : lorsqu'on + acquiert une immobilisation, il se peut que par la suite on + obtienne une ristourne ou un avoir ; cet avoir est enregistré + dans Paheko par une écriture dont le montant est au crédit du + compte d'immobilisation ; le module offre la possibilité + d'associer cette écriture d'avoir à l'écriture + d'immobilisation. En effet, le montant amortissable est égal au + montant d'acquisition de l'immobilisation moins la somme des + avoirs. Pour cela, cliquer le bouton *Ajouter* puis sélectionner + une écriture : cette écriture sera associée à l'écriture + d'immobilisation et son montant déduit du montant de + l'immobilisation pour donner le montant à amortir + - Date de mise en service : c'est la date à laquelle + l'immobilisation est en état de fonctionner, qui peut être + postérieure à la date d'acquisition ; c'est cette date qui est + prise en compte dans le calcul des amortissements ; si elle + coïncide avec la date d'acquisition, inutile de la renseigner. +- L'immobilisation apparait ensuite dans l'onglet *Amortissables* ; on + peut vérifier et éventuellement modifier ses paramètres grâce au + bouton Paramètres + +### Attacher une écriture d'amortissement à une immobilisation +Si des écritures d'amortissement ont été saisies avec Paheko *avant* +la mise en service du module *Amortissements*, on peut les associer à +leur immobilisation : + +- cliquer le bouton *Amortissements* en face de l'immobilisation concernée ; si la mention + +> « Il existe des écritures d'amortissement qui ne sont pas rattachées à une immobilisation ! +> Utilisez le bouton « Rattacher une écriture » pour les afficher ; vous pourrez choisir d'en attacher certaines à cette immobilisation. » + +est présente, c'est qu'il existe des écritures d'amortissement saisies avec Paheko *avant* +la mise en service du module. + +- cliquer le bouton *Rattacher une écriture* pour en afficher la liste +- le cas échéant, cliquer *Attacher* en face de l'écriture à rattacher + +De retour sur la page des amortissements, on constate la présence de l'écriture d'amortissement qu'on vient d'attacher ; on peut répéter le processus plusieurs fois si nécessaire. On peut aussi détacher une écriture si on s'est trompé. + + ### Enregistrer une écriture d'immobilisation Il s'agit de créer une nouvelle écriture d'immobilisation ; pour cela, -cliquer le bouton « Ajouter une immobilisation » qui est présent sur +cliquer le bouton *Ajouter une immobilisation* qui est présent sur la plupart des onglets ; dans la fenêtre de saisie qui s'affiche il suffit de saisir les données de l'immobilisation puis de cliquer -« Ajouter » : +*Ajouter* : * Exercice : sélectionner l'exercice dans lequel enregistrer l'écriture * Date d'acquisition : doit être située dans l'exercice sélectionné * Libellé @@ -52,9 +103,9 @@ suffit de saisir les données de l'immobilisation puis de cliquer d'amortissement pour une immobilisation que si la date d'acquisition et la durée d'immobilisation ont été préalablement définies. - * À partir de l'onglet « Amortissables », cliquer le bouton - « Amortissements » en face de l'immobilisation choisie ; dans la - page suivante, cliquer le bouton « Enregistrer un amortissement » + * À partir de l'onglet *Amortissables*, cliquer le bouton + *Amortissements* en face de l'immobilisation choisie ; dans la + page suivante, cliquer le bouton *Enregistrer un amortissement* ; dans la fenêtre de saisie qui s'affiche, il faut renseigner les informations suivantes : * Exercice : sélectionner l'exercice dans lequel enregistrer l'écriture @@ -68,25 +119,12 @@ suffit de saisir les données de l'immobilisation puis de cliquer * Compte d'amortissement : par défaut c'est le compte qui correspond au compte de l'immobilisation -### Attacher une écriture d'amortissement à une immobilisation -* Il se peut qu'il existe des écritures d'amortissement qui ont été - saisies à l'extérieur du module et qui ne sont pas liées à une - écriture d'immobilisation : le module ne peut donc pas les associer - automatiquement à leur écriture d'immobilisation. -* Quand on affiche la liste des amortissements d'une immobilisation en - cliquant le bouton « Amortissements », on peut voir la liste des - écritures d'amortissements qui ne sont associées à aucune - immobilisation en cliquant le bouton « Rattacher une écriture » ; on - peut alors choisir d'en attacher certaines à l'immobilisation - courante. ### Sortir une immobilisation du bilan -### Incorporer une écriture d'immobilisation existante dans le module - ### Transformer des immobilisations en cours en immobilisation amortissable -### Marquer « à ignorer » des écritures +### Marquer *à ignorer* des écritures ### Ignorer des écritures selon leur libellé From 243441f4fa9d5c479bee93dd3d05a8ca604c2e14 Mon Sep 17 00:00:00 2001 From: Jean-Christophe Engel Date: Tue, 12 May 2026 17:21:15 +0200 Subject: [PATCH 7/8] =?UTF-8?q?Am=C3=A9lioration=20pr=C3=A9sentation=20et?= =?UTF-8?q?=20correction=20erreur=20libell=C3=A9=20nouvel=20amortissement?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- amortization.html | 16 ++++++++-------- save_amort.html | 3 +-- 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/amortization.html b/amortization.html index 3875a05..747ff8f 100644 --- a/amortization.html +++ b/amortization.html @@ -239,20 +239,20 @@
Immobilisation
#{{$ligne_immo.immo_trans_id}} {{$ligne_immo.label}}{{if $ligne_immo.line_label != null && $ligne_immo.line_label != $ligne_immo.label}} — {{$ligne_immo.line_label}}{{/if}}
-
Montant de l'immobilisation
-
{{"%f"|math:$ligne_immo.montant|money_currency_html:false|raw}}
- {{if $total_credits > 0}} -
Montant des avoirs
-
{{"%f"|math:$total_credits|money_currency_html:false|raw}}
-
Montant à amortir
-
{{"%f"|math:$montant_amortissable|money_currency_html:false|raw}}
- {{/if}}
Début d'amortissement
{{$date_debut|date_short}}
{{if $duree != null}}
Durée
{{$duree}} ans
{{/if}} +
Montant de l'immobilisation
+
{{"%f"|math:$ligne_immo.montant|money_currency_html:false|raw}}
+ {{if $total_credits > 0}} +
Montant des avoirs
+
{{"%f"|math:$total_credits|money_currency_html:false|raw}}
+
Montant à amortir
+
{{"%f"|math:$montant_amortissable|money_currency_html:false|raw}}
+ {{/if}} {{if $valeur_residuelle > 0}}
Montant des amortissements
{{"%d-%d"|math:$montant_amortissable:$valeur_residuelle|money_currency_html:false|raw}}
diff --git a/save_amort.html b/save_amort.html index 4aa8e64..3be761c 100644 --- a/save_amort.html +++ b/save_amort.html @@ -111,7 +111,6 @@ {{/load}} {{/select}} - {{:assign total_amort=0}} {{:assign valeur_residuelle=$ligne_immo.montant}} {{#foreach from=$linked_amort}} @@ -120,7 +119,7 @@ {{:assign date_debut=$amort_date}} {{:assign code_amort=$account_code}} {{:assign amort_account_label=$account_label}} - {{:assign amort_label=$amort_label}} + {{:assign amort_label=$trans_label}} {{/foreach}} {{if $valeur_residuelle == 0}} From 8c9893f9e4bbf993a4c15c2034a924744fd09a59 Mon Sep 17 00:00:00 2001 From: Jean-Christophe Engel Date: Wed, 13 May 2026 09:16:17 +0200 Subject: [PATCH 8/8] =?UTF-8?q?Restauration=20d=C3=A9tection=20amortisseme?= =?UTF-8?q?nts=20li=C3=A9s?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- _immobilisations.html | 34 ++++++++++++++++++++-------------- 1 file changed, 20 insertions(+), 14 deletions(-) diff --git a/_immobilisations.html b/_immobilisations.html index 9c4b6e6..2bb7174 100644 --- a/_immobilisations.html +++ b/_immobilisations.html @@ -30,13 +30,18 @@ {{* vérifier l'existence de la table du module *}} - {{#load limit="1"}} - {{:assign table_presente=true}} + {{if $module.table != null}} + {{:assign columns="$$.duration as duration, $$.status as status,"}} + {{:assign table_join="LEFT JOIN !table AS info ON $$.line = line.id"}} + {{:assign doc_condition1="($$.status <> 'ignored' AND $$.status <> 'archived')"}} + {{:assign doc_condition2="$$.status IS NULL"}} {{else}} - {{:assign table_presente=false}} - {{/load}} + {{:assign columns=""}} + {{:assign table_join=""}} + {{:assign doc_condition1="0"}} + {{:assign doc_condition2="1"}} + {{/if}} - {{if $table_presente}} {{* lister les immobilisations *}} {{:assign account_condition="("}} {{#foreach from=$module.config.prefixes item="code"}} @@ -44,7 +49,7 @@ {{:assign account_condition=$account_condition|cat:" account.code LIKE "|cat:$code|cat:" OR "}} {{/foreach}} {{:assign account_condition=$account_condition|cat:"0)"}} - {{:assign doc_condition="($$.status <> 'ignored' AND $$.status <> 'archived')"}} + {{*:assign doc_condition="($$.status <> 'ignored' AND $$.status <> 'archived')"*}} {{:assign filter_condition="NOT ("}} {{#foreach from=$module.config.filters item="filter"}} @@ -52,9 +57,9 @@ {{:assign filter_condition=$filter_condition|cat:" trans_label LIKE "|cat:$filter|cat:" OR "}} {{/foreach}} {{:assign filter_condition=$filter_condition|cat:"0)"}} - {{:assign filter_condition="($$.status IS NULL AND NOT (trans.status & 16) AND "|cat:$filter_condition|cat:")"}} + {{:assign filter_condition="("|cat:$doc_condition2|cat:" AND NOT (trans.status & 16) AND "|cat:$filter_condition|cat:")"}} - {{:assign condition=$account_condition|cat:" AND debit > 0 AND ("|cat:$filter_condition|cat:" OR "|cat:$doc_condition|cat:")"}} + {{:assign condition=$account_condition|cat:" AND debit > 0 AND ("|cat:$filter_condition|cat:" OR "|cat:$doc_condition1|cat:")"}} {{:assign nb_immo=0}} {{:assign total_immo = 0}} @@ -67,16 +72,17 @@ line.label AS line_label, account.id as account_id, account.code as account_code, - trans.id_year as trans_id_year, - $$.duration as duration, - $$.status as status + !columns + trans.id_year as trans_id_year FROM acc_transactions AS trans INNER JOIN acc_transactions_lines AS line ON line.id_transaction = trans.id INNER JOIN acc_accounts AS account ON line.id_account = account.id INNER JOIN acc_years AS years ON trans.id_year = years.id - LEFT JOIN !table AS info ON $$.line = line.id + !table_join WHERE !condition ORDER BY trans.date DESC; + !columns=$columns + !table_join=$table_join !table=$module.table !condition=$condition }} @@ -250,9 +256,9 @@ {{/if}} -{{/if}} +{{*/if*}} - {{if $nb_immo == 0 || ! $table_presente}} + {{if $nb_immo == 0}}

Aucune immobilisation

{{/if}}