diff --git a/_archives.html b/_archives.html index b53260c..a4356d6 100644 --- a/_archives.html +++ b/_archives.html @@ -1,226 +1,221 @@ {{* -*- brindille -*- *}} {{* Liste des immobilisations sorties du bilan *}} -

- Cet onglet liste les immobilisations sorties du bilan car elles ne - sont plus utilisées dans l'association (vétusté, fin de vie, - vente...). +

+ Cette page liste les immobilisations sorties du bilan

{{:include file="_get_config.html" keep="module.config"}} -{{if $module.table != null}} +{{* lister les immobilisations *}} +{{:assign account_condition="("}} +{{#foreach from=$module.config.prefixes item="code"}} + {{:assign code=$code|cat:"%"|quote_sql}} + {{:assign account_condition=$account_condition|cat:"account.code LIKE "|cat:$code|cat:" OR "}} +{{/foreach}} +{{:assign account_condition=$account_condition|cat:"0)"}} - {{* lister les immobilisations *}} - {{:assign account_condition="("}} - {{#foreach from=$module.config.prefixes item="code"}} - {{:assign code=$code|cat:"%"|quote_sql}} - {{:assign account_condition=$account_condition|cat:"account.code LIKE "|cat:$code|cat:" OR "}} - {{/foreach}} - {{:assign account_condition=$account_condition|cat:"0)"}} - {{:assign status_condition="($$.status = 'archived')"}} +{{:assign filter_condition=" AND NOT ("}} +{{#foreach from=$module.config.filters item="filter"}} + {{:assign filter="%"|cat:$filter|cat:"%"|quote_sql}} + {{:assign filter_condition=$filter_condition|cat:" trans_label LIKE "|cat:$filter|cat:" OR "}} +{{/foreach}} +{{:assign filter_condition=$filter_condition|cat:"0)"}} +{{:assign condition=$account_condition|cat:" AND debit > 0 AND NOT (trans.status & 16)"|cat:$filter_condition}} - {{:assign filter_condition=" ("}} - {{#foreach from=$module.config.filters item="filter"}} - {{:assign filter="%"|cat:$filter|cat:"%"|quote_sql}} - {{:assign filter_condition=$filter_condition|cat:" trans_label LIKE "|cat:$filter|cat:" OR "}} - {{/foreach}} - {{:assign filter_condition=$filter_condition|cat:"0)"}} - {{:assign condition=$account_condition|cat:" AND debit > 0 AND NOT "|cat:$filter_condition|cat:" AND "|cat:$status_condition}} +
+ + + + + + + + + + + + + + - {{:assign total_cessions = 0}} + {{:assign nb_immo=0}} + {{:assign total_immo = 0}} + {{:assign total_cessions = 0}} - {{#select - trans.id as trans_id, - trans.label as trans_label, - trans.date as trans_date, - trans.id_year as trans_id_year, - line.id as immo_line_id, - line.label as line_label, - line.debit AS debit, - account.id as account_id, - account.code as account_code, - 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 - 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 - INNER JOIN !table AS info ON $$.line = line.id - WHERE !condition - ORDER BY trans.date DESC; - !table=$module.table - !condition=$condition - assign="immo_line" - }} - - {{:assign var="immo_line.date_mes" value=$doc_date_mes|or:$doc_date_achat|or:$trans_date}} - {{:assign var="immo_line.montant_immo" value=$doc_amount|or:$debit}} - - {{* chercher le doc de sortie du bilan *}} - {{:assign var="immo_line.exit_date" value=null}} - {{#load type="exit_link" where="$$.immo_doc_id = :immo_doc_id" :immo_doc_id=$immo_doc_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 var="immo_line.exit_date" value=$date}} - {{/select}} - {{/load}} - - {{* déduire le montant des écritures liées à l'immo courante au crédit du même compte *}} - {{:assign credit_immo=null}} - {{:assign total_credits=0}} - {{#load - type="credit_link" - where="$$.immo_doc_id = :immo_doc_id" :immo_doc_id = $immo_doc_id - }} - {{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:$immo_line.montant_immo:$total_credits}} - {{: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}} - - {{* voir s'il y a une écriture de cession associée à cette immo *}} {{#select - trans.id as cession_id, - trans.label, - line.id as line_id, - line.credit - FROM acc_transactions_lines AS line - INNER JOIN acc_transactions AS trans ON line.id_transaction = trans.id - INNER JOIN !table AS cession_link ON json_extract(cession_link.document, '$.cession_line_id') = line.id - INNER JOIN !table AS immo_doc ON json_extract(cession_link.document, '$.immo_doc_id') = immo_doc.id - WHERE json_extract(immo_doc.document, '$.line') = :immo_line_id - ; - !table=$module.table - :immo_line_id = $immo_line.immo_line_id - assign="cession_line" + trans.id as trans_id, + trans.label as trans_label, + trans.date as trans_date, + trans.id_year as trans_id_year, + line.id as immo_line_id, + line.label as line_label, + line.debit AS debit, + account.id as account_id, + account.code as account_code, + account.label as account_label + 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 + ORDER BY trans.date DESC; + !condition=$condition }} - {{:assign var="montant" from="montant_cessions.%d"|args:$account_code}} - {{:assign var="montant_cessions.%d"|args:$account_code value="%d+%d"|math:$montant:$credit}} - {{:assign total_cessions="%d+%d"|math:$total_cessions:$credit}} + + {{* voir si l'immo est prise en charge *}} + {{#load type="immo" where="$$.line = :line_id" :line_id=$immo_line_id assign="info_immo"}} + {{:assign status=$status}} + {{else}} + {{:assign status=null}} + {{/load}} + {{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}} + + {{* déduire le montant des écritures liées à l'immo courante au crédit du même compte *}} + {{:assign credit_immo=null}} + {{:assign total_credits=0}} + {{#load + type="credit_link" + where="$$.immo_doc_id = :immo_doc_id" :immo_doc_id = $info_immo.id + }} + {{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"}} + {{/if}} + + {{if $status != "archived"}} + {{: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}} + {{:assign total_immo="%d+%d"|math:$total_immo:$montant_immo}} + {{:assign var="montant" from="sommes_immo.%s"|args:$account_code}} + {{:assign var="sommes_immo.%s"|args:$account_code value="%d+%d"|math:$montant:$montant_immo}} + + {{* voir s'il y a une écriture de cession associée à cette immo *}} + {{#select + trans.id, + 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 + 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 (link.id_transaction = :trans_id OR link.id_related = :trans_id) AND acc.code = 462 + ; + :trans_id = $trans_id + }} + {{: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 total_cessions="%d+%d"|math:$total_cessions:$debit}} + {{/select}} + + + + + + + + + + + {{/select}} - {{:assign var="immo_lines." value=$immo_line}} - {{/select}} - - {{if $immo_lines|count > 0}} -
-
N°Mise en serviceDate sortieLibelléMontantN° compteCompte
#{{$trans_id}}{{$date_mes|date_short}}{{$exit_date|date_short}}{{$trans_label}}{{if $line_label != null && $line_label != $trans_label}} — {{$line_label}}{{/if}}{{"%f"|math:$montant_immo|money_html:false|raw}}{{$account_code}}{{$account_label}} + {{:linkbutton label="Modifier" href="exit_step1.html?immo_doc_id=%s"|args:$info_immo.id shape="edit"}} +
- + + + {{if $total_immo != 0}} + + + {{#foreach from=$sommes_immo|ksort key="code" item="value"}} - - - - - - - - + + + + + + + + - - - - {{:assign total_immo = 0}} - {{#foreach from=$immo_lines}} - {{: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 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}} - - - - - - - - - - - {{/foreach}} - - - {{if $total_immo != 0}} - - - {{#foreach from=$sommes_immo|ksort key="code" item="value"}} - - - - - - - - - - - {{/foreach}} - - - - - - - - - - - {{/if}} - {{if $total_cessions != 0}} - - - {{#foreach from=$montant_cessions|ksort key="code" item="value"}} - - - - - - - - - - - {{/foreach}} - - - - - - - - - - - {{/if}} - -
+
N°Mise en serviceDate sortieLibelléMontantN° compteCompteTotal du compte {{$code}}{{$value|money_html:false|raw}}
#{{$trans_id}}{{$date_mes|date_short}}{{$exit_date|date_short}}{{$label_immo}}{{"%f"|math:$montant_immo|money_html:false|raw}}{{$account_code}}{{$account_label}} - {{:linkbutton label="Modifier" href="exit_step1.html?immo_doc_id=%s&from=exit"|args:$immo_doc_id shape="edit"}} -
-
Total du compte {{$code}}{{$value|money_html:false|raw}}
Total des immobilisations{{$total_immo|money_html:false|raw}}
-
Cessions du compte {{$code}}{{$value|money_html:false|raw}}
Total des cessions{{$total_cessions|money_html:false|raw}}
-
+ {{/foreach}} + + + + + Total des immobilisations + {{$total_immo|money_html:false|raw}} + + + + + {{/if}} + {{if $total_cessions != 0}} + + + + {{#foreach from=$montant_cessions|ksort key="code" item="value"}} + + + + + Cessions du compte {{$code}} + {{$value|money_html:false|raw}} + + + + + {{/foreach}} + + + + + Total des cessions + {{$total_cessions|money_html:false|raw}} + + + + + {{/if}} + + + {{if $nb_immo == 0}} +

Aucune immobilisation

{{/if}} -{{/if}} -{{if $immo_lines|count == 0 || $module.table == null}} -

Aucune immobilisation

-{{/if}} + diff --git a/_calcul_dates.html b/_calcul_dates.html index ef868de..e4dd864 100644 --- a/_calcul_dates.html +++ b/_calcul_dates.html @@ -9,4 +9,4 @@ {{:assign ts_debut=$date_debut|strtotime}} {{:assign ts_fin=$date_fin|strtotime}} -{{:assign nbjours="round(1+abs(%d-%d)/(60*60*24), 0)"|math:$ts_fin:$ts_debut}} +{{:assign nbjours="1+abs(%d-%d)/(60*60*24)"|math:$ts_fin:$ts_debut}} diff --git a/_common_detach.html b/_common_detach.html index e7b6c7a..8c84736 100644 --- a/_common_detach.html +++ b/_common_detach.html @@ -17,7 +17,7 @@ id_transaction FROM acc_transactions_lines WHERE id = :line_id; - :line_id = $line_id + :line_id = $line_id|intval }} {{:assign trans_id=$id_transaction}} {{else}} diff --git a/_compare_version.tpl b/_compare_version.tpl deleted file mode 100644 index 88d8a40..0000000 --- a/_compare_version.tpl +++ /dev/null @@ -1,34 +0,0 @@ -{{* -*- brindille -*- *}} - -{{* - Comparer deux numéros de version n1.n2[.n3] - @param nv1 - @param nv2 - @result comp : -1 si nv1 < nv2, 0 si nv1 = nv2, 1 si nv1 > nv2 -*}} - -{{:assign nv1=$nv1|cat:"."}} -{{:assign nv2=$nv2|cat:"."}} -{{:assign var="tv1" value=$nv1|explode:"."}} -{{:assign var="tv2" value=$nv2|explode:"."}} - -{{:assign comp=0}} -{{:assign i=0}} -{{#foreach from=$tv1 item="e1"}} - {{:assign var="e2" from="tv2.%d"|args:$i}} - {{if $e1 < $e2}} - {{:assign comp=-1}} - {{:break}} - {{elseif $e1 > $e2}} - {{:assign comp=1}} - {{:break}} - {{/if}} - {{:assign i="%d+1"|math:$i}} -{{/foreach}} -{{* - cas où le premier tableau a moins d'éléments que le 2ème - et où les éléments présents dans les deux tableaux sont identiques - *}} -{{if $comp == 0 && $tv1|count < $tv2|count}} - {{:assign comp = -1}} -{{/if}} diff --git a/_get_amort_lines.html b/_get_amort_lines.html index cfa070a..dd115e8 100644 --- a/_get_amort_lines.html +++ b/_get_amort_lines.html @@ -4,7 +4,6 @@ lister les lignes d'amortissement liées à la ligne d'immobilisation @param immo_doc_id : id du doc associé à l'immobilisation @result linked_amort : lignes d'amortissement liées à la ligne d'immobilisation - @result sommes_amort : montant des amortissements par compte d'amortissement @result total_amort : montant total des amortissements de l'immobilisation @result created_amort : vrai s'il y a au moins un amortissement créé par le module dans la liste *}} @@ -40,8 +39,6 @@ {{:assign var="created_amort" value=true}} {{/if}} {{:assign var="linked_amort.%s_%d"|args:$amort_line.date:$amort_info.id value=$amort_line}} - {{:assign var="montant" from="sommes_amort.%s"|args:$account_code}} - {{:assign var="sommes_amort.%s"|args:$account_code value="%d+%d"|math:$montant:$amort_line.amount}} {{:assign total_amort="%d+%d"|math:$total_amort:$amort_line.amount}} {{/select}} {{/load}} diff --git a/_get_free_amort.html b/_get_free_amort.html index e71ec16..8a2649b 100644 --- a/_get_free_amort.html +++ b/_get_free_amort.html @@ -2,7 +2,7 @@ {{* lister les amortissement non rattachés à une immo - @param condition + @param filter_condition *}} {{#select line.id as line_id, @@ -18,9 +18,9 @@ FROM acc_transactions_lines AS line INNER JOIN acc_accounts AS account ON account.id = line.id_account INNER JOIN acc_transactions AS trans ON trans.id = line.id_transaction - WHERE credit > 0 AND !condition + WHERE credit > 0 AND (NOT trans.status & 16) AND !filter_condition ORDER BY trans.date, trans.label; - !condition=$condition + !filter_condition=$filter_condition assign="amort_line" }} {{* voir s'il existe des lignes d'immo liées à cette ligne d'amortissement *}} diff --git a/_immobilisations.html b/_immobilisations.html index cc0fc76..ab4d4d6 100644 --- a/_immobilisations.html +++ b/_immobilisations.html @@ -4,177 +4,166 @@ {{:include file="_get_config.html" keep="module.config"}} -

+

{{if $type_immo == "managed"}} - Cet onglet liste les immobilisations en cours d'amortissement. + Cette page liste les immobilisations en cours d'amortissement {{elseif $type_immo == "amortized"}} - Cet onglet liste les - immobilisations dont l'amortissement est terminé mais qui sont - encore utilisées dans l'association, donc encore présentes au - bilan. + Cette page liste les immobilisations dont l'amortissement est terminé {{/if}}

{{if $module.table != null}} - {{* lister les immobilisations *}} - {{:assign account_condition="("}} - {{#foreach from=$module.config.prefixes item="code"}} - {{:assign code=$code|cat:"%"|quote_sql}} - {{:assign account_condition=$account_condition|cat:" account.code LIKE "|cat:$code|cat:" OR "}} - {{/foreach}} - {{:assign account_condition=$account_condition|cat:"0)"}} - {{:assign status_condition="($$.status = 'managed' OR $$.status = 'amortized')"}} - {{:assign condition=$account_condition|cat:" AND line.debit > 0 AND "|cat:$status_condition}} + + + + + + + + + + + + + + + - {{#select - trans.id as immo_trans_id, - trans.label as trans_label, - trans.date as trans_date, - line.id as immo_line_id, - line.debit AS debit, - line.label AS line_label, - account.id as account_id, - account.code as account_code, - trans.id_year as trans_id_year, - info.id as immo_doc_id, - $$.duration as duration, - $$.label as doc_label, - $$.amount as doc_amount, - $$.date_achat as doc_date_achat, - $$.date as doc_date_mes, - $$.status as status - 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 - INNER JOIN !table AS info ON $$.line = line.id - WHERE !condition - ORDER BY COALESCE(doc_date_achat, trans_date) DESC; - !table=$module.table - !condition=$condition - assign="immo_line" - }} - {{:assign montant_immo=$doc_amount|or:$debit}} - {{* déduire le montant des écritures liées à l'immo courante au crédit du même compte *}} - {{#load - type="credit_link" - where="$$.immo_doc_id = :immo_doc_id" :immo_doc_id = $immo_doc_id - }} - {{if $amount == null}} - {{#select credit FROM acc_transactions_lines WHERE id = :credit_line_id; - :credit_line_id=$credit_line_id + {{* lister les immobilisations *}} + {{:assign account_condition="("}} + {{#foreach from=$module.config.prefixes item="code"}} + {{:assign code=$code|cat:"%"|quote_sql}} + {{:assign account_condition=$account_condition|cat:" account.code LIKE "|cat:$code|cat:" OR "}} + {{/foreach}} + {{:assign account_condition=$account_condition|cat:"0)"}} + {{:assign status_condition="($$.status = 'managed' OR $$.status = 'amortized')"}} + {{:assign condition=$account_condition|cat:" AND line.debit > 0 AND "|cat:$status_condition}} + + {{:assign nb_immo=0}} + {{:assign total_immo = 0}} + {{#select + trans.id as immo_trans_id, + trans.label as trans_label, + trans.date as trans_date, + line.id as immo_line_id, + line.debit AS debit, + line.label AS line_label, + account.id as account_id, + account.code as account_code, + trans.id_year as trans_id_year, + info.id as immo_doc_id, + $$.duration as duration, + $$.label as doc_label, + $$.amount as doc_amount, + $$.date_achat as doc_date_achat, + $$.date as doc_date_mes, + $$.status as status + 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 + INNER JOIN !table AS info ON $$.line = line.id + WHERE !condition + ORDER BY COALESCE(doc_date_achat, trans_date) DESC; + !table=$module.table + !condition=$condition + }} + {{if $status != "managed" && $status != "amortized"}} + {{:continue}} + {{/if}} + {{:assign trans_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$immo_trans_id}} + {{:assign compte_url="%s/acc/accounts/journal.php?id=%s&year=%s"|args:$admin_url:$account_id:$trans_id_year}} + {{:assign montant_immo=$doc_amount|or:$debit}} + {{:assign immo_date = $doc_date_achat|or:$trans_date}} + {{:assign label_immo=$doc_label|or:$trans_label}} + {{if $line_label != null && $line_label != $label_immo}} + {{:assign label_immo=$label_immo|cat:" — "|cat:$line_label}} + {{/if}} + + {{* déduire le montant des écritures liées à l'immo courante au crédit du même compte *}} + {{#load + type="credit_link" + where="$$.immo_doc_id = :immo_doc_id" :immo_doc_id = $immo_doc_id }} - {{:assign montant_immo="%d-%d"|math:$montant_immo:$credit}} - {{/select}} - {{else}} - {{:assign montant_immo="%d-%d"|math:$montant_immo:$amount}} - {{/if}} - {{/load}} - - {{if $montant_immo == 0}} - {{* Immobilisation soldée *}} - {{:continue}} - {{else}} - {{:assign var="immo_line.montant_immo" value=$montant_immo}} - {{/if}} - - {{* montant des amortissements liés à l'immobilisation *}} - {{:include file="./_get_amort_lines.html" immo_doc_id=$immo_doc_id keep="total_amort"}} - {{:assign amort_amount=$total_amort}} - - {{* classement par onglet *}} - {{if $type_immo == "managed" && $amort_amount >= $montant_immo}}{{:continue}}{{/if}} - {{if $type_immo == "amortized" && $amort_amount < $montant_immo}}{{:continue}}{{/if}} - {{:assign var="immo_line.amort_amount" value=$amort_amount}} - - {{:assign var="immo_lines." value=$immo_line}} - {{/select}} - - {{if $immo_lines|count > 0}} -
N°DateLibelléMontantDuréeAmortissementsValeur netteN° compte
- - - - - - - - - - - - - - - - {{:assign total_immo = 0}} - {{#foreach from=$immo_lines}} - {{:assign trans_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$immo_trans_id}} - {{:assign compte_url="%s/acc/accounts/journal.php?id=%s&year=%s"|args:$admin_url:$account_id:$trans_id_year}} - {{:assign immo_date = $doc_date_achat|or:$trans_date}} - {{: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 $amount == null}} + {{#select credit FROM acc_transactions_lines WHERE id = :credit_line_id; + :credit_line_id=$credit_line_id + }} + {{:assign montant_immo="%d-%d"|math:$montant_immo:$credit}} + {{/select}} + {{else}} + {{:assign montant_immo="%d-%d"|math:$montant_immo:$amount}} {{/if}} + {{/load}} - {{:assign total_immo="%d+%d"|math:$total_immo:$montant_immo}} - {{:assign var="montant" from="sommes_immo.%s"|args:$account_code}} - {{:assign var="sommes_immo.%s"|args:$account_code value="%d+%d"|math:$montant:$montant_immo}} + {{if $montant_immo == 0}} + {{* Immobilisation soldée *}} + {{:continue}} + {{/if}} - - - - - - - - - - - + {{* montant des amortissements liés à l'immobilisation *}} + {{:include file="./_get_amort_lines.html" immo_doc_id=$immo_doc_id keep="total_amort"}} + {{:assign amort_amount=$total_amort}} - {{/foreach}} + {{* classement par onglet *}} + {{if $type_immo == "managed" && $amort_amount >= $montant_immo}}{{:continue}}{{/if}} + {{if $type_immo == "amortized" && $amort_amount < $montant_immo}}{{:continue}}{{/if}} - - - {{if $total_immo != 0}} - - - {{#foreach from=$sommes_immo|ksort key="code" item="value"}} - - - - - - - - - - - - {{/foreach}} + {{:assign nb_immo="%d+1"|math:$nb_immo}} + {{:assign total_immo="%d+%d"|math:$total_immo:$montant_immo}} + {{:assign var="montant" from="sommes_immo.%s"|args:$account_code}} + {{:assign var="sommes_immo.%s"|args:$account_code value="%d+%d"|math:$montant:$montant_immo}} + + + + + + + + + + + + {{/select}} + + + {{if $total_immo != 0}} + + + {{#foreach from=$sommes_immo|ksort key="code" item="value"}} - - + + - {{/if}} - -
N°DateLibelléMontantDuréeAmortissementsValeur netteN° compte
#{{$immo_trans_id}}{{$immo_date|date_short}}{{$label_immo}}{{$montant_immo|money_html:false|raw}}{{if $duration != null}}{{$duration}}{{/if}}{{$amort_amount|money_html:false|raw}}{{"%d-%d"|math:$montant_immo:$amort_amount|money_html:false|raw}}{{$account_code}} - {{:linkbutton - label="Détails" - href="amortization.html?immo_doc_id=%s&type_immo=%s"|args:$immo_doc_id:$type_immo shape="eye" - }} -
-
Total du compte {{$code}}{{$value|money_html:false|raw}}
#{{$immo_trans_id}}{{$immo_date|date_short}}{{$label_immo}}{{$montant_immo|money_html:false|raw}}{{if $duration != null}}{{$duration}}{{/if}}{{$amort_amount|money_html:false|raw}}{{"%d-%d"|math:$montant_immo:$amort_amount|money_html:false|raw}}{{$account_code}} + {{:linkbutton + label="Détails" + href="amortization.html?immo_doc_id=%s&type_immo=%s"|args:$immo_doc_id:$type_immo shape="eye" + }} +
+
Total des immobilisations{{$total_immo|money_html|raw}}Total du compte {{$code}}{{$value|money_html:false|raw}}
- {{/if}} + {{/foreach}} + + + + Total des immobilisations + {{$total_immo|money_html|raw}} + + + + + + + {{/if}} + + {{/if}} -{{if $immo_lines|count == 0 || $module.table == null}} +{{if $nb_immo == 0 || $module.table == null}}

Aucune immobilisation

{{/if}} diff --git a/_immobilisations_autres.html b/_immobilisations_autres.html index d80acee..7a4b04c 100644 --- a/_immobilisations_autres.html +++ b/_immobilisations_autres.html @@ -3,11 +3,10 @@ {{* Liste des immobilisations non gérées ou non entièrement affectées *}} {{:include file="_get_config.html" keep="module.config"}} -

- Cet onglet liste les immobilisations créées en dehors du module et - pas encore prises en charge par le module ou les écritures de la - balance d'ouverture initiale dont le montant n'est pas encore - totalement affecté +

+ Cette page liste les immobilisations pas encore prises en charge + par le module ou les écritures de la balance d'ouverture initiale + dont le montant n'est pas encore totalement affecté

{{:assign saved_hides=$module.config.hides}} @@ -33,7 +32,7 @@ {{if $module.table != null}} {{:assign columns="$$.status as status, SUM($$.amount) as amount,"}} {{:assign table_join="LEFT JOIN !table AS info ON $$.line = line.id"}} - {{:assign doc_condition="($$.status IS NULL OR $$.status == 'managed' OR $$.status == 'ignored' OR $$.status == 'amortized')"}} + {{:assign doc_condition="($$.status IS NULL OR $$.status == 'managed' OR $$.status == 'ignored')"}} {{else}} {{:assign columns=""}} {{:assign table_join=""}} @@ -50,9 +49,24 @@ {{:assign account_condition=$account_condition|cat:" account.code LIKE "|cat:$code|cat:" OR "}} {{/foreach}} {{:assign account_condition=$account_condition|cat:"0)"}} -{{:assign condition=$account_condition|cat:" AND debit > 0 AND "|cat:$doc_condition}} +{{if $unhide == null}} + {{:assign filter_condition="NOT ("}} + {{#foreach from=$module.config.filters item="filter"}} + {{:assign filter="%"|cat:$filter|cat:"%"|quote_sql}} + {{:assign filter_condition=$filter_condition|cat:" trans_label LIKE "|cat:$filter|cat:" OR "}} + {{/foreach}} + {{:assign filter_condition=$filter_condition|cat:"0)"}} +{{else}} + {{:assign filter_condition="1"}} +{{/if}} + +{{:assign condition=$account_condition|cat:" AND debit > 0 AND NOT (trans.status & 16) AND "|cat:$filter_condition|cat:" AND "|cat:$doc_condition}} + +{{:assign nb_managed=0}} {{:assign nb_ignored=0}} +{{:assign nb_null=0}} +{{:assign nb_other=0}} {{#select trans.id as immo_trans_id, trans.label as trans_label, @@ -78,86 +92,92 @@ !table=$module.table !condition=$condition assign="immo_line" -}} - {{if $immo_line.status == 'managed' || $immo_line.status == 'amortized'}} + }} + {{* + parmi les immos gérées, ne conserver que celles dont le montant dans le doc est non nul + et inférieur au montant de l'écriture d'immo + *}} + {{if $immo_line.status == 'managed'}} {{if $immo_line.amount == null || $immo_line.amount == 0 || $immo_line.amount == $immo_line.debit}} {{:continue}} {{/if}} {{/if}} - - {{if $immo_line.status == 'ignored'}} + {{if $status == null}} + {{:assign nb_null="%d+1"|math:$nb_null}} + {{elseif $status == 'managed'}} + {{:assign nb_managed="%d+1"|math:$nb_managed}} + {{elseif $status == 'ignored'}} {{:assign nb_ignored="%d+1"|math:$nb_ignored}} + {{else}} + {{:assign nb_other="%d+1"|math:$nb_other}} {{/if}} - {{if $unhide == null && $immo_line.status == "ignored"}} - {{:continue}} - {{/if}} - - {{* vérifier si le libellé aurait pu être filtré *}} - {{#foreach from=$module.config.filters item="filter"}} - {{if $trans_label|strpos:$filter !== false}} - {{:assign var="immo_line.status" value="ignored"}} - {{:assign nb_ignored="%d+1"|math:$nb_ignored}} - {{/if}} - {{/foreach}} - - {{if $unhide == null && $immo_line.status == "ignored"}} - {{:continue}} - {{/if}} {{:assign var="immo_lines." value=$immo_line}} {{/select}} -{{if $nb_ignored > 0}} -
-
- {{:input type="checkbox" value=1 name="unhide" checked="%s"|args:$checked label="Afficher les écritures ignorées" }} -
-
-{{/if}} +
+
+ {{:input type="checkbox" value=1 name="unhide" checked="%s"|args:$checked label="Afficher les écritures ignorées" }} +
+
{{if $immo_lines|count > 0}} - - - - - - - - - - - - - - - - - {{#foreach from=$immo_lines item="line"}} - {{:assign trans_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$line.immo_trans_id}} - {{:assign compte_url="%s/acc/accounts/journal.php?id=%s&year=%s"|args:$admin_url:$line.account_id:$line.trans_id_year}} - {{:assign reste="%d-%d"|math:$line.debit:$line.amount}} - - - - - - - - - - - - - {{/foreach}} - -
N°LigneDateLibelléMontantAffectéResteN° compteCompte
#{{$line.immo_trans_id}}{{$line.immo_line_id}}{{$trans_date|date_short}}{{$line.trans_label}}{{if $line.line_label != null && $line.line_label != $line.trans_label}} — {{$line.line_label}}{{/if}}{{"%f"|math:$line.debit|money_html:false|raw}}{{"%f"|math:$line.amount|money_html:false|raw}}{{"%f"|math:$reste|money_html:false|raw}}{{$line.account_code}}{{$line.account_label}} - {{:linkbutton - label="Paramètres" - href="add_infos.html?immo_line_id=%s"|args:$immo_line_id - shape="settings" - target="_dialog" - }} -
+ + + + + + + + + + + + + + + + + {{#foreach from=$immo_lines item="line"}} + + {{if $unhide == null}} + {{if $status == "ignored"}} + {{:continue}} + {{/if}} + {{else}} + {{* vérifier si le libellé aurait pu être filtré *}} + {{#foreach from=$module.config.filters item="filter"}} + {{if $trans_label|strpos:$filter !== false}} + {{:assign status="ignored"}} + {{/if}} + {{/foreach}} + {{/if}} + + {{:assign trans_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$line.immo_trans_id}} + {{:assign compte_url="%s/acc/accounts/journal.php?id=%s&year=%s"|args:$admin_url:$line.account_id:$line.trans_id_year}} + {{:assign reste="%d-%d"|math:$line.debit:$line.amount}} + + + + + + + + + + + + + {{/foreach}} + +
N°LigneDateLibelléMontantAffectéResteN° compteCompte
#{{$line.immo_trans_id}}{{$line.immo_line_id}}{{$trans_date|date_short}}{{$line.trans_label}}{{if $line.line_label != null && $line.line_label != $line.trans_label}} — {{$line.line_label}}{{/if}}{{"%f"|math:$line.debit|money_html:false|raw}}{{"%f"|math:$line.amount|money_html:false|raw}}{{"%f"|math:$reste|money_html:false|raw}}{{$line.account_code}}{{$line.account_label}} + {{:linkbutton + label="Paramètres" + href="add_infos.html?immo_line_id=%s"|args:$immo_line_id + shape="settings" + target="_dialog" + }} +
{{else}}

Aucune immobilisation

{{/if}} @@ -169,10 +189,7 @@ function changeVisibility(evt, idcheck = 'f_unhide_1') { } (function () { - let unhide_button = document.getElementById('f_unhide_1'); - if (unhide_button != null) { - unhide_button.onclick = changeVisibility; - } + document.getElementById('f_unhide_1').onclick = changeVisibility; })(); diff --git a/_nav.html b/_nav.html index f8b6023..c81e1f3 100644 --- a/_nav.html +++ b/_nav.html @@ -13,7 +13,7 @@
  • Amortissables
  • Amorties
  • Sorties du bilan
  • -
  • En cours de constitution
  • +
  • En cours
  • À classer
  • Configuration
  • diff --git a/_unfinished.html b/_unfinished.html index 4c12d4d..edbd320 100644 --- a/_unfinished.html +++ b/_unfinished.html @@ -2,121 +2,33 @@ {{* Liste des immobilisations en cours de constitution *}} -

    - Cet onglet liste les immobilisations en cours de - constitution ; vous pouvez les sélectionner pour créer une - immobilisation amortissable (exemple : achat de matériaux pour - la construction d'un bâtiment destiné à être amorti) -

    +
    -{{:include file="_get_config.html" keep="module.config"}} -{{:assign saved_hides=$module.config.hides}} -{{:assign var="user_hides" from="saved_hides.%s"|args:$logged_user.id}} +

    + Cette page liste les immobilisations en cours de constitution, donc non amortissables +

    -{{if $_POST|count == 0}} - {{:assign unhide=$user_hides.unhide_unfinished}} -{{else}} - {{if $_POST.unhide == null}} - {{:assign unhide=0}} + {{:include file="_get_config.html" keep="module.config"}} + {{:assign saved_hides=$module.config.hides}} + {{:assign var="user_hides" from="saved_hides.%s"|args:$logged_user.id}} + + {{if $_POST|count == 0}} + {{:assign unhide=$user_hides.unhide_unfinished}} {{else}} - {{:assign unhide=1}} + {{if $_POST.unhide == null}} + {{:assign unhide=0}} + {{else}} + {{:assign unhide=1}} + {{/if}} + {{:assign var="user_hides.unhide_unfinished" value=$unhide"}} + {{:assign var="saved_hides.%s"|args:$logged_user.id value=$user_hides}} + {{:save key="config" hides=$saved_hides}} {{/if}} - {{:assign var="user_hides.unhide_unfinished" value=$unhide"}} - {{:assign var="saved_hides.%s"|args:$logged_user.id value=$user_hides}} - {{:save key="config" hides=$saved_hides}} -{{/if}} -{{if $unhide}} - {{:assign checked="checked"}} -{{/if}} - -{{* lister les immobilisations en cours de constitution *}} -{{:assign first_code=null}} -{{:assign accounts_condition="("}} -{{#foreach from=$module.config.unfinished item="elem"}} - {{if $elem.code != null}} - {{:assign code=$elem.code}} - {{else}} - {{:assign code=$elem}} - {{/if}} - {{if $first_code == null}} - {{:assign first_code=$code}} - {{/if}} - {{:assign code=$code|cat:"%"|quote_sql}} - {{:assign accounts_condition=$accounts_condition|cat:" account.code LIKE "|cat:$code|cat:" OR "}} -{{/foreach}} -{{:assign accounts_condition=$accounts_condition|cat:"0)"}} -{{:assign condition=$accounts_condition|cat:" AND debit > 0"}} - -{{:assign filter_condition=" NOT ("}} -{{#foreach from=$module.config.filters item="filter"}} - {{:assign filter="%"|cat:$filter|cat:"%"|quote_sql}} - {{:assign filter_condition=$filter_condition|cat:" trans_label LIKE "|cat:$filter|cat:" OR "}} -{{/foreach}} -{{:assign filter_condition=$filter_condition|cat:"0)"}} -{{:assign condition=$condition|cat:" AND "|cat:$filter_condition}} - -{{:assign nb_ignored=0}} -{{#select - trans.id as trans_id, - trans.label as trans_label, - trans.date as trans_date, - line.id as immo_line_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 - assign="immo_line" -}} - {{* voir si l'écriture a été marquée ignorée *}} - {{:assign var="immo_line.ignore" value=false}} - {{#load type="immo" assign="info_immo" where="$$.line = :line_id AND $$.status = 'ignored'" :line_id=$immo_line_id|intval}} - {{:assign var="immo_line.ignore" value=true}} - {{/load}} - {{if $immo_line.ignore}} - {{:assign nb_ignored="%d + 1"|math:$nb_ignored}} - {{/if}} - {{if $immo_line.ignore && $unhide == null}} - {{:continue}} + {{if $unhide}} + {{:assign checked="checked"}} {{/if}} - {{* - TODO cas où : - - il y a (au moins) une écriture d'avoir - *}} - - {{* voir s'il existe une écriture qui solde l'immobilisation (voir ci-dessus) *}} - {{#select - count(*) AS count - 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 - WHERE line.credit = :amount AND code = :account_code - ; - :amount = $debit - :account_code = $account_code - }} - {{:assign count=$count}} - {{/select}} - - {{* S'il y a plus d'une écriture de même montant on ne peut pas décider *}} - {{if $count == 1}} - {{:continue}} - {{/if}} - - {{:assign var="immo_lines." value=$immo_line}} -{{/select}} - -
    - {{if $immo_lines|count > 0}} +
    Transférer une ou plusieurs lignes vers une immobilisation amortissable

    @@ -142,90 +54,160 @@

    - {{/if}} - {{if $nb_ignored !== 0}}
    - {{:input type="checkbox" value=1 name="unhide" checked="%s"|args:$checked label="Afficher les écritures ignorées" }} + {{:input type="checkbox" value=1 name="unhide" checked="%s"|args:$checked label="Afficher toutes les écritures" }}
    - {{/if}} -
    + -{{if $immo_lines|count > 0}} -
    - - - - - - - - - - - - - - +
    N°DateLibelléMontantN° compteCompte
    + + + + + + + + + + + + + - {{:assign total_immo = 0}} - {{#foreach from=$immo_lines}} - {{: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 total_immo="%d+%d"|math:$total_immo:$debit}} - {{:assign var="montant" from="sommes_immo.%s"|args:$account_code}} - {{:assign var="sommes_immo.%s"|args:$account_code value="%d+%d"|math:$montant:$debit}} + {{* lister les immobilisations en cours de constitution *}} - - - - - - - - - - - {{/foreach}} + {{:assign accounts_condition="("}} + {{#foreach from=$module.config.unfinished item="elem"}} + {{if $elem.code != null}} + {{:assign code=$elem.code}} + {{else}} + {{:assign code=$elem}} + {{/if}} + {{:assign code=$code|cat:"%"|quote_sql}} + {{:assign accounts_condition=$accounts_condition|cat:" account.code LIKE "|cat:$code|cat:" OR "}} + {{/foreach}} + {{:assign accounts_condition=$accounts_condition|cat:"0)"}} + {{:assign condition=$accounts_condition|cat:" AND debit > 0 AND NOT (trans.status & 16)"}} - - - {{if $total_immo != 0}} - {{#foreach from=$sommes_immo|ksort key="code" item="value"}} - - - - - - - - - - - {{/foreach}} + {{:assign filter_condition=" NOT ("}} + {{#foreach from=$module.config.filters item="filter"}} + {{:assign filter="%"|cat:$filter|cat:"%"|quote_sql}} + {{:assign filter_condition=$filter_condition|cat:" trans_label LIKE "|cat:$filter|cat:" OR "}} + {{/foreach}} + {{:assign filter_condition=$filter_condition|cat:"0)"}} + {{:assign condition=$condition|cat:" AND "|cat:$filter_condition}} + {{:assign nb_immo=0}} + {{:assign total_immo = 0}} + {{#select + trans.id as trans_id, + trans.label as trans_label, + trans.date as trans_date, + line.id as immo_line_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 si l'écriture a été marquée ignorée *}} + {{:assign ignore=false}} + {{#load type="immo" assign="info_immo" where="$$.line = :line_id AND $$.status = 'ignored'" :line_id=$immo_line_id|intval}} + {{:assign ignore=true}} + {{/load}} + {{if $ignore && $unhide == null}} + {{:continue}} + {{/if}} + + {{* + TODO cas où : + - il y a (au moins) une écriture d'avoir + - il y a une écriture qui solde l'immo (montant = montant immo - avoir + *}} + + {{* voir s'il existe une écriture qui solde l'immobilisation (voir ci-dessus) *}} + {{#select + count(*) AS count + 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 + WHERE line.credit = :amount AND code = :account_code + ; + :amount = $debit + :account_code = $account_code + }} + {{:assign count=$count}} + {{/select}} + + {{* S'il y a plus d'une écriture de même montant on ne peut pas décider *}} + {{if $count == 1}} + {{: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}} + {{:assign total_immo="%d+%d"|math:$total_immo:$debit}} + {{:assign var="montant" from="sommes_immo.%s"|args:$account_code}} + {{:assign var="sommes_immo.%s"|args:$account_code value="%d+%d"|math:$montant:$debit}} + + + + + + + + + + + + {{/select}} + + + {{if $total_immo != 0}} + {{#foreach from=$sommes_immo|ksort key="code" item="value"}} - - + + - {{/if}} - -
    N°DateLibelléMontantN° compteCompte
    {{:input type="checkbox" name="selected[]" value=$trans_id}}#{{$trans_id}}{{$trans_date|date_short}}{{$trans_label}}{{"%f"|math:$debit|money_html:false|raw}}{{$account_label}} - {{:linkbutton - label="Modifier" - href="ignore.html?immo_line_id=%s"|args:$immo_line_id - shape="edit" - target="_dialog" - }} -
    Total du compte {{$code}}{{$value|money_html|raw}}
    {{:input type="checkbox" name="selected[]" value=$trans_id}}#{{$trans_id}}{{$trans_date|date_short}}{{$trans_label}}{{"%f"|math:$debit|money_html:false|raw}}{{$account_label}} + {{:linkbutton + label="Modifier" + href="ignore.html?immo_line_id=%s"|args:$immo_line_id + shape="edit" + target="_dialog" + }} +
    Total des immobilisations{{$total_immo|money_html|raw}}Total du compte {{$code}}{{$value|money_html|raw}}
    -
    -{{else}} -

    Aucune écriture d'immobilisation trouvée dans la comptabilité (compte {{$first_code}} et sous-comptes)

    -{{/if}} + {{/foreach}} + + + + + Total des immobilisations + {{$total_immo|money_html|raw}} + + + + + {{/if}} + + + {{if $nb_immo == 0}} +

    Aucune immobilisation

    + {{/if}} +
    diff --git a/add_infos.html b/add_infos.html index 9a45878..6e5fe46 100644 --- a/add_infos.html +++ b/add_infos.html @@ -200,9 +200,9 @@ Classement
    (obligatoire)
    - {{:input type="radio-btn" name="classify" value="managed" label="Immobilisation à amortir" default=$choix_defaut}} + {{:input type="radio-btn" name="classify" value="managed" label="Immobilisation à amortir" help="L'immobilisation sera classée parmi les immobilisations amortissables" default=$choix_defaut}} {{if $ligne_immo.date_achat > $first_date}} - {{:input type="radio-btn" name="classify" value="archived" label="Immobilisation sortie du bilan" default=$choix_defaut}} + {{:input type="radio-btn" name="classify" value="archived" label="Immobilisation sortie du bilan" help="L'immobilisation sera classée parmi les immobilisations sorties du bilan" default=$choix_defaut}} {{/if}} {{:input type="radio-btn" name="classify" value="ignored" label="Immobilisation à ignorer" help="L'écriture n'apparaitra plus dans la liste des immobilisations" default=$choix_defaut}}
    @@ -211,11 +211,11 @@
    Informations
    - {{:input type="date" name="date_achat" label="Date d'acquisition" default=$date_achat_defaut help="à modifier si nécessaire"}} - {{:input type="text" name="libelle" label="Libellé" default=$immo_label help="à modifier si nécessaire"}} - {{:input type="money" name="montant" label="Montant de l'immobilisation" required=true default=$reste help="à modifier si différent du montant de l'écriture d'immobilisation"}} {{:input type="number" name="duree" label="Durée d'amortissement" required=true min=1 suffix="année(s)"}} + {{:input type="money" name="montant" label="Montant de l'immobilisation" required=true default=$reste help="à modifier si différent du montant de l'écriture d'immobilisation"}} + {{:input type="date" name="date_achat" label="Date d'acquisition" default=$date_achat_defaut help="à modifier si nécessaire"}} {{:input type="date" name="date_mes" label="Date de mise en service" default=$date_mes_defaut help="à modifier si différente de la date d'acquisition"}} + {{:input type="text" name="libelle" label="Libellé" default=$immo_label help="à modifier si nécessaire"}}
    @@ -236,6 +236,7 @@ function toggleInputs(event) { const managed = classement_immo.querySelector('input[type=radio][value=managed]'); if (managed.checked) { g.toggle('.masquable', true); + document.getElementById('f_duree').focus(); } else { g.toggle('.masquable', false); } @@ -247,9 +248,6 @@ toggleInputs(); radios.forEach(radio => { radio.addEventListener("change", toggleInputs); }); - document.getElementById('f_date_achat').addEventListener("change", (e) => { - document.getElementById('f_date_mes').value = document.getElementById('f_date_achat').value; - }); })(); diff --git a/amortization.html b/amortization.html index 35af614..97ded50 100644 --- a/amortization.html +++ b/amortization.html @@ -12,28 +12,10 @@ {{:error message=$message}} {{/if}} -{{* - Supprimer l'association entre une écriture d'immobilisation et - une écriture au crédit du compte d'immobilisation -*}} -{{#form on="detach_credit"}} - {{:include file="_detach_credit.html" immo_doc_id=$_POST.immo_doc_id credit_line_id=$_POST.detach_credit}} - {{:redirect to="?immo_doc_id=%s&ok=1&msg=detach_avoir"|args:$_POST.immo_doc_id}} -{{/form}} - -{{* - Supprimer l'association entre une écriture d'amortissement et - une écriture d'immobilisation -*}} -{{#form on="detach_amort"}} - {{:include file="_detach_amort.html" immo_doc_id=$_POST.immo_doc_id amort_line_id=$_POST.detach_amort}} - {{:redirect to="?immo_doc_id=%s&ok=1&msg=detach_amort"|args:$_POST.immo_doc_id:}} -{{/form}} - {{:assign trans_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$ligne_immo.trans_id}} {{:assign date_debut=$info_immo.date_mes|or:$info_immo.date_achat|or:$ligne_immo.date_achat}} {{:assign label_immo=$info_immo.label|or:$ligne_immo.trans_label}} -{{if $label_immo|strpos:$ligne_immo.line_label === false}} +{{if $ligne_immo.line_label != null && $ligne_immo.line_label != $label_immo}} {{:assign label_immo=$label_immo|cat:" — "|cat:$ligne_immo.line_label}} {{/if}} {{if $info_immo.amount != null}} @@ -57,11 +39,7 @@ {{* lister les amortissements non attachés à une immo *}} {{:assign account_filter="28%"|quote_sql}} {{:assign filter_condition="account.code LIKE "|cat:$account_filter}} - - {{:assign date_amort=$date_debut|quote_sql}} - {{:assign date_condition="trans.date >= "|cat:$date_amort}} - {{:assign condition=$date_condition|cat:" AND "|cat:$filter_condition}} - {{:include file="./_get_free_amort.html" condition=$condition keep="free_amort_lines"}} + {{:include file="./_get_free_amort.html" filter_condition=$filter_condition keep="free_amort_lines"}} {{/if}} {{:admin_header title="Détails de l'immobilisation" custom_css="./style.css" current="module_amortization"}} @@ -157,64 +135,52 @@
    Montant à amortir
    {{"%f"|math:$solde|money_currency_html:false|raw}}
    {{/if}} -
    Montant des amortissements
    -
    {{$total_amort|money_currency_html:false|raw}}
    -
    Valeur nette résiduelle
    -
    {{$valeur_residuelle|money_currency_html:false|raw}}
    + {{if $valeur_residuelle > 0}} +
    Montant des amortissements
    +
    {{$total_amort|money_currency_html:false|raw}}
    +
    Valeur nette résiduelle
    +
    {{$valeur_residuelle|money_currency_html:false|raw}}
    + {{/if}} {{if $info_immo.duration != null && $valeur_residuelle > 0}} - {{:assign annuite="%f/%d"|math:$solde:$info_immo.duration}}
    Annuité estimée
    -
    {{"min(%d, %d)"|math:$valeur_residuelle:$annuite|money_currency_html:false|raw}} - {{if $annuite <= $valeur_residuelle}} - pour un exercice de 365 jours - {{/if}} -
    +
    {{"min(%d, %f/%d)"|math:$valeur_residuelle:$solde:$info_immo.duration|money_currency_html:false|raw}}
    {{/if}} -{{if $valeur_residuelle > 0}} - {{if ! $created_amort || $linked_immos != null}} -

    Avoirs

    +

    Avoirs

    + {{if $linked_immos != null}} -
    - - - - - - - - - - {{#foreach from=$linked_immos item="line"}} - {{:assign url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$line.trans_id}} - - - - - - - - {{/foreach}} - -
    N°DateLibelléMontant
    #{{$line.trans_id}}{{$line.date|date_short}}{{$line.label}}{{"%f"|math:$line.amount|money_currency_html:false|raw}} - {{if ! $created_amort}} - {{:button type="submit" name="detach_credit" label="Détacher" shape="minus" value=$line.credit_line_id}} - {{/if}} -
    - -
    + + + + + + + + + + {{#foreach from=$linked_immos item="line"}} + {{:assign url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$line.trans_id}} + + + + + + + + {{/foreach}} + +
    N°DateLibelléMontant
    #{{$line.trans_id}}{{$line.date|date_short}}{{$line.label}}{{"%f"|math:$line.amount|money_currency_html:false|raw}} + {{if $total_amort == 0}} + {{:linkbutton label="Détacher" href="detach_credit.html?immo_doc_id=%s&credit_line_id=%s"|args:$_GET.immo_doc_id:$line.credit_line_id shape="minus"}} + {{/if}} +
    {{/if}}

    Amortissements

    @@ -239,50 +205,47 @@ {{if $linked_amort != null}}
    -
    - - +
    + + + + + + + + + + + + + + {{#foreach from=$linked_amort|ksort item="line"}} + {{* données de l'écriture *}} + {{:assign trans_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$line.trans_id}} + {{:assign compte_url="%s/acc/accounts/journal.php?id=%s&year=%s"|args:$admin_url:$line.account_id:$line.year}} + {{:assign solde="%f-%d"|math:$solde:$line.amount}} - - - - - - - - + + + + + + + + - - - {{#foreach from=$linked_amort|ksort item="line"}} - {{* données de l'écriture *}} - {{:assign trans_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$line.trans_id}} - {{:assign compte_url="%s/acc/accounts/journal.php?id=%s&year=%s"|args:$admin_url:$line.account_id:$line.year}} - {{:assign solde="%f-%d"|math:$solde:$line.amount}} - - - - - - - - - - - {{/foreach}} - -
    N°DateLibelléMontantValeur netteN° compteCompte
    N°DateLibelléMontantValeur netteN° compteCompte#{{$line.trans_id}}{{$line.date|date_short}} + {{$line.trans_label}} + {{if $line.line_label != null && $line.line_label != $line.trans_label}} + — {{$line.line_label}} + {{/if}} + {{"%f"|math:$line.amount|money_html:false|raw}}{{"%f"|math:$solde|money_html:false|raw}}{{$line.account_code}}{{$line.account_label}} + {{if ! $created_amort}} + {{:linkbutton label="Détacher" href="detach_amort.html?immo_doc_id=%s&amort_line_id=%s"|args:$_GET.immo_doc_id:$line.line_id shape="minus"}} + {{/if}} +
    #{{$line.trans_id}}{{$line.date|date_short}} - {{$line.trans_label}} - {{if $line.line_label != null && $line.line_label != $line.trans_label}} - — {{$line.line_label}} - {{/if}} - {{"%f"|math:$line.amount|money_html:false|raw}}{{"%f"|math:$solde|money_html:false|raw}}{{$line.account_code}}{{$line.account_label}} - {{if ! $created_amort}} - {{:button type="submit" name="detach_amort" label="Détacher" shape="minus" value=$line.line_id}} - {{/if}} -
    - -
    + {{/foreach}} + +
    {{/if}} @@ -294,14 +257,7 @@ {{/if}} {{if $linked_amort == null}} -

    Aucun amortissement enregistré pour cette - immobilisation ; en fin d'exercice vous pouvez enregistrer un - nouvel amortissement à l'aide du bouton « Enregistrer un - amortissement »

    -{{elseif $_GET.type_immo == "managed"}} -

    En fin d'exercice vous pouvez enregistrer - un nouvel amortissement à l'aide du bouton « Enregistrer un - amortissement »

    +

    Aucun amortissement enregistré pour cette immobilisation ; utilisez le bouton « Enregistrer un amortissement » pour enregistrer un nouvel amortissement

    {{/if}} {{:form_errors}} diff --git a/attach_amort.html b/attach_amort.html index c03821b..a6d05bb 100644 --- a/attach_amort.html +++ b/attach_amort.html @@ -14,7 +14,7 @@ {{/if}} {{:assign label_immo=$info_immo.label|or:$ligne_immo.trans_label}} -{{if $label_immo|strpos:$ligne_immo.line_label === false}} +{{if $ligne_immo.line_label != null && $ligne_immo.line_label != $label_immo}} {{:assign label_immo=$label_immo|cat:" — "|cat:$ligne_immo.line_label}} {{/if}} {{:assign montant_immo=$info_immo.amount|or:$ligne_immo.amount}} @@ -130,7 +130,7 @@ {{/if}} {{if $_GET.from == "exit"}} - {{:redirect force="exit_step2.html?immo_doc_id=%s&from=exit&ok=1&msg=attach_amort"|args:$_GET.immo_doc_id}} + {{:redirect force="exit_step2.html?immo_doc_id=%s&ok=1&msg=attach_amort"|args:$_GET.immo_doc_id}} {{else}} {{:redirect force="amortization.html?immo_doc_id=%s&type_immo=%s&ok=1&msg=attach_amort"|args:$_GET.immo_doc_id:$status}} {{/if}} diff --git a/_attach_cession.html b/attach_cession.html similarity index 68% rename from _attach_cession.html rename to attach_cession.html index 6216bf6..8ffe851 100644 --- a/_attach_cession.html +++ b/attach_cession.html @@ -8,7 +8,7 @@ *}} {{* données de l'immobilisation *}} -{{:include file="_get_immo_data.html" immo_doc_id=$immo_doc_id keep="info_immo, ligne_immo, message"}} +{{:include file="_get_immo_data.html" immo_doc_id=$_GET.immo_doc_id keep="info_immo, ligne_immo, message"}} {{if $message != null}} {{:error message=$message}} {{/if}} @@ -18,7 +18,7 @@ id_transaction FROM acc_transactions_lines WHERE id = :line_id; - :line_id = $cession_line_id|intval + :line_id = $_GET.cession_line_id|intval }} {{:assign cession_id=$id_transaction}} {{else}} @@ -26,12 +26,14 @@ {{/select}} {{* Lier l'écriture de cession à l'écriture d'immobilisation *}} -{{:include file="_common_attach.html" immo_doc_id=$immo_doc_id trans_id=$cession_id}} +{{:include file="_common_attach.html" immo_doc_id=$_GET.immo_doc_id trans_id=$cession_id}} {{* enregistrer la liaison de l'écriture de cession *}} {{:save key=""|uuid type="cession_link" immo_doc_id=$info_immo.id - cession_line_id=$cession_line_id|intval + cession_line_id=$_GET.cession_line_id|intval }} + +{{:redirect force="exit_step3.html?immo_doc_id=%s&ok=1&msg=attach_cession"|args:$_GET.immo_doc_id}} diff --git a/attach_credit.html b/attach_credit.html index 59cc802..276dc76 100644 --- a/attach_credit.html +++ b/attach_credit.html @@ -14,22 +14,13 @@ {{/if}} {{:assign label_immo=$info_immo.label|or:$ligne_immo.trans_label}} -{{if $label_immo|strpos:$ligne_immo.line_label === false }} +{{if $ligne_immo.line_label != null && $ligne_immo.line_label != $label_immo}} {{:assign label_immo=$label_immo|cat:" — "|cat:$ligne_immo.line_label}} {{/if}} -{{if $info_immo.amount != null}} - {{:assign var="ligne_immo.amount" value=$info_immo.amount}} -{{/if}} - {{* déduire le montant des écritures liées à l'immo courante au crédit du même compte *}} {{:include file="_get_credit_lines.html" immo_doc_id=$_GET.immo_doc_id keep="total_credits"}} -{{:assign valeur_residuelle="%d-%d"|math:$ligne_immo.amount:$total_credits}} - -{{* lister les amortissements liés à l'immobilisation *}} -{{:include file="./_get_amort_lines.html" immo_doc_id=$_GET.immo_doc_id keep="linked_amort, total_amort, created_amort"}} -{{:assign valeur_residuelle="%d-%d"|math:$valeur_residuelle:$total_amort}} - +{{:assign solde_immo="%d-%d"|math:$ligne_immo.amount:$total_credits}} {{* chercher l'écriture au crédit du compte d'immobilisation *}} {{#select @@ -71,42 +62,53 @@ {{/if}} {{else}} {{:assign montant_credit=$_POST.montant|money_int}} - {{/if}} - - {{* vérifier que le montant saisi est inférieur à la valeur nette de l'écriture d'immobilisation *}} - {{if $montant_credit > $valeur_residuelle}} - {{:assign solde_nb="%f"|math:$valeur_residuelle|money_currency:false}} - {{:error message="Le montant de l'avoir ne peut être supérieur à la valeur nette de l'immobilisation (%s)"|args:$solde_nb}} - {{/if}} - - {{* vérifier que le montant saisi est inférieur au reste de l'écriture de crédit *}} - {{if $montant_credit > $reste}} - {{:assign reste_nb="%f"|math:$reste|money_currency:false}} - {{:error message="Le montant de l'avoir ne peut être supérieur au reste (%s)"|args:$reste_nb}} - {{/if}} - {{if $montant_credit == $credit_line.amount}} - {{:assign saved_credit=null}} - {{else}} - {{:assign saved_credit=$montant_credit}} + {{* vérifier que le montant saisi est inférieur au solde de l'écriture d'immobilisation *}} + {{if $montant_credit > $solde_immo}} + {{:assign solde_nb="%f"|math:$solde_immo|money_currency:false}} + {{:error message="Le montant de l'avoir ne peut être supérieur au montant de l'immobilisation (%s)"|args:$solde_nb}} + {{/if}} + {{* vérifier que le montant saisi est inférieur au reste de l'écriture de crédit *}} + {{if $montant_credit > $reste}} + {{:assign reste_nb="%f"|math:$reste|money_currency:false}} + {{:error message="Le montant de l'avoir ne peut être supérieur au reste (%s)"|args:$reste_nb}} + {{/if}} + {{if $montant_credit == $credit_line.amount}} + {{:assign saved_credit=null}} + {{else}} + {{:assign saved_credit=$montant_credit}} + {{/if}} {{/if}} {{* Lier l'écriture de crédit à l'écriture d'immobilisation *}} {{:include file="_common_attach.html" immo_doc_id=$_GET.immo_doc_id trans_id=$credit_line.trans_id}} - {{* enregistrer la liaison des lignes d'immo *}} - {{:save - key=""|uuid - type="credit_link" - immo_doc_id=$_GET.immo_doc_id|intval - credit_line_id=$_GET.credit_line_id|intval - amount=$saved_credit - }} +{{* + TODO ? vérifier le succès avant d'enregistrer le doc ? +*}} - {{if $_GET.from == "exit"}} - {{:redirect force="exit_step1.html?immo_doc_id=%s&from=%s&ok=1&msg=attach_avoir"|args:$_GET.immo_doc_id:$_GET.from}} - {{else}} - {{:redirect force="amortization.html?immo_doc_id=%s&ok=1&msg=attach_avoir"|args:$_GET.immo_doc_id}} - {{/if}} +{{* enregistrer la liaison des lignes d'immo *}} +{{:save + key=""|uuid + type="credit_link" + immo_doc_id=$_GET.immo_doc_id|intval + credit_line_id=$_GET.credit_line_id|intval + amount=$saved_credit +}} + + {{* +{{if $montant_credit == $solde_immo}} + {{:save + id=$_GET.immo_doc_id + status="archived" + }} +{{/if}} +*}} + +{{if $_GET.from == "exit"}} + {{:redirect force="exit_step1.html?immo_doc_id=%s&ok=1&msg=attach_avoir"|args:$_GET.immo_doc_id}} +{{else}} + {{:redirect force="amortization.html?immo_doc_id=%s&ok=1&msg=attach_avoir"|args:$_GET.immo_doc_id}} +{{/if}} {{/form}} {{:admin_header title="Écritures au crédit du compte d'immobilisation" custom_css="./style.css" current="module_amortization"}} diff --git a/_attach_exit.html b/attach_exit.html similarity index 69% rename from _attach_exit.html rename to attach_exit.html index e4aa5c8..2dda568 100644 --- a/_attach_exit.html +++ b/attach_exit.html @@ -8,7 +8,7 @@ *}} {{* données de l'immobilisation *}} -{{:include file="_get_immo_data.html" immo_doc_id=$immo_doc_id keep="info_immo, ligne_immo, message"}} +{{:include file="_get_immo_data.html" immo_doc_id=$_GET.immo_doc_id keep="info_immo, ligne_immo, message"}} {{if $message != null}} {{:error message=$message}} {{/if}} @@ -18,7 +18,7 @@ id_transaction FROM acc_transactions_lines WHERE id = :line_id; - :line_id = $exit_line_id|intval + :line_id = $_GET.exit_line_id|intval }} {{:assign rebut_id=$id_transaction}} {{else}} @@ -26,12 +26,14 @@ {{/select}} {{* Lier l'écriture de sortie à l'écriture d'immobilisation *}} -{{:include file="_common_attach.html" immo_doc_id=$immo_doc_id trans_id=$rebut_id}} +{{:include file="_common_attach.html" immo_doc_id=$_GET.immo_doc_id trans_id=$rebut_id}} {{* enregistrer la liaison de l'écriture de sortie *}} {{:save key=""|uuid type="exit_link" immo_doc_id=$info_immo.id - exit_line_id=$exit_line_id|intval + exit_line_id=$_GET.exit_line_id|intval }} + +{{:redirect to="exit_step4.html?immo_doc_id=%s&ok=1&msg=attach_exit"|args:$_GET.immo_doc_id}} diff --git a/balance_sheet_exit.html b/balance_sheet_exit.html index 4043c5d..a561c80 100644 --- a/balance_sheet_exit.html +++ b/balance_sheet_exit.html @@ -10,9 +10,15 @@ {{if $message != null}} {{:error message=$message}} {{/if}} +{{* TODO VÉRIFIER SI UTILE *}} +{{* +{{if $info_immo.duration == null || $info_immo.duration == 0}} + {{:error message="Vous devez renseigner la durée d'amortissement au préalable"}} +{{/if}} +*}} {{:assign label_immo=$info_immo.label|or:$ligne_immo.trans_label}} -{{if $label_immo|strpos:$ligne_immo.line_label === false}} +{{if $ligne_immo.line_label != null && $ligne_immo.line_label != $label_immo}} {{:assign label_immo=$label_immo|cat:" — "|cat:$ligne_immo.line_label}} {{/if}} @@ -130,7 +136,7 @@ {{/if}} {{/if}} - {{:redirect to="compute_exit_data.html?immo_doc_id=%s&year=%s&date_debut=%s&exit_date=%s"|args:$_GET.immo_doc_id:$selected_year:$ts_debut:$ts_exit}} + {{:redirect to="compute_exit_data.html?immo_doc_id=%s&amort_amount=%s&year=%s&date_debut=%s&exit_date=%s"|args:$_GET.immo_doc_id:$total_amort:$selected_year:$ts_debut:$ts_exit}} {{/form}} {{:admin_header title="Sortie de bilan" custom_css="./style.css" current="module_amortization"}} diff --git a/compute_exit_data.html b/compute_exit_data.html index 90b4c42..c824af5 100644 --- a/compute_exit_data.html +++ b/compute_exit_data.html @@ -4,6 +4,7 @@ Calculer les valeurs de la sortie et saisir le montant de la cession (optionnel) paramètres : @param immo_doc_id : id du doc associé à l'immo + @param amort_amount : montant des amortissements @param year : exercice de la date de sortie de l'immobilisation @param date_debut : date de début de la période d'amortissement complémentaire @param exit_date : date de sortie de l'immobilisation @@ -18,7 +19,7 @@ {{/if}} {{:assign label_immo=$info_immo.label|or:$ligne_immo.trans_label}} -{{if $label_immo|strpos:$ligne_immo.line_label === false}} +{{if $ligne_immo.line_label != null && $ligne_immo.line_label != $label_immo}} {{:assign label_immo=$label_immo|cat:" — "|cat:$ligne_immo.line_label}} {{/if}} @@ -34,10 +35,7 @@ {{* déduire le montant des écritures liées à l'immo courante au crédit du même compte *}} {{:include file="_get_credit_lines.html" immo_doc_id=$_GET.immo_doc_id keep="total_credits"}} {{:assign var="ligne_immo.amount" value="%d-%d"|math:$ligne_immo.amount:$total_credits}} - -{{* lister les amortissements liés à l'immobilisation *}} -{{:include file="./_get_amort_lines.html" immo_doc_id=$_GET.immo_doc_id keep="linked_amort, total_amort"}} -{{:assign valeur_nette="%f-%f"|math:$ligne_immo.amount:$total_amort}} +{{:assign valeur_nette="%f-%f"|math:$ligne_immo.amount:$_GET.amort_amount}} {{:assign amort_comp=0}} {{* amortissement complémentaire jqà date sortie *}} {{if $valeur_nette > 0}} @@ -55,7 +53,7 @@ {{/if}} {{/if}} - {{:redirect to="write_exit.html?immo_doc_id=%s&year=%s&date_debut=%s&exit_date=%s&cession=%s"|args:$_GET.immo_doc_id:$_GET.year:$_GET.date_debut:$_GET.exit_date:$_POST.montant_cession}} + {{:redirect to="write_exit.html?immo_doc_id=%s&amort_amount=%s&year=%s&date_debut=%s&exit_date=%s&cession=%s"|args:$_GET.immo_doc_id:$_GET.amort_amount:$_GET.year:$_GET.date_debut:$_GET.exit_date:$_POST.montant_cession}} {{/form}} {{:admin_header title="Sortie du bilan" custom_css="./style.css" current="module_amortization"}} @@ -89,7 +87,7 @@
    Durée de l'amortissement
    {{$info_immo.duration}} ans
    Montant des amortissements
    -
    {{$total_amort|money_currency_html:false|raw}} (à la date de début de l'exercice)
    +
    {{$_GET.amort_amount|money_currency_html:false|raw}} (à la date de début de l'exercice)
    Valeur nette résiduelle
    {{$valeur_nette|money_currency_html:false|raw}} (à la date de début de l'exercice)
    Date de sortie
    @@ -98,7 +96,7 @@
    Amortissement complémentaire
    {{$amort_comp|money_currency_html:false|raw}} (jusqu'à la date de sortie)
    Total des amortissements
    -
    {{"%f+%f"|math:$total_amort:$amort_comp|money_currency_html:false|raw}} (à la date de sortie)
    +
    {{"%f+%f"|math:$_GET.amort_amount:$amort_comp|money_currency_html:false|raw}} (à la date de sortie)
    Valeur nette résiduelle
    {{"%f-%f"|math:$valeur_nette:$amort_comp|money_currency_html:false|raw}} (à la date de sortie)
    {{/if}} diff --git a/config.html b/config.html index a8c91c9..eec7baf 100644 --- a/config.html +++ b/config.html @@ -129,7 +129,6 @@ {{/if}}
    -

    Comptes d'immobilisation amortissables

    Les immobilisations amortissables sont cherchées dans les comptes sélectionnés et leurs sous-comptes. @@ -139,7 +138,7 @@ Compte - + @@ -185,7 +184,7 @@ Compte - + diff --git a/_detach_amort.html b/detach_amort.html similarity index 55% rename from _detach_amort.html rename to detach_amort.html index 1ceed6a..b058716 100644 --- a/_detach_amort.html +++ b/detach_amort.html @@ -7,13 +7,12 @@ @param amort_line_id : id de la ligne d'amortissement *}} -{{:include file="_common_detach.html" immo_doc_id=$immo_doc_id line_id=$amort_line_id keep="info_immo"}} - +{{:include file="_common_detach.html" immo_doc_id=$_GET.immo_doc_id line_id=$_GET.amort_line_id keep="info_immo"}} {{* supprimer le doc de liaison entre les lignes *}} {{#load type="amort_link" where="$$.immo_doc_id = :immo_doc_id AND $$.amort_line_id = :amort_line_id" - :immo_doc_id=$immo_doc_id|intval - :amort_line_id = $amort_line_id|intval + :immo_doc_id=$_GET.immo_doc_id|intval + :amort_line_id = $_GET.amort_line_id|intval }} {{:delete id=$id}} {{/load}} @@ -25,3 +24,9 @@ status="managed" }} {{/if}} + +{{if $_GET.from == "exit"}} + {{:redirect force="exit_step2.html?immo_doc_id=%s&ok=1&msg=detach_amort"|args:$_GET.immo_doc_id}} +{{else}} + {{:redirect force="amortization.html?immo_doc_id=%s&ok=1&msg=detach_amort"|args:$_GET.immo_doc_id:}} +{{/if}} diff --git a/_detach_cession.html b/detach_cession.html similarity index 59% rename from _detach_cession.html rename to detach_cession.html index 0f230f0..eab7863 100644 --- a/_detach_cession.html +++ b/detach_cession.html @@ -7,13 +7,15 @@ @param cession_line_id : id de la ligne de cession *}} -{{:include file="_common_detach.html" immo_doc_id=$immo_doc_id line_id=$cession_line_id}} +{{:include file="_common_detach.html" immo_doc_id=$_GET.immo_doc_id line_id=$_GET.cession_line_id}} {{* supprimer le doc de liaison entre les lignes *}} {{#load type="cession_link" where="$$.immo_doc_id = :immo_doc_id AND $$.cession_line_id = :cession_line_id" - :immo_doc_id=$immo_doc_id|intval - :cession_line_id = $cession_line_id|intval + :immo_doc_id=$_GET.immo_doc_id|intval + :cession_line_id = $_GET.cession_line_id|intval }} {{:delete id=$id}} {{/load}} + +{{:redirect to="exit_step3.html?immo_doc_id=%s&ok=1&msg=detach_cession"|args:$_GET.immo_doc_id}} diff --git a/_detach_credit.html b/detach_credit.html similarity index 51% rename from _detach_credit.html rename to detach_credit.html index 2c36f1d..9665e85 100644 --- a/_detach_credit.html +++ b/detach_credit.html @@ -7,13 +7,19 @@ @param credit_line_id : id de la ligne de crédit *}} -{{:include file="_common_detach.html" immo_doc_id=$immo_doc_id line_id=$credit_line_id}} +{{:include file="_common_detach.html" immo_doc_id=$_GET.immo_doc_id line_id=$_GET.credit_line_id}} {{* supprimer le doc de liaison entre les lignes *}} {{#load type="credit_link" where="$$.immo_doc_id = :immo_doc_id AND $$.credit_line_id = :credit_line_id" - :immo_doc_id=$immo_doc_id|intval - :credit_line_id = $credit_line_id|intval + :immo_doc_id=$_GET.immo_doc_id|intval + :credit_line_id = $_GET.credit_line_id|intval }} {{:delete id=$id}} {{/load}} + +{{if $_GET.from == "exit"}} + {{:redirect force="exit_step1.html?immo_doc_id=%s&ok=1&msg=detach_avoir"|args:$_GET.immo_doc_id}} +{{else}} + {{:redirect force="amortization.html?immo_doc_id=%s&ok=1&msg=detach_avoir"|args:$_GET.immo_doc_id}} +{{/if}} diff --git a/_detach_exit.html b/detach_exit.html similarity index 61% rename from _detach_exit.html rename to detach_exit.html index b811cde..1a71701 100644 --- a/_detach_exit.html +++ b/detach_exit.html @@ -7,13 +7,15 @@ @param exit_line_id : id de la ligne de sortie de bilan *}} -{{:include file="_common_detach.html" immo_doc_id=$immo_doc_id line_id=$exit_line_id}} +{{:include file="_common_detach.html" immo_doc_id=$_GET.immo_doc_id line_id=$_GET.exit_line_id}} {{* supprimer le doc de liaison entre les lignes *}} {{#load type="exit_link" where="$$.immo_doc_id = :immo_doc_id AND $$.exit_line_id = :exit_line_id" - :immo_doc_id=$immo_doc_id|intval - :exit_line_id = $exit_line_id|intval + :immo_doc_id=$_GET.immo_doc_id|intval + :exit_line_id = $_GET.exit_line_id|intval }} {{:delete id=$id}} {{/load}} + +{{:redirect to="exit_step4.html?immo_doc_id=%s&ok=1&msg=detach_exit"|args:$_GET.immo_doc_id}} diff --git a/exit_step1.html b/exit_step1.html index f47333e..1154fcb 100644 --- a/exit_step1.html +++ b/exit_step1.html @@ -12,17 +12,8 @@ {{:error message=$message}} {{/if}} -{{* - Supprimer l'association entre une écriture d'immobilisation et - une écriture au crédit du compte d'immobilisation -*}} -{{#form on="detach_credit"}} - {{:include file="_detach_credit.html" immo_doc_id=$_POST.immo_doc_id credit_line_id=$_POST.detach_credit}} - {{:redirect to="?immo_doc_id=%s&from=exit&ok=1&msg=detach_avoir"|args:$_POST.immo_doc_id}} -{{/form}} - {{:assign label_immo=$info_immo.label|or:$ligne_immo.trans_label}} -{{if $label_immo|strpos:$ligne_immo.line_label === false}} +{{if $ligne_immo.line_label != null && $ligne_immo.line_label != $label_immo}} {{:assign label_immo=$label_immo|cat:" — "|cat:$ligne_immo.line_label}} {{/if}} {{:assign trans_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$ligne_immo.trans_id}} @@ -102,6 +93,7 @@ WHERE account.code = :code_amort AND line.credit > 0 + AND (NOT trans.status & 16) AND trans.date >= :immo_date ; :code_amort = $code_amort @@ -131,12 +123,12 @@ {{/select}} {{:admin_header title="Immobilisation sortie du bilan" custom_css="./style.css" current="module_amortization"}} - {{if $_GET.from == "exit"}} {{:assign current="other"}} {{else}} {{:assign current="archived"}} {{/if}} +{{:include file="_nav.html" current=$current subcurrent="exit"}} {{if $_GET.ok}} {{if $_GET.msg|match:"attach_avoir"}} @@ -147,8 +139,6 @@

    {{$msg}}

    {{/if}} -{{:form_errors}} -
    Immobilisation
    @@ -156,7 +146,7 @@
    Compte d'immobilisation
    {{$ligne_immo.account_code}} — {{$ligne_immo.account_label}}
    Montant de l'immobilisation
    -
    {{$montant_immo|money_currency_html:false|raw}}
    +
    {{$ligne_immo.amount|money_html|raw}}
    {{if $total_credits > 0}}
    Montant des avoirs
    {{"%f"|math:$total_credits|money_currency_html:false|raw}}
    @@ -172,48 +162,36 @@
    -{{if $credit_lines}} - -{{/if}} - -

    Écritures d'avoir attachées à l'immobilisation

    {{if $linked_immos != null}} - - - - - - - - - - - - - {{#foreach from=$linked_immos item="line"}} - {{:assign url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$line.trans_id}} - {{:assign compte_url="%s/acc/accounts/journal.php?id=%s&year=%s"|args:$admin_url:$line.account_id:$line.year}} - - - - - - - - - - {{/foreach}} - -
    N°DateLibelléMontantN° compteCompte
    #{{$line.trans_id}}{{$line.date|date_short}}{{$line.label}}{{"%f"|math:$line.amount|money_currency_html:false|raw}}{{$line.account_code}}{{$line.account_label}} - {{:button type="submit" name="detach_credit" label="Détacher" shape="minus" value=$line.credit_line_id}} -
    - -
    +

    Écritures d'avoir attachées à l'immobilisation

    + + + + + + + + + + + + {{#foreach from=$linked_immos item="line"}} + {{:assign url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$line.trans_id}} + {{:assign compte_url="%s/acc/accounts/journal.php?id=%s&year=%s"|args:$admin_url:$line.account_id:$line.year}} + + + + + + + + + + {{/foreach}} + +
    N°DateLibelléMontantN° compteCompte
    #{{$line.trans_id}}{{$line.date|date_short}}{{$line.label}}{{"%f"|math:$line.amount|money_currency_html:false|raw}}{{$line.account_code}}{{$line.account_label}} + {{:linkbutton label="Détacher" href="detach_credit.html?immo_doc_id=%s&credit_line_id=%s&from=exit"|args:$_GET.immo_doc_id:$line.credit_line_id shape="minus"}} +
    {{elseif $credit_lines}}

    Vous pouvez attacher une ou plusieurs écritures d'avoir à votre immobilisation @@ -224,6 +202,42 @@

    {{/if}} +{{if $credit_lines}} +

    Autres écritures au crédit du compte d'immobilisation

    + + + + + + + + + + + + + + {{#foreach from=$credit_lines}} + {{:assign credit_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:$year}} + + + + + + + + + + {{/foreach}} + +
    N°DateLibelléMontantN° compteCompte
    #{{$trans_id}}{{$date|date_short}}{{$trans_label}} + {{if $line_label != null && $line_label != $trans_label}} — {{$line_label}}{{/if}} + {{$amount|money_html|raw}}{{$account_code}}{{$account_label}} + {{:linkbutton label="Attacher" href="attach_credit.html?immo_doc_id=%s&credit_line_id=%s&from=exit"|args:$_GET.immo_doc_id:$credit_line_id shape="plus" target="_dialog"}} +
    +{{/if}} +

    {{:button type="submit" name="proceed" label="Poursuivre" shape="right" class="main"}} diff --git a/exit_step2.html b/exit_step2.html index 8eab21f..8235a02 100644 --- a/exit_step2.html +++ b/exit_step2.html @@ -20,17 +20,8 @@ {{:redirect to="exit_step3.html?immo_doc_id=%s&from=%s"|args:$_GET.immo_doc_id:$_GET.from}} {{/form}} -{{* - Supprimer l'association entre une écriture d'amortissement et - une écriture d'immobilisation -*}} -{{#form on="detach_amort"}} - {{:include file="_detach_amort.html" immo_doc_id=$_POST.immo_doc_id amort_line_id=$_POST.detach_amort}} - {{:redirect to="?immo_doc_id=%s&from=exit&ok=1&msg=detach_amort"|args:$_POST.immo_doc_id}} -{{/form}} - {{:assign label_immo=$info_immo.label|or:$ligne_immo.trans_label}} -{{if $label_immo|strpos:$ligne_immo.line_label === false}} +{{if $ligne_immo.line_label != null && $ligne_immo.line_label != $label_immo}} {{:assign label_immo=$label_immo|cat:" — "|cat:$ligne_immo.line_label}} {{/if}} {{:assign trans_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$ligne_immo.trans_id}} @@ -43,7 +34,6 @@ {{* lister les amortissements liés à l'immobilisation *}} {{:include file="./_get_amort_lines.html" immo_doc_id=$_GET.immo_doc_id keep="linked_amort, total_amort"}} -{{:assign vnr="%d-%d"|math:$solde:$total_amort}} {{* déterminer le compte d'amortissement en fonction du compte d'immobilisation *}} {{:include @@ -70,6 +60,7 @@ WHERE account.code = :code_amort AND line.credit > 0 + AND (NOT trans.status & 16) AND trans.date >= :immo_date ; :code_amort = $code_amort @@ -104,6 +95,7 @@ {{else}} {{:assign current="archived"}} {{/if}} +{{:include file="_nav.html" current=$current subcurrent="exit"}} {{if $_GET.ok}} {{if $_GET.msg|match:"attach_amort"}} @@ -121,7 +113,7 @@

    Compte d'immobilisation
    {{$ligne_immo.account_code}} — {{$ligne_immo.account_label}}
    Montant de l'immobilisation
    -
    {{$montant_immo|money_currency_html:false|raw}}
    +
    {{$ligne_immo.amount|money_html|raw}}
    {{if $total_credits > 0}}
    Montant des avoirs
    {{"%f"|math:$total_credits|money_currency_html:false|raw}}
    @@ -132,65 +124,53 @@
    Montant des amortissements
    {{$total_amort|money_currency_html:false|raw}}
    Valeur nette résiduelle
    -
    {{$vnr|money_currency_html:false|raw}}
    +
    {{"%d-%d"|math:$solde:$total_amort|money_currency_html:false|raw}}
    {{/if}} -{{if $free_amort_lines && $vnr > 0}} - -{{/if}} - -

    Écritures d'amortissement attachées à l'immobilisation

    {{if $linked_amort != null}} - - - +

    Écritures d'amortissement attachées à l'immobilisation

    +
    + + + + + + + + + + + + + {{#foreach from=$linked_amort|ksort item="line"}} + {{* données de l'écriture *}} + {{:assign trans_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$line.trans_id}} + {{:assign compte_url="%s/acc/accounts/journal.php?id=%s&year=%s"|args:$admin_url:$line.account_id:$line.year}} - - - - - - - - - - - {{#foreach from=$linked_amort|ksort item="line"}} - {{* données de l'écriture *}} - {{:assign trans_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$line.trans_id}} - {{:assign compte_url="%s/acc/accounts/journal.php?id=%s&year=%s"|args:$admin_url:$line.account_id:$line.year}} - - - - + + - - - - - - {{/foreach}} - -
    N°DateLibelléMontantN° compteCompte
    N°DateLibelléMontantN° compteCompte
    #{{$line.trans_id}}{{$line.date|date_short}} - {{if $line.line_label != null}} - {{$line.line_label}} - {{if $line.trans_label != $line.line_label}} - — {{$line.trans_label}} - {{/if}} - {{else}} - {{$line.trans_label}} + #{{$line.trans_id}}{{$line.date|date_short}} + {{if $line.line_label != null}} + {{$line.line_label}} + {{if $line.trans_label != $line.line_label}} + — {{$line.trans_label}} {{/if}} - {{"%f"|math:$line.amount|money_html:false|raw}}{{$line.account_code}}{{$line.account_label}} - {{:button type="submit" name="detach_amort" label="Détacher" shape="minus" value=$line.line_id}} -
    - -
    + {{else}} + {{$line.trans_label}} + {{/if}} + + {{"%f"|math:$line.amount|money_html:false|raw}} + {{$line.account_code}} + {{$line.account_label}} + + {{:linkbutton label="Détacher" href="detach_amort.html?immo_doc_id=%s&amort_line_id=%s&from=exit"|args:$_GET.immo_doc_id:$line.line_id shape="minus"}} + + + {{/foreach}} + + {{elseif $free_amort_lines}}

    Vous pouvez attacher une ou plusieurs écritures d'amortissement à l'immobilisation @@ -201,6 +181,55 @@

    {{/if}} + +{{if $free_amort_lines}} +

    Autres écritures d'amortissements

    + + + + + + + + + + + + + + + {{#foreach from=$free_amort_lines item="line"}} + {{:assign amort_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$line.amort_trans_id}} + {{:assign compte_url="%s/acc/accounts/journal.php?id=%s&year=%s"|args:$admin_url:$line.account_id:$line.year}} + + + + + + + + + + {{/foreach}} + +
    N°DateLibelléMontantN° compteCompte
    #{{$line.amort_trans_id}}{{$line.date|date_short}} + {{if $line.line_label != null}} + {{$line.line_label}} + {{if $line.trans_label != $line.line_label}} + — {{$line.trans_label}} + {{/if}} + {{else}} + {{$line.trans_label}} + {{/if}} +{{* + {{$line.trans_label}} + {{if $line.line_label != null && $line.line_label != $line.trans_label}} — {{$line.line_label}}{{/if}} +*}} + {{"%f"|math:$line.amort_amount|money_html:false|raw}}{{$line.account_code}}{{$line.account_label}} + {{:linkbutton label="Attacher" href="attach_amort.html?immo_doc_id=%s&amort_line_id=%s&from=exit"|args:$_GET.immo_doc_id:$line.amort_line_id shape="plus" target="_dialog"}} +
    +{{/if}} +

    {{:button type="submit" name="backward" label="Revenir à l'étape précédente" shape="left" class="main"}} diff --git a/exit_step3.html b/exit_step3.html index e77a5f7..fca3fec 100644 --- a/exit_step3.html +++ b/exit_step3.html @@ -20,17 +20,8 @@ {{:redirect to="exit_step4.html?immo_doc_id=%s&from=%s"|args:$_GET.immo_doc_id:$_GET.from}} {{/form}} -{{* - Supprimer l'association entre une écriture d'immobilisation et - une écriture de cession -*}} -{{#form on="detach_cession"}} - {{:include file="_detach_cession.html" immo_doc_id=$_POST.immo_doc_id cession_line_id=$_POST.detach_cession}} - {{:redirect to="exit_step3.html?immo_doc_id=%s&from=exit&ok=1&msg=detach_cession"|args:$_GET.immo_doc_id}} -{{/form}} - {{:assign label_immo=$info_immo.label|or:$ligne_immo.trans_label}} -{{if $label_immo|strpos:$ligne_immo.line_label === false}} +{{if $ligne_immo.line_label != null && $ligne_immo.line_label != $label_immo}} {{:assign label_immo=$label_immo|cat:" — "|cat:$ligne_immo.line_label}} {{/if}} {{:assign trans_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$ligne_immo.trans_id}} @@ -101,14 +92,15 @@ {{:assign var="free_cessions." value=$line}} {{/select}} {{/select}} +{{*:debug linked_cessions=$linked_cessions free_cessions=$free_cessions total_cession=$total_cession*}} {{:admin_header title="Immobilisation sortie du bilan" custom_css="./style.css" current="module_amortization"}} - {{if $_GET.from == "exit"}} {{:assign current="other"}} {{else}} {{:assign current="archived"}} {{/if}} +{{:include file="_nav.html" current=$current subcurrent="exit"}} {{if $_GET.ok}} {{if $_GET.msg|match:"attach_cession"}} @@ -119,8 +111,6 @@

    {{$msg}}

    {{/if}} -{{:form_errors}} -
    Immobilisation
    @@ -128,7 +118,7 @@
    Compte d'immobilisation
    {{$ligne_immo.account_code}} — {{$ligne_immo.account_label}}
    Montant de l'immobilisation
    -
    {{$montant_immo|money_currency_html:false|raw}}
    +
    {{$ligne_immo.amount|money_html|raw}}
    {{if $total_credits > 0}}
    Montant des avoirs
    {{"%f"|math:$total_credits|money_currency_html:false|raw}}
    @@ -148,70 +138,103 @@
    -{{if $linked_cessions == null && $free_cessions != null}} - -{{/if}} - -

    Écriture de cession attachée à l'immobilisation

    {{if $linked_cessions != null}} - - - +

    Écriture de cession attachée à l'immobilisation

    +
    + + + + + + + + + + + + + {{#foreach from=$linked_cessions item="line"}} + {{* données de l'écriture *}} + {{:assign trans_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$line.trans_id}} + {{:assign compte_url="%s/acc/accounts/journal.php?id=%s&year=%s"|args:$admin_url:$line.account_id:$line.year}} - - - - - - - - - - - {{#foreach from=$linked_cessions item="line"}} - {{* données de l'écriture *}} - {{:assign trans_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$line.trans_id}} - {{:assign compte_url="%s/acc/accounts/journal.php?id=%s&year=%s"|args:$admin_url:$line.account_id:$line.year}} - - - - + + - - - - - - {{/foreach}} - -
    N°DateLibelléMontantN° compteCompte
    N°DateLibelléMontantN° compteCompte
    #{{$line.trans_id}}{{$line.date|date_short}} - {{if $line.line_label != null}} - {{$line.line_label}} - {{if $line.trans_label != $line.line_label}} - — {{$line.trans_label}} - {{/if}} - {{else}} - {{$line.trans_label}} + #{{$line.trans_id}}{{$line.date|date_short}} + {{if $line.line_label != null}} + {{$line.line_label}} + {{if $line.trans_label != $line.line_label}} + — {{$line.trans_label}} {{/if}} - {{"%f"|math:$line.amount|money_html:false|raw}}{{$line.account_code}}{{$line.account_label}} - {{:button type="submit" name="detach_cession" label="Détacher" shape="minus" value=$line.line_id}} -
    - -
    + {{else}} + {{$line.trans_label}} + {{/if}} + + {{"%f"|math:$line.amount|money_html:false|raw}} + {{$line.account_code}} + {{$line.account_label}} + + {{:linkbutton label="Détacher" href="detach_cession.html?immo_doc_id=%s&cession_line_id=%s&from=exit"|args:$_GET.immo_doc_id:$line.line_id shape="minus"}} + + + {{/foreach}} + + {{elseif $free_cessions}}

    Vous pouvez attacher une écriture de cession à l'immobilisation

    {{else}}

    - Aucune écriture de cession + Aucune écriture de cession... que faire ?

    {{/if}} + +{{if $free_cessions}} +

    Autres écritures de cession

    + + + + + + + + + + + + + + + {{#foreach from=$free_cessions item="line"}} + {{:assign cession_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$line.trans_id}} + {{:assign compte_url="%s/acc/accounts/journal.php?id=%s&year=%s"|args:$admin_url:$line.account_id:$line.year}} + + + + + + + + + + {{/foreach}} + +
    N°DateLibelléMontantN° compteCompte
    #{{$line.trans_id}}{{$line.date|date_short}} + {{if $line.line_label != null}} + {{$line.line_label}} + {{if $line.trans_label != $line.line_label}} + — {{$line.trans_label}} + {{/if}} + {{else}} + {{$line.trans_label}} + {{/if}} + {{"%f"|math:$line.amount|money_html:false|raw}}{{$line.account_code}}{{$line.account_label}} + {{:linkbutton label="Attacher" href="attach_cession.html?immo_doc_id=%s&cession_line_id=%s&from=exit"|args:$_GET.immo_doc_id:$line.line_id shape="plus"}} +
    +{{/if}} +

    {{:button type="submit" name="backward" label="Revenir à l'étape précédente" shape="left" class="main"}} diff --git a/exit_step4.html b/exit_step4.html index 26c5f71..7868913 100644 --- a/exit_step4.html +++ b/exit_step4.html @@ -12,8 +12,25 @@ {{:error message=$message}} {{/if}} +{{#form on="backward"}} + {{:redirect to="exit_step3.html?immo_doc_id=%s&from=%s"|args:$_GET.immo_doc_id:$_GET.from}} +{{/form}} + +{{#form on="validate"}} + {{* mettre à jour l'état de l'immobilisation *}} + {{:save + key=$info_immo.key + status="archived" + }} + {{:redirect to="index.html?type_immo=archived"}} +{{/form}} + +{{#form on="finish"}} + {{:redirect to="index.html?type_immo=managed"}} +{{/form}} + {{:assign label_immo=$info_immo.label|or:$ligne_immo.trans_label}} -{{if $label_immo|strpos:$ligne_immo.line_label === false}} +{{if $ligne_immo.line_label != null && $ligne_immo.line_label != $label_immo}} {{:assign label_immo=$label_immo|cat:" — "|cat:$ligne_immo.line_label}} {{/if}} {{:assign trans_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$ligne_immo.trans_id}} @@ -43,7 +60,6 @@ {{else}} {{:assign montant_cession=$amount}} {{/if}} - {{:assign cession_doc_id=$id}} {{/load}} {{* chercher une écriture de sortie de bilan associée *}} @@ -68,42 +84,6 @@ assign="exit_line" }} {{/select}} - - {{* lignes de l'écriture de sortie *}} - {{:assign exit_amort=0}} - {{#select - line.label as line_label, - line.credit, - line.debit, - acc.id as account_id, - acc.code as account_code, - acc.label as account_label - FROM acc_transactions AS trans - 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 trans.id = :exit_trans_id; - :exit_trans_id = $exit_line.trans_id - assign="trans" - }} - {{:assign var="exit_trans.%s"|args:$account_code value=$trans}} - {{if $account_code|strpos:"28" === 0}} - {{:assign exit_amort="%d+%d"|math:$exit_amort:$debit}} - {{/if}} - {{/select}} - - {{if $exit_amort != $total_amort}} - {{:assign exit_amort_display=$exit_amort|money_currency:false|replace:" ":" "}} - {{:assign total_amort_display=$total_amort|money_currency:false|replace:" ":" "}} - {{:assign erreur=1}} - {{:assign message="Le montant des amortissement dans l'écriture de sortie (%s) est différent du total des amortissements attachés à l'immobilisation (%s)."|args:$exit_amort_display:$total_amort_display}} - {{/if}} - - {{if $exit_line.amount != $solde}} - {{:assign erreur=2}} - {{:assign exit_line_amount=$exit_line.amount|money_currency:false|replace:" ":" "}} - {{:assign solde_immo=$solde|money_currency:false|replace:" ":" "}} - {{:assign message="Le montant de de l'immobilisation dans l'écriture de sortie (%s) est différent du montant à amortir (%s)."|args:$exit_line_amount:$solde_immo}} - {{/if}} {{/if}} {{* @@ -154,6 +134,7 @@ }} {{* chercher des écritures d'amortissement correspondant au compte d'une immo sans doc associé *}} +{{* TODO écritures d'amort pas entièrement affectées *}} {{#select line.id as amort_line_id, line.credit as amort_amount, @@ -171,6 +152,7 @@ WHERE account.code = :code_amort AND line.credit > 0 + AND (NOT trans.status & 16) AND trans.date >= :immo_date ; :code_amort = $code_amort @@ -199,41 +181,13 @@ {{/if}} {{/select}} -{{#form on="backward"}} - {{:redirect to="exit_step3.html?immo_doc_id=%s&from=%s"|args:$_GET.immo_doc_id:$_GET.from}} -{{/form}} - -{{#form on="validate"}} - {{* mettre à jour l'état de l'immobilisation *}} - {{:save - key=$info_immo.key - status="archived" - }} - {{:redirect to="index.html?type_immo=archived"}} -{{/form}} - -{{#form on="cancel"}} - {{* supprimer les docs de cession et de sortie *}} - {{if $cession_doc_id != null}}{{:delete id=$cession_doc_id}}{{/if}} - {{if $exit_info != null}}{{:delete id=$exit_info.id}}{{/if}} - {{:redirect to="index.html?type_immo=other"}} -{{/form}} - -{{* - Supprimer l'association entre une écriture d'immobilisation et - une écriture de sortie de bilan -*}} -{{#form on="detach_exit"}} - {{:include file="_detach_exit.html" immo_doc_id=$_POST.immo_doc_id exit_line_id=$_POST.detach_exit}} - {{:redirect to="?immo_doc_id=%s&from=exit&ok=1&msg=detach_exit"|args:$_POST.immo_doc_id}} -{{/form}} - {{:admin_header title="Immobilisation sortie du bilan" custom_css="./style.css" current="module_amortization"}} {{if $_GET.from == "exit"}} {{:assign current="other"}} {{else}} {{:assign current="archived"}} {{/if}} +{{:include file="_nav.html" current=$current subcurrent="exit"}} {{if $_GET.ok}} {{if $_GET.msg|match:"attach_exit"}} @@ -251,7 +205,7 @@

    Compte d'immobilisation
    {{$ligne_immo.account_code}} — {{$ligne_immo.account_label}}
    Montant de l'immobilisation
    -
    {{$montant_immo|money_currency_html:false|raw}}
    +
    {{$ligne_immo.amount|money_html|raw}}
    {{if $total_credits > 0}}
    Montant des avoirs
    {{"%f"|math:$total_credits|money_currency_html:false|raw}}
    @@ -271,55 +225,50 @@ -{{if $erreur}} -

    {{$message}}
    - {{if $erreur == 1}} - Vérifiez si vous avez correctement attaché les écritures d'amortissement. - {{elseif $erreur == 2}} - Vérifiez si vous avez correctement attaché d'éventuelles écritures d'avoir. - {{/if}} -

    - - - +{{if $exit_line != null}} +

    Écriture de sortie du bilan attachée à l'immobilisation

    +
    Détails de l'écriture de sortie de bilan
    + - - - - + + + + + + - {{#foreach from=$exit_trans key="account_code" item="line"}} - {{:assign account_url="%s/acc/accounts/journal.php?id=%s&year=%s"|args:$admin_url:$line.account_id:$line.id_year}} - - - - - - - - {{/foreach}} + + + + + + + + +
    NuméroCompteDébitCréditN°Date LibelléMontantN° compteCompte
    {{$line.account_code}}{{$line.account_label}}{{$line.debit|money_currency:false}}{{$line.credit|money_currency:false}}{{$line.line_label}}
    #{{$exit_line.trans_id}}{{$exit_line.date|date_short}} + {{if $exit_line.line_label != null}} + {{$exit_line.line_label}} + {{else}} + {{$exit_line.trans_label}} + {{/if}} + {{"%f"|math:$exit_line.amount|money_html:false|raw}}{{$exit_line.account_code}}{{$exit_line.account_label}} + {{:linkbutton label="Détacher" href="detach_exit.html?immo_doc_id=%s&exit_line_id=%s&from=exit"|args:$_GET.immo_doc_id:$exit_line.line_id shape="minus"}} +
    +{{elseif $exit_lines}} +

    + Vous pouvez attacher une écriture de sortie du bilan à l'immobilisation +

    {{/if}} {{if $exit_lines}} - -{{/if}} - -

    Écriture de sortie de bilan attachée à l'immobilisation

    -{{if $exit_line != null}} - {{:assign exit_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$exit_line.trans_id}} - - - +

    Écritures non rattachées

    +
    + @@ -331,59 +280,37 @@ - - - - - - - - - - -
    N° Date
    #{{$exit_line.trans_id}}{{$exit_line.date|date_short}} - {{if $exit_line.line_label != null}} - {{$exit_line.line_label}} - {{else}} - {{$exit_line.trans_label}} - {{/if}} - {{"%f"|math:$exit_line.amount|money_html:false|raw}}{{$exit_line.account_code}}{{$exit_line.account_label}} - {{if ! $erreur}} - {{:button type="submit" name="detach_exit" label="Détacher" shape="minus" value=$exit_line.line_id}} - {{/if}} -
    - -
    -{{elseif $exit_lines}} -

    - Vous pouvez attacher une écriture de sortie de bilan à l'immobilisation -

    -{{/if}} -{{if $exit_lines == null && $exit_line == null}} -

    Aucune écriture de sortie de bilan avec un - montant de {{$solde|money_currency_html:false|raw}} au crédit du - compte {{$ligne_immo.account_code}} — {{$ligne_immo.account_label}} ; -
    - Vérifiez si vous avez correctement attaché d'éventuelles écritures d'avoir. -
    - Si vous avez supprimé l'écriture de sortie de bilan, il faut - la recréer avant de pouvoir classer cette immobilisation - « Sortie du bilan » ! -

    - {{:save - key=$info_immo.key - status=null - }} + {{#foreach from=$exit_lines item="line"}} + {{:assign exit_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$line.trans_id}} + {{:assign compte_url="%s/acc/accounts/journal.php?id=%s&year=%s"|args:$admin_url:$line.account_id:$line.year}} + + #{{$line.trans_id}} + {{$line.date|date_short}} + {{$line.trans_label}} + {{if $line.line_label != null && $line.line_label != $line.trans_label}} — {{$line.line_label}}{{/if}} + + {{"%f"|math:$line.amount|money_html:false|raw}} + {{$line.account_code}} + {{$line.account_label}} + + {{:linkbutton label="Attacher" href="attach_exit.html?immo_doc_id=%s&exit_line_id=%s&from=exit"|args:$_GET.immo_doc_id:$line.credit_line_id shape="plus"}} + + + {{/foreach}} + + +{{elseif $exit_line == null}} +

    Aucune écriture de sortie du bilan. Vérifiez l'attachement d'écriture d'avoir.

    {{/if}}

    {{:button type="submit" name="backward" label="Revenir à l'étape précédente" shape="left" class="main"}} - {{if $exit_line && ! $erreur}} + {{if $exit_line}} {{:button type="submit" name="validate" label="Terminer" shape="check" class="main"}} {{else}} - {{:button type="submit" name="cancel" label="Annuler" shape="delete" class="main"}} + {{:button type="submit" name="finish" label="Terminer" shape="export" class="main"}} {{/if}}

    diff --git a/filters.html b/filters.html index e59478d..7590c9e 100644 --- a/filters.html +++ b/filters.html @@ -31,7 +31,7 @@ Libellé - + diff --git a/ignore.html b/ignore.html index a721759..4c1b760 100644 --- a/ignore.html +++ b/ignore.html @@ -21,7 +21,6 @@ {{:error message="Il n'y a aucune écriture avec le numéro de ligne %s !"|args:$_GET.immo_line_id}} {{/select}} {{#load type="immo" assign="info_immo" where="$$.line = :line_id" :line_id=$_GET.immo_line_id|intval}}{{/load}} -{{:assign trans_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$ligne_immo.trans_id}} {{* Traiter l'envoi du formulaire *}} {{#form on="proceed"}} diff --git a/index.html b/index.html index 0bdbff8..f2fab2e 100644 --- a/index.html +++ b/index.html @@ -7,39 +7,36 @@ {{:assign type_immo=$_GET.type_immo}} {{/if}} -{{if $type_immo == "managed"}} - {{:admin_header title="Immobilisations en cours d'amortissement" custom_css="./style.css" current="module_amortization"}} -{{elseif $type_immo == "amortized"}} - {{:admin_header title="Immobilisations amorties" custom_css="./style.css" current="module_amortization"}} -{{elseif $type_immo == "archived"}} - {{:admin_header title="Immobilisations archivées" custom_css="./style.css" current="module_amortization"}} -{{elseif $type_immo == "other"}} - {{:admin_header title="Immobilisations à classer" custom_css="./style.css" current="module_amortization"}} -{{elseif $type_immo == "unfinished"}} - {{:admin_header title="Immobilisations en cours de constitution" custom_css="./style.css" current="module_amortization" subcurrent="unfinished"}} -{{/if}} + {{if $type_immo == "managed"}} + {{:admin_header title="Immobilisations en cours d'amortissement" custom_css="./style.css" current="module_amortization"}} + {{elseif $type_immo == "amortized"}} + {{:admin_header title="Immobilisations amorties" custom_css="./style.css" current="module_amortization"}} + {{elseif $type_immo == "archived"}} + {{:admin_header title="Immobilisations archivées" custom_css="./style.css" current="module_amortization"}} + {{elseif $type_immo == "other"}} + {{:admin_header title="Immobilisations à classer" custom_css="./style.css" current="module_amortization"}} + {{elseif $type_immo == "unfinished"}} + {{:admin_header title="Immobilisations en cours de constitution" custom_css="./style.css" current="module_amortization" subcurrent="unfinished"}} + {{/if}} + {{:include file="_nav.html" current=$type_immo}} -{{* Mise à niveau *}} -{{:assign module_version="0.41"}} -{{:include file="_upgrade.html" module_version=$module_version}} - -{{* supprimer les documents sans écriture associée *}} -{{:include file="_remove_orphan_docs.tpl"}} - {{if $_GET.ok}} {{if $_GET.msg|match:"immobilisation"}} {{:assign msg="Immobilisation enregistrée"}} {{elseif $_GET.msg|match:"suppr_infos"}} - {{:assign msg="Paramètres supprimés"}} + {{:assign msg="Informations supprimées"}} {{elseif $_GET.msg|match:"infos"}} - {{:assign msg="Paramètres enregistrés"}} + {{:assign msg="Informations enregistrées"}} {{/if}}

    {{$msg}}

    {{elseif $_GET.err}}

    Échec enregistrement immobilisation

    {{/if}} +{{* supprimer les documents sans écriture associée *}} +{{:include file="_remove_orphan_docs.tpl"}} + {{if $type_immo == "other"}} {{:include file="_immobilisations_autres.html"}} {{elseif $type_immo == "archived"}} @@ -49,4 +46,5 @@ {{elseif $type_immo == "managed" || $type_immo == "amortized"}} {{:include file="_immobilisations.html"}} {{/if}} + {{:admin_footer}} diff --git a/link_immo.html b/link_immo.html index df74f5a..43be090 100644 --- a/link_immo.html +++ b/link_immo.html @@ -4,53 +4,25 @@ Lister les écritures au crédit du compte de l'immobilisation paramètre et proposer de les attacher à l'immo paramètre @param immo_doc_id : document associé à l'immo - @param filter : si vrai ne montrer que les écritures du compte de l'immobilisation (et sous-comptes) - dans le cas contraire, montrer les écritures de tous les comptes d'immo *}} {{:include file="_get_immo_data.html" immo_doc_id=$_GET.immo_doc_id|intval keep="info_immo, ligne_immo, message"}} {{if $message != null}} {{:error message=$message}} {{/if}} - -{{:assign trans_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$ligne_immo.trans_id}} -{{:assign date_immo=$info_immo.date_mes|or:$info_immo.date_achat|or:$ligne_immo.date_achat}} -{{:assign montant_immo=$info_immo.amount|or:$ligne_immo.amount}} - -{{:assign label_immo=$info_immo.label|or:$ligne_immo.trans_label}} -{{if $label_immo|strpos:$ligne_immo.line_label ===false }} +{{:assign label_immo=$ligne_immo.trans_label}} +{{if $ligne_immo.line_label != null && $ligne_immo.line_label != $label_immo}} {{:assign label_immo=$label_immo|cat:" — "|cat:$ligne_immo.line_label}} {{/if}} -{{if $info_immo.amount != null}} - {{:assign var="ligne_immo.amount" value=$info_immo.amount}} -{{/if}} - -{{* déduire le montant des écritures liées à l'immo courante au crédit du même compte *}} -{{:include file="_get_credit_lines.html" immo_doc_id=$_GET.immo_doc_id keep="linked_immos, total_credits"}} -{{:assign solde="%d-%d"|math:$montant_immo:$total_credits}} {{* lister les écritures au crédit du compte de l'immobilisation *}} -{{:include file="_get_config.html" keep="module.config"}} {{if $_GET.filter}} - {{:assign account_code=$ligne_immo.account_code|cat:"%"|quote_sql}} - {{:assign account_condition="account.code LIKE "|cat:$account_code}} + {{:assign account_code=$ligne_immo.account_code|cat:"%"}} {{else}} - {{:assign account_condition="("}} - {{#foreach from=$module.config.prefixes item="account_code"}} - {{:assign account_code=$account_code|cat:"%"|quote_sql}} - {{:assign account_condition=$account_condition|cat:" account.code LIKE "|cat:$account_code|cat:" OR "}} - {{/foreach}} - {{#foreach from=$module.config.unfinished item="account_code"}} - {{:assign account_code=$account_code|cat:"%"|quote_sql}} - {{:assign account_condition=$account_condition|cat:" account.code LIKE "|cat:$account_code|cat:" OR "}} - {{/foreach}} - {{:assign account_condition=$account_condition|cat:"0)"}} + {{:assign account_code=$ligne_immo.account_code|substr:0:2|cat:"%"}} {{/if}} - -{{:assign date_immo=$info_immo.date_achat|or:$ligne_immo.date_achat}} - {{#select line.id as credit_line_id, line.id_transaction as credit_trans_id, @@ -67,9 +39,7 @@ INNER JOIN acc_transactions AS trans ON trans.id = line.id_transaction INNER JOIN acc_accounts AS account ON account.id = line.id_account INNER JOIN acc_years AS y ON y.id = trans.id_year - WHERE !account_condition - AND credit > 0 - AND trans.date > :date_immo + WHERE account.code LIKE :account_code AND credit > 0 AND credit_line_id NOT IN ( SELECT json_extract(link.document, '$.credit_line_id') AS credit_line_id FROM !table as link WHERE json_extract(link.document, '$.type') == "credit_link" @@ -77,14 +47,10 @@ SELECT json_extract(exit_link.document, '$.exit_line_id') AS line_id FROM !table as exit_link WHERE json_extract(exit_link.document, '$.type') == "exit_link") ORDER BY trans.date, trans.label; - !account_condition = $account_condition - !table = $module.table - :date_immo = $date_immo - assign="credit_line" + :account_code = $account_code + !table =$module.table + assign="other_immos." }} - {{if $credit_line.credit_amount < $solde}} - {{:assign var="other_immos." value=$credit_line}} - {{/if}} {{/select}} {{:admin_header title="Écritures au crédit du compte d'immobilisation" custom_css="./style.css" current="module_amortization"}} @@ -102,15 +68,15 @@ @@ -122,7 +88,7 @@
    Montant
    {{"%f"|math:$ligne_immo.amount|money_currency_html:false|raw}}
    Date de l'immobilisation
    -
    {{$date_immo|date_short}}
    +
    {{$ligne_immo.date_achat|date_short}}
    @@ -152,8 +118,8 @@ {{$line.account_code}} {{$line.account_label}} - - {{:linkbutton label="Attacher" href="attach_credit.html?credit_line_id=%d&immo_doc_id=%s&from=%s"|args:$line.credit_line_id:$_GET.immo_doc_id:$_GET.from shape="plus"}} + + {{:linkbutton label="Attacher" href="attach_credit.html?credit_line_id=%d&immo_doc_id=%s"|args:$line.credit_line_id:$_GET.immo_doc_id shape="plus"}} {{/foreach}} @@ -161,11 +127,7 @@

    Sélectionner une écriture d'avoir ou autre réduction du montant de l'acquisition pour l'associer à l'immobilisation

    {{else}} - {{if $_GET.filter}} -

    Aucune écriture au crédit du compte {{$ligne_immo.account_code}} et sous-comptes

    - {{else}} -

    Aucune écriture au crédit du compte {{$ligne_immo.account_code|substr:0:2}} et sous-comptes

    - {{/if}} +

    Aucune écriture au crédit du compte « {{$ligne_immo.account_code}} »

    {{/if}} {{:form_errors}} diff --git a/list_cessions.html b/list_cessions.html deleted file mode 100644 index 65a910d..0000000 --- a/list_cessions.html +++ /dev/null @@ -1,133 +0,0 @@ -{{* -*- brindille -*- *}} - -{{* - Lister les écritures de cession du compte de l'immobilisation - paramètre et proposer de les attacher à l'immo paramètre - @param immo_doc_id : document associé à l'immo -*}} -{{:include file="_get_immo_data.html" immo_doc_id=$_GET.immo_doc_id|intval keep="info_immo, ligne_immo, message"}} -{{if $message != null}} - {{:error message=$message}} -{{/if}} - -{{* - Enregistrer la liaison entre une écriture d'immobilisation et - une écriture de cession -*}} -{{#form on="attach_cession"}} - {{:include file="_attach_cession.html" immo_doc_id=$_POST.immo_doc_id cession_line_id=$_POST.attach_cession}} - {{:redirect force="exit_step3.html?immo_doc_id=%s&from=exit&ok=1&msg=attach_cession"|args:$_POST.immo_doc_id}} -{{/form}} - -{{:assign trans_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$ligne_immo.trans_id}} -{{:assign date_debut=$info_immo.date_mes|or:$info_immo.date_achat|or:$ligne_immo.date_achat}} -{{:assign label_immo=$info_immo.label|or:$ligne_immo.trans_label}} -{{if $label_immo|strpos:$ligne_immo.line_label ===false }} - {{:assign label_immo=$label_immo|cat:" — "|cat:$ligne_immo.line_label}} -{{/if}} -{{if $info_immo.amount != null}} - {{:assign var="ligne_immo.amount" value=$info_immo.amount}} -{{/if}} - -{{:assign total_cession=0}} -{{#select - line.id as line_id, - line.credit as amount, - line.label as line_label, - trans.id as trans_id, - trans.date as date, - trans.label as trans_label, - trans.id_year as year, - account.id as account_id, - account.code as account_code, - account.label as account_label - FROM acc_transactions_lines AS line - INNER JOIN acc_accounts AS account ON line.id_account = account.id - INNER JOIN acc_transactions AS trans ON line.id_transaction = trans.id - WHERE account.code LIKE :code_cession_new OR account.code LIKE :code_cession_old - ; - :code_cession_new = "757%" - :code_cession_old = "775%" - assign="line" -}} - {{#select - CASE WHEN links.id_related = :trans_id - THEN links.id_transaction - ELSE links.id_related - END as linked_id - FROM acc_transactions_links as links - WHERE links.id_transaction = :trans_id OR links.id_related = :trans_id - ; - :trans_id = $line.trans_id - }} - {{if $linked_id == $ligne_immo.trans_id}} - {{:assign total_cession="%d+%d"|math:$total_cession:$line.amount}} - {{:assign var="line.linked_id" value=$linked_id}} - {{:assign var="linked_cessions." value=$line}} - {{/if}} - {{else}} - {{:assign var="free_cessions." value=$line}} - {{/select}} -{{/select}} - -{{:admin_header title="Écritures de cession du compte d'immobilisation" custom_css="./style.css" current="module_amortization"}} - -{{:form_errors}} - -
    -
    -
    Immobilisation
    -
    #{{$ligne_immo.trans_id}} {{$label_immo}}
    -
    Montant
    -
    {{"%f"|math:$ligne_immo.amount|money_currency_html:false|raw}}
    -
    Date de l'immobilisation
    -
    {{$date_debut|date_short}}
    -
    -
    - -{{if $free_cessions}} -
    - - - - - - - - - - - - - - - {{#foreach from=$free_cessions item="line"}} - {{:assign cession_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$line.trans_id}} - {{:assign compte_url="%s/acc/accounts/journal.php?id=%s&year=%s"|args:$admin_url:$line.account_id:$line.year}} - - - - - - - - - - {{/foreach}} - -

    Sélectionner une écriture de cession pour l'associer à l'immobilisation

    -
    N°DateLibelléMontantN° compteCompte
    #{{$line.trans_id}}{{$line.date|date_short}} - {{if $line.line_label != null}} - {{$line.line_label}} - {{if $line.trans_label != $line.line_label}} - — {{$line.trans_label}} - {{/if}} - {{else}} - {{$line.trans_label}} - {{/if}} - {{"%f"|math:$line.amount|money_html:false|raw}}{{$line.account_code}}{{$line.account_label}} - {{:button type="submit" name="attach_cession" label="Attacher" shape="plus" value=$line.line_id}} -
    - -
    -{{/if}} diff --git a/list_exit.html b/list_exit.html deleted file mode 100644 index 1d60ea5..0000000 --- a/list_exit.html +++ /dev/null @@ -1,123 +0,0 @@ -{{* -*- brindille -*- *}} - -{{* - Lister les écritures de sortie de bilan du compte de l'immobilisation - paramètre et proposer de les attacher à l'immo paramètre - @param immo_doc_id : document associé à l'immo -*}} -{{:include file="_get_immo_data.html" immo_doc_id=$_GET.immo_doc_id|intval keep="info_immo, ligne_immo, message"}} -{{if $message != null}} - {{:error message=$message}} -{{/if}} - -{{* - Enregistrer la liaison entre une écriture d'immobilisation et - une écriture de sortie d'immobilisation -*}} -{{#form on="attach_exit"}} - {{:include file="_attach_exit.html" immo_doc_id=$_POST.immo_doc_id exit_line_id=$_POST.attach_exit}} - {{:redirect force="exit_step4.html?immo_doc_id=%s&from=exit&ok=1&msg=attach_exit"|args:$_POST.immo_doc_id}} -{{/form}} - -{{:assign trans_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$ligne_immo.trans_id}} -{{:assign date_debut=$info_immo.date_mes|or:$info_immo.date_achat|or:$ligne_immo.date_achat}} -{{:assign label_immo=$info_immo.label|or:$ligne_immo.trans_label}} -{{if $label_immo|strpos:$ligne_immo.line_label ===false }} - {{:assign label_immo=$label_immo|cat:" — "|cat:$ligne_immo.line_label}} -{{/if}} -{{if $info_immo.amount != null}} - {{:assign var="ligne_immo.amount" value=$info_immo.amount}} -{{/if}} - -{{* déduire le montant des écritures liées à l'immo courante au crédit du même compte *}} -{{:include file="_get_credit_lines.html" immo_doc_id=$_GET.immo_doc_id keep="linked_immos, total_credits"}} -{{:assign solde="%d-%d"|math:$ligne_immo.amount:$total_credits}} - -{{#select - trans.id as trans_id, - trans.label as trans_label, - trans.date as date, - trans.id_year as year, - line.id as credit_line_id, - line.label as line_label, - line.credit as amount, - acc.id as account_id, - acc.code as account_code, - acc.label as account_label - FROM acc_transactions AS trans - 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 - LEFT JOIN module_data_amortization AS mda ON json_extract(mda.document, '$.amort_line_id') = line.id - WHERE - acc.code = :acc_code - AND line.credit > 0 - AND credit_line_id NOT IN ( - SELECT json_extract(credit_link.document, '$.credit_line_id') AS line_id FROM !table as credit_link - WHERE json_extract(credit_link.document, '$.type') == "credit_link" - UNION - SELECT json_extract(exit_link.document, '$.exit_line_id') AS line_id FROM !table as exit_link - WHERE json_extract(exit_link.document, '$.type') == "exit_link" - ) - ; - :acc_code=$ligne_immo.account_code - !table =$module.table - assign="credit_line" - }} - {{if $credit_line.amount == $solde}} - {{:assign var="exit_lines." value=$credit_line}} - {{/if}} -{{/select}} - -{{:admin_header title="Écritures de sortie du bilan" custom_css="./style.css" current="module_amortization"}} - -{{:form_errors}} - -
    -
    -
    Immobilisation
    -
    #{{$ligne_immo.trans_id}} {{$label_immo}}
    -
    Montant
    -
    {{"%f"|math:$ligne_immo.amount|money_currency_html:false|raw}}
    -
    Date de l'immobilisation
    -
    {{$date_debut|date_short}}
    -
    -
    - -{{if $exit_lines}} -
    - - - - - - - - - - - - - - {{#foreach from=$exit_lines item="line"}} - {{:assign exit_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$line.trans_id}} - {{:assign compte_url="%s/acc/accounts/journal.php?id=%s&year=%s"|args:$admin_url:$line.account_id:$line.year}} - - - - - - - - - - {{/foreach}} - -

    Sélectionner une écriture de sortie de bilan pour l'associer à l'immobilisation

    -
    N°DateLibelléMontantN° compteCompte
    #{{$line.trans_id}}{{$line.date|date_short}}{{$line.trans_label}} - {{if $line.line_label != null && $line.line_label != $line.trans_label}} — {{$line.line_label}}{{/if}} - {{"%f"|math:$line.amount|money_html:false|raw}}{{$line.account_code}}{{$line.account_label}} - {{:button type="submit" name="attach_exit" label="Attacher" shape="plus" value=$line.credit_line_id}} -
    - -
    -{{/if}} diff --git a/modify_infos.html b/modify_infos.html index c65194a..7694e83 100644 --- a/modify_infos.html +++ b/modify_infos.html @@ -14,8 +14,6 @@ {{if $ligne_immo.line_label != null && $ligne_immo.line_label != $immo_label}} {{:assign immo_label=$immo_label|cat:" — "|cat:$ligne_immo.line_label}} {{/if}} -{{:assign date_achat_defaut=$info_immo.date_achat|or:$ligne_immo.date_achat}} -{{:assign date_mes_defaut=$info_immo.date_mes|or:$info_immo.date_achat|or:$ligne_immo.date_achat}} {{* déduire le montant des écritures liées à l'immo courante au crédit du même compte *}} {{:include file="_get_credit_lines.html" immo_doc_id=$_GET.immo_doc_id keep="linked_immos, total_credits"}} @@ -95,6 +93,44 @@ {{:assign status="managed"}} + {{* écritures de crédit *}} + {{#foreach from=$linked_immos item="line"}} + {{if ! $_POST.credit_id|has:$line.trans_id}} + {{:assign var="docs_to_remove." value=$line.doc}} + {{:assign var="links_to_remove." value=$line.trans_id}} + {{/if}} + {{/foreach}} + + {{if $docs_to_remove != null}} + {{:assign remove_set=$docs_to_remove|implode:","}} + {{:assign remove_set="("|cat:$remove_set|cat:")"}} + {{:delete where="id IN %s"|args:$remove_set}} + + {{* idem avec acc_transactions_links *}} + {{#select + CASE links.id_related = :immo_trans_id + WHEN true THEN links.id_transaction + WHEN false THEN links.id_related + END as linked_id + FROM acc_transactions_links as links + WHERE id_transaction = :immo_trans_id or id_related = :immo_trans_id; + :immo_trans_id = $ligne_immo.trans_id + }} + {{if ! $linked_id|in:$links_to_remove}} + {{:assign var="linked_transactions." value=$linked_id}} + {{/if}} + {{/select}} + + {{* Enregistrer les liaisons *}} + {{:api + method="POST" + path="accounting/transaction/%s/transactions"|args:$ligne_immo.trans_id + assign="result" + assign_code="result_code" + transactions=$linked_transactions + }} + {{/if}} + {{* enregistrer les infos de l'immobilisation *}} {{:save key=$info_immo.key @@ -112,6 +148,7 @@ {{:assign type_immo="managed"}} {{:redirect force="amortization.html?immo_doc_id=%s&type_immo=%s&ok=1&msg=modif"|args:$_GET.immo_doc_id:$type_immo}} + {{/form}} {{:admin_header title="Modifier l'immobilisation" custom_css="./style.css" current="module_amortization"}} @@ -120,6 +157,8 @@ {{/if}} {{:form_errors}} +{{:assign choix_defaut=$_GET.type_immo}} + {{* modifier la date de mise en service, les écritures associées ou la durée d'amortissement *}} @@ -147,16 +186,16 @@
    - Informations + Paramètres de l'amortissement
    {{:input type="number" name="duree" label="Durée d'amortissement" min=1 default=$info_immo.duration suffix="année(s)"}} {{if $info_immo.amount != null}} {{:assign max_aff="%f"|math:$max_disponible|money_currency:false}} {{:input type="money" name="montant" label="Montant de l'immobilisation" default=$montant_immo help="Montant maximum : %s"|args:$max_aff}} {{/if}} - {{:input type="date" name="date_achat" label="Date d'acquisition" default=$date_achat_defaut help="si différente de la date de l'écriture d'immobilisation"}} - {{:input type="date" name="date_mes" label="Date de mise en service" default=$date_mes_defaut help="si différente de la date d'acquisition"}} - {{:input type="text" name="libelle" label="Libellé" default=$immo_label help="si différent du libellé de l'écriture d'immobilisation"}} + {{:input type="date" name="date_achat" label="Date d'acquisition" default=$info_immo.date_achat help="si différente de la date de l'écriture d'immobilisation"}} + {{:input type="date" name="date_mes" label="Date de mise en service" default=$info_immo.date_mes help="si différente de la date d'acquisition"}} + {{:input type="text" name="libelle" label="Libellé" default=$info_immo.label help="si différent du libellé de l'écriture d'immobilisation"}}

    @@ -165,11 +204,3 @@

    {{:admin_footer}} - - diff --git a/module.ini b/module.ini index f1d45ac..aaeb203 100644 --- a/module.ini +++ b/module.ini @@ -1,5 +1,5 @@ name="Amortissements" -description="Immobilisations et amortissements\nversion 0.41.2" +description="Immobilisations et amortissements\nversion 0.33" author="Jean-Christophe Engel" author_url="https://gitea.zaclys.com/lesanges" home_button=false diff --git a/other_amortizations.html b/other_amortizations.html index e3d8f9e..45488ca 100644 --- a/other_amortizations.html +++ b/other_amortizations.html @@ -11,37 +11,26 @@ {{:error message=$message}} {{/if}} -{{:assign montant_immo=$info_immo.amount|or:$ligne_immo.amount}} {{:assign label_immo=$info_immo.label|or:$ligne_immo.trans_label}} -{{if $label_immo|strpos:$ligne_immo.line_label === false}} +{{if $ligne_immo.line_label != null && $ligne_immo.line_label != $label_immo}} {{:assign label_immo=$label_immo|cat:" — "|cat:$ligne_immo.line_label}} {{/if}} -{{:assign date_mes=$info_immo.date_mes|or:$info_immo.date_achat|or:$ligne_immo.date_achat}} -{{* déduire le montant des écritures liées à l'immo courante au crédit du même compte *}} -{{:include file="_get_credit_lines.html" immo_doc_id=$_GET.immo_doc_id keep="linked_immos, total_credits"}} -{{:assign montant_immo="%d-%d"|math:$montant_immo:$total_credits}} - -{{* déterminer le compte d'amortissement en fonction du compte d'immobilisation *}} -{{:include - file="./_get_amort_code.html" - code_immo=$ligne_immo.account_code - keep="code_amort" -}} {{if $_GET.filter}} - {{:assign amort_account=$code_amort|quote_sql}} - {{:assign filter_condition="account.code = "|cat:$amort_account}} + {{* déterminer le compte d'amortissement en fonction du compte d'immobilisation *}} + {{:include + file="./_get_amort_code.html" + code_immo=$ligne_immo.account_code + keep="code_amort" + }} + {{:assign filter_condition="account.code = "|cat:$code_amort}} {{else}} {{:assign account_filter="28%"|quote_sql}} {{:assign filter_condition="account.code LIKE "|cat:$account_filter}} {{/if}} -{{:assign date_amort=$date_mes|quote_sql}} -{{:assign date_condition="trans.date >= "|cat:$date_amort}} -{{:assign condition=$date_condition|cat:" AND "|cat:$filter_condition}} - {{* lister les amortissements non rattachés à une immo *}} -{{:include file="./_get_free_amort.html" condition=$condition keep="free_amort_lines"}} +{{:include file="./_get_free_amort.html" filter_condition=$filter_condition keep="free_amort_lines"}} {{:admin_header title="Amortissements non rattachés" custom_css="./style.css" current="module_amortization"}} @@ -59,28 +48,27 @@ -{{:assign trans_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$ligne_immo.trans_id}}
    Immobilisation
    #{{$ligne_immo.trans_id}} {{$label_immo}}
    Montant
    -
    {{"%f"|math:$montant_immo|money_currency_html:false|raw}}
    -
    Début d'amortissement
    -
    {{$date_mes|date_short}}
    +
    {{"%f"|math:$ligne_immo.amount|money_currency_html:false|raw}}
    +
    Date de l'immobilisation
    +
    {{$ligne_immo.date_achat|date_short}}
    @@ -99,6 +87,11 @@ {{#foreach from=$free_amort_lines item="line"}} +{{* + {{if $_GET.filter && $line.account_code != $code_amort}} + {{:continue}} + {{/if}} +*}} {{:assign trans_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$line.trans_id}} {{:assign compte_url="%s/acc/accounts/journal.php?id=%s&year=%s"|args:$admin_url:$line.account_id:$line.year}} @@ -117,8 +110,8 @@ {{"%f"|math:$line.amount|money_html:false|raw}} {{$line.account_code}} {{$line.account_label}} - - {{:linkbutton label="Attacher" href="attach_amort.html?immo_doc_id=%s&amort_line_id=%s&from=%s"|args:$_GET.immo_doc_id:$line.line_id:$_GET.from shape="plus"}} + + {{:linkbutton label="Attacher" href="attach_amort.html?immo_doc_id=%s&amort_line_id=%s"|args:$_GET.immo_doc_id:$line.line_id shape="plus"}} {{/foreach}} @@ -130,5 +123,18 @@ {{/if}}
    + {{:form_errors}} {{:admin_footer}} + + diff --git a/save_amort.html b/save_amort.html index 43cc871..2504ff8 100644 --- a/save_amort.html +++ b/save_amort.html @@ -41,11 +41,6 @@ {{:assign amort_label=$line_label|or:$trans_label}} {{/foreach}} -{{* date de début du 1er exercice dans paheko *}} -{{#years order="start_date" limit=1}} - {{:assign first_date=$start_date}} -{{/years}} - {{if $total_amort == 0}} {{* 1er amortissement *}} {{* déterminer le compte d'amortissement en fonction du compte d'immobilisation *}} @@ -60,10 +55,8 @@ {{:assign var=libelle value="Amortissement %s"|args:$ligne_immo.trans_label}} {{else}} {{* amortissements suivants *}} - {{if $date_debut != $first_date}} - {{:assign date_debut=$date_debut|strtotime}} - {{:assign date_debut="%d+(60*60*24)"|math:$date_debut|date:"Y-m-d"}} - {{/if}} + {{:assign date_debut=$date_debut|strtotime}} + {{:assign date_debut="%d+(60*60*24)"|math:$date_debut|date:"Y-m-d"}} {{/if}} {{* @@ -226,13 +219,13 @@ {{if $years|count == 1}} {{:assign var=selected_year value=$years.0.id}} - {{:assign var=date_amort value=$years.0.end_date}} - {{:include file="_calcul_dates.html" date_debut=$date_debut date_fin=$date_amort keep="nbjours"}} - {{* montant de l'amortissement *}} - {{:assign montant_amort="%f/%f/365*%d"|math:$ligne_immo.amount:$info_immo.duration:$nbjours|intval}} - {{:assign montant_amort="min(%f, %d-%d)"|math:$montant_amort:$ligne_immo.amount:$total_amort}} {{/if}} +{{:assign var=date_amort value=$years.0.end_date}} +{{:include file="_calcul_dates.html" date_debut=$date_debut date_fin=$date_amort keep="nbjours"}} +{{* montant de l'amortissement *}} +{{:assign montant_amort="%f/%f/365*%d"|math:$ligne_immo.amount:$info_immo.duration:$nbjours|intval}} +{{:assign montant_amort="min(%f, %d-%d)"|math:$montant_amort:$ligne_immo.amount:$total_amort}} {{:assign var="debit_account.6811" value="6811 — Dot. aux amortissements des immobilisations"}} {{:assign var="credit_account.%s"|args:$code_amort value="%s — "|args:$code_amort|cat:$amort_account_label}} @@ -249,10 +242,7 @@ {{:input type="select" default=$selected_year name="id_year" label="Exercice" required=true default_empty="— Faire un choix —" options=$open_years}} {{:input type="date" name="date_amort" label="Date" required=true default=$date_amort|date_short}} {{:input type="text" name="designation" label="Libellé" required=true default=$amort_label size="50"}} - {{if $total_amort == 0 || $nbjours < 365 || $nbjours > 366}} - {{:assign msg="Montant calculé au prorata du nombre de jours d'amortissement dans l'exercice"}} - {{/if}} - {{:input type="money" name="montant" label="Montant" required=true default=$montant_amort help=$msg}} + {{:input type="money" name="montant" label="Montant" required=true default=$montant_amort}} {{:input type="list" name="debit_account" diff --git a/style.css b/style.css index 9a24aee..9811b17 100644 --- a/style.css +++ b/style.css @@ -74,13 +74,25 @@ table.list tbody tr.ignored:nth-child(even) { font-style: italic; background: rgba(255, 255, 200, 0.5); } - -table.error { - background-color: #fcc; +html.dark table.list tbody tr.ignored:nth-child(odd) { + font-style: italic; + background: rgba(100, 100, 0, 0.4); } -table.error tr, table.error td, table.error thead td { - background-image : none; - background-color: #fcc; +html.dark table.list tbody tr.ignored:nth-child(even) { + font-style: italic; + background: rgba(100, 100, 0, 0.4); +} + +html.dialog.dark { + filter: none !important; +} + +html.dialog.dark main { + background-color : #ddd; +} + +html.dark .block.alert { + background-color : rgba(87, 206, 235, 0.5); } span.input-list.avoirs label { diff --git a/transfer.html b/transfer.html index 3017036..6a491b1 100644 --- a/transfer.html +++ b/transfer.html @@ -36,6 +36,7 @@ {{:assign trans_list=$trans_list|implode:","}} {{:assign trans_list="("|cat:$trans_list|cat:")"}} {{:assign condition=$condition|cat:" AND trans.id IN "|cat:$trans_list}} +{{:assign condition=$condition|cat:" AND NOT (trans.status & 16)"}} {{#select trans.id as trans_id, @@ -55,7 +56,6 @@ }} {{:assign var="transactions.%s"|args:$trans_id amount=$line_debit - line_label=$trans_label date=$trans_date code=$account_code label=$account_label @@ -255,17 +255,17 @@ {{:input - type="list" - name="credit_accounts[]" - required=true - readonly=true - target="!acc/charts/accounts/selector.php?codes=%s&id_year=%d"|args:$code:$selected_year - default=$current_account + type="list" + name="credit_accounts[]" + required=true + readonly=true + target="!acc/charts/accounts/selector.php?codes=%s&id_year=%d"|args:$code:$selected_year + default=$current_account }} {{:input name="credit_lines[]" type="text" class="money" size="8" default=$amount|money}} {{:input name="debit_lines[]" type="text" class="money" size="8" disabled=true}} - {{:input type="text" name="line_labels[]" size="40" default=$line_label}} + {{:input type="text" name="line_labels[]" size="40"}} {{if $projects != null}} {{:input type="select" name="id_project" options=$projects default_empty="— Aucun —"}} diff --git a/write_exit.html b/write_exit.html index 43df579..cfd4a3a 100644 --- a/write_exit.html +++ b/write_exit.html @@ -4,6 +4,7 @@ Enregistrer les écritures de sortie du bilan paramètres : - immo_doc_id : id du doc associé à l'immobilisation + - amort_amount : montant des amortissements - year : exercice de la date de sortie de l'immobilisation - date_debut : date de début de la période d'amortissement complémentaire - exit_date : date de sortie de l'immobilisation @@ -16,27 +17,10 @@ {{:error message=$message}} {{/if}} -{{:assign label_immo=$info_immo.label|or:$ligne_immo.trans_label}} -{{if $label_immo|strpos:$ligne_immo.line_label === false}} - {{:assign label_immo=$label_immo|cat:" — "|cat:$ligne_immo.line_label}} -{{/if}} - -{{:assign date_achat=$info_immo.date_achat|or:$ligne_immo.date_achat}} -{{if $info_immo.date_mes != null && $info_immo.date_mes != $date_achat}} - {{:assign date_mes=$info_immo.date_mes}} -{{/if}} - -{{if $info_immo.amount != null}} - {{:assign var="ligne_immo.amount" value=$info_immo.amount}} -{{/if}} - {{* déduire le montant des écritures liées à l'immo courante au crédit du même compte *}} {{:include file="_get_credit_lines.html" immo_doc_id=$_GET.immo_doc_id keep="total_credits"}} {{:assign var="ligne_immo.amount" value="%d-%d"|math:$ligne_immo.amount:$total_credits}} - -{{* lister les amortissements liés à l'immobilisation *}} -{{:include file="./_get_amort_lines.html" immo_doc_id=$_GET.immo_doc_id keep="linked_amort, sommes_amort, total_amort"}} -{{:assign valeur_nette="%f-%f"|math:$ligne_immo.amount:$total_amort}} +{{:assign valeur_nette="%f-%f"|math:$ligne_immo.amount:$_GET.amort_amount}} {{:assign amort_comp=0}} {{* amortissement complémentaire jqà date sortie *}} {{:assign amort_except=0}} {{* amortissement exceptionnel jqà date fin amortissement *}} @@ -47,7 +31,7 @@ {{:assign amort_comp="min(%f, %f)"|math:$valeur_nette:$amort_comp}} {{if $_GET.cession == null}} - {{:assign amort_except="%f-%f-%f"|math:$ligne_immo.amount:$total_amort:$amort_comp}} + {{:assign amort_except="%f-%f-%f"|math:$ligne_immo.amount:$_GET.amort_amount:$amort_comp}} {{/if}} {{/if}} @@ -60,14 +44,20 @@ {{* numéros de comptes ; voir info.org *}} {{:assign vnc_code="652"}} {{:assign cession_code="757"}} -{{:include - file="./_get_amort_code.html" - code_immo=$ligne_immo.account_code - keep="code_amort" -}} + +{{* TODO : faut-il forcer les 3 sélecteurs de compte d'amortissement à avoir toujours la même valeur ? *}} {{* Traiter l'envoi du formulaire *}} {{#form on="save"}} +{{* + {{if $_POST.amort_comp_account != null} + {{:assign account=$_POST.amort_comp_account}} + {{elseif $_POST.amort_except_account != null} + {{:assign account=$_POST.amort_except_account}} + {{elseif $_POST.amort_sortie_account != null} + {{:assign account=$_POST.amort_sortie_account}} + {{/if}} +*}} {{:assign account=$_POST.amort_sortie_account}} {{:include @@ -88,7 +78,7 @@ }} {{:assign comp_account_code=$account_code|keys|value:0}} - {{:assign libelle="Amortissement complémentaire "|cat:$label_immo}} + {{:assign libelle="Amortissement complémentaire "|cat:$ligne_immo.trans_label}} {{:assign var="lines." debit="%f/100"|math:$amort_comp @@ -99,7 +89,7 @@ {{:assign var="lines." credit="%f/100"|math:$amort_comp - account=$code_amort|intval + account=$amort_account_code id_project=$ligne_immo.id_project label=$libelle }} @@ -113,7 +103,7 @@ keep="account_code" }} {{:assign except_account_code=$account_code|keys|value:0}} - {{:assign libelle="Amortissement exceptionnel "|cat:$label_immo}} + {{:assign libelle="Amortissement exceptionnel "|cat:$ligne_immo.trans_label}} {{:assign var="lines." debit="%f/100"|math:$amort_except @@ -124,7 +114,7 @@ {{:assign var="lines." credit="%f/100"|math:$amort_except - account=$code_amort|intval + account=$amort_account_code id_project=$ligne_immo.id_project label=$libelle }} @@ -139,14 +129,14 @@ id_year=$_GET.year type="advanced" date=$_GET.exit_date - label="Amortissement final "|cat:$label_immo + label="Amortissement final "|cat:$ligne_immo.trans_label lines=$lines linked_transactions=$ligne_immo.trans_id }} {{* liaisons lignes d'amortissement *}} {{#foreach from=$result.lines item="line"}} - {{if $line.account_code == $code_amort}} + {{if $line.account_code == $amort_account_code}} {{:save key=""|uuid type="amort_link" @@ -166,7 +156,7 @@ keep="account_code" }} {{:assign immo_account_code=$account_code|keys|value:0}} - {{:assign libelle="Sortie du bilan de "|cat:$label_immo}} + {{:assign libelle="Sortie du bilan de "|cat:$ligne_immo.trans_label}} {{:assign var="lines." account=$immo_account_code @@ -174,20 +164,13 @@ id_project=$ligne_immo.id_project label=$libelle }} - {{* amortissements *}} - {{#foreach from=$sommes_amort key="code" item="montant"}} - {{if $code == $code_amort}} - {{* amortissements complémentaire et exceptionnel *}} - {{:assign montant="(%d+%d+%d)"|math:$montant:$amort_comp:$amort_except}} - {{/if}} - {{:assign - var="lines." - account=$code - debit="%d/100"|math:$montant - id_project=$ligne_immo.id_project - label=$libelle - }} - {{/foreach}} + {{:assign + var="lines." + account=$amort_account_code + debit="(%f-%f)/100"|math:$ligne_immo.amount:$valeur_nette + id_project=$ligne_immo.id_project + label=$libelle + }} {{if $valeur_nette > 0}} {{:include file="_get_codes.html" @@ -233,7 +216,7 @@ {{if $montant_cession > 0}} {{* Cession de l'immobilisation *}} - {{:assign libelle="Cession "|cat:$label_immo}} + {{:assign libelle="Produit cession "|cat:$ligne_immo.trans_label}} {{:include file="_get_codes.html" account=$_POST.creance_account @@ -300,12 +283,16 @@ déterminer les comptes pour les différentes écritures *}} +{{:include + file="./_get_amort_code.html" + code_immo=$ligne_immo.account_code + keep="code_amort" +}} + {{:assign var="liste_codes.6811" name="comp_account"}} {{:assign var="liste_codes.687" name="except_account"}} {{:assign var="liste_codes.462" name="creance_account"}} -{{#foreach from=$sommes_amort key="code"}} - {{:assign var="liste_codes.%s"|args:$code name="amort_account"}} -{{/foreach}} +{{:assign var="liste_codes.%s"|args:$code_amort name="amort_account"}} {{:assign var="liste_codes.%s"|args:$ligne_immo.account_code name="immo_account"}} {{:assign var="liste_codes.%s"|args:$vnc_code name="vnc_account"}} {{:assign var="liste_codes.%s"|args:$cession_code name="cession_account"}} @@ -346,23 +333,24 @@ {{/foreach}} {{:assign patterns=$pattern_array|implode:"|"}} -

    Sortir l'immobilisation « {{$label_immo}} » du bilan

    +

    Sortir l'immobilisation « {{$ligne_immo.trans_label}} » du bilan

    +
    Données de l'imobilisation
    Montant
    {{$ligne_immo.amount|money_currency_html:false|raw}}
    Date d'acquisition
    -
    {{$date_achat|date_short}}
    - {{if $date_mes != null}} +
    {{$ligne_immo.date_achat|date_short}}
    + {{if $info_immo.date_mes != null && $info_immo.date_mes != $ligne_immo.date_achat}}
    Date de mise en service
    -
    {{$date_mes|date_short}}
    +
    {{$info_immo.date_mes|date_short}}
    {{/if}}
    Durée de l'amortissement
    {{$info_immo.duration}} ans
    Montant des amortissements
    -
    {{$total_amort|money_currency_html:false|raw}} (à la date de début de l'exercice)
    +
    {{$_GET.amort_amount|money_currency_html:false|raw}} (à la date de début de l'exercice)
    Valeur nette résiduelle
    {{$valeur_nette|money_currency_html:false|raw}} (à la date de début de l'exercice)
    Date de sortie
    @@ -372,7 +360,7 @@
    Amortissement complémentaire
    {{$amort_comp|money_currency_html:false|raw}} (jusqu'à la date de sortie)
    Total des amortissements
    -
    {{"%f+%f"|math:$total_amort:$amort_comp|money_currency_html:false|raw}} (à la date de sortie)
    +
    {{"%f+%f"|math:$_GET.amort_amount:$amort_comp|money_currency_html:false|raw}} (à la date de sortie)
    Valeur nette résiduelle
    {{$valeur_nette|money_currency_html:false|raw}} (à la date de sortie)
    {{/if}} @@ -392,7 +380,6 @@ Écritures de sortie du bilan {{* Amortissement complémentaire *}} {{if $amort_comp > 0}} - {{:assign var="account.%s"|args:$code from="amort_account.%s"|args:$code_amort}} @@ -427,7 +414,7 @@ name="amort_comp_account" target="!acc/charts/accounts/selector.php?codes=%s&id_chart=%s"|args:"28*":$chart_id readonly=true - default=$account + default=$amort_account }} @@ -435,12 +422,10 @@
    - {{:assign account=null}} {{/if}} {{* Amortissement exceptionnel *}} {{if $montant_cession == 0 && $amort_except > 0}} - {{:assign var="account.%s"|args:$code from="amort_account.%s"|args:$code_amort}} @@ -475,7 +460,7 @@ name="amort_except_account" target="!acc/charts/accounts/selector.php?codes=%s&id_chart=%s"|args:"28*":$chart_id readonly=true - default=$account + default=$amort_account }} @@ -483,7 +468,6 @@
    - {{:assign account=null}} {{/if}} {{* Sortie du bilan *}} @@ -496,32 +480,24 @@ - {{#foreach from=$sommes_amort key="code" item="montant"}} - {{:assign var="account.%s"|args:$code from="amort_account.%s"|args:$code}} - - - {{:input - type="list" - name="amort_sortie_account" - target="!acc/charts/accounts/selector.php?codes=%s&id_chart=%s"|args:"28*":$chart_id - readonly=true - default=$account - }} - - {{if $montant_cession == 0}} - {{if $code == $code_amort}} - {{:assign montant="%f+%f+%f"|math:$montant:$amort_comp:$amort_except}} - {{/if}} - {{else}} - {{if $code == $code_amort}} - {{:assign montant="%f+%f"|math:$montant:$amort_comp}} - {{/if}} - {{/if}} - {{$montant|money_currency_html:false|raw}} - - - {{:assign account=null}} - {{/foreach}} + + + {{:input + type="list" + name="amort_sortie_account" + target="!acc/charts/accounts/selector.php?codes=%s&id_chart=%s"|args:"28*":$chart_id + readonly=true + default=$amort_account + }} + + {{if $montant_cession == 0}} + {{:assign montant=$ligne_immo.amount}} + {{else}} + {{:assign montant="%f+%f"|math:$_GET.amort_amount:$amort_comp}} + {{/if}} + {{$montant|money_currency_html:false|raw}} + + {{if $montant_cession > 0 && $valeur_nette > 0}}