diff --git a/_archives.html b/_archives.html index 9f06778..56f6b14 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 2bb7174..d287632 100644 --- a/_immobilisations.html +++ b/_immobilisations.html @@ -30,18 +30,13 @@ {{* vérifier l'existence de la table du module *}} - {{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"}} + {{#load limit="1"}} + {{:assign table_presente=true}} {{else}} - {{:assign columns=""}} - {{:assign table_join=""}} - {{:assign doc_condition1="0"}} - {{:assign doc_condition2="1"}} - {{/if}} + {{:assign table_presente=false}} + {{/load}} + {{if $table_presente}} {{* lister les immobilisations *}} {{:assign account_condition="("}} {{#foreach from=$module.config.prefixes item="code"}} @@ -49,7 +44,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"}} @@ -57,9 +52,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="("|cat:$doc_condition2|cat:" AND NOT (trans.status & 16) AND "|cat:$filter_condition|cat:")"}} + {{:assign filter_condition="($$.status IS NULL 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_condition1|cat:")"}} + {{:assign condition=$account_condition|cat:" AND debit > 0 AND ("|cat:$filter_condition|cat:" OR "|cat:$doc_condition|cat:")"}} {{:assign nb_immo=0}} {{:assign total_immo = 0}} @@ -72,17 +67,16 @@ line.label AS line_label, account.id as account_id, account.code as account_code, - !columns - trans.id_year as trans_id_year + trans.id_year as trans_id_year, + $$.duration as duration, + $$.status as status 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 - !table_join + LEFT JOIN !table AS info ON $$.line = line.id WHERE !condition ORDER BY trans.date DESC; - !columns=$columns - !table_join=$table_join !table=$module.table !condition=$condition }} @@ -199,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 @@ -256,9 +250,9 @@ {{/if}} -{{*/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 5327a7b..1f08e9b 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 37ab4c9..a222475 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 65eddda..1ee848b 100644 --- a/add_infos.html +++ b/add_infos.html @@ -27,13 +27,11 @@ {{/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 @@ -43,7 +41,6 @@ ; :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}} @@ -175,15 +172,9 @@
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
+
#{{$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}}
- {{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/aide.md b/aide.md deleted file mode 100644 index 90849fa..0000000 --- a/aide.md +++ /dev/null @@ -1,183 +0,0 @@ -# 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 ... - -### 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 -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 - - -### Sortir une immobilisation du bilan - -### 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. - diff --git a/amortization.html b/amortization.html index 747ff8f..cf162a2 100644 --- a/amortization.html +++ b/amortization.html @@ -59,8 +59,8 @@ }} {{:assign total_credits="%d+%d"|math:$total_credits:$credit}} {{/select}} -{{:assign montant_amortissable="%d-%d"|math:$ligne_immo.montant:$total_credits}} -{{:assign solde=$montant_amortissable}} +{{:assign var="ligne_immo.montant" value="%d-%d"|math:$ligne_immo.montant:$total_credits}} +{{:assign solde=$ligne_immo.montant}} {{* lister les lignes des écritures d'amortissement liées à l'immobilisation *}} {{#select @@ -105,10 +105,10 @@ {{/select}} {{if $status == "amortized"}} - {{:assign amort_amount=$montant_amortissable}} + {{:assign amort_amount=$ligne_immo.montant}} {{:assign valeur_residuelle=0}} {{else}} - {{:assign valeur_residuelle=$montant_amortissable}} + {{:assign valeur_residuelle=$ligne_immo.montant}} {{#foreach from=$linked_amort}} {{:assign valeur_residuelle="%d-%d"|math:$valeur_residuelle:$amort_amount}} {{/foreach}} @@ -238,30 +238,24 @@
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
{{$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}}
+
{{"%d-%d"|math:$ligne_immo.montant:$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:$montant_amortissable:$duree|money_currency_html:false|raw}}
+
{{"min(%d, %f/%d)"|math:$valeur_residuelle:$ligne_immo.montant:$duree|money_currency_html:false|raw}}
{{/if}}
@@ -289,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}} @@ -299,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/balance_sheet_exit.html b/balance_sheet_exit.html index c9a0c0d..e7d9ba7 100644 --- a/balance_sheet_exit.html +++ b/balance_sheet_exit.html @@ -77,11 +77,9 @@ WHERE l_immo.id = :line_id AND account.code LIKE '28%' ; :line_id = $_GET.immo_line_id|intval - assign="amort_lines." + assign="amort_line" }} -{{/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" @@ -115,7 +113,7 @@ {{:assign last_amort_date=$amort_line.date}} {{/if}} {{/load}} -{{/foreach}} +{{/select}} {{if $total_amort == 0}} {{if $info_immo.status == "amortized"}} diff --git a/ignore.html b/ignore.html index 96254fd..e396a77 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 632c37e..91b379a 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"}} diff --git a/save_amort.html b/save_amort.html index 3be761c..4aa8e64 100644 --- a/save_amort.html +++ b/save_amort.html @@ -111,6 +111,7 @@ {{/load}} {{/select}} + {{:assign total_amort=0}} {{:assign valeur_residuelle=$ligne_immo.montant}} {{#foreach from=$linked_amort}} @@ -119,7 +120,7 @@ {{:assign date_debut=$amort_date}} {{:assign code_amort=$account_code}} {{:assign amort_account_label=$account_label}} - {{:assign amort_label=$trans_label}} + {{:assign amort_label=$amort_label}} {{/foreach}} {{if $valeur_residuelle == 0}} diff --git a/write_exit.html b/write_exit.html index 252a462..a4de1cd 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,9 +30,6 @@ }} {{/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 *}}