Liaison immo avec écritures de crédits sur compte d'immobilisation
This commit is contained in:
parent
53695b6547
commit
310aa8cd07
7 changed files with 225 additions and 101 deletions
|
|
@ -66,12 +66,10 @@
|
|||
!condition=$condition
|
||||
}}
|
||||
{{:assign montant_immo=$debit}}
|
||||
|
||||
{{* voir si l'immo est prise en charge *}}
|
||||
{{#load type="immo" where="$$.line = :line_id" :line_id=$immo_id|intval}}
|
||||
{{:assign status=$status}}
|
||||
{{if $amount != null}}
|
||||
{{:assign montant_immo=$amount}}
|
||||
{{/if}}
|
||||
{{else}}
|
||||
{{:assign amortissable="nsp"}}
|
||||
{{:assign status="unknown"}}
|
||||
|
|
@ -80,32 +78,46 @@
|
|||
{{:continue}}
|
||||
{{/if}}
|
||||
|
||||
{{* voir s'il existe une écriture liée qui solde l'immobilisation *}}
|
||||
{{* 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
|
||||
trans.date as exit_date
|
||||
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 line.credit = :montant_immo
|
||||
AND acc.code = :account_code
|
||||
CASE links.id_related = :immo_id
|
||||
WHEN true THEN links.id_transaction
|
||||
WHEN false THEN links.id_related
|
||||
END as other_id,
|
||||
line.credit
|
||||
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_id AND line.credit > 0 AND acc.code = :account
|
||||
ORDER BY trans2.date, trans2.id
|
||||
;
|
||||
:trans_id = $trans_id
|
||||
:montant_immo = $montant_immo
|
||||
:account_code = $account_code
|
||||
:immo_id=$trans_id
|
||||
:account=$account_code
|
||||
assign="credit_immo."
|
||||
}}
|
||||
{{:assign status="archived"}}
|
||||
{{:assign exit_date=$exit_date}}
|
||||
{{:assign solde_immo="%d-%d"|math:$solde_immo:$credit}}
|
||||
{{/select}}
|
||||
|
||||
{{if $solde_immo == 0}}
|
||||
{{:assign status="archived"}}
|
||||
{{/if}}
|
||||
|
||||
{{if $status != "archived"}}
|
||||
{{: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}}
|
||||
|
|
@ -116,12 +128,7 @@
|
|||
{{* voir s'il y a une écriture de cession associée à cette immo *}}
|
||||
{{#select
|
||||
trans.id,
|
||||
trans.label,
|
||||
trans.date,
|
||||
line.id,
|
||||
line.debit,
|
||||
acc.code,
|
||||
acc.label
|
||||
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
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue