diff --git a/_archives.html b/_archives.html
index b5d2cc6..7619bcb 100644
--- a/_archives.html
+++ b/_archives.html
@@ -1,221 +1,226 @@
{{* -*- brindille -*- *}}
{{* Liste des immobilisations sorties du bilan *}}
-
- Cette page liste les immobilisations sorties du bilan
+
+ Cet onglet liste les immobilisations sorties du bilan car elles ne
+ sont plus utilisées dans l'association (vétusté, fin de vie,
+ vente...).
{{:include file="_get_config.html" keep="module.config"}}
-{{* lister les immobilisations *}}
-{{:assign account_condition="("}}
-{{#foreach from=$module.config.prefixes item="code"}}
- {{:assign code=$code|cat:"%"|quote_sql}}
- {{:assign account_condition=$account_condition|cat:"account.code LIKE "|cat:$code|cat:" OR "}}
-{{/foreach}}
-{{:assign account_condition=$account_condition|cat:"0)"}}
+{{if $module.table != null}}
-{{:assign filter_condition=" AND NOT ("}}
-{{#foreach from=$module.config.filters item="filter"}}
- {{:assign filter="%"|cat:$filter|cat:"%"|quote_sql}}
- {{:assign filter_condition=$filter_condition|cat:" trans_label LIKE "|cat:$filter|cat:" OR "}}
-{{/foreach}}
-{{:assign filter_condition=$filter_condition|cat:"0)"}}
-{{:assign condition=$account_condition|cat:" AND debit > 0 AND NOT (trans.status & 16)"|cat:$filter_condition}}
+ {{* lister les immobilisations *}}
+ {{:assign account_condition="("}}
+ {{#foreach from=$module.config.prefixes item="code"}}
+ {{:assign code=$code|cat:"%"|quote_sql}}
+ {{:assign account_condition=$account_condition|cat:"account.code LIKE "|cat:$code|cat:" OR "}}
+ {{/foreach}}
+ {{:assign account_condition=$account_condition|cat:"0)"}}
+ {{:assign status_condition="($$.status = 'archived')"}}
-
-
-
-
- | N° |
- Mise en service |
- Date sortie |
- Libellé |
- Montant |
- N° compte |
- Compte |
- |
-
-
-
+ {{:assign filter_condition=" ("}}
+ {{#foreach from=$module.config.filters item="filter"}}
+ {{:assign filter="%"|cat:$filter|cat:"%"|quote_sql}}
+ {{:assign filter_condition=$filter_condition|cat:" trans_label LIKE "|cat:$filter|cat:" OR "}}
+ {{/foreach}}
+ {{:assign filter_condition=$filter_condition|cat:"0)"}}
+ {{:assign condition=$account_condition|cat:" AND debit > 0 AND NOT (trans.status & 16) AND NOT "|cat:$filter_condition|cat:" AND "|cat:$status_condition}}
- {{:assign nb_immo=0}}
- {{:assign total_immo = 0}}
- {{:assign total_cessions = 0}}
+ {{:assign total_cessions = 0}}
- {{#select
- trans.id as trans_id,
- trans.label as trans_label,
- trans.date as trans_date,
- trans.id_year as trans_id_year,
- line.id as immo_line_id,
- line.label as line_label,
- line.debit AS debit,
- account.id as account_id,
- account.code as account_code,
- account.label as account_label
- 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
- WHERE !condition
- ORDER BY trans.date DESC;
- !condition=$condition
- }}
+ {{#select
+ trans.id as trans_id,
+ trans.label as trans_label,
+ trans.date as trans_date,
+ trans.id_year as trans_id_year,
+ line.id as immo_line_id,
+ line.label as line_label,
+ line.debit AS debit,
+ account.id as account_id,
+ account.code as account_code,
+ account.label as account_label,
+ info.id as immo_doc_id,
+ $$.label as doc_label,
+ $$.amount as doc_amount,
+ $$.date_achat as doc_date_achat,
+ $$.date_mes as doc_date_mes,
+ $$.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
+ INNER JOIN !table AS info ON $$.line = line.id
+ WHERE !condition
+ ORDER BY trans.date DESC;
+ !table=$module.table
+ !condition=$condition
+ assign="immo_line"
+ }}
- {{* voir si l'immo est prise en charge *}}
- {{#load type="immo" where="$$.line = :line_id" :line_id=$immo_line_id assign="info_immo"}}
- {{:assign status=$status}}
- {{else}}
- {{:assign status=null}}
- {{/load}}
- {{if $status != "archived"}}
- {{:continue}}
- {{/if}}
- {{:assign date_mes=$info_immo.date_mes|or:$trans_date}}
- {{:assign montant_immo=$debit}}
+ {{:assign var="immo_line.date_mes" value=$doc_date_mes|or:$doc_date_achat|or:$trans_date}}
+ {{:assign var="immo_line.montant_immo" value=$doc_amount|or:$debit}}
- {{* chercher le doc de sortie du bilan *}}
- {{:assign exit_date=null}}
- {{#load type="exit_link" where="$$.immo_doc_id = :immo_doc_id" :immo_doc_id=$info_immo.id}}
- {{:assign exit_line_id=$exit_line_id}}
- {{#select
- trans.date
- FROM acc_transactions_lines AS line
- INNER JOIN acc_transactions AS trans ON line.id_transaction = trans.id
- WHERE line.id = :exit_line_id;
- :exit_line_id=$exit_line_id
- }}
- {{:assign exit_date=$date}}
- {{/select}}
- {{/load}}
-
- {{* déduire le montant des écritures liées à l'immo courante au crédit du même compte *}}
- {{:assign credit_immo=null}}
- {{:assign total_credits=0}}
- {{#load
- type="credit_link"
- where="$$.immo_doc_id = :immo_doc_id" :immo_doc_id = $info_immo.id
- }}
- {{if $amount == null}}
- {{#select credit FROM acc_transactions_lines WHERE id = :credit_line_id;
- :credit_line_id=$credit_line_id
- }}
- {{:assign total_credits="%d+%d"|math:$total_credits:$credit}}
- {{/select}}
- {{else}}
- {{:assign total_credits="%d+%d"|math:$total_credits:$amount}}
- {{/if}}
- {{/load}}
- {{:assign solde_immo="%d-%d"|math:$montant_immo:$total_credits}}
-
- {{if $solde_immo == 0}}
- {{:assign status="archived"}}
- {{/if}}
-
- {{if $status != "archived"}}
- {{:continue}}
- {{/if}}
-
- {{:assign trans_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$trans_id}}
- {{:assign compte_url="%s/acc/accounts/journal.php?id=%s&year=%s"|args:$admin_url:$account_id:$trans_id_year}}
- {{:assign nb_immo="%d+1"|math:$nb_immo}}
- {{:assign total_immo="%d+%d"|math:$total_immo:$montant_immo}}
- {{: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}}
-
- {{* voir s'il y a une écriture de cession associée à cette immo *}}
+ {{* chercher le doc de sortie du bilan *}}
+ {{:assign var="immo_line.exit_date" value=null}}
+ {{#load type="exit_link" where="$$.immo_doc_id = :immo_doc_id" :immo_doc_id=$immo_doc_id}}
+ {{:assign exit_line_id=$exit_line_id}}
{{#select
- trans.id,
- line.debit
- FROM acc_transactions_links AS link
- INNER JOIN acc_transactions AS trans ON (CASE
- WHEN link.id_transaction = :trans_id THEN link.id_related
- WHEN link.id_related = :trans_id THEN link.id_transaction
- END) = trans.id
- INNER JOIN acc_transactions_lines AS line ON line.id_transaction = trans.id
- INNER JOIN acc_accounts AS acc ON line.id_account = acc.id
- WHERE (link.id_transaction = :trans_id OR link.id_related = :trans_id) AND acc.code = 462
- ;
- :trans_id = $trans_id
+ trans.date
+ FROM acc_transactions_lines AS line
+ INNER JOIN acc_transactions AS trans ON line.id_transaction = trans.id
+ WHERE line.id = :exit_line_id;
+ :exit_line_id=$exit_line_id
}}
- {{:assign var="montant" from="montant_cessions.%d"|args:$account_code}}
- {{:assign var="montant_cessions.%d"|args:$account_code value="%d+%d"|math:$montant:$debit}}
- {{:assign total_cessions="%d+%d"|math:$total_cessions:$debit}}
+ {{:assign var="immo_line.exit_date" value=$date}}
{{/select}}
+ {{/load}}
-
- | #{{$trans_id}} |
- {{$date_mes|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_label}} |
-
- {{:linkbutton label="Modifier" href="exit_step1.html?immo_doc_id=%s&from=exit"|args:$info_immo.id shape="edit"}}
- |
-
+ {{* déduire le montant des écritures liées à l'immo courante au crédit du même compte *}}
+ {{:assign credit_immo=null}}
+ {{:assign total_credits=0}}
+ {{#load
+ type="credit_link"
+ where="$$.immo_doc_id = :immo_doc_id" :immo_doc_id = $immo_doc_id
+ }}
+ {{if $amount == null}}
+ {{#select credit FROM acc_transactions_lines WHERE id = :credit_line_id;
+ :credit_line_id=$credit_line_id
+ }}
+ {{:assign total_credits="%d+%d"|math:$total_credits:$credit}}
+ {{/select}}
+ {{else}}
+ {{:assign total_credits="%d+%d"|math:$total_credits:$amount}}
+ {{/if}}
+ {{/load}}
+ {{:assign solde_immo="%d-%d"|math:$immo_line.montant_immo:$total_credits}}
+ {{:assign var="montant" from="sommes_immo.%s"|args:$account_code}}
+ {{:assign var="sommes_immo.%s"|args:$account_code value="%d+%d"|math:$montant:$immo_line.montant_immo}}
+
+ {{* voir s'il y a une écriture de cession associée à cette immo *}}
+ {{#select
+ trans.id as cession_id,
+ trans.label,
+ line.id as line_id,
+ line.credit
+ FROM acc_transactions_lines AS line
+ INNER JOIN acc_transactions AS trans ON line.id_transaction = trans.id
+ INNER JOIN !table AS cession_link ON json_extract(cession_link.document, '$.cession_line_id') = line.id
+ INNER JOIN !table AS immo_doc ON json_extract(cession_link.document, '$.immo_doc_id') = immo_doc.id
+ WHERE json_extract(immo_doc.document, '$.line') = :immo_line_id
+ ;
+ !table=$module.table
+ :immo_line_id = $immo_line.immo_line_id
+ assign="cession_line"
+ }}
+ {{:assign var="montant" from="montant_cessions.%d"|args:$account_code}}
+ {{:assign var="montant_cessions.%d"|args:$account_code value="%d+%d"|math:$montant:$credit}}
+ {{:assign total_cessions="%d+%d"|math:$total_cessions:$credit}}
{{/select}}
-
-
- {{if $total_immo != 0}}
-
- |
- |
- {{#foreach from=$sommes_immo|ksort key="code" item="value"}}
+ {{:assign var="immo_lines." value=$immo_line}}
+ {{/select}}
+
+ {{if $immo_lines|count > 0}}
+
+
+
- |
- |
- |
- Total du compte {{$code}} |
- {{$value|money_html:false|raw}} |
- |
- |
- |
+ N° |
+ Mise en service |
+ Date sortie |
+ Libellé |
+ Montant |
+ N° compte |
+ Compte |
+ |
- {{/foreach}}
-
- |
- |
- |
- Total des immobilisations |
- {{$total_immo|money_html:false|raw}} |
- |
- |
- |
-
- {{/if}}
- {{if $total_cessions != 0}}
-
- |
- |
- {{#foreach from=$montant_cessions|ksort key="code" item="value"}}
-
- |
- |
- |
- Cessions du compte {{$code}} |
- {{$value|money_html:false|raw}} |
- |
- |
- |
-
- {{/foreach}}
-
- |
- |
- |
- Total des cessions |
- {{$total_cessions|money_html:false|raw}} |
- |
- |
- |
-
- {{/if}}
-
-
- {{if $nb_immo == 0}}
- Aucune immobilisation
+
+
+
+ {{:assign total_immo = 0}}
+ {{#foreach from=$immo_lines}}
+ {{:assign trans_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$trans_id}}
+ {{:assign compte_url="%s/acc/accounts/journal.php?id=%s&year=%s"|args:$admin_url:$account_id:$trans_id_year}}
+ {{:assign total_immo="%d+%d"|math:$total_immo:$montant_immo}}
+ {{:assign label_immo=$doc_label|or:$trans_label}}
+ {{if $label_immo|strpos:$line_label === false}}
+ {{:assign label_immo=$label_immo|cat:" — "|cat:$line_label}}
+ {{/if}}
+
+ | #{{$trans_id}} |
+ {{$date_mes|date_short}} |
+ {{$exit_date|date_short}} |
+ {{$label_immo}} |
+ {{"%f"|math:$montant_immo|money_html:false|raw}} |
+ {{$account_code}} |
+ {{$account_label}} |
+
+ {{:linkbutton label="Modifier" href="exit_step1.html?immo_doc_id=%s&from=exit"|args:$immo_doc_id shape="edit"}}
+ |
+
+ {{/foreach}}
+
+
+ {{if $total_immo != 0}}
+
+ |
+ |
+ {{#foreach from=$sommes_immo|ksort key="code" item="value"}}
+
+ |
+ |
+ |
+ Total du compte {{$code}} |
+ {{$value|money_html:false|raw}} |
+ |
+ |
+ |
+
+ {{/foreach}}
+
+ |
+ |
+ |
+ Total des immobilisations |
+ {{$total_immo|money_html:false|raw}} |
+ |
+ |
+ |
+
+ {{/if}}
+ {{if $total_cessions != 0}}
+
+ |
+ |
+ {{#foreach from=$montant_cessions|ksort key="code" item="value"}}
+
+ |
+ |
+ |
+ Cessions du compte {{$code}} |
+ {{$value|money_html:false|raw}} |
+ |
+ |
+ |
+
+ {{/foreach}}
+
+ |
+ |
+ |
+ Total des cessions |
+ {{$total_cessions|money_html:false|raw}} |
+ |
+ |
+ |
+
+ {{/if}}
+
+
+
{{/if}}
-
+{{/if}}
+{{if $immo_lines|count == 0 || $module.table == null}}
+ Aucune immobilisation
+{{/if}}
diff --git a/_calcul_dates.html b/_calcul_dates.html
index e4dd864..ef868de 100644
--- a/_calcul_dates.html
+++ b/_calcul_dates.html
@@ -9,4 +9,4 @@
{{:assign ts_debut=$date_debut|strtotime}}
{{:assign ts_fin=$date_fin|strtotime}}
-{{:assign nbjours="1+abs(%d-%d)/(60*60*24)"|math:$ts_fin:$ts_debut}}
+{{:assign nbjours="round(1+abs(%d-%d)/(60*60*24), 0)"|math:$ts_fin:$ts_debut}}
diff --git a/_common_detach.html b/_common_detach.html
index 8c84736..e7b6c7a 100644
--- a/_common_detach.html
+++ b/_common_detach.html
@@ -17,7 +17,7 @@
id_transaction
FROM acc_transactions_lines
WHERE id = :line_id;
- :line_id = $line_id|intval
+ :line_id = $line_id
}}
{{:assign trans_id=$id_transaction}}
{{else}}
diff --git a/_immobilisations.html b/_immobilisations.html
index 93648ec..cc0fc76 100644
--- a/_immobilisations.html
+++ b/_immobilisations.html
@@ -4,166 +4,177 @@
{{:include file="_get_config.html" keep="module.config"}}
-
+
{{if $type_immo == "managed"}}
- Cette page liste les immobilisations en cours d'amortissement
+ Cet onglet liste les immobilisations en cours d'amortissement.
{{elseif $type_immo == "amortized"}}
- Cette page liste les immobilisations dont l'amortissement est terminé
+ Cet onglet liste les
+ immobilisations dont l'amortissement est terminé mais qui sont
+ encore utilisées dans l'association, donc encore présentes au
+ bilan.
{{/if}}
{{if $module.table != null}}
-
-
-
- | N° |
- Date |
- Libellé |
- Montant |
- Durée |
- Amortissements |
- Valeur nette |
- N° compte |
- |
-
-
-
+ {{* lister les immobilisations *}}
+ {{:assign account_condition="("}}
+ {{#foreach from=$module.config.prefixes item="code"}}
+ {{:assign code=$code|cat:"%"|quote_sql}}
+ {{:assign account_condition=$account_condition|cat:" account.code LIKE "|cat:$code|cat:" OR "}}
+ {{/foreach}}
+ {{:assign account_condition=$account_condition|cat:"0)"}}
+ {{:assign status_condition="($$.status = 'managed' OR $$.status = 'amortized')"}}
+ {{:assign condition=$account_condition|cat:" AND line.debit > 0 AND "|cat:$status_condition}}
- {{* lister les immobilisations *}}
- {{:assign account_condition="("}}
- {{#foreach from=$module.config.prefixes item="code"}}
- {{:assign code=$code|cat:"%"|quote_sql}}
- {{:assign account_condition=$account_condition|cat:" account.code LIKE "|cat:$code|cat:" OR "}}
- {{/foreach}}
- {{:assign account_condition=$account_condition|cat:"0)"}}
- {{:assign status_condition="($$.status = 'managed' OR $$.status = 'amortized')"}}
- {{:assign condition=$account_condition|cat:" AND line.debit > 0 AND "|cat:$status_condition}}
-
- {{:assign nb_immo=0}}
- {{:assign total_immo = 0}}
- {{#select
- trans.id as immo_trans_id,
- trans.label as trans_label,
- trans.date as trans_date,
- line.id as immo_line_id,
- line.debit AS debit,
- line.label AS line_label,
- account.id as account_id,
- account.code as account_code,
- trans.id_year as trans_id_year,
- info.id as immo_doc_id,
- $$.duration as duration,
- $$.label as doc_label,
- $$.amount as doc_amount,
- $$.date_achat as doc_date_achat,
- $$.date as doc_date_mes,
- $$.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
- INNER JOIN !table AS info ON $$.line = line.id
- WHERE !condition
- ORDER BY COALESCE(doc_date_achat, trans_date) DESC;
- !table=$module.table
- !condition=$condition
- }}
- {{if $status != "managed" && $status != "amortized"}}
- {{:continue}}
- {{/if}}
- {{:assign trans_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$immo_trans_id}}
- {{:assign compte_url="%s/acc/accounts/journal.php?id=%s&year=%s"|args:$admin_url:$account_id:$trans_id_year}}
- {{:assign montant_immo=$doc_amount|or:$debit}}
- {{:assign immo_date = $doc_date_achat|or:$trans_date}}
- {{:assign label_immo=$doc_label|or:$trans_label}}
- {{if $label_immo|strpos:$line_label === false}}
- {{:assign label_immo=$label_immo|cat:" — "|cat:$line_label}}
- {{/if}}
-
- {{* déduire le montant des écritures liées à l'immo courante au crédit du même compte *}}
- {{#load
- type="credit_link"
- where="$$.immo_doc_id = :immo_doc_id" :immo_doc_id = $immo_doc_id
+ {{#select
+ trans.id as immo_trans_id,
+ trans.label as trans_label,
+ trans.date as trans_date,
+ line.id as immo_line_id,
+ line.debit AS debit,
+ line.label AS line_label,
+ account.id as account_id,
+ account.code as account_code,
+ trans.id_year as trans_id_year,
+ info.id as immo_doc_id,
+ $$.duration as duration,
+ $$.label as doc_label,
+ $$.amount as doc_amount,
+ $$.date_achat as doc_date_achat,
+ $$.date as doc_date_mes,
+ $$.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
+ INNER JOIN !table AS info ON $$.line = line.id
+ WHERE !condition
+ ORDER BY COALESCE(doc_date_achat, trans_date) DESC;
+ !table=$module.table
+ !condition=$condition
+ assign="immo_line"
+ }}
+ {{:assign montant_immo=$doc_amount|or:$debit}}
+ {{* déduire le montant des écritures liées à l'immo courante au crédit du même compte *}}
+ {{#load
+ type="credit_link"
+ where="$$.immo_doc_id = :immo_doc_id" :immo_doc_id = $immo_doc_id
+ }}
+ {{if $amount == null}}
+ {{#select credit FROM acc_transactions_lines WHERE id = :credit_line_id;
+ :credit_line_id=$credit_line_id
}}
- {{if $amount == null}}
- {{#select credit FROM acc_transactions_lines WHERE id = :credit_line_id;
- :credit_line_id=$credit_line_id
- }}
- {{:assign montant_immo="%d-%d"|math:$montant_immo:$credit}}
- {{/select}}
- {{else}}
- {{:assign montant_immo="%d-%d"|math:$montant_immo:$amount}}
- {{/if}}
- {{/load}}
+ {{:assign montant_immo="%d-%d"|math:$montant_immo:$credit}}
+ {{/select}}
+ {{else}}
+ {{:assign montant_immo="%d-%d"|math:$montant_immo:$amount}}
+ {{/if}}
+ {{/load}}
- {{if $montant_immo == 0}}
- {{* Immobilisation soldée *}}
- {{:continue}}
- {{/if}}
+ {{if $montant_immo == 0}}
+ {{* Immobilisation soldée *}}
+ {{:continue}}
+ {{else}}
+ {{:assign var="immo_line.montant_immo" value=$montant_immo}}
+ {{/if}}
- {{* montant des amortissements liés à l'immobilisation *}}
- {{:include file="./_get_amort_lines.html" immo_doc_id=$immo_doc_id keep="total_amort"}}
- {{:assign amort_amount=$total_amort}}
+ {{* montant des amortissements liés à l'immobilisation *}}
+ {{:include file="./_get_amort_lines.html" immo_doc_id=$immo_doc_id keep="total_amort"}}
+ {{:assign amort_amount=$total_amort}}
- {{* classement par onglet *}}
- {{if $type_immo == "managed" && $amort_amount >= $montant_immo}}{{:continue}}{{/if}}
- {{if $type_immo == "amortized" && $amort_amount < $montant_immo}}{{:continue}}{{/if}}
+ {{* classement par onglet *}}
+ {{if $type_immo == "managed" && $amort_amount >= $montant_immo}}{{:continue}}{{/if}}
+ {{if $type_immo == "amortized" && $amort_amount < $montant_immo}}{{:continue}}{{/if}}
+ {{:assign var="immo_line.amort_amount" value=$amort_amount}}
- {{:assign nb_immo="%d+1"|math:$nb_immo}}
- {{:assign total_immo="%d+%d"|math:$total_immo:$montant_immo}}
- {{: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_date|date_short}} |
- {{$label_immo}} |
- {{$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}} |
-
- {{:linkbutton
- label="Détails"
- href="amortization.html?immo_doc_id=%s&type_immo=%s"|args:$immo_doc_id:$type_immo shape="eye"
- }}
- |
-
- {{/select}}
-
-
- {{if $total_immo != 0}}
+ {{:assign var="immo_lines." value=$immo_line}}
+ {{/select}}
+
+ {{if $immo_lines|count > 0}}
+
+
- |
+ | N° |
+ Date |
+ Libellé |
+ Montant |
+ Durée |
+ Amortissements |
+ Valeur nette |
+ N° compte |
+ |
- {{#foreach from=$sommes_immo|ksort key="code" item="value"}}
+
+
+
+ {{:assign total_immo = 0}}
+ {{#foreach from=$immo_lines}}
+ {{:assign trans_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$immo_trans_id}}
+ {{:assign compte_url="%s/acc/accounts/journal.php?id=%s&year=%s"|args:$admin_url:$account_id:$trans_id_year}}
+ {{:assign immo_date = $doc_date_achat|or:$trans_date}}
+ {{:assign label_immo=$doc_label|or:$trans_label}}
+ {{if $label_immo|strpos:$line_label === false}}
+ {{:assign label_immo=$label_immo|cat:" — "|cat:$line_label}}
+ {{/if}}
+
+ {{:assign total_immo="%d+%d"|math:$total_immo:$montant_immo}}
+ {{: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_date|date_short}} |
+ {{$label_immo}} |
+ {{$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}} |
+
+ {{:linkbutton
+ label="Détails"
+ href="amortization.html?immo_doc_id=%s&type_immo=%s"|args:$immo_doc_id:$type_immo shape="eye"
+ }}
+ |
+
+
+ {{/foreach}}
+
+
+
+ {{if $total_immo != 0}}
+
+ |
+ |
+ {{#foreach from=$sommes_immo|ksort key="code" item="value"}}
+
+ |
+ |
+ Total du compte {{$code}} |
+ {{$value|money_html:false|raw}} |
+ |
+ |
+ |
+ |
+ |
+
+ {{/foreach}}
|
|
- Total du compte {{$code}} |
- {{$value|money_html:false|raw}} |
+ Total des immobilisations |
+ {{$total_immo|money_html|raw}} |
|
|
|
|
|
- {{/foreach}}
-
- |
- |
- Total des immobilisations |
- {{$total_immo|money_html|raw}} |
- |
- |
- |
- |
- |
-
- {{/if}}
-
-
+ {{/if}}
+
+
+ {{/if}}
{{/if}}
-{{if $nb_immo == 0 || $module.table == null}}
+{{if $immo_lines|count == 0 || $module.table == null}}
Aucune immobilisation
{{/if}}
diff --git a/_immobilisations_autres.html b/_immobilisations_autres.html
index 383ba12..0dca07d 100644
--- a/_immobilisations_autres.html
+++ b/_immobilisations_autres.html
@@ -3,10 +3,11 @@
{{* Liste des immobilisations non gérées ou non entièrement affectées *}}
{{:include file="_get_config.html" keep="module.config"}}
-
- Cette page liste les immobilisations pas encore prises en charge
- par le module ou les écritures de la balance d'ouverture initiale
- dont le montant n'est pas encore totalement affecté
+
+ Cet onglet liste les immobilisations créées en dehors du module et
+ pas encore prises en charge par le module ou les écritures de la
+ balance d'ouverture initiale dont le montant n'est pas encore
+ totalement affecté
{{:assign saved_hides=$module.config.hides}}
@@ -32,7 +33,7 @@
{{if $module.table != null}}
{{:assign columns="$$.status as status, SUM($$.amount) as amount,"}}
{{:assign table_join="LEFT JOIN !table AS info ON $$.line = line.id"}}
- {{:assign doc_condition="($$.status IS NULL OR $$.status == 'managed' OR $$.status == 'ignored')"}}
+ {{:assign doc_condition="($$.status IS NULL OR $$.status == 'managed' OR $$.status == 'ignored' OR $$.status == 'amortized')"}}
{{else}}
{{:assign columns=""}}
{{:assign table_join=""}}
@@ -49,24 +50,9 @@
{{:assign account_condition=$account_condition|cat:" account.code LIKE "|cat:$code|cat:" OR "}}
{{/foreach}}
{{:assign account_condition=$account_condition|cat:"0)"}}
+{{:assign condition=$account_condition|cat:" AND debit > 0 AND NOT (trans.status & 16) AND "|cat:$doc_condition}}
-{{if $unhide == null}}
- {{:assign filter_condition="NOT ("}}
- {{#foreach from=$module.config.filters item="filter"}}
- {{:assign filter="%"|cat:$filter|cat:"%"|quote_sql}}
- {{:assign filter_condition=$filter_condition|cat:" trans_label LIKE "|cat:$filter|cat:" OR "}}
- {{/foreach}}
- {{:assign filter_condition=$filter_condition|cat:"0)"}}
-{{else}}
- {{:assign filter_condition="1"}}
-{{/if}}
-
-{{:assign condition=$account_condition|cat:" AND debit > 0 AND NOT (trans.status & 16) AND "|cat:$filter_condition|cat:" AND "|cat:$doc_condition}}
-
-{{:assign nb_managed=0}}
{{:assign nb_ignored=0}}
-{{:assign nb_null=0}}
-{{:assign nb_other=0}}
{{#select
trans.id as immo_trans_id,
trans.label as trans_label,
@@ -92,94 +78,86 @@
!table=$module.table
!condition=$condition
assign="immo_line"
- }}
- {{*
- parmi les immos gérées, ne conserver que celles dont le montant dans le doc est non nul
- et inférieur au montant de l'écriture d'immo
- *}}
+}}
{{if $immo_line.status == 'managed'}}
{{if $immo_line.amount == null || $immo_line.amount == 0 || $immo_line.amount == $immo_line.debit}}
{{:continue}}
{{/if}}
{{/if}}
- {{if $status == null}}
- {{:assign nb_null="%d+1"|math:$nb_null}}
- {{elseif $status == 'managed'}}
- {{:assign nb_managed="%d+1"|math:$nb_managed}}
- {{elseif $status == 'ignored'}}
+
+ {{if $immo_line.status == 'ignored'}}
{{:assign nb_ignored="%d+1"|math:$nb_ignored}}
- {{else}}
- {{:assign nb_other="%d+1"|math:$nb_other}}
{{/if}}
+ {{if $unhide == null && $immo_line.status == "ignored"}}
+ {{:continue}}
+ {{/if}}
+
+ {{* vérifier si le libellé aurait pu être filtré *}}
+ {{#foreach from=$module.config.filters item="filter"}}
+ {{if $trans_label|strpos:$filter !== false}}
+ {{:assign var="immo_line.status" value="ignored"}}
+ {{:assign nb_ignored="%d+1"|math:$nb_ignored}}
+ {{/if}}
+ {{/foreach}}
+
+ {{if $unhide == null && $immo_line.status == "ignored"}}
+ {{:continue}}
+ {{/if}}
{{:assign var="immo_lines." value=$immo_line}}
{{/select}}
-
+{{if $nb_ignored > 0}}
+
+{{/if}}
{{if $immo_lines|count > 0}}
-
-
-
- | N° |
- Ligne |
- Date |
- Libellé |
- Montant |
- Affecté |
- Reste |
- N° compte |
- Compte |
- |
-
-
-
- {{#foreach from=$immo_lines item="line"}}
-
- {{if $unhide == null}}
- {{if $status == "ignored"}}
- {{:continue}}
- {{/if}}
- {{else}}
- {{* vérifier si le libellé aurait pu être filtré *}}
- {{#foreach from=$module.config.filters item="filter"}}
- {{if $trans_label|strpos:$filter !== false}}
- {{:assign status="ignored"}}
- {{else}}
- {{:assign status=""}}
- {{/if}}
- {{/foreach}}
- {{/if}}
-
- {{:assign trans_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$line.immo_trans_id}}
- {{:assign compte_url="%s/acc/accounts/journal.php?id=%s&year=%s"|args:$admin_url:$line.account_id:$line.trans_id_year}}
- {{:assign reste="%d-%d"|math:$line.debit:$line.amount}}
-
- | #{{$line.immo_trans_id}} |
- {{$line.immo_line_id}} |
- {{$trans_date|date_short}} |
- {{$line.trans_label}}{{if $line.line_label != null && $line.line_label != $line.trans_label}} — {{$line.line_label}}{{/if}} |
- {{"%f"|math:$line.debit|money_html:false|raw}} |
- {{"%f"|math:$line.amount|money_html:false|raw}} |
- {{"%f"|math:$reste|money_html:false|raw}} |
- {{$line.account_code}} |
- {{$line.account_label}} |
-
- {{:linkbutton
- label="Paramètres"
- href="add_infos.html?immo_line_id=%s"|args:$immo_line_id
- shape="settings"
- target="_dialog"
- }}
- |
-
- {{/foreach}}
-
-
+
+
+
+ | N° |
+ Ligne |
+ Date |
+ Libellé |
+ Montant |
+ Affecté |
+ Reste |
+ N° compte |
+ Compte |
+ |
+
+
+
+ {{#foreach from=$immo_lines item="line"}}
+ {{:assign trans_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$line.immo_trans_id}}
+ {{:assign compte_url="%s/acc/accounts/journal.php?id=%s&year=%s"|args:$admin_url:$line.account_id:$line.trans_id_year}}
+ {{:assign reste="%d-%d"|math:$line.debit:$line.amount}}
+
+ | #{{$line.immo_trans_id}} |
+ {{$line.immo_line_id}} |
+ {{$trans_date|date_short}} |
+ {{$line.trans_label}}{{if $line.line_label != null && $line.line_label != $line.trans_label}} — {{$line.line_label}}{{/if}} |
+ {{"%f"|math:$line.debit|money_html:false|raw}} |
+ {{"%f"|math:$line.amount|money_html:false|raw}} |
+ {{"%f"|math:$reste|money_html:false|raw}} |
+ {{$line.account_code}} |
+ {{$line.account_label}} |
+
+ {{:linkbutton
+ label="Paramètres"
+ href="add_infos.html?immo_line_id=%s"|args:$immo_line_id
+ shape="settings"
+ target="_dialog"
+ }}
+ |
+
+ {{/foreach}}
+
+
{{else}}
Aucune immobilisation
{{/if}}
diff --git a/_nav.html b/_nav.html
index a3bf0b8..1fa9bf7 100644
--- a/_nav.html
+++ b/_nav.html
@@ -13,7 +13,7 @@
Amortissables
Amorties
Sorties du bilan
- En cours
+ En cours de constitution
À classer
Configuration
Aide
diff --git a/_unfinished.html b/_unfinished.html
index f67f188..33eadde 100644
--- a/_unfinished.html
+++ b/_unfinished.html
@@ -2,33 +2,121 @@
{{* Liste des immobilisations en cours de constitution *}}
-
+
+ Cet onglet liste les immobilisations en cours de
+ constitution ; vous pouvez les sélectionner pour créer une
+ immobilisation amortissable (exemple : achat de matériaux pour
+ la construction d'un bâtiment destiné à être amorti)
+
-
- Cette page liste les immobilisations en cours de constitution, donc non amortissables
-
+{{:include file="_get_config.html" keep="module.config"}}
+{{:assign saved_hides=$module.config.hides}}
+{{:assign var="user_hides" from="saved_hides.%s"|args:$logged_user.id}}
- {{:include file="_get_config.html" keep="module.config"}}
- {{:assign saved_hides=$module.config.hides}}
- {{:assign var="user_hides" from="saved_hides.%s"|args:$logged_user.id}}
-
- {{if $_POST|count == 0}}
- {{:assign unhide=$user_hides.unhide_unfinished}}
+{{if $_POST|count == 0}}
+ {{:assign unhide=$user_hides.unhide_unfinished}}
+{{else}}
+ {{if $_POST.unhide == null}}
+ {{:assign unhide=0}}
{{else}}
- {{if $_POST.unhide == null}}
- {{:assign unhide=0}}
- {{else}}
- {{:assign unhide=1}}
- {{/if}}
- {{:assign var="user_hides.unhide_unfinished" value=$unhide"}}
- {{:assign var="saved_hides.%s"|args:$logged_user.id value=$user_hides}}
- {{:save key="config" hides=$saved_hides}}
+ {{:assign unhide=1}}
{{/if}}
- {{if $unhide}}
- {{:assign checked="checked"}}
+ {{:assign var="user_hides.unhide_unfinished" value=$unhide"}}
+ {{:assign var="saved_hides.%s"|args:$logged_user.id value=$user_hides}}
+ {{:save key="config" hides=$saved_hides}}
+{{/if}}
+{{if $unhide}}
+ {{:assign checked="checked"}}
+{{/if}}
+
+{{* lister les immobilisations en cours de constitution *}}
+{{:assign first_code=null}}
+{{:assign accounts_condition="("}}
+{{#foreach from=$module.config.unfinished item="elem"}}
+ {{if $elem.code != null}}
+ {{:assign code=$elem.code}}
+ {{else}}
+ {{:assign code=$elem}}
+ {{/if}}
+ {{if $first_code == null}}
+ {{:assign first_code=$code}}
+ {{/if}}
+ {{:assign code=$code|cat:"%"|quote_sql}}
+ {{:assign accounts_condition=$accounts_condition|cat:" account.code LIKE "|cat:$code|cat:" OR "}}
+{{/foreach}}
+{{:assign accounts_condition=$accounts_condition|cat:"0)"}}
+{{:assign condition=$accounts_condition|cat:" AND debit > 0 AND NOT (trans.status & 16)"}}
+
+{{:assign filter_condition=" NOT ("}}
+{{#foreach from=$module.config.filters item="filter"}}
+ {{:assign filter="%"|cat:$filter|cat:"%"|quote_sql}}
+ {{:assign filter_condition=$filter_condition|cat:" trans_label LIKE "|cat:$filter|cat:" OR "}}
+{{/foreach}}
+{{:assign filter_condition=$filter_condition|cat:"0)"}}
+{{:assign condition=$condition|cat:" AND "|cat:$filter_condition}}
+
+{{:assign nb_ignored=0}}
+{{#select
+ trans.id as trans_id,
+ trans.label as trans_label,
+ trans.date as trans_date,
+ line.id as immo_line_id,
+ account.id as account_id,
+ account.code as account_code,
+ account.label as account_label,
+ sum(line.debit) AS debit,
+ 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
+ WHERE !condition
+ GROUP BY trans.id
+ ORDER BY trans.date DESC;
+ !condition=$condition
+ assign="immo_line"
+}}
+ {{* voir si l'écriture a été marquée ignorée *}}
+ {{:assign var="immo_line.ignore" value=false}}
+ {{#load type="immo" assign="info_immo" where="$$.line = :line_id AND $$.status = 'ignored'" :line_id=$immo_line_id|intval}}
+ {{:assign var="immo_line.ignore" value=true}}
+ {{/load}}
+ {{if $immo_line.ignore}}
+ {{:assign nb_ignored="%d + 1"|math:$nb_ignored}}
+ {{/if}}
+ {{if $immo_line.ignore && $unhide == null}}
+ {{:continue}}
{{/if}}
-
+ {{/if}}
+
-
-
-
- |
- N° |
- Date |
- Libellé |
- Montant |
- N° compte |
- Compte |
- |
-
-
-
+{{if $immo_lines|count > 0}}
+
+
+
+
+ |
+ N° |
+ Date |
+ Libellé |
+ Montant |
+ N° compte |
+ Compte |
+ |
+
+
+
- {{* lister les immobilisations en cours de constitution *}}
+ {{:assign total_immo = 0}}
+ {{#foreach from=$immo_lines}}
+ {{:assign trans_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$trans_id}}
+ {{:assign compte_url="%s/acc/accounts/journal.php?id=%s&year=%s"|args:$admin_url:$account_id:$trans_id_year}}
+ {{:assign total_immo="%d+%d"|math:$total_immo:$debit}}
+ {{:assign var="montant" from="sommes_immo.%s"|args:$account_code}}
+ {{:assign var="sommes_immo.%s"|args:$account_code value="%d+%d"|math:$montant:$debit}}
- {{:assign accounts_condition="("}}
- {{#foreach from=$module.config.unfinished item="elem"}}
- {{if $elem.code != null}}
- {{:assign code=$elem.code}}
- {{else}}
- {{:assign code=$elem}}
- {{/if}}
- {{:assign code=$code|cat:"%"|quote_sql}}
- {{:assign accounts_condition=$accounts_condition|cat:" account.code LIKE "|cat:$code|cat:" OR "}}
- {{/foreach}}
- {{:assign accounts_condition=$accounts_condition|cat:"0)"}}
- {{:assign condition=$accounts_condition|cat:" AND debit > 0 AND NOT (trans.status & 16)"}}
+
+ | {{:input type="checkbox" name="selected[]" value=$trans_id}} |
+ #{{$trans_id}} |
+ {{$trans_date|date_short}} |
+ {{$trans_label}} |
+ {{"%f"|math:$debit|money_html:false|raw}} |
+ {{$account_code}} |
+ {{$account_label}} |
+
+ {{:linkbutton
+ label="Modifier"
+ href="ignore.html?immo_line_id=%s"|args:$immo_line_id
+ shape="edit"
+ target="_dialog"
+ }}
+ |
+
+ {{/foreach}}
- {{:assign filter_condition=" NOT ("}}
- {{#foreach from=$module.config.filters item="filter"}}
- {{:assign filter="%"|cat:$filter|cat:"%"|quote_sql}}
- {{:assign filter_condition=$filter_condition|cat:" trans_label LIKE "|cat:$filter|cat:" OR "}}
- {{/foreach}}
- {{:assign filter_condition=$filter_condition|cat:"0)"}}
- {{:assign condition=$condition|cat:" AND "|cat:$filter_condition}}
- {{:assign nb_immo=0}}
- {{:assign total_immo = 0}}
- {{#select
- trans.id as trans_id,
- trans.label as trans_label,
- trans.date as trans_date,
- line.id as immo_line_id,
- account.id as account_id,
- account.code as account_code,
- account.label as account_label,
- sum(line.debit) AS debit,
- 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
- WHERE !condition
- GROUP BY trans.id
- ORDER BY trans.date DESC;
- !condition=$condition
- }}
- {{* voir si l'écriture a été marquée ignorée *}}
- {{:assign ignore=false}}
- {{#load type="immo" assign="info_immo" where="$$.line = :line_id AND $$.status = 'ignored'" :line_id=$immo_line_id|intval}}
- {{:assign ignore=true}}
- {{/load}}
- {{if $ignore && $unhide == null}}
- {{:continue}}
- {{/if}}
-
- {{*
- TODO cas où :
- - il y a (au moins) une écriture d'avoir
- *}}
-
- {{* voir s'il existe une écriture qui solde l'immobilisation (voir ci-dessus) *}}
- {{#select
- count(*) AS count
- 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
- WHERE line.credit = :amount AND code = :account_code
- ;
- :amount = $debit
- :account_code = $account_code
- }}
- {{:assign count=$count}}
- {{/select}}
-
- {{* S'il y a plus d'une écriture de même montant on ne peut pas décider *}}
- {{if $count == 1}}
- {{:continue}}
- {{/if}}
-
- {{:assign trans_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$trans_id}}
- {{:assign compte_url="%s/acc/accounts/journal.php?id=%s&year=%s"|args:$admin_url:$account_id:$trans_id_year}}
- {{:assign nb_immo="%d+1"|math:$nb_immo}}
- {{:assign total_immo="%d+%d"|math:$total_immo:$debit}}
- {{:assign var="montant" from="sommes_immo.%s"|args:$account_code}}
- {{:assign var="sommes_immo.%s"|args:$account_code value="%d+%d"|math:$montant:$debit}}
-
-
- | {{:input type="checkbox" name="selected[]" value=$trans_id}} |
- #{{$trans_id}} |
- {{$trans_date|date_short}} |
- {{$trans_label}} |
- {{"%f"|math:$debit|money_html:false|raw}} |
- {{$account_code}} |
- {{$account_label}} |
-
- {{:linkbutton
- label="Modifier"
- href="ignore.html?immo_line_id=%s"|args:$immo_line_id
- shape="edit"
- target="_dialog"
- }}
- |
-
- {{/select}}
-
-
- {{if $total_immo != 0}}
- {{#foreach from=$sommes_immo|ksort key="code" item="value"}}
+
+
+ {{if $total_immo != 0}}
+ {{#foreach from=$sommes_immo|ksort key="code" item="value"}}
+
+ |
+ |
+ |
+ Total du compte {{$code}} |
+ {{$value|money_html|raw}} |
+ |
+ |
+ |
+
+ {{/foreach}}
|
|
|
- Total du compte {{$code}} |
- {{$value|money_html|raw}} |
+ Total des immobilisations |
+ {{$total_immo|money_html|raw}} |
|
|
|
- {{/foreach}}
-
- |
- |
- |
- Total des immobilisations |
- {{$total_immo|money_html|raw}} |
- |
- |
- |
-
- {{/if}}
-
-
- {{if $nb_immo == 0}}
- Aucune immobilisation
- {{/if}}
-
+ {{/if}}
+
+
+
+{{else}}
+ Aucune écriture d'immobilisation trouvée dans la comptabilité (compte {{$first_code}} et sous-comptes)
+{{/if}}
diff --git a/module.ini b/module.ini
index 8dcc149..62ee4af 100644
--- a/module.ini
+++ b/module.ini
@@ -1,5 +1,5 @@
name="Amortissements"
-description="Immobilisations et amortissements\nversion 0.40.1"
+description="Immobilisations et amortissements\nversion 0.40.4"
author="Jean-Christophe Engel"
author_url="https://gitea.zaclys.com/lesanges"
home_button=false
diff --git a/save_amort.html b/save_amort.html
index 2504ff8..43cc871 100644
--- a/save_amort.html
+++ b/save_amort.html
@@ -41,6 +41,11 @@
{{:assign amort_label=$line_label|or:$trans_label}}
{{/foreach}}
+{{* date de début du 1er exercice dans paheko *}}
+{{#years order="start_date" limit=1}}
+ {{:assign first_date=$start_date}}
+{{/years}}
+
{{if $total_amort == 0}}
{{* 1er amortissement *}}
{{* déterminer le compte d'amortissement en fonction du compte d'immobilisation *}}
@@ -55,8 +60,10 @@
{{:assign var=libelle value="Amortissement %s"|args:$ligne_immo.trans_label}}
{{else}}
{{* amortissements suivants *}}
- {{:assign date_debut=$date_debut|strtotime}}
- {{:assign date_debut="%d+(60*60*24)"|math:$date_debut|date:"Y-m-d"}}
+ {{if $date_debut != $first_date}}
+ {{:assign date_debut=$date_debut|strtotime}}
+ {{:assign date_debut="%d+(60*60*24)"|math:$date_debut|date:"Y-m-d"}}
+ {{/if}}
{{/if}}
{{*
@@ -219,13 +226,13 @@
{{if $years|count == 1}}
{{:assign var=selected_year value=$years.0.id}}
+ {{:assign var=date_amort value=$years.0.end_date}}
+ {{:include file="_calcul_dates.html" date_debut=$date_debut date_fin=$date_amort keep="nbjours"}}
+ {{* montant de l'amortissement *}}
+ {{:assign montant_amort="%f/%f/365*%d"|math:$ligne_immo.amount:$info_immo.duration:$nbjours|intval}}
+ {{:assign montant_amort="min(%f, %d-%d)"|math:$montant_amort:$ligne_immo.amount:$total_amort}}
{{/if}}
-{{:assign var=date_amort value=$years.0.end_date}}
-{{:include file="_calcul_dates.html" date_debut=$date_debut date_fin=$date_amort keep="nbjours"}}
-{{* montant de l'amortissement *}}
-{{:assign montant_amort="%f/%f/365*%d"|math:$ligne_immo.amount:$info_immo.duration:$nbjours|intval}}
-{{:assign montant_amort="min(%f, %d-%d)"|math:$montant_amort:$ligne_immo.amount:$total_amort}}
{{:assign var="debit_account.6811" value="6811 — Dot. aux amortissements des immobilisations"}}
{{:assign var="credit_account.%s"|args:$code_amort value="%s — "|args:$code_amort|cat:$amort_account_label}}
@@ -242,7 +249,10 @@
{{:input type="select" default=$selected_year name="id_year" label="Exercice" required=true default_empty="— Faire un choix —" options=$open_years}}
{{:input type="date" name="date_amort" label="Date" required=true default=$date_amort|date_short}}
{{:input type="text" name="designation" label="Libellé" required=true default=$amort_label size="50"}}
- {{:input type="money" name="montant" label="Montant" required=true default=$montant_amort}}
+ {{if $total_amort == 0 || $nbjours < 365 || $nbjours > 366}}
+ {{:assign msg="Montant calculé au prorata du nombre de jours d'amortissement dans l'exercice"}}
+ {{/if}}
+ {{:input type="money" name="montant" label="Montant" required=true default=$montant_amort help=$msg}}
{{:input
type="list"
name="debit_account"
diff --git a/upgrade.html b/upgrade.html
index 9da08ef..54429ca 100644
--- a/upgrade.html
+++ b/upgrade.html
@@ -38,5 +38,4 @@
{{:include file="_compare_version.tpl" nv1=$module_version nv2=$module.config.version keep="comp"}}
{{if $comp > 0}}
{{:save key="config" version=$module_version}}
- Nouvelle version enregistrée : {{$module_version}}
{{/if}}