Compare commits

..

No commits in common. "main" and "v0.40.1" have entirely different histories.

25 changed files with 714 additions and 706 deletions

View file

@ -1,16 +1,12 @@
{{* -*- brindille -*- *}} {{* -*- brindille -*- *}}
{{* Liste des immobilisations sorties du bilan *}} {{* Liste des immobilisations sorties du bilan *}}
<p class="block help"> <p class="help">
Cet onglet liste les immobilisations sorties du bilan car elles ne Cette page liste les immobilisations sorties du bilan
sont plus utilisées dans l'association (vétusté, fin de vie,
vente...).
</p> </p>
{{:include file="_get_config.html" keep="module.config"}} {{:include file="_get_config.html" keep="module.config"}}
{{if $module.table != null}}
{{* lister les immobilisations *}} {{* lister les immobilisations *}}
{{:assign account_condition="("}} {{:assign account_condition="("}}
{{#foreach from=$module.config.prefixes item="code"}} {{#foreach from=$module.config.prefixes item="code"}}
@ -18,110 +14,15 @@
{{:assign account_condition=$account_condition|cat:"account.code LIKE "|cat:$code|cat:" OR "}} {{:assign account_condition=$account_condition|cat:"account.code LIKE "|cat:$code|cat:" OR "}}
{{/foreach}} {{/foreach}}
{{:assign account_condition=$account_condition|cat:"0)"}} {{:assign account_condition=$account_condition|cat:"0)"}}
{{:assign status_condition="($$.status = 'archived')"}}
{{:assign filter_condition=" ("}} {{:assign filter_condition=" AND NOT ("}}
{{#foreach from=$module.config.filters item="filter"}} {{#foreach from=$module.config.filters item="filter"}}
{{:assign filter="%"|cat:$filter|cat:"%"|quote_sql}} {{:assign filter="%"|cat:$filter|cat:"%"|quote_sql}}
{{:assign filter_condition=$filter_condition|cat:" trans_label LIKE "|cat:$filter|cat:" OR "}} {{:assign filter_condition=$filter_condition|cat:" trans_label LIKE "|cat:$filter|cat:" OR "}}
{{/foreach}} {{/foreach}}
{{:assign filter_condition=$filter_condition|cat:"0)"}} {{:assign filter_condition=$filter_condition|cat:"0)"}}
{{:assign condition=$account_condition|cat:" AND debit > 0 AND NOT (trans.status & 16) AND NOT "|cat:$filter_condition|cat:" AND "|cat:$status_condition}} {{:assign condition=$account_condition|cat:" AND debit > 0 AND NOT (trans.status & 16)"|cat:$filter_condition}}
{{: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"
}}
{{: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}}
{{/select}}
{{:assign var="immo_lines." value=$immo_line}}
{{/select}}
{{if $immo_lines|count > 0}}
<section class="immobilisation"> <section class="immobilisation">
<table class="list"> <table class="list">
<thead> <thead>
@ -138,28 +39,124 @@
</thead> </thead>
<tbody> <tbody>
{{:assign nb_immo=0}}
{{:assign total_immo = 0}} {{:assign total_immo = 0}}
{{#foreach from=$immo_lines}} {{: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
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
}}
{{* 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 trans_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$trans_id}}
{{:assign compte_url="%s/acc/accounts/journal.php?id=%s&year=%s"|args:$admin_url:$account_id:$trans_id_year}} {{:assign compte_url="%s/acc/accounts/journal.php?id=%s&year=%s"|args:$admin_url:$account_id:$trans_id_year}}
{{:assign nb_immo="%d+1"|math:$nb_immo}}
{{:assign total_immo="%d+%d"|math:$total_immo:$montant_immo}} {{:assign total_immo="%d+%d"|math:$total_immo:$montant_immo}}
{{:assign label_immo=$doc_label|or:$trans_label}} {{:assign var="montant" from="sommes_immo.%s"|args:$account_code}}
{{if $label_immo|strpos:$line_label === false}} {{:assign var="sommes_immo.%s"|args:$account_code value="%d+%d"|math:$montant:$montant_immo}}
{{:assign label_immo=$label_immo|cat:" — "|cat:$line_label}}
{{/if}} {{* 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}}
<tr> <tr>
<td class="num"><a href="{{$trans_url}}">#{{$trans_id}}</a></td> <td class="num"><a href="{{$trans_url}}">#{{$trans_id}}</a></td>
<td>{{$date_mes|date_short}}</td> <td>{{$date_mes|date_short}}</td>
<td>{{$exit_date|date_short}}</td> <td>{{$exit_date|date_short}}</td>
<td>{{$label_immo}}</td> <td>{{$trans_label}}{{if $line_label != null && $line_label != $trans_label}} — {{$line_label}}{{/if}}</td>
<td class="money">{{"%f"|math:$montant_immo|money_html:false|raw}}</td> <td class="money">{{"%f"|math:$montant_immo|money_html:false|raw}}</td>
<td><a href="{{$compte_url}}">{{$account_code}}</a></td> <td><a href="{{$compte_url}}">{{$account_code}}</a></td>
<td>{{$account_label}}</td> <td>{{$account_label}}</td>
<td class="actions"> <td class="actions">
{{:linkbutton label="Modifier" href="exit_step1.html?immo_doc_id=%s&from=exit"|args:$immo_doc_id shape="edit"}} {{:linkbutton label="Modifier" href="exit_step1.html?immo_doc_id=%s&from=exit"|args:$info_immo.id shape="edit"}}
</td> </td>
</tr> </tr>
{{/foreach}} {{/select}}
</tbody> </tbody>
<tfoot> <tfoot>
{{if $total_immo != 0}} {{if $total_immo != 0}}
@ -218,9 +215,7 @@
{{/if}} {{/if}}
</tfoot> </tfoot>
</table> </table>
</section> {{if $nb_immo == 0}}
{{/if}}
{{/if}}
{{if $immo_lines|count == 0 || $module.table == null}}
<p class="block alert">Aucune immobilisation</p> <p class="block alert">Aucune immobilisation</p>
{{/if}} {{/if}}
</section>

View file

@ -9,4 +9,4 @@
{{:assign ts_debut=$date_debut|strtotime}} {{:assign ts_debut=$date_debut|strtotime}}
{{:assign ts_fin=$date_fin|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}}

View file

@ -17,7 +17,7 @@
id_transaction id_transaction
FROM acc_transactions_lines FROM acc_transactions_lines
WHERE id = :line_id; WHERE id = :line_id;
:line_id = $line_id :line_id = $line_id|intval
}} }}
{{:assign trans_id=$id_transaction}} {{:assign trans_id=$id_transaction}}
{{else}} {{else}}

