diff --git a/_archives.html b/_archives.html index 56f6b14..da3f19c 100644 --- a/_archives.html +++ b/_archives.html @@ -5,7 +5,6 @@ Cette page liste les immobilisations sorties du bilan
-{{* Immobilisation avec une écriture de sortie de bilan *}} {{:include file="_get_config.html" keep="module.config"}} {{* lister les immobilisations *}} @@ -66,47 +65,54 @@ ORDER BY trans.date DESC; !condition=$condition }} - {{:assign montant_immo=$debit}} {{* voir si l'immo est prise en charge *}} - {{#load type="immo" where="$$.line = :line_id" :line_id=$immo_line_id|intval}} + {{#load type="immo" where="$$.line = :line_id" :line_id=$immo_line_id assign="info_immo"}} {{:assign status=$status}} {{else}} - {{:assign amortissable="nsp"}} - {{:assign status="unknown"}} + {{:assign status=null}} {{/load}} - {{if $status == "ignored"}} + {{if $status != "archived"}} {{:continue}} {{/if}} + {{:assign date_mes=$info_immo.date_mes|or:$trans_date}} + {{:assign montant_immo=$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}} {{* 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 *}} - {{:assign solde_immo=$montant_immo}} {{:assign credit_immo=null}} - {{#select - CASE links.id_related = :immo_trans_id - WHEN true THEN links.id_transaction - WHEN false THEN links.id_related - END as other_id, - line.credit, - MAX(trans2.date) as exit_date - FROM acc_transactions AS trans - INNER JOIN acc_transactions_links as links - ON (trans.id = links.id_transaction OR trans.id = links.id_related) - INNER JOIN acc_transactions_lines AS line on line.id_transaction = other_id - INNER JOIN acc_accounts AS acc ON line.id_account = acc.id - INNER JOIN acc_transactions AS trans2 ON trans2.id = other_id - WHERE trans.id = :immo_trans_id AND line.credit > 0 AND acc.code = :account - ORDER BY trans2.date, trans2.id - ; - :immo_trans_id=$trans_id - :account=$account_code - assign="credit_immo." + {{:assign total_credits=0}} + {{#load + type="credit_link" + where="$$.immo_doc_id = :immo_doc_id" :immo_doc_id = $info_immo.id }} - {{:assign solde_immo="%d-%d"|math:$solde_immo:$credit}} - {{:assign exit_date=$exit_date}} - {{/select}} + {{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"}} @@ -116,11 +122,6 @@ {{:continue}} {{/if}} - {{:assign nb=$credit_immo|count}} - {{:assign nb="%d-1"|math:$nb}} - {{:assign var="last_credit" from="credit_immo.%d"|args:$nb}} - {{:assign montant_immo=$last_credit.credit}} - {{: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}} @@ -149,12 +150,12 @@ {{/select}}