diff --git a/_calcul_dates.html b/_calcul_dates.html
index 28c6da8..00ca468 100644
--- a/_calcul_dates.html
+++ b/_calcul_dates.html
@@ -18,4 +18,3 @@
{{* pour simplifier : 360 jours par an *}}
{{:assign nbjours="round(%f/365*360)"|math:$nbjours}}
-{{:debug nbjours=$nbjours}}
diff --git a/_nav.html b/_nav.html
index d98dee8..58c4008 100644
--- a/_nav.html
+++ b/_nav.html
@@ -13,11 +13,11 @@
{{if $current == 'index'}}
-
- - En cours
- - Terminées
- - Archivées
- - Autres
+
{{if $subsubcurrent == 'amortization'}}
diff --git a/archives.html b/archives.html
new file mode 100644
index 0000000..a56d15a
--- /dev/null
+++ b/archives.html
@@ -0,0 +1,66 @@
+{{* -*- brindille -*- *}}
+
+{{* Liste des immobilisations archivées *}}
+
+
+ Immobilisations archivées
+
+
+
+
+ N° |
+ Date |
+ Libellé |
+ Montant |
+ N° compte |
+ Compte |
+ Projet |
+ |
+
+
+
+
+ {{#load type="immo" where="$$.status = 'archived'"}}
+ {{:assign var="lines." value="'%s'"|args:$line}}
+ {{/load}}
+ {{:assign lines=$lines|implode:","}}
+ {{:assign lines="("|cat:$lines|cat:")"}}
+ {{:assign condition="line.id IN %s"|args:$lines}}
+{{*:debug condition=$condition*}}
+ {{#select
+ trans.id as trans_id,
+ trans.label as trans_label,
+ trans.date as trans_date,
+ line.id as immo_id,
+ account.id as account_id,
+ account.code as account_code,
+ account.label as account_label,
+ line.debit AS debit,
+ project.label as project_label,
+ 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
+ LEFT JOIN acc_projects AS project ON line.id_project = project.id
+ WHERE !condition
+ ORDER BY trans.date DESC;
+ !condition=$condition
+ }}
+ {{: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}}
+
+ #{{$trans_id}} |
+ {{$trans_date|date_short}} |
+ {{$trans_label}} |
+ {{"%f"|math:$debit|money:false}} |
+ {{$account_code}} |
+ {{$account_label}} |
+ {{$project_label}} |
+
+ |
+
+ {{/select}}
+
+
+
diff --git a/balance_sheet_exit.html b/balance_sheet_exit.html
new file mode 100644
index 0000000..d2cdb03
--- /dev/null
+++ b/balance_sheet_exit.html
@@ -0,0 +1,247 @@
+{{* -*- brindille -*- *}}
+
+{{*
+ Sortir une immobilisation du bilan
+ @param :
+ - immo_id : numéro de ligne de l'immo
+*}}
+
+{{* récupérer les infos de l'immobilisation *}}
+{{#select
+ line.id as line_id,
+ line.debit as montant,
+ line.id_project as project_id,
+ trans.id as trans_id,
+ trans.date as trans_date,
+ trans.label as trans_label,
+ acc.id as account_id,
+ y.id as year_id
+ FROM acc_transactions_lines AS line
+ INNER JOIN acc_transactions AS trans ON line.id_transaction = trans.id
+ INNER JOIN acc_accounts as acc ON line.id_account = acc.id
+ INNER JOIN acc_years AS y ON trans.id_year = y.id
+ WHERE line.id = :line_id;
+ :line_id = $_GET.immo_id|intval
+ assign=ligne_immo
+}}
+{{else}}
+ {{:error message="Immobilisation %s non trouvée"|args:$_GET.immo_id}}
+{{/select}}
+
+{{#load type="immo" assign="info_immo" where="$$.line = :line_id" :line_id=$_GET.immo_id|intval}}
+{{/load}}
+
+{{* voir s'il existe des écritures d'amortissement associées *}}
+{{#select
+ sum(l_amort.credit) as amort_amount,
+ CASE
+ WHEN links.id_related = t_immo.id THEN links.id_transaction
+ ELSE links.id_related
+ END as amort_trans_id
+ FROM acc_transactions_lines as l_immo
+ INNER JOIN acc_transactions as t_immo on t_immo.id = l_immo.id_transaction
+ INNER JOIN acc_transactions_links as links
+ ON (
+ t_immo.id = links.id_transaction
+ OR
+ t_immo.id = links.id_related
+ )
+ INNER JOIN acc_transactions_lines as l_amort on amort_trans_id = l_amort.id_transaction
+ INNER JOIN acc_accounts AS account ON l_amort.id_account = account.id
+ WHERE
+ l_immo.id = :line_id
+ AND
+ l_amort.credit <> 0
+ AND
+ account.code LIKE '28%';
+ :line_id = $_GET.immo_id|intval
+}}
+ {{if $amort_amount == null}}
+ {{:assign amort_amount=0}}
+ {{else}}
+ {{:assign amort_amount=$amort_amount}}
+ {{/if}}
+{{/select}}
+{{:assign valeur_nette="%f-%f"|math:$ligne_immo.montant:$amort_amount}}
+
+{{* Traiter l'envoi du formulaire *}}
+{{#form on="proceed"}}
+
+ {{*
+ vérifier que la date de sortie est située après la date de mise en
+ service ou à défaut de la date d'acquisition de l'immobilisation
+ *}}
+ {{if $info_immo.date != null}}
+ {{if $_POST.date_sortie|parse_date < $info_immo.date}}
+ {{:assign immo_date=$info_immo.date|date_short}}
+ {{:error message="La date choisie doit être postérieure à la date de mise en service de l'immobilisation (%s)"|args:$immo_date}}
+ {{/if}}
+ {{else}}
+ {{if $_POST.date_sortie|parse_date < $ligne_immo.trans_date}}
+ {{:assign immo_date=$ligne_immo.trans_date|date_short}}
+ {{:error message="La date choisie doit être postérieure à la date d'acquisition de l'immobilisation (%s)"|args:$immo_date}}
+ {{/if}}
+ {{/if}}
+
+ {{* vérifier que la date est située dans un exercice ouvert *}}
+ {{:include
+ file="_check_date.html"
+ date=$_POST.date_sortie
+ keep="open_years, selected_year, selected_chart"
+ }}
+ {{if $selected_year == null}}
+ {{:assign msg_years=""}}
+ {{#foreach from=$open_years}}
+ {{:assign debut=$start_date|date_short}}
+ {{:assign fin=$end_date|date_short}}
+ {{:assign msg_years=$msg_years|cat:"\n"|cat:" - "|cat:$label|cat:" : "|cat:$debut|cat:" à "|cat:$fin}}
+ {{/foreach}}
+ {{:error message="La date choisie n'est dans aucun exercice ouvert !!\nExercices ouverts : %s"|args:$msg_years}}
+ {{/if}}
+
+ {{if $valeur_nette > 0}}
+ {{if $info_immo.duration == null}}
+ {{if $_POST.duree == null}}
+ {{:error message="Vous devez renseigner la durée de l'amortissement"}}
+ {{else}}
+ {{:assign var=info_immo.duration value=$_POST.duree}}
+ {{/if}}
+ {{/if}}
+ {{/if}}
+
+ {{* Cession de l'immobilisation
+ {{if $_POST.cession}}
+ {{if $_POST.montant_cession == ""}}
+ {{:error message="Le montant de la cession doit être renseigné"}}
+ {{/if}}
+ {{if $_POST.montant_cession <= 0}}
+ {{:error message="Le montant de la cession doit être strictement positif"}}
+ {{/if}}
+ {{/if}}
+*}}
+ {{:redirect to="compute_exit_data.html?immo_id=%s&amort_amount=%s&year=%s&exit_date=%s&duree_amort=%s"|args:$_GET.immo_id:$amort_amount:$selected_year:$_POST.date_sortie:$_POST.duree}}
+{{*
+ {{:redirect to="write_exit.html?immo_id=%s&amort_amount=%s&year=%s&exit_date=%s&cession=%s&duree_amort=%s"|args:$_GET.immo_id:$amort_amount:$selected_year:$_POST.date_sortie:$_POST.montant_cession:$_POST.duree}}
+*}}
+{{/form}}
+
+{{:admin_header title="Sortie de bilan" custom_css="./style.css" current="module_amortissement"}}
+{{* barre de navigation *}}
+{{if ! $dialog}}
+ {{:include file="_nav.html" current="index"}}
+{{/if}}
+{{:form_errors}}
+
+{{*:debug ligne_immo=$ligne_immo amort_amount=$amort_amount*}}
+
+{{* formulaire de sortie du bilan *}}
+Sortir l'immobilisation « {{$ligne_immo.trans_label}} » du bilan
+
+
+
+
+{{:admin_footer}}
diff --git a/immobilisations.html b/immobilisations.html
index c31eeb1..aa69248 100644
--- a/immobilisations.html
+++ b/immobilisations.html
@@ -28,10 +28,10 @@
{{:read file="./defaut.json" assign="config_json"}}
{{:assign config_defaut=$config_json|json_decode}}
{{:assign var="prefix_array" value=$config_defaut.prefixes|keys}}
- {{:assign quote="'"}}
{{:assign condition="("}}
{{#foreach from=$prefix_array item="code"}}
- {{:assign condition=$condition|cat:" account.code LIKE "|cat:$quote|cat:$code|cat:"%"|cat:$quote|cat:" OR "}}
+ {{:assign code=$code|cat:"%"|quote_sql}}
+ {{:assign condition=$condition|cat:" account.code LIKE "|cat:$code|cat:" OR "}}
{{/foreach}}
{{:assign condition=$condition|cat:"0)"}}
{{:assign condition=$condition|cat:" AND debit > 0 AND NOT (trans.status & 16)"}}
@@ -60,7 +60,7 @@
{{* voir si l'immo est prise en charge *}}
{{#load type="immo" where="$$.line = :line_id" :line_id=$immo_id|intval}}
{{:assign duration=$duration}}
- {{if $noamort}}
+ {{if $status == "ignored"}}
{{:assign amortissable="non"}}
{{else}}
{{:assign amortissable="oui"}}
@@ -71,6 +71,32 @@
{{if $amortissable == "non"}}
{{:continue}}
{{/if}}
+
+ {{* voir s'il existe une écriture qui solde l'immobilisation *}}
+ {{:assign ignore=false}}
+ {{#select
+ line.id AS line,
+ line.id_transaction AS trans,
+ line.debit,
+ line.label,
+ line2.id AS line2,
+ line2.id_transaction AS trans2,
+ line2.credit,
+ line2.label
+ FROM acc_transactions_lines AS line
+ INNER JOIN acc_accounts AS acc ON acc.id = line.id_account
+ INNER JOIN acc_transactions_lines AS line2 ON line2.id_account = acc.id
+ WHERE
+ line.id = :line_id
+ AND line2.credit = line.debit;
+ :line_id = $immo_id|intval
+ }}
+ {{:assign ignore=true}}
+ {{/select}}
+ {{if $ignore}}
+ {{:continue}}
+ {{/if}}
+
{{* voir s'il existe des écritures d'amortissement associées *}}
{{#select
sum(l_amort.credit) as amort_amount,
@@ -104,7 +130,8 @@
{{:assign exist_amort=true}}
{{/if}}
{{/select}}
- {{* immo amortie ? *}}
+
+ {{* classement par onglet *}}
{{if $amort == "encours" && $amort_amount >= $debit ||
$amort == "fini" && $amort_amount < $debit ||
$amortissable == "nsp" && ! $exist_amort
@@ -135,19 +162,13 @@
target="_dialog"
}}
{{/if}}
- {{if $amort == "encours"}}
+ {{if $amort == "encours" || $amort == "fini"}}
{{:linkbutton
- label="Cession"
- href=""
- shape="money"
- }}
- {{elseif $amort == "fini"}}
- {{:linkbutton
- label="Rebut"
- href=""
+ label="Sortir du bilan"
+ href="balance_sheet_exit.html?immo_id=%s"|args:$immo_id
shape="export"
}}
- {{/if}}
+ {{/if}}
{{:linkbutton
label="Amortissements"
href="amortization.html?immo_id=%s&amort=%s"|args:$immo_id:$amort
diff --git a/index.html b/index.html
index 40e74c9..25f4c29 100644
--- a/index.html
+++ b/index.html
@@ -34,7 +34,7 @@
{{:delete key=$key}}
{{/select}}
- {{* supprimer les documents correspondant à une écriture de la balance d'ouverture *}}
+ {{* supprimer les documents correspondant à une écriture de la balance d'ouverture
{{#select
line.id as line_id,
trans.status
@@ -45,10 +45,13 @@
}}
{{:delete key=$key}}
{{/select}}
+ *}}
{{/load}}
{{if $amort == "autres"}}
{{:include file="./immobilisations_autres.html"}}
+{{elseif $amort == "archive"}}
+ {{:include file="archives.html"}}
{{elseif $amort == "encours" || $amort == "fini"}}
{{:include file="./immobilisations.html"}}
{{/if}}
diff --git a/style.css b/style.css
index a742142..d8e1dfe 100644
--- a/style.css
+++ b/style.css
@@ -17,3 +17,23 @@ h2[class="aide"], h3[class="aide"] {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
+
+.informations {
+ margin-top : 0.5em;
+ margin-bottom : 0.5em;
+ padding : 0.5em;
+}
+
+.informations legend {
+ font-weight: bold;
+ border-bottom : solid 1px var(--gLightBorderColor);
+ margin-bottom : 0.5em;
+}
+
+.informations dt::after {
+ content: ' :';
+}
+
+.informations dl.describe > dt {
+ margin-right: 0;
+}
diff --git a/write_exit.html b/write_exit.html
new file mode 100644
index 0000000..0ef62eb
--- /dev/null
+++ b/write_exit.html
@@ -0,0 +1,562 @@
+{{* -*- brindille -*- *}}
+
+{{*
+ Enregistrer les écritures de sortie du bilan
+ paramètres :
+ - immo_id : numéro de ligne de l'écriture d'immobilisation
+ - amort_amount : montant des amortissements
+ - year : exercice de la date de sortie de l'immobilisation
+ - exit_date : date de sortie de l'immobilisation
+ - cession : montant de la cession (optionnel)
+ - duree_amort : durée de l'amortiseement (optionnel)
+*}}
+
+{{* TEMPORAIRE *}}
+{{:admin_header title="Sortie du bilan" custom_css="./style.css" current="module_amortissement"}}
+
+{{* barre de navigation *}}
+{{if ! $dialog}}
+ {{:include file="_nav.html" current="amortization"}}
+{{/if}}
+{{* /TEMPORAIRE *}}
+
+{{#select
+ id_transaction,
+ id_account,
+ debit,
+ label,
+ id_project
+ FROM acc_transactions_lines
+ WHERE id = :immo_id;
+ :immo_id = $_GET.immo_id|intval
+ assign="ligne_immo"
+}}
+{{/select}}
+
+{{#select
+ label,date
+ FROM acc_transactions
+ WHERE id = :trans_id;
+ :trans_id = $ligne_immo.id_transaction
+ assign="trans_immo"
+}}
+{{/select}}
+
+{{#load type="immo" assign="info_immo" where="$$.line = :line_id" :line_id=$_GET.immo_id|intval}}
+{{/load}}
+
+{{* date de début de l'exercice *}}
+{{#select start_date FROM acc_years WHERE id = :year_id; :year_id = $_GET.year}}
+ {{:assign date_debut=$start_date}}
+{{/select}}
+
+{{*if $date_debut < "2025-01-01"*}}
+ {{:assign vnc_code=675}}
+ {{:assign cession_code=775}}
+{{*
+{{else}}
+ {{:assign vnc_code=657}}
+ {{:assign cession_code=757}}
+{{/if}}
+*}}
+
+{{if $info_immo.duration == null}}
+ {{:assign duree_amort=$_GET.duree_amort}}
+{{else}}
+ {{:assign duree_amort=$info_immo.duration}}
+{{/if}}
+
+{{:assign valeur_nette="%f-%f"|math:$ligne_immo.debit:$_GET.amort_amount}}
+{{:assign amort_comp=0}} {{* amortissement complémentaire jqà date sortie *}}
+{{:assign amort_except=0}} {{* amortissement exceptionnel jqà date fin amortissement *}}
+{{if $valeur_nette > 0}}
+ {{:include
+ file="_calcul_dates.html"
+ date_debut=$date_debut|parse_date
+ date_fin=$_GET.exit_date|parse_date
+ keep="nbjours"
+ }}
+{{:debug nbjours=$nbjours}}
+ {{:assign annuite="%f/%f"|math:$ligne_immo.debit:$duree_amort}}
+ {{:assign amort_comp="round(%f/360*%f, 0)"|math:$annuite:$nbjours}}
+ {{:assign amort_comp="min(%f, %f)"|math:$valeur_nette:$amort_comp}}
+
+ {{if $_GET.cession == null}}
+ {{:assign amort_except="%f-%f-%f"|math:$ligne_immo.debit:$_GET.amort_amount:$amort_comp}}
+ {{/if}}
+{{/if}}
+
+{{if $_GET.cession == null}}
+ {{:assign montant_cession=0}}
+{{else}}
+ {{:assign montant_cession="%f*100"|math:$_GET.cession}}
+{{/if}}
+
+{{*:debug
+ get=$_GET
+ montant=$ligne_immo.debit
+ amort_comp=$amort_comp
+ amort_except=$amort_except
+ montant_cession=$montant_cession
+*}}
+
+{{* Traiter l'envoi du formulaire *}}
+{{#form on="save"}}
+{{*:debug post=$_POST*}}
+
+ {{if $valeur_nette > 0}}
+ {{* immo non totalement amortie *}}
+
+ {{* lignes d'écriture de l'amortissement complémentaire *}}
+ {{:include
+ file="_get_codes.html"
+ account=$_POST.comp_account
+ keep="account_code"
+ }}
+ {{:assign comp_account=$account_code|keys|key:0}}
+ {{:include
+ file="_get_codes.html"
+ account=$_POST.amort_comp_account
+ keep="account_code"
+ }}
+ {{:assign amort_account=$account_code|keys|key:0}}
+
+ {{* ? Faut-il vérifier la validité des comptes ? *}}
+
+ {{:assign libelle="Amortissement complémentaire "|cat:$trans_immo.label}}
+ {{:assign
+ var="lines."
+ debit="%f/100"|math:$amort_comp
+ account=$comp_account
+ id_project=$ligne_immo.id_project
+ label=$libelle
+ }}
+ {{:assign
+ var="lines."
+ credit="%f/100"|math:$amort_comp
+ account=$amort_account
+ id_project=$ligne_immo.id_project
+ label=$libelle
+ }}
+ {{:assign valeur_nette="%f-%f"|math:$valeur_nette:$amort_comp}}
+
+ {{if $_GET.cession == null}}
+ {{* lignes d'écriture de l'amortissement exceptionnel *}}
+ {{:include
+ file="_get_codes.html"
+ account=$_POST.except_account
+ keep="account_code"
+ }}
+ {{:assign except_account=$account_code|keys|key:0}}
+ {{:assign libelle="Amortissement exceptionnel "|cat:$trans_immo.label}}
+ {{:assign
+ var="lines."
+ debit="%f/100"|math:$amort_except
+ account=$except_account
+ id_project=$ligne_immo.id_project
+ label=$libelle
+ }}
+ {{:assign
+ var="lines."
+ credit="%f/100"|math:$amort_except
+ account=$amort_account
+ id_project=$ligne_immo.id_project
+ label=$libelle
+ }}
+ {{:assign valeur_nette="%f-%f"|math:$valeur_nette:$amort_except}}
+ {{/if}}
+{{*:debug lines=$lines*}}
+
+ {{:api
+ method="POST"
+ path="accounting/transaction"
+ assign="result"
+ assign_code="result_code"
+ id_year=$_GET.year
+ type="advanced"
+ date=$_GET.exit_date
+ label="Amortissement final "|cat:$trans_immo.label
+ lines=$lines
+ linked_transactions=$ligne_immo.id_transaction
+ }}
+ {{/if}}
+
+ {{* écriture de sortie du bilan *}}
+{{*:debug valeur_nette=$valeur_nette*}}
+ {{:assign libelle="Sortie du bilan de "|cat:$trans_immo.label}}
+ {{:assign lines=null}}
+ {{:assign
+ var="lines."
+ id_account=$ligne_immo.id_account
+ credit="%f/100"|math:$ligne_immo.debit
+ id_project=$ligne_immo.id_project
+ label=$libelle
+ }}
+ {{:assign
+ var="lines."
+ account=$amort_account
+ debit="(%f-%f)/100"|math:$ligne_immo.debit:$valeur_nette
+ id_project=$ligne_immo.id_project
+ label=$libelle
+ }}
+ {{if $valeur_nette > 0}}
+ {{:assign
+ var="lines."
+ account=$vnc_code
+ debit="%f/100"|math:$valeur_nette
+ id_project=$ligne_immo.id_project
+ label=$libelle
+ }}
+ {{/if}}
+{{*:debug lines=$lines*}}
+ {{:api
+ method="POST"
+ path="accounting/transaction"
+ assign="result"
+ assign_code="result_code"
+ id_year=$_GET.year
+ type="advanced"
+ date=$_GET.exit_date
+ label=$libelle
+ lines=$lines
+ linked_transactions=$ligne_immo.id_transaction
+ }}
+
+ {{if $montant_cession > 0}}
+ {{* Cession de l'immobilisation *}}
+ {{:assign libelle="Produit cession "|cat:$trans_immo.label}}
+ {{:include
+ file="_get_codes.html"
+ account=$_POST.creance_account
+ keep="account_code"
+ }}
+ {{:assign creance_account=$account_code|keys|key:0}}
+ {{:include
+ file="_get_codes.html"
+ account=$_POST.cession_account
+ keep="account_code"
+ }}
+ {{:assign cession_account=$account_code|keys|key:0}}
+ {{:api
+ method="POST"
+ path="accounting/transaction"
+ assign="result"
+ assign_code="result_code"
+ id_year=$_GET.year
+ type="credit"
+ date=$_GET.exit_date
+ label=$libelle
+ amount="%f/100"|math:$montant_cession
+ debit=$creance_account
+ credit=$cession_account
+ id_project=$ligne_immo.id_project
+ linked_transactions=$ligne_immo.id_transaction
+ }}
+ {{/if}}
+
+ {{* mettre à jour l'état de l'immobilisation *}}
+ {{:save
+ key=$info_immo.key
+ status="archived"
+ }}
+
+ {{:redirect to="index.html?amort=archive"}}
+
+{{/form}}
+
+{{:form_errors}}
+{{*:debug get=$_GET*}}
+
+{{* Préparer les infos pour le formulaire *}}
+
+{{* déterminer les comptes pour les différentes écritures *}}
+{{:assign var="comp_account.6811" value="6811 — Dot. aux amortissements des immobilisations"}}
+{{:assign var="except_account.687" value="687 — Dot. aux amortissements & provisions - Charges exceptionnelles"}}
+
+{{#select code, label from acc_accounts where id = :id;
+ :id=$ligne_immo.id_account
+ assign=immo_account_info
+}}
+{{/select}}
+{{*:debug immo_account_info=$immo_account_info*}}
+
+{{:include
+ file="./_get_amort_code.html"
+ code_immo=$immo_account_info.code
+ keep="code_amort"
+}}
+{{:assign
+ var="amort_account.%s"|args:$code_amort
+ value="%s — Amortissements "|args:$code_amort|cat:$immo_account_info.label}}
+{{:assign
+ var="immo_account.%s"|args:$immo_account_info.code
+ value="%s — Immobilisation "|args::$immo_account_info.code|cat:$immo_account_info.label}}
+{{:assign
+ var="vnc_account.%s"|args:$vnc_code
+ value="%s — Valeurs comptables des éléments d'actifs cédés"|args:$vnc_code}}
+{{:assign
+ var="cession_account.%s"|args:$cession_code
+ value="%s — Produits des cessions d'actif"|args:$cession_code}}
+{{:assign var="creance_account.462" value="462 — Créances sur cessions d'immobilisations"}}
+
+{{*:debug
+comp_account=$comp_account
+except_account=$except_account
+amort_account=$amort_account
+immo_account=$immo_account
+vnc_account=$vnc_account
+*}}
+
+{{#select * from acc_years where start_date <= :date AND :date <= end_date;
+ :date=$_GET.exit_date|parse_date
+ assign=year
+}}
+{{/select}}
+
+{{:read file="./defaut.json" assign="config_json"}}
+{{:assign config_defaut=$config_json|json_decode}}
+{{:assign var="prefix_array" value=$config_defaut.prefixes|keys}}
+
+{{#foreach from=$prefix_array item="code"}}
+ {{:assign var="pattern_array." value="%s*"|args:$code}}
+{{/foreach}}
+{{:assign patterns=$pattern_array|implode:"|"}}
+
+{{*:debug comp_account=$comp_account amort_account=$amort_account except_account=$except_account year=$year*}}
+
+Sortir l'immobilisation « {{$trans_immo.label}} » du bilan
+
+{{:admin_footer}}