View file

@ -4,18 +4,31 @@
{{:include file="_get_config.html" keep="module.config"}} {{:include file="_get_config.html" keep="module.config"}}
<p class="block help"> <p class="help">
{{if $type_immo == "managed"}} {{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"}} {{elseif $type_immo == "amortized"}}
Cet onglet liste les Cette page liste les immobilisations dont l'amortissement est terminé
immobilisations dont l'amortissement est terminé mais qui sont
encore utilisées dans l'association, donc encore présentes au
bilan.
{{/if}} {{/if}}
</p> </p>
{{if $module.table != null}} {{if $module.table != null}}
<table class="list">
<thead>
<tr>
<th class="num"></th>
<th>Date</th>
<th>Libellé</th>
<th class="nombre">Montant</th>
<th class="nombre">Durée</th>
<th class="nombre">Amortissements</th>
<th class="nombre">Valeur nette</th>
<th>N° compte</th>
<th class="actions"></th>
</tr>
</thead>
<tbody>
{{* lister les immobilisations *}} {{* lister les immobilisations *}}
{{:assign account_condition="("}} {{:assign account_condition="("}}
{{#foreach from=$module.config.prefixes item="code"}} {{#foreach from=$module.config.prefixes item="code"}}
@ -26,6 +39,8 @@
{{:assign status_condition="($$.status = 'managed' OR $$.status = 'amortized')"}} {{:assign status_condition="($$.status = 'managed' OR $$.status = 'amortized')"}}
{{:assign condition=$account_condition|cat:" AND line.debit > 0 AND "|cat:$status_condition}} {{:assign condition=$account_condition|cat:" AND line.debit > 0 AND "|cat:$status_condition}}
{{:assign nb_immo=0}}
{{:assign total_immo = 0}}
{{#select {{#select
trans.id as immo_trans_id, trans.id as immo_trans_id,
trans.label as trans_label, trans.label as trans_label,
@ -52,9 +67,19 @@
ORDER BY COALESCE(doc_date_achat, trans_date) DESC; ORDER BY COALESCE(doc_date_achat, trans_date) DESC;
!table=$module.table !table=$module.table
!condition=$condition !condition=$condition
assign="immo_line"
}} }}
{{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 montant_immo=$doc_amount|or:$debit}}
{{: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}}
{{* déduire le montant des écritures liées à l'immo courante au crédit du même compte *}} {{* déduire le montant des écritures liées à l'immo courante au crédit du même compte *}}
{{#load {{#load
type="credit_link" type="credit_link"
@ -74,8 +99,6 @@
{{if $montant_immo == 0}} {{if $montant_immo == 0}}
{{* Immobilisation soldée *}} {{* Immobilisation soldée *}}
{{:continue}} {{:continue}}
{{else}}
{{:assign var="immo_line.montant_immo" value=$montant_immo}}
{{/if}} {{/if}}
{{* montant des amortissements liés à l'immobilisation *}} {{* montant des amortissements liés à l'immobilisation *}}
@ -85,42 +108,11 @@
{{* classement par onglet *}} {{* classement par onglet *}}
{{if $type_immo == "managed" && $amort_amount >= $montant_immo}}{{:continue}}{{/if}} {{if $type_immo == "managed" && $amort_amount >= $montant_immo}}{{:continue}}{{/if}}
{{if $type_immo == "amortized" && $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}}
<table class="list">
<thead>
<tr>
<th class="num"></th>
<th>Date</th>
<th>Libellé</th>
<th class="nombre">Montant</th>
<th class="nombre">Durée</th>
<th class="nombre">Amortissements</th>
<th class="nombre">Valeur nette</th>
<th>N° compte</th>
<th class="actions"></th>
</tr>
</thead>
<tbody>
{{: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}}
{{:assign nb_immo="%d+1"|math:$nb_immo}}
{{:assign total_immo="%d+%d"|math:$total_immo:$montant_immo}} {{:assign total_immo="%d+%d"|math:$total_immo:$montant_immo}}
{{:assign var="montant" from="sommes_immo.%s"|args:$account_code}} {{:assign var="montant" from="sommes_immo.%s"|args:$account_code}}
{{:assign var="sommes_immo.%s"|args:$account_code value="%d+%d"|math:$montant:$montant_immo}} {{:assign var="sommes_immo.%s"|args:$account_code value="%d+%d"|math:$montant:$montant_immo}}
<tr> <tr>
<td class="num"><a href="{{$trans_url}}">#{{$immo_trans_id}}</a></td> <td class="num"><a href="{{$trans_url}}">#{{$immo_trans_id}}</a></td>
<td>{{$immo_date|date_short}}</td> <td>{{$immo_date|date_short}}</td>
@ -137,9 +129,7 @@
}} }}
</td> </td>
</tr> </tr>
{{/select}}
{{/foreach}}
</tbody> </tbody>
<tfoot> <tfoot>
{{if $total_immo != 0}} {{if $total_immo != 0}}
@ -174,7 +164,6 @@
</tfoot> </tfoot>
</table> </table>
{{/if}} {{/if}}
{{/if}} {{if $nb_immo == 0 || $module.table == null}}
{{if $immo_lines|count == 0 || $module.table == null}}
<p class="block alert">Aucune immobilisation</p> <p class="block alert">Aucune immobilisation</p>
{{/if}} {{/if}}

View file

@ -3,11 +3,10 @@
{{* Liste des immobilisations non gérées ou non entièrement affectées *}} {{* Liste des immobilisations non gérées ou non entièrement affectées *}}
{{:include file="_get_config.html" keep="module.config"}} {{:include file="_get_config.html" keep="module.config"}}
<p class="block help"> <p class="help">
Cet onglet liste les immobilisations créées en dehors du module et Cette page liste les immobilisations pas encore prises en charge
pas encore prises en charge par le module ou les écritures de la par le module ou les écritures de la balance d'ouverture initiale
balance d'ouverture initiale dont le montant n'est pas encore dont le montant n'est pas encore totalement affecté
totalement affecté
</p> </p>
{{:assign saved_hides=$module.config.hides}} {{:assign saved_hides=$module.config.hides}}
@ -33,7 +32,7 @@
{{if $module.table != null}} {{if $module.table != null}}
{{:assign columns="$$.status as status, SUM($$.amount) as amount,"}} {{:assign columns="$$.status as status, SUM($$.amount) as amount,"}}
{{:assign table_join="LEFT JOIN !table AS info ON $$.line = line.id"}} {{: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}} {{else}}
{{:assign columns=""}} {{:assign columns=""}}
{{:assign table_join=""}} {{:assign table_join=""}}
@ -50,9 +49,24 @@
{{:assign account_condition=$account_condition|cat:" account.code LIKE "|cat:$code|cat:" OR "}} {{:assign account_condition=$account_condition|cat:" account.code LIKE "|cat:$code|cat:" OR "}}
{{/foreach}} {{/foreach}}
{{:assign account_condition=$account_condition|cat:"0)"}} {{:assign account_condition=$account_condition|cat:"0)"}}
{{:assign condition=$account_condition|cat:" AND debit > 0 AND NOT (trans.status & 16) 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_ignored=0}}
{{:assign nb_null=0}}
{{:assign nb_other=0}}
{{#select {{#select
trans.id as immo_trans_id, trans.id as immo_trans_id,
trans.label as trans_label, trans.label as trans_label,
@ -79,41 +93,33 @@
!condition=$condition !condition=$condition
assign="immo_line" assign="immo_line"
}} }}
{{*
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.status == 'managed'}}
{{if $immo_line.amount == null || $immo_line.amount == 0 || $immo_line.amount == $immo_line.debit}} {{if $immo_line.amount == null || $immo_line.amount == 0 || $immo_line.amount == $immo_line.debit}}
{{:continue}} {{:continue}}
{{/if}} {{/if}}
{{/if}} {{/if}}
{{if $status == null}}
{{if $immo_line.status == 'ignored'}} {{: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}} {{:assign nb_ignored="%d+1"|math:$nb_ignored}}
{{else}}
{{:assign nb_other="%d+1"|math:$nb_other}}
{{/if}} {{/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}} {{:assign var="immo_lines." value=$immo_line}}
{{/select}} {{/select}}
{{if $nb_ignored > 0}}
<form method="post" action=""> <form method="post" action="">
<fieldset> <fieldset>
{{: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 les écritures ignorées" }}
</fieldset> </fieldset>
</form> </form>
{{/if}}
{{if $immo_lines|count > 0}} {{if $immo_lines|count > 0}}
<table class="list"> <table class="list">
@ -133,6 +139,22 @@
</thead> </thead>
<tbody> <tbody>
{{#foreach from=$immo_lines item="line"}} {{#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"}}
{{else}}
{{:assign status=""}}
{{/if}}
{{/foreach}}
{{/if}}
{{:assign trans_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$line.immo_trans_id}} {{: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 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}} {{:assign reste="%d-%d"|math:$line.debit:$line.amount}}

View file

@ -13,7 +13,7 @@
<li {{if $current == "managed"}}class="current"{{/if}}><a href="index.html?type_immo=managed">Amortissables</a></li> <li {{if $current == "managed"}}class="current"{{/if}}><a href="index.html?type_immo=managed">Amortissables</a></li>
<li {{if $current == "amortized"}}class="current"{{/if}}><a href="index.html?type_immo=amortized">Amorties</a></li> <li {{if $current == "amortized"}}class="current"{{/if}}><a href="index.html?type_immo=amortized">Amorties</a></li>
<li {{if $current == "archived"}}class="current"{{/if}}><a href="index.html?type_immo=archived">Sorties du bilan</a></li> <li {{if $current == "archived"}}class="current"{{/if}}><a href="index.html?type_immo=archived">Sorties du bilan</a></li>
<li {{if $current == "unfinished"}}class="current"{{/if}}><a href="index.html?type_immo=unfinished">En cours de constitution</a></li> <li {{if $current == "unfinished"}}class="current"{{/if}}><a href="index.html?type_immo=unfinished">En cours</a></li>
<li {{if $current == "other"}}class="current"{{/if}}><a href="index.html?type_immo=other">À classer</a></li> <li {{if $current == "other"}}class="current"{{/if}}><a href="index.html?type_immo=other">À classer</a></li>
<li {{if $current == "config"}} class="current"{{/if}}><a href="config.html">Configuration</a></li> <li {{if $current == "config"}} class="current"{{/if}}><a href="config.html">Configuration</a></li>
<li {{if $current == "aide"}} class="current"{{/if}}><a href="aide.html">Aide</a></li> <li {{if $current == "aide"}} class="current"{{/if}}><a href="aide.html">Aide</a></li>

View file

@ -2,11 +2,10 @@
{{* Liste des immobilisations en cours de constitution *}} {{* Liste des immobilisations en cours de constitution *}}
<p class="block help"> <section class="immobilisation">
Cet onglet liste les immobilisations en cours de
constitution ; vous pouvez les sélectionner pour créer une <p class="help">
immobilisation amortissable (exemple : achat de matériaux pour Cette page liste les immobilisations en cours de constitution, donc non amortissables
la construction d'un bâtiment destiné à être amorti)
</p> </p>
{{:include file="_get_config.html" keep="module.config"}} {{:include file="_get_config.html" keep="module.config"}}
@ -29,8 +28,54 @@
{{:assign checked="checked"}} {{:assign checked="checked"}}
{{/if}} {{/if}}
<form method="post" action="">
<fieldset class="shortFormLeft">
<legend>Transférer une ou plusieurs lignes vers une immobilisation amortissable</legend>
<p class="help">
Cocher les lignes concernées
</p>
<div class="shortFormRight informations" id="total_amount">
<legend>Montants sélectionnés</legend>
<table class="montant">
<tbody>
</tbody>
<tfoot>
</tfoot>
</table>
</div>
<div>
<p class="submit">
{{:linkbutton
label="Transférer"
href="transfer.html?trans="
shape="right"
id="transfer"
}}
</p>
</div>
</fieldset>
<fieldset>
{{:input type="checkbox" value=1 name="unhide" checked="%s"|args:$checked label="Afficher toutes les écritures" }}
</fieldset>
</form>
<table class="list">
<thead>
<tr>
<th class="check"></th>
<th class="num"></th>
<th>Date</th>
<th>Libellé</th>
<th class="nombre">Montant</th>
<th>N° compte</th>
<th>Compte</th>
<th class="actions"></th>
</tr>
</thead>
<tbody>
{{* lister les immobilisations en cours de constitution *}} {{* lister les immobilisations en cours de constitution *}}
{{:assign first_code=null}}
{{:assign accounts_condition="("}} {{:assign accounts_condition="("}}
{{#foreach from=$module.config.unfinished item="elem"}} {{#foreach from=$module.config.unfinished item="elem"}}
{{if $elem.code != null}} {{if $elem.code != null}}
@ -38,9 +83,6 @@
{{else}} {{else}}
{{:assign code=$elem}} {{:assign code=$elem}}
{{/if}} {{/if}}
{{if $first_code == null}}
{{:assign first_code=$code}}
{{/if}}
{{:assign code=$code|cat:"%"|quote_sql}} {{:assign code=$code|cat:"%"|quote_sql}}
{{:assign accounts_condition=$accounts_condition|cat:" account.code LIKE "|cat:$code|cat:" OR "}} {{:assign accounts_condition=$accounts_condition|cat:" account.code LIKE "|cat:$code|cat:" OR "}}
{{/foreach}} {{/foreach}}
@ -54,8 +96,8 @@
{{/foreach}} {{/foreach}}
{{:assign filter_condition=$filter_condition|cat:"0)"}} {{:assign filter_condition=$filter_condition|cat:"0)"}}
{{:assign condition=$condition|cat:" AND "|cat:$filter_condition}} {{:assign condition=$condition|cat:" AND "|cat:$filter_condition}}
{{:assign nb_immo=0}}
{{:assign nb_ignored=0}} {{:assign total_immo = 0}}
{{#select {{#select
trans.id as trans_id, trans.id as trans_id,
trans.label as trans_label, trans.label as trans_label,
@ -74,17 +116,13 @@
GROUP BY trans.id GROUP BY trans.id
ORDER BY trans.date DESC; ORDER BY trans.date DESC;
!condition=$condition !condition=$condition
assign="immo_line"
}} }}
{{* voir si l'écriture a été marquée ignorée *}} {{* voir si l'écriture a été marquée ignorée *}}
{{:assign var="immo_line.ignore" value=false}} {{:assign ignore=false}}
{{#load type="immo" assign="info_immo" where="$$.line = :line_id AND $$.status = 'ignored'" :line_id=$immo_line_id|intval}} {{#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}} {{:assign ignore=true}}
{{/load}} {{/load}}
{{if $immo_line.ignore}} {{if $ignore && $unhide == null}}
{{:assign nb_ignored="%d + 1"|math:$nb_ignored}}
{{/if}}
{{if $immo_line.ignore && $unhide == null}}
{{:continue}} {{:continue}}
{{/if}} {{/if}}
@ -112,65 +150,9 @@
{{:continue}} {{:continue}}
{{/if}} {{/if}}
{{:assign var="immo_lines." value=$immo_line}}
{{/select}}
<form method="post" action="">
{{if $immo_lines|count > 0}}
<fieldset class="shortFormLeft">
<legend>Transférer une ou plusieurs lignes vers une immobilisation amortissable</legend>
<p class="help">
Cocher les lignes concernées
</p>
<div class="shortFormRight informations" id="total_amount">
<legend>Montants sélectionnés</legend>
<table class="montant">
<tbody>
</tbody>
<tfoot>
</tfoot>
</table>
</div>
<div>
<p class="submit">
{{:linkbutton
label="Transférer"
href="transfer.html?trans="
shape="right"
id="transfer"
}}
</p>
</div>
</fieldset>
{{/if}}
{{if $nb_ignored !== 0}}
<fieldset>
{{:input type="checkbox" value=1 name="unhide" checked="%s"|args:$checked label="Afficher les écritures ignorées" }}
</fieldset>
{{/if}}
</form>
{{if $immo_lines|count > 0}}
<section class="immobilisation">
<table class="list">
<thead>
<tr>
<th class="check"></th>
<th class="num"></th>
<th>Date</th>
<th>Libellé</th>
<th class="nombre">Montant</th>
<th>N° compte</th>
<th>Compte</th>
<th class="actions"></th>
</tr>
</thead>
<tbody>
{{:assign total_immo = 0}}
{{#foreach from=$immo_lines}}
{{:assign trans_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$trans_id}} {{:assign trans_url="%s/acc/transactions/details.php?id=%s"|args:$admin_url:$trans_id}}
{{:assign compte_url="%s/acc/accounts/journal.php?id=%s&year=%s"|args:$admin_url:$account_id:$trans_id_year}} {{:assign compte_url="%s/acc/accounts/journal.php?id=%s&year=%s"|args:$admin_url:$account_id:$trans_id_year}}
{{:assign nb_immo="%d+1"|math:$nb_immo}}
{{:assign total_immo="%d+%d"|math:$total_immo:$debit}} {{:assign total_immo="%d+%d"|math:$total_immo:$debit}}
{{:assign var="montant" from="sommes_immo.%s"|args:$account_code}} {{:assign var="montant" from="sommes_immo.%s"|args:$account_code}}
{{:assign var="sommes_immo.%s"|args:$account_code value="%d+%d"|math:$montant:$debit}} {{:assign var="sommes_immo.%s"|args:$account_code value="%d+%d"|math:$montant:$debit}}
@ -192,8 +174,7 @@
}} }}
</td> </td>
</tr> </tr>
{{/foreach}} {{/select}}
</tbody> </tbody>
<tfoot> <tfoot>
{{if $total_immo != 0}} {{if $total_immo != 0}}
@ -222,10 +203,10 @@
{{/if}} {{/if}}
</tfoot> </tfoot>
</table> </table>
</section> {{if $nb_immo == 0}}
{{else}} <p class="block alert">Aucune immobilisation</p>
<p class="block alert">Aucune écriture d'immobilisation trouvée dans la comptabilité (compte {{$first_code}} et sous-comptes)</p>
{{/if}} {{/if}}
</section>
<script type="text/javascript" src="scripts.js"></script> <script type="text/javascript" src="scripts.js"></script>
<script type="text/javascript" async="async"> <script type="text/javascript" async="async">

View file

@ -139,28 +139,25 @@
<dt>Montant à amortir</dt> <dt>Montant à amortir</dt>
<dd class="money strong">{{"%f"|math:$solde|money_currency_html:false|raw}}</dd> <dd class="money strong">{{"%f"|math:$solde|money_currency_html:false|raw}}</dd>
{{/if}} {{/if}}
{{if $valeur_residuelle > 0}}
<dt>Montant des amortissements</dt> <dt>Montant des amortissements</dt>
<dd>{{$total_amort|money_currency_html:false|raw}}</dd> <dd>{{$total_amort|money_currency_html:false|raw}}</dd>
<dt>Valeur nette résiduelle</dt> <dt>Valeur nette résiduelle</dt>
<dd>{{$valeur_residuelle|money_currency_html:false|raw}}</dd> <dd>{{$valeur_residuelle|money_currency_html:false|raw}}</dd>
{{if $info_immo.duration != null && $valeur_residuelle > 0}}
{{:assign annuite="%f/%d"|math:$solde:$info_immo.duration}}
<dt>Annuité estimée</dt>
<dd>{{"min(%d, %d)"|math:$valeur_residuelle:$annuite|money_currency_html:false|raw}}
{{if $annuite <= $valeur_residuelle}}
<span class="help"> pour un exercice de 365 jours</span>
{{/if}} {{/if}}
</dd> {{if $info_immo.duration != null && $valeur_residuelle > 0}}
<dt>Annuité estimée</dt>
<dd>{{"min(%d, %f/%d)"|math:$valeur_residuelle:$solde:$info_immo.duration|money_currency_html:false|raw}}</dd>
{{/if}} {{/if}}
</dl> </dl>
</div> </div>
{{if ! $created_amort || $linked_immos != null}} {{if $valeur_residuelle > 0 || $linked_immos != null}}
<h3 class="ruler">Avoirs</h3> <h3 class="ruler">Avoirs</h3>
{{/if}}
{{if ! $created_amort}}
<nav class="actions"> <nav class="actions">
{{if $total_amort == 0 || ! $created_amort}}
{{:linkbutton label="Attacher une écriture d'avoir" href="link_immo.html?immo_doc_id=%s&filter=true"|args:$_GET.immo_doc_id shape="link" target="_dialog"}} {{:linkbutton label="Attacher une écriture d'avoir" href="link_immo.html?immo_doc_id=%s&filter=true"|args:$_GET.immo_doc_id shape="link" target="_dialog"}}
{{/if}}
</nav> </nav>
{{/if}} {{/if}}
@ -266,14 +263,7 @@
{{/if}} {{/if}}
{{if $linked_amort == null}} {{if $linked_amort == null}}
<p class="block alert">Aucun amortissement enregistré pour cette <p class="block alert">Aucun amortissement enregistré pour cette immobilisation ; utilisez le bouton « Enregistrer un amortissement » pour enregistrer un nouvel amortissement</p>
immobilisation ; en fin d'exercice vous pouvez enregistrer un
nouvel amortissement à l'aide du bouton « Enregistrer un
amortissement »</p>
{{elseif $_GET.type_immo == "managed"}}
<p class="block alert">En fin d'exercice vous pouvez enregistrer
un nouvel amortissement à l'aide du bouton « Enregistrer un
amortissement »</p>
{{/if}} {{/if}}
{{:form_errors}} {{:form_errors}}

View file

@ -36,4 +36,4 @@
exit_line_id=$_GET.exit_line_id|intval exit_line_id=$_GET.exit_line_id|intval
}} }}
{{:redirect force="exit_step4.html?immo_doc_id=%s&from=exit&ok=1&msg=attach_exit"|args:$_GET.immo_doc_id}} {{:redirect to="exit_step4.html?immo_doc_id=%s&from=exit&ok=1&msg=attach_exit"|args:$_GET.immo_doc_id}}

View file

@ -213,8 +213,13 @@ premier exercice créé dans Paheko ; on na donc pas à sen
<p>Lexemple ci-dessous montre un extrait de la balance douverture du <p>Lexemple ci-dessous montre un extrait de la balance douverture du
premier exercice créé dans Paheko et reprend une partie du bilan du premier exercice créé dans Paheko et reprend une partie du bilan du
dernier exercice dune comptabilité antérieure à Paheko.</p> dernier exercice dune comptabilité antérieure à Paheko.</p>
<p><img src="./doc/exemple_balance-initiale.png" <figure>
title="Exemple de balance d&#39;ouverture" /></p> <img src="./doc/exemple_balance-initiale.png"
title="Exemple de balance d&#39;ouverture"
alt="Extrait de balance douverture initiale dans Paheko" />
<figcaption aria-hidden="true">Extrait de balance douverture initiale
dans Paheko</figcaption>
</figure>
<ul> <ul>
<li>la ligne du compte <strong>2181</strong> correspond à deux <li>la ligne du compte <strong>2181</strong> correspond à deux
immobilisations de valeurs respectives <strong>5 500€</strong> et immobilisations de valeurs respectives <strong>5 500€</strong> et
@ -233,8 +238,13 @@ amortissements des trois immobilisations du compte
</ul> </ul>
<p>Dans longlet <em>À classer</em> on trouve les immobilisations de la <p>Dans longlet <em>À classer</em> on trouve les immobilisations de la
balance douverture :</p> balance douverture :</p>
<p><img src="./doc/exemple_immobilisations_a_classer-1.png" <figure>
title="Immobilisations de la balance initiale à incorporer dans Paheko" /></p> <img src="./doc/exemple_immobilisations_a_classer-1.png"
title="Immobilisations de la balance initiale à incorporer dans Paheko"
alt="Immobilisations de la balance initiale à incorporer dans Paheko" />
<figcaption aria-hidden="true">Immobilisations de la balance initiale à
incorporer dans Paheko</figcaption>
</figure>
<ul> <ul>
<li>la colonne <em>Date</em> donne la date de la balance <li>la colonne <em>Date</em> donne la date de la balance
douverture</li> douverture</li>
@ -249,10 +259,13 @@ attribué</li>
2181, cliquer le bouton <em>Paramètres</em>, puis cocher le choix 2181, cliquer le bouton <em>Paramètres</em>, puis cocher le choix
« Immobilisation à amortir ».</p> « Immobilisation à amortir ».</p>
<p>Les paramètres sont pré-remplis à partir des données de lécriture de <p>Les paramètres sont pré-remplis à partir des données de lécriture de
la balance douverture et sont donc à modifier en fonction des données la balance douverture et seront donc à modifier en fonction des données
de limmobilisation concernée.</p> de limmobilisation concernée.</p>
<p><img src="./doc/exemple_parametres_immobilisation-1.png" <figure>
title="Paramètres a renseigner" /></p> <img src="./doc/exemple_parametres_immobilisation-1.png"
title="Paramètres a renseigner" alt="Paramètres a renseigner" />
<figcaption aria-hidden="true">Paramètres a renseigner</figcaption>
</figure>
<ul> <ul>
<li>Date dacquisition de limmobilisation</li> <li>Date dacquisition de limmobilisation</li>
<li>Libellé de limmobilisation</li> <li>Libellé de limmobilisation</li>
@ -269,16 +282,31 @@ immobilisation</a>.</li>
</ul> </ul>
<p>Après validation, cette immobilisation se retrouve classée dans les <p>Après validation, cette immobilisation se retrouve classée dans les
immobilisations amortissables :</p> immobilisations amortissables :</p>
<p><img src="./doc/exemple_immobilisations_amortissables-1.png" <figure>
title="Immobilisations amortissables]" /></p> <img src="./doc/exemple_immobilisations_amortissables-1.png"
title="Immobilisations amortissables]"
alt="Immobilisations amortissables" />
<figcaption aria-hidden="true">Immobilisations
amortissables</figcaption>
</figure>
<p>et dans longlet <em>À classer</em> on trouve le montant affecté à la <p>et dans longlet <em>À classer</em> on trouve le montant affecté à la
première immobilisation.</p> première immobilisation.</p>
<p><img src="./doc/exemple_immobilisations_a_classer-2.png" <figure>
title="Immobilisations à incorporer dans Paheko" /></p> <img src="./doc/exemple_immobilisations_a_classer-2.png"
title="Immobilisations à incorporer dans Paheko"
alt="Immobilisations à incorporer dans Paheko" />
<figcaption aria-hidden="true">Immobilisations à incorporer dans
Paheko</figcaption>
</figure>
<p>On fait de même pour la deuxième immobilisation du compte 2181 puis <p>On fait de même pour la deuxième immobilisation du compte 2181 puis
pour les trois immobilisations du compte 2185 et on obtient :</p> pour les trois immobilisations du compte 2185 et on obtient :</p>
<p><img src="./doc/exemple_immobilisations_amortissables-2.png" <figure>
title="Immobilisations amortissables" /></p> <img src="./doc/exemple_immobilisations_amortissables-2.png"
title="Immobilisations amortissables"
alt="Immobilisations amortissables" />
<figcaption aria-hidden="true">Immobilisations
amortissables</figcaption>
</figure>
<p>et longlet <em>À classer</em> est vide.</p> <p>et longlet <em>À classer</em> est vide.</p>
<p>Si des amortissements ont été enregistrés pour une ou plusieurs <p>Si des amortissements ont été enregistrés pour une ou plusieurs
immobilisations avant la mise en service du module, on pourra les immobilisations avant la mise en service du module, on pourra les
@ -321,45 +349,58 @@ amortissements</em> de ce compte à la date de fin du dernier exercice de
la comptabilité antérieure à Paheko ; ce montant devra donc <em>être la comptabilité antérieure à Paheko ; ce montant devra donc <em>être
réparti entre les différentes immobilisations concernées</em>.</p> réparti entre les différentes immobilisations concernées</em>.</p>
<p><strong>Exemple :</strong> le montant qui figure dans la balance <p><strong>Exemple :</strong> le montant qui figure dans la balance
douverture pour le compte 28185 est de 10627,25€ réparti ainsi :</p> douverture pour le compte 28185 est de 7058,06€ réparti ainsi :</p>
<ul> <ul>
<li>montant des amortissements du Saxophone : 3500,00</li> <li>montant des amortissements du Saxophone : 1016,43</li>
<li>montant des amortissements du Piano numérique : 4102,39€</li> <li>montant des amortissements du Piano numérique : 4102,39€</li>
<li>montant des amortissements de la Batterie : 3024,86</li> <li>montant des amortissements de la Batterie : 1939,24</li>
</ul> </ul>
<p>Voici la page des détails du Saxophone avant lattachement des <p>Voici la page des détails du Saxophone avant lattachement des
amortissements de la balance douverture :</p> amortissements de la balance douverture :</p>
<p><img src="./doc/exemple_amortissement-saxo.png" <figure>
title="Page de détails du saxophone" /></p> <img src="./doc/exemple_amortissement-saxo.png"
title="Page de détails du saxophone"
alt="Page de détails du saxophone" />
<figcaption aria-hidden="true">Page de détails du saxophone</figcaption>
</figure>
<p>Cliquer le bouton <em>Attacher un amortissement</em> ; la liste des <p>Cliquer le bouton <em>Attacher un amortissement</em> ; la liste des
amortissements du compte 28185 saffiche :</p> amortissements du compte 28185 saffiche :</p>
<p><img src="./doc/exemple_amortissements_a_repartir.png" <figure>
title="Amortissements du compte 28185" /></p> <img src="./doc/exemple_amortissements_a_repartir.png"
title="Amortissements du compte 28185"
alt="Amortissements du compte 28185" />
<figcaption aria-hidden="true">Amortissements du compte
28185</figcaption>
</figure>
<p>Sur la page qui souvre quand on clique <em>Attacher</em>, il faut <p>Sur la page qui souvre quand on clique <em>Attacher</em>, il faut
modifier le montant affiché (10627,25) en indiquant le montant des modifier le montant affiché (7058,06) en indiquant le montant des
amortissements de limmobilisation (3500).</p> amortissements de limmobilisation (1016,43).</p>
<p><img src="./doc/exemple_saisie-amortissement-saxo-1.png" alt="Montant de l'amortissement à modifier" style="border: 1px solid grey;">  <figure>
<img src="./doc/exemple_saisie-amortissement-saxo-2.png" alt="Montant de l'amortissement à modifier" style="border: 1px solid grey;"></p> <img src="./doc/exemple_saisie-amortissement-saxo.png"
title="Saisie du montant de l&#39;amortissement"
alt="Saisie du montant de lamortissement" />
<figcaption aria-hidden="true">Saisie du montant de
lamortissement</figcaption>
</figure>
<p>De retour sur la page des amortissements, on constate la présence de <p>De retour sur la page des amortissements, on constate la présence de
lécriture damortissement quon vient dattacher ; on peut détacher une lécriture damortissement quon vient dattacher ; on peut détacher une
écriture si on sest trompé.</p> écriture si on sest trompé.</p>
<p>On peut aussi remarquer que limmobilisation est totalement amortie <figure>
et est classée dans longlet des immobilisations amorties ; on constate <img src="./doc/exemple_amortissement-saxo-2.png"
que sa valeur nette est bien égale à 0.</p> title="Page de détails du saxophone"
<p><img src="./doc/exemple_amortissement-saxo-2.png" alt="Page de détails du saxophone" />
title="Page de détails du saxophone" /></p> <figcaption aria-hidden="true">Page de détails du saxophone</figcaption>
</figure>
<p>On peut faire de même pour les amortissements des autres <p>On peut faire de même pour les amortissements des autres
immobilisations du compte 2185 (Batterie et Piano) puis pour celles du immobilisations du compte 2185 (Batterie et Piano) puis pour celles du
compte 2181.</p> compte 2181 et lon obtient :</p>
<p><strong>Exemple du piano :</strong></p> <figure>
<p><img src="./doc/exemple_amortissement-piano.png" <img src="./doc/exemple_immobilisations_amortissables-3.png"
title="Page de détails du piano" /></p> title="Immobilisations et amortissements après incorporation"
<p>Pour finir on obtient :</p> alt="Immobilisations et amortissements après incorporation" />
<p><img src="./doc/exemple_immobilisations_amortissables-3.png" <figcaption aria-hidden="true">Immobilisations et amortissements après
title="Immobilisations et amortissements après incorporation" /></p> incorporation</figcaption>
<p>et :</p> </figure>
<p><img src="./doc/exemple_immobilisations_amortissables-4.png"
title="Immobilisation totalement amortie" /></p>
<p>Les immobilisations et amortissements de la balance douverture <p>Les immobilisations et amortissements de la balance douverture
initiale ont été incorporés en totalité dans le module.</p> initiale ont été incorporés en totalité dans le module.</p>
<p>Par la suite, pour créer de nouveaux amortissements, il suffit de <p>Par la suite, pour créer de nouveaux amortissements, il suffit de
@ -405,8 +446,13 @@ pas amortissables, mais sont destinées à être groupées pour former une
nouvelle immobilisation qui pourra être amortie.</p> nouvelle immobilisation qui pourra être amortie.</p>
<p>Pour ce faire, cocher les lignes à grouper puis cliquer <p>Pour ce faire, cocher les lignes à grouper puis cliquer
<em>Transférer</em>.</p> <em>Transférer</em>.</p>
<p><img src="./doc/exemple_immobilisations_en-cours-1.png" <figure>
title="Immobilisations en cours de constitutions" /></p> <img src="./doc/exemple_immobilisations_en-cours-1.png"
title="Immobilisations en cours de constitutions"
alt="Immobilisations en cours de constitutions" />
<figcaption aria-hidden="true">Immobilisations en cours de
constitutions</figcaption>
</figure>
<p>Sur la page qui souvre, saisir les données de la nouvelle <p>Sur la page qui souvre, saisir les données de la nouvelle
immobilisation :</p> immobilisation :</p>
<ul> <ul>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 69 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 77 KiB

After

Width:  |  Height:  |  Size: 88 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 43 KiB

After

Width:  |  Height:  |  Size: 46 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 28 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

After

Width:  |  Height:  |  Size: 45 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 75 KiB

After

Width:  |  Height:  |  Size: 88 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

View file

@ -21,7 +21,7 @@
{{:include file="_nav.html" current=$type_immo}} {{:include file="_nav.html" current=$type_immo}}
{{* Mise à niveau *}} {{* Mise à niveau *}}
{{:assign module_version="0.40.4"}} {{:assign module_version="0.40.1"}}
{{:include file="upgrade.html" module_version=$module_version}} {{:include file="upgrade.html" module_version=$module_version}}
{{* supprimer les documents sans écriture associée *}} {{* supprimer les documents sans écriture associée *}}

View file

@ -120,6 +120,8 @@
{{/if}} {{/if}}
{{:form_errors}} {{: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 modifier la date de mise en service, les écritures associées ou la durée d'amortissement
*}} *}}
@ -165,11 +167,3 @@
</form> </form>
{{:admin_footer}} {{:admin_footer}}
<script type="text/javascript">
(function () {
document.getElementById('f_date_achat').addEventListener("change", (e) => {
document.getElementById('f_date_mes').value = document.getElementById('f_date_achat').value;
});
})();
</script>

View file

@ -1,5 +1,5 @@
name="Amortissements" name="Amortissements"
description="Immobilisations et amortissements\nversion 0.40.4" description="Immobilisations et amortissements\nversion 0.40.1"
author="Jean-Christophe Engel" author="Jean-Christophe Engel"
author_url="https://gitea.zaclys.com/lesanges" author_url="https://gitea.zaclys.com/lesanges"
home_button=false home_button=false

View file

@ -41,11 +41,6 @@
{{:assign amort_label=$line_label|or:$trans_label}} {{:assign amort_label=$line_label|or:$trans_label}}
{{/foreach}} {{/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}} {{if $total_amort == 0}}
{{* 1er amortissement *}} {{* 1er amortissement *}}
{{* déterminer le compte d'amortissement en fonction du compte d'immobilisation *}} {{* déterminer le compte d'amortissement en fonction du compte d'immobilisation *}}
@ -60,11 +55,9 @@
{{:assign var=libelle value="Amortissement %s"|args:$ligne_immo.trans_label}} {{:assign var=libelle value="Amortissement %s"|args:$ligne_immo.trans_label}}
{{else}} {{else}}
{{* amortissements suivants *}} {{* amortissements suivants *}}
{{if $date_debut != $first_date}}
{{:assign date_debut=$date_debut|strtotime}} {{:assign date_debut=$date_debut|strtotime}}
{{:assign date_debut="%d+(60*60*24)"|math:$date_debut|date:"Y-m-d"}} {{:assign date_debut="%d+(60*60*24)"|math:$date_debut|date:"Y-m-d"}}
{{/if}} {{/if}}
{{/if}}
{{* {{*
lister les exercices qui englobent la date de mise en service de l'immo lister les exercices qui englobent la date de mise en service de l'immo
@ -226,13 +219,13 @@
{{if $years|count == 1}} {{if $years|count == 1}}
{{:assign var=selected_year value=$years.0.id}} {{:assign var=selected_year value=$years.0.id}}
{{/if}}
{{:assign var=date_amort value=$years.0.end_date}} {{:assign var=date_amort value=$years.0.end_date}}
{{:include file="_calcul_dates.html" date_debut=$date_debut date_fin=$date_amort keep="nbjours"}} {{:include file="_calcul_dates.html" date_debut=$date_debut date_fin=$date_amort keep="nbjours"}}
{{* montant de l'amortissement *}} {{* montant de l'amortissement *}}
{{:assign montant_amort="%f/%f/365*%d"|math:$ligne_immo.amount:$info_immo.duration:$nbjours|intval}} {{: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 montant_amort="min(%f, %d-%d)"|math:$montant_amort:$ligne_immo.amount:$total_amort}}
{{/if}}
{{:assign var="debit_account.6811" value="6811 — Dot. aux amortissements des immobilisations"}} {{: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}} {{: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="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="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"}} {{:input type="text" name="designation" label="Libellé" required=true default=$amort_label size="50"}}
{{if $total_amort == 0 || $nbjours < 365 || $nbjours > 366}} {{:input type="money" name="montant" label="Montant" required=true default=$montant_amort}}
{{: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 {{:input
type="list" type="list"
name="debit_account" name="debit_account"

View file

@ -38,4 +38,5 @@
{{:include file="_compare_version.tpl" nv1=$module_version nv2=$module.config.version keep="comp"}} {{:include file="_compare_version.tpl" nv1=$module_version nv2=$module.config.version keep="comp"}}
{{if $comp > 0}} {{if $comp > 0}}
{{:save key="config" version=$module_version}} {{:save key="config" version=$module_version}}
<p class="block alert">Nouvelle version enregistrée : {{$module_version}}</p>
{{/if}} {{/if}}