diff --git a/_check_account.html b/_check_account.html index 8e841fc..f0fc6ac 100644 --- a/_check_account.html +++ b/_check_account.html @@ -2,7 +2,7 @@ {{* vérifier : - - que le compte débute par le préfixe corect + - que le compte débute par le préfixe correct - est présent dans le PC indiqué paramètres : - account : tableau avec un identifiant de compte @@ -12,13 +12,14 @@ - account_ok *}} -{{:assign account_code=$account|keys|key:0}} +{{:assign quote="'"}} {{:assign condition=" AND ("}} {{#foreach from=$prefix_array item="code"}} - {{:assign condition=$condition|cat:" code LIKE "|cat:$code|cat:" OR "}} + {{:assign condition=$condition|cat:" code LIKE "|cat:$quote|cat:$code|cat:"%"|cat:$quote|cat:" OR "}} {{/foreach}} {{:assign condition=$condition|cat:"0)"}} +{{:assign account_code=$account|keys|key:0}} {{#sql select="code" tables="acc_accounts" diff --git a/add_asset.html b/add_asset.html index 0f476b3..f294302 100644 --- a/add_asset.html +++ b/add_asset.html @@ -43,11 +43,14 @@ {{:assign credit_account=$account_code}} {{* vérifier : - - que le compte d'immo débute par 20 ou 21 + - que le compte d'immo débute par un préfixe correct (20, 21, ...) - est présent dans le PC de l'exercice correspondant à la date *}} - {{:assign var="prefix_array." value="'20%'"}} - {{:assign var="prefix_array." value="'21%'"}} + + {{:read file="./defaut.json" assign="config_json"}} + {{:assign config_defaut=$config_json|json_decode}} + {{:assign var="prefix_array" value=$config_defaut.prefixes|keys}} + {{:include file="_check_account.html" account=$debit_account @@ -94,7 +97,6 @@ date=$date_debut }} {{:redirect force="index.html?ok=1&msg=immobilisation"}} - {{/form}} {{:form_errors}} @@ -127,7 +129,7 @@ {{:input type="list" name="debit_account" - label="Compte d'immobilisation (20xx ou 21xx)" + label="Compte d'immobilisation (20xx, 21xx, ...)" required=true target="!acc/charts/accounts/selector.php?key=code" default=$immo_account diff --git a/index.html b/index.html index c676727..d34172f 100644 --- a/index.html +++ b/index.html @@ -29,7 +29,6 @@ {{/select}} {{/load}} -{{* lister les immobilisations *}}

Liste des immobilisations

@@ -48,9 +47,17 @@ - {{* - TODO améliorer cette requête : voir si assez général - *}} + + {{* lister les immobilisations *}} + {{: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 "}} + {{/foreach}} + {{:assign condition=$condition|cat:"0)"}} {{#select trans.id as trans_id, @@ -68,9 +75,9 @@ 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 - (account.code LIKE '21%' OR account.code LIKE '22%' OR account.code LIKE '27%') - ORDER BY trans.date DESC + 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}} diff --git a/save_amort.html b/save_amort.html index e46f32e..12f2cf6 100644 --- a/save_amort.html +++ b/save_amort.html @@ -36,16 +36,25 @@ {{:assign credit_account=$account_code}} {{* vérifier : - - que le compte d'amortissement débute par 280 ou 281 + - que le compte d'amortissement débute par un préfixe correct (280, 281, ...) - est présent dans le PC de l'exercice correspondant à la date *}} - {{:assign var="prefix_array." value="'280%'"}} - {{:assign var="prefix_array." value="'281%'"}} + {{: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 code_s=$code|strval}} + {{:assign ch1=$code_s|substr:0:1}} + {{:assign reste=$code_s|substr:1}} + {{:assign code=$ch1|cat:"8"|cat:$reste}} + {{:assign var="amort_array." value=$code|intval}} + {{/foreach}} + {{:include file="_check_account.html" account=$credit_account chart_id=$selected_chart - prefix_array=$prefix_array + prefix_array=$amort_array keep="account_ok" }}