Prise en compte immobilisations en cours de constitution (comptes 23xx)

This commit is contained in:
Jean-Christophe Engel 2025-11-04 10:55:37 +01:00
parent 9ce3183601
commit ec6cf99507
6 changed files with 132 additions and 9 deletions

View file

@ -1,14 +1,19 @@
{{* -*- brindille -*- *}} {{* -*- brindille -*- *}}
{{* Liste des immobilisations archivées *}} {{* Liste des immobilisations archivées *}}
<p class="help">
Cette page liste les immobilisations sorties du bilan
</p>
{{* Immobilisation avec une écriture de sortie de bilan *}} {{* Immobilisation avec une écriture de sortie de bilan *}}
{{:include file="_get_config.html" keep="config.prefixes"}} {{:include file="_get_config.html" keep="config.prefixes"}}
{{:assign condition="("}} {{:assign condition="("}}
{{#foreach from=$config.prefixes item="code"}} {{#foreach from=$config.prefixes item="code"}}
{{:assign code=$code|cat:"%"|quote_sql}} {{if $code|substr:0:2 != "23"}}
{{:assign condition=$condition|cat:"account.code LIKE "|cat:$code|cat:" OR "}} {{:assign code=$code|cat:"%"|quote_sql}}
{{:assign condition=$condition|cat:"account.code LIKE "|cat:$code|cat:" OR "}}
{{/if}}
{{/foreach}} {{/foreach}}
{{:assign condition=$condition|cat:"0)"}} {{:assign condition=$condition|cat:"0)"}}
{{:assign condition=$condition|cat:" AND acc2.code = account.code AND line.debit > 0 AND line.debit = line2.credit AND NOT (trans.status & 16)"}} {{:assign condition=$condition|cat:" AND acc2.code = account.code AND line.debit > 0 AND line.debit = line2.credit AND NOT (trans.status & 16)"}}
@ -42,7 +47,6 @@
{{/select}} {{/select}}
<section class="immobilisation"> <section class="immobilisation">
{{:assign nb_immo=0}}
<table class="list"> <table class="list">
<thead> <thead>
<tr> <tr>
@ -58,6 +62,7 @@
</tr> </tr>
</thead> </thead>
<tbody> <tbody>
{{:assign nb_immo=0}}
{{#foreach from=$immo_archivees}} {{#foreach from=$immo_archivees}}
{{:assign trans_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$trans_id}} {{: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 compte_url="%s/acc/accounts/journal.php?id=%s&year=%s"|args:$admin_url:$account_id:$trans_id_year}}

View file

@ -3,7 +3,14 @@
{{* Liste des immobilisations en cours ou amorties *}} {{* Liste des immobilisations en cours ou amorties *}}
<section class="immobilisation"> <section class="immobilisation">
{{:assign nb_immo=0}}
<p class="help">
{{if $type_immo == "managed"}}
Cette page liste les immobilisations en cours d'amortissement
{{elseif $type_immo == "amortized"}}
Cette page liste les immobilisations dont l'amortissement est terminé
{{/if}}
</p>
<table class="list"> <table class="list">
<thead> <thead>
@ -25,11 +32,14 @@
{{:assign condition="("}} {{:assign condition="("}}
{{#foreach from=$config.prefixes item="code"}} {{#foreach from=$config.prefixes item="code"}}
{{:assign code=$code|cat:"%"|quote_sql}} {{if $code|substr:0:2 != "23"}}
{{:assign condition=$condition|cat:" account.code LIKE "|cat:$code|cat:" OR "}} {{:assign code=$code|cat:"%"|quote_sql}}
{{:assign condition=$condition|cat:" account.code LIKE "|cat:$code|cat:" OR "}}
{{/if}}
{{/foreach}} {{/foreach}}
{{:assign condition=$condition|cat:"0)"}} {{:assign condition=$condition|cat:"0)"}}
{{:assign condition=$condition|cat:" AND debit > 0 AND NOT (trans.status & 16)"}} {{:assign condition=$condition|cat:" AND debit > 0 AND NOT (trans.status & 16)"}}
{{:assign nb_immo=0}}
{{#select {{#select
trans.id as trans_id, trans.id as trans_id,

View file

@ -3,7 +3,6 @@
{{* Liste des immobilisations non amortissables ou non (encore) gérées *}} {{* Liste des immobilisations non amortissables ou non (encore) gérées *}}
<section class="immobilisation"> <section class="immobilisation">
{{:assign nb_immo=0}}
<p class="help"> <p class="help">
Cette page liste les écritures pas (encore) prises en charges par le module ou classées non amortissables Cette page liste les écritures pas (encore) prises en charges par le module ou classées non amortissables
@ -33,11 +32,14 @@
{{:include file="_get_config.html" keep="config.prefixes"}} {{:include file="_get_config.html" keep="config.prefixes"}}
{{:assign condition="("}} {{:assign condition="("}}
{{#foreach from=$config.prefixes item="code"}} {{#foreach from=$config.prefixes item="code"}}
{{:assign code=$code|cat:"%"|quote_sql}} {{if $code|substr:0:2 != "23"}}
{{:assign condition=$condition|cat:" account.code LIKE "|cat:$code|cat:" OR "}} {{:assign code=$code|cat:"%"|quote_sql}}
{{:assign condition=$condition|cat:" account.code LIKE "|cat:$code|cat:" OR "}}
{{/if}}
{{/foreach}} {{/foreach}}
{{:assign condition=$condition|cat:"0)"}} {{:assign condition=$condition|cat:"0)"}}
{{:assign condition=$condition|cat:" AND debit > 0 AND NOT (trans.status & 16)"}} {{:assign condition=$condition|cat:" AND debit > 0 AND NOT (trans.status & 16)"}}
{{:assign nb_immo=0}}
{{#select {{#select
trans.id as trans_id, trans.id as trans_id,

View file

@ -19,6 +19,7 @@
<li {{if $subcurrent == "managed"}}class="current"{{/if}}><a href="index.html?type_immo=managed">Amortissables</a></li> <li {{if $subcurrent == "managed"}}class="current"{{/if}}><a href="index.html?type_immo=managed">Amortissables</a></li>
<li {{if $subcurrent == "amortized"}}class="current"{{/if}}><a href="index.html?type_immo=amortized">Amorties</a></li> <li {{if $subcurrent == "amortized"}}class="current"{{/if}}><a href="index.html?type_immo=amortized">Amorties</a></li>
<li {{if $subcurrent == "archived"}}class="current"{{/if}}><a href="index.html?type_immo=archived">Sorties du bilan</a></li> <li {{if $subcurrent == "archived"}}class="current"{{/if}}><a href="index.html?type_immo=archived">Sorties du bilan</a></li>
<li {{if $subcurrent == "unfinished"}}class="current"{{/if}}><a href="index.html?type_immo=unfinished">En cours</a></li>
<li {{if $subcurrent == "other"}}class="current"{{/if}}><a href="index.html?type_immo=other">Autres</a></li> <li {{if $subcurrent == "other"}}class="current"{{/if}}><a href="index.html?type_immo=other">Autres</a></li>
<li {{if $current == "config"}} class="current"{{/if}}><a href="config.html">Configuration</a></li> <li {{if $current == "config"}} class="current"{{/if}}><a href="config.html">Configuration</a></li>
</ul> </ul>

101
_unfinished.html Normal file
View file

@ -0,0 +1,101 @@
{{* -*- brindille -*- *}}
{{* Liste des immobilisations en cours de constitution *}}
<section class="immobilisation">
<p class="help">
Cette page liste les immobilisations en cours de constitution, donc non amortissables
</p>
<table class="list">
<thead>
<tr>
<th></th>
<th>Date</th>
<th>Libellé</th>
<th class="nombre">Montant</th>
<th>N° compte</th>
<th>Compte</th>
<th class="actions"></th>
</tr>
</thead>
<tbody>
{{* lister les immobilisations en cours de constitution *}}
{{:include file="_get_config.html" keep="config.prefixes"}}
{{:assign condition="("}}
{{#foreach from=$config.prefixes item="code"}}
{{if $code|substr:0:2 == "23"}}
{{:assign code=$code|cat:"%"|quote_sql}}
{{:assign condition=$condition|cat:" account.code LIKE "|cat:$code|cat:" OR "}}
{{/if}}
{{/foreach}}
{{:assign condition=$condition|cat:"0)"}}
{{:assign condition=$condition|cat:" AND debit > 0 AND NOT (trans.status & 16)"}}
{{:assign nb_immo=0}}
{{#select
trans.id as trans_id,
trans.label as trans_label,
trans.date as trans_date,
line.id as immo_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 s'il existe une écriture qui solde l'immobilisation *}}
{{:assign ignore=false}}
{{#select
line.id AS line,
line.id_transaction AS trans,
line.debit,
line.label,
line2.id AS line2,
line2.id_transaction AS trans2,
line2.credit,
line2.label
FROM acc_transactions_lines AS line
INNER JOIN acc_accounts AS acc ON acc.id = line.id_account
INNER JOIN acc_transactions_lines AS line2 ON line2.id_account = acc.id
WHERE
line.id = :line_id
AND line2.credit = line.debit;
:line_id = $immo_id|intval
}}
{{:assign ignore=true}}
{{/select}}
{{if $ignore}}
{{: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}}
<tr>
<td class="num"><a href={{$trans_url}}>#{{$trans_id}}</a></td>
<td>{{$trans_date|date_short}}</td>
<td>{{$trans_label}}</td>
<td class="money">{{"%f"|math:$debit|money:false}}</td>
<td><a href={{$compte_url}}>{{$account_code}}</a></td>
<td>{{$account_label}}</td>
<td class="actions"></td>
</tr>
{{/select}}
</tbody>
</table>
{{if $nb_immo == 0}}
<p class="block alert">Aucune immobilisation</p>
{{/if}}
</section>

View file

@ -15,6 +15,8 @@
{{:admin_header title="Immobilisations archivées" custom_css="./style.css" current="module_amortization"}} {{:admin_header title="Immobilisations archivées" custom_css="./style.css" current="module_amortization"}}
{{elseif $type_immo == "other"}} {{elseif $type_immo == "other"}}
{{:admin_header title="Autres immobilisations" custom_css="./style.css" current="module_amortization"}} {{:admin_header title="Autres immobilisations" custom_css="./style.css" current="module_amortization"}}
{{elseif $type_immo == "unfinished"}}
{{:admin_header title="Immobilisations en cours" custom_css="./style.css" current="module_amortization"}}
{{/if}} {{/if}}
{{:include file="_nav.html" current="index" subcurrent="%s"|args:$type_immo}} {{:include file="_nav.html" current="index" subcurrent="%s"|args:$type_immo}}
@ -47,6 +49,8 @@
{{:include file="_immobilisations_autres.html"}} {{:include file="_immobilisations_autres.html"}}
{{elseif $type_immo == "archived"}} {{elseif $type_immo == "archived"}}
{{:include file="_archives.html"}} {{:include file="_archives.html"}}
{{elseif $type_immo == "unfinished"}}
{{:include file="_unfinished.html"}}
{{elseif $type_immo == "managed" || $type_immo == "amortized"}} {{elseif $type_immo == "managed" || $type_immo == "amortized"}}
{{:include file="_immobilisations.html"}} {{:include file="_immobilisations.html"}}
{{/if}} {{/if}}