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 -*- *}}
{{* 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 *}}
{{:include file="_get_config.html" keep="config.prefixes"}}
{{:assign condition="("}}
{{#foreach from=$config.prefixes item="code"}}
{{:assign code=$code|cat:"%"|quote_sql}}
{{:assign condition=$condition|cat:"account.code LIKE "|cat:$code|cat:" OR "}}
{{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 acc2.code = account.code AND line.debit > 0 AND line.debit = line2.credit AND NOT (trans.status & 16)"}}
@ -42,7 +47,6 @@
{{/select}}
<section class="immobilisation">
{{:assign nb_immo=0}}
<table class="list">
<thead>
<tr>
@ -58,6 +62,7 @@
</tr>
</thead>
<tbody>
{{:assign nb_immo=0}}
{{#foreach from=$immo_archivees}}
{{: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}}

View file

@ -3,7 +3,14 @@
{{* Liste des immobilisations en cours ou amorties *}}
<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">
<thead>
@ -25,11 +32,14 @@
{{:assign condition="("}}
{{#foreach from=$config.prefixes item="code"}}
{{:assign code=$code|cat:"%"|quote_sql}}
{{:assign condition=$condition|cat:" account.code LIKE "|cat:$code|cat:" OR "}}
{{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,

View file

@ -3,7 +3,6 @@
{{* Liste des immobilisations non amortissables ou non (encore) gérées *}}
<section class="immobilisation">
{{:assign nb_immo=0}}
<p class="help">
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"}}
{{:assign condition="("}}
{{#foreach from=$config.prefixes item="code"}}
{{:assign code=$code|cat:"%"|quote_sql}}
{{:assign condition=$condition|cat:" account.code LIKE "|cat:$code|cat:" OR "}}
{{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,

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 == "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 == "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 $current == "config"}} class="current"{{/if}}><a href="config.html">Configuration</a></li>
</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"}}
{{elseif $type_immo == "other"}}
{{: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}}
{{:include file="_nav.html" current="index" subcurrent="%s"|args:$type_immo}}
@ -47,6 +49,8 @@
{{:include file="_immobilisations_autres.html"}}
{{elseif $type_immo == "archived"}}
{{:include file="_archives.html"}}
{{elseif $type_immo == "unfinished"}}
{{:include file="_unfinished.html"}}
{{elseif $type_immo == "managed" || $type_immo == "amortized"}}
{{:include file="_immobilisations.html"}}
{{/if}}