Correction erreur traitement sortie du bilan des immo importées de la balance initiale
This commit is contained in:
parent
4f1b0ffead
commit
75cb25fbb9
3 changed files with 186 additions and 189 deletions
|
|
@ -4,11 +4,13 @@
|
||||||
<p class="block help">
|
<p class="block help">
|
||||||
Cet onglet liste les immobilisations sorties du bilan car elles ne
|
Cet onglet liste les immobilisations sorties du bilan car elles ne
|
||||||
sont plus utilisées dans l'association (vétusté, fin de vie,
|
sont plus utilisées dans l'association (vétusté, fin de vie,
|
||||||
vente, cession...).
|
vente...).
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
{{:include file="_get_config.html" keep="module.config"}}
|
{{:include file="_get_config.html" keep="module.config"}}
|
||||||
|
|
||||||
|
{{if $module.table != null}}
|
||||||
|
|
||||||
{{* lister les immobilisations *}}
|
{{* lister les immobilisations *}}
|
||||||
{{:assign account_condition="("}}
|
{{:assign account_condition="("}}
|
||||||
{{#foreach from=$module.config.prefixes item="code"}}
|
{{#foreach from=$module.config.prefixes item="code"}}
|
||||||
|
|
@ -16,16 +18,16 @@
|
||||||
{{:assign account_condition=$account_condition|cat:"account.code LIKE "|cat:$code|cat:" OR "}}
|
{{:assign account_condition=$account_condition|cat:"account.code LIKE "|cat:$code|cat:" OR "}}
|
||||||
{{/foreach}}
|
{{/foreach}}
|
||||||
{{:assign account_condition=$account_condition|cat:"0)"}}
|
{{:assign account_condition=$account_condition|cat:"0)"}}
|
||||||
|
{{:assign status_condition="($$.status = 'archived')"}}
|
||||||
|
|
||||||
{{:assign filter_condition=" AND NOT ("}}
|
{{:assign filter_condition=" ("}}
|
||||||
{{#foreach from=$module.config.filters item="filter"}}
|
{{#foreach from=$module.config.filters item="filter"}}
|
||||||
{{:assign filter="%"|cat:$filter|cat:"%"|quote_sql}}
|
{{:assign filter="%"|cat:$filter|cat:"%"|quote_sql}}
|
||||||
{{:assign filter_condition=$filter_condition|cat:" trans_label LIKE "|cat:$filter|cat:" OR "}}
|
{{:assign filter_condition=$filter_condition|cat:" trans_label LIKE "|cat:$filter|cat:" OR "}}
|
||||||
{{/foreach}}
|
{{/foreach}}
|
||||||
{{:assign filter_condition=$filter_condition|cat:"0)"}}
|
{{:assign filter_condition=$filter_condition|cat:"0)"}}
|
||||||
{{:assign condition=$account_condition|cat:" AND debit > 0 AND NOT (trans.status & 16)"|cat:$filter_condition}}
|
{{: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_cessions = 0}}
|
{{:assign total_cessions = 0}}
|
||||||
|
|
||||||
{{#select
|
{{#select
|
||||||
|
|
@ -38,32 +40,31 @@
|
||||||
line.debit AS debit,
|
line.debit AS debit,
|
||||||
account.id as account_id,
|
account.id as account_id,
|
||||||
account.code as account_code,
|
account.code as account_code,
|
||||||
account.label as account_label
|
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
|
FROM acc_transactions AS trans
|
||||||
INNER JOIN acc_transactions_lines AS line ON line.id_transaction = trans.id
|
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_accounts AS account ON line.id_account = account.id
|
||||||
INNER JOIN acc_years AS years ON trans.id_year = years.id
|
INNER JOIN acc_years AS years ON trans.id_year = years.id
|
||||||
|
INNER JOIN !table AS info ON $$.line = line.id
|
||||||
WHERE !condition
|
WHERE !condition
|
||||||
ORDER BY trans.date DESC;
|
ORDER BY trans.date DESC;
|
||||||
|
!table=$module.table
|
||||||
!condition=$condition
|
!condition=$condition
|
||||||
assign="immo_line"
|
assign="immo_line"
|
||||||
}}
|
}}
|
||||||
|
|
||||||
{{* voir si l'immo est prise en charge *}}
|
{{:assign var="immo_line.date_mes" value=$doc_date_mes|or:$doc_date_achat|or:$trans_date}}
|
||||||
{{#load type="immo" where="$$.line = :line_id" :line_id=$immo_line_id assign="info_immo"}}
|
{{:assign var="immo_line.montant_immo" value=$doc_amount|or:$debit}}
|
||||||
{{:assign status=$status}}
|
|
||||||
{{else}}
|
|
||||||
{{:assign status=null}}
|
|
||||||
{{/load}}
|
|
||||||
{{if $status != "archived"}}
|
|
||||||
{{:continue}}
|
|
||||||
{{/if}}
|
|
||||||
{{:assign var="immo_line.date_mes" value=$info_immo.date_mes|or:$trans_date}}
|
|
||||||
{{:assign var="immo_line.montant_immo" value=$debit}}
|
|
||||||
|
|
||||||
{{* chercher le doc de sortie du bilan *}}
|
{{* chercher le doc de sortie du bilan *}}
|
||||||
{{:assign var="immo_line.exit_date" value=null}}
|
{{:assign var="immo_line.exit_date" value=null}}
|
||||||
{{#load type="exit_link" where="$$.immo_doc_id = :immo_doc_id" :immo_doc_id=$info_immo.id}}
|
{{#load type="exit_link" where="$$.immo_doc_id = :immo_doc_id" :immo_doc_id=$immo_doc_id}}
|
||||||
{{:assign exit_line_id=$exit_line_id}}
|
{{:assign exit_line_id=$exit_line_id}}
|
||||||
{{#select
|
{{#select
|
||||||
trans.date
|
trans.date
|
||||||
|
|
@ -81,7 +82,7 @@
|
||||||
{{:assign total_credits=0}}
|
{{:assign total_credits=0}}
|
||||||
{{#load
|
{{#load
|
||||||
type="credit_link"
|
type="credit_link"
|
||||||
where="$$.immo_doc_id = :immo_doc_id" :immo_doc_id = $info_immo.id
|
where="$$.immo_doc_id = :immo_doc_id" :immo_doc_id = $immo_doc_id
|
||||||
}}
|
}}
|
||||||
{{if $amount == null}}
|
{{if $amount == null}}
|
||||||
{{#select credit FROM acc_transactions_lines WHERE id = :credit_line_id;
|
{{#select credit FROM acc_transactions_lines WHERE id = :credit_line_id;
|
||||||
|
|
@ -94,37 +95,28 @@
|
||||||
{{/if}}
|
{{/if}}
|
||||||
{{/load}}
|
{{/load}}
|
||||||
{{:assign solde_immo="%d-%d"|math:$immo_line.montant_immo:$total_credits}}
|
{{:assign solde_immo="%d-%d"|math:$immo_line.montant_immo:$total_credits}}
|
||||||
|
|
||||||
{{if $solde_immo == 0}}
|
|
||||||
{{:assign status="archived"}}
|
|
||||||
{{/if}}
|
|
||||||
|
|
||||||
{{if $status != "archived"}}
|
|
||||||
{{:continue}}
|
|
||||||
{{/if}}
|
|
||||||
|
|
||||||
{{:assign nb_immo="%d+1"|math:$nb_immo}}
|
|
||||||
{{:assign var="montant" from="sommes_immo.%s"|args:$account_code}}
|
{{: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}}
|
{{: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 *}}
|
{{* voir s'il y a une écriture de cession associée à cette immo *}}
|
||||||
{{#select
|
{{#select
|
||||||
trans.id,
|
trans.id as cession_id,
|
||||||
line.debit
|
trans.label,
|
||||||
FROM acc_transactions_links AS link
|
line.id as line_id,
|
||||||
INNER JOIN acc_transactions AS trans ON (CASE
|
line.credit
|
||||||
WHEN link.id_transaction = :trans_id THEN link.id_related
|
FROM acc_transactions_lines AS line
|
||||||
WHEN link.id_related = :trans_id THEN link.id_transaction
|
INNER JOIN acc_transactions AS trans ON line.id_transaction = trans.id
|
||||||
END) = trans.id
|
INNER JOIN !table AS cession_link ON json_extract(cession_link.document, '$.cession_line_id') = line.id
|
||||||
INNER JOIN acc_transactions_lines AS line ON line.id_transaction = trans.id
|
INNER JOIN !table AS immo_doc ON json_extract(cession_link.document, '$.immo_doc_id') = immo_doc.id
|
||||||
INNER JOIN acc_accounts AS acc ON line.id_account = acc.id
|
WHERE json_extract(immo_doc.document, '$.line') = :immo_line_id
|
||||||
WHERE (link.id_transaction = :trans_id OR link.id_related = :trans_id) AND acc.code = 462
|
|
||||||
;
|
;
|
||||||
:trans_id = $trans_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" from="montant_cessions.%d"|args:$account_code}}
|
||||||
{{:assign var="montant_cessions.%d"|args:$account_code value="%d+%d"|math:$montant:$debit}}
|
{{:assign var="montant_cessions.%d"|args:$account_code value="%d+%d"|math:$montant:$credit}}
|
||||||
{{:assign total_cessions="%d+%d"|math:$total_cessions:$debit}}
|
{{:assign total_cessions="%d+%d"|math:$total_cessions:$credit}}
|
||||||
{{/select}}
|
{{/select}}
|
||||||
{{:assign var="immo_lines." value=$immo_line}}
|
{{:assign var="immo_lines." value=$immo_line}}
|
||||||
{{/select}}
|
{{/select}}
|
||||||
|
|
@ -151,17 +143,20 @@
|
||||||
{{: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}}
|
||||||
{{:assign total_immo="%d+%d"|math:$total_immo:$montant_immo}}
|
{{: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}}
|
||||||
<tr>
|
<tr>
|
||||||
<td class="num"><a href="{{$trans_url}}">#{{$trans_id}}</a></td>
|
<td class="num"><a href="{{$trans_url}}">#{{$trans_id}}</a></td>
|
||||||
<td>{{$date_mes|date_short}}</td>
|
<td>{{$date_mes|date_short}}</td>
|
||||||
<td>{{$exit_date|date_short}}</td>
|
<td>{{$exit_date|date_short}}</td>
|
||||||
<td>{{$trans_label}}{{if $line_label != null && $line_label != $trans_label}} — {{$line_label}}{{/if}}</td>
|
<td>{{$label_immo}}</td>
|
||||||
<td class="money">{{"%f"|math:$montant_immo|money_html:false|raw}}</td>
|
<td class="money">{{"%f"|math:$montant_immo|money_html:false|raw}}</td>
|
||||||
<td><a href="{{$compte_url}}">{{$account_code}}</a></td>
|
<td><a href="{{$compte_url}}">{{$account_code}}</a></td>
|
||||||
<td>{{$account_label}}</td>
|
<td>{{$account_label}}</td>
|
||||||
<td class="actions">
|
<td class="actions">
|
||||||
{{:linkbutton label="Modifier" href="exit_step1.html?immo_doc_id=%s&from=exit"|args:$info_immo.id shape="edit"}}
|
{{:linkbutton label="Modifier" href="exit_step1.html?immo_doc_id=%s&from=exit"|args:$immo_doc_id shape="edit"}}
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
{{/foreach}}
|
{{/foreach}}
|
||||||
|
|
@ -224,6 +219,8 @@
|
||||||
</tfoot>
|
</tfoot>
|
||||||
</table>
|
</table>
|
||||||
</section>
|
</section>
|
||||||
{{else}}
|
{{/if}}
|
||||||
|
{{/if}}
|
||||||
|
{{if $immo_lines|count == 0 || $module.table == null}}
|
||||||
<p class="block alert">Aucune immobilisation</p>
|
<p class="block alert">Aucune immobilisation</p>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
|
||||||
|
|
@ -21,7 +21,7 @@
|
||||||
{{:include file="_nav.html" current=$type_immo}}
|
{{:include file="_nav.html" current=$type_immo}}
|
||||||
|
|
||||||
{{* Mise à niveau *}}
|
{{* Mise à niveau *}}
|
||||||
{{:assign module_version="0.40.3"}}
|
{{:assign module_version="0.40.4"}}
|
||||||
{{:include file="upgrade.html" module_version=$module_version}}
|
{{:include file="upgrade.html" module_version=$module_version}}
|
||||||
|
|
||||||
{{* supprimer les documents sans écriture associée *}}
|
{{* supprimer les documents sans écriture associée *}}
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
name="Amortissements"
|
name="Amortissements"
|
||||||
description="Immobilisations et amortissements\nversion 0.40.3"
|
description="Immobilisations et amortissements\nversion 0.40.4"
|
||||||
author="Jean-Christophe Engel"
|
author="Jean-Christophe Engel"
|
||||||
author_url="https://gitea.zaclys.com/lesanges"
|
author_url="https://gitea.zaclys.com/lesanges"
|
||||||
home_button=false
|
home_button=false
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue