From 403887a15f4daab14b8e4fd967acaa260064bdae Mon Sep 17 00:00:00 2001 From: Jean-Christophe Engel Date: Mon, 10 Nov 2025 14:29:07 +0100 Subject: [PATCH] Configuration comptes immobilisations en cours --- _archives.html | 10 +- _get_config.html | 27 ++-- _immobilisations.html | 10 +- _immobilisations_autres.html | 11 +- _unfinished.html | 10 +- add_asset.html | 6 +- config.html | 260 ++++++++++++++++++++--------------- defaut.json | 8 +- save_amort.html | 4 +- scripts.js | 35 ++++- write_exit.html | 4 +- 11 files changed, 234 insertions(+), 151 deletions(-) diff --git a/_archives.html b/_archives.html index a1bc45b..22ce879 100644 --- a/_archives.html +++ b/_archives.html @@ -6,14 +6,12 @@
- Les immobilisations sont cherchées dans les comptes sélectionnées et leurs sous-comptes. -
+ Les immobilisations amortissables sont cherchées dans les comptes sélectionnés et leurs sous-comptes. +
+ Ces immobilisations ne sont pas amortissables ; elles sont cherchées dans les comptes sélectionnés et leurs sous-comptes. +
{{:button type="submit" name="save" label="Enregistrer" shape="right" class="main"}} @@ -143,60 +223,20 @@ {{/if}} - - diff --git a/defaut.json b/defaut.json index 06771a5..df93eec 100644 --- a/defaut.json +++ b/defaut.json @@ -4,5 +4,11 @@ "20", "21", "27" - ] + ], + "unfinished": [ + { + "code" : "23", + "label" : "Immobilisations en cours" + } + ] } diff --git a/save_amort.html b/save_amort.html index 875db12..8fc110d 100644 --- a/save_amort.html +++ b/save_amort.html @@ -147,8 +147,8 @@ - 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 *}} - {{:include file="_get_config.html" keep="config.prefixes"}} - {{#foreach from=$config.prefixes item="code"}} + {{:include file="_get_config.html" keep="module.config.prefixes"}} + {{#foreach from=$module.config.prefixes item="code"}} {{* déterminer le numéro du compte d'amortissement associé au compte d'immobilisation *}} {{:include file="./_get_amort_code.html" diff --git a/scripts.js b/scripts.js index 3d91074..9764bcc 100644 --- a/scripts.js +++ b/scripts.js @@ -142,10 +142,11 @@ function setSelectorYear(button_names, f_years_selector) { // config : gestion des ajouts/suppression comptes immo +// Associer au bouton « Enlever » de chaque ligne l'action de suppression de la ligne function initLine(row) { var removeBtn = row.querySelector('button[name="remove_line"]'); removeBtn.onclick = () => { - var count = $('.transaction-lines tbody tr').length; + let count = removeBtn.closest("table").querySelectorAll('tbody tr').length; var min = removeBtn.getAttribute('min'); if (count <= min) { @@ -157,3 +158,35 @@ function initLine(row) { return true; }; } + +// Associer au bouton « Ajouter » de chaque table l'action d'ajouter une ligne +function addLine(button, codes) { + console.log("codes=" + JSON.stringify(codes)); + button.onclick = () => { + let lines = button.closest("table").querySelectorAll('tbody tr'); + let line = lines[lines.length - 1]; + let newNode = line.cloneNode(true); + + // Réinitialiser le sélecteur de compte + let selectButton = newNode.querySelector('.input-list button'); + let url = selectButton.value; + let new_url = url.replace(/codes=[0-9]+\*?/, "codes=" + codes); + selectButton.value = new_url; + + // gestionnaire d'événement du sélecteur + selectButton.onclick = () => { + g.current_list_input = selectButton.parentNode; + let url = selectButton.value + (selectButton.value.indexOf('?') > 0 ? '&' : '?') + '_dialog'; + g.openFrameDialog(url); + return false; + }; + + // réinitialiser le libellé associé au sélecteur + let lib = newNode.querySelector('.input-list span.label'); + lib.innerText = ''; + + // ajouter la nouvelle ligne + line.parentNode.appendChild(newNode); + initLine(newNode); + }; +} diff --git a/write_exit.html b/write_exit.html index 0fe32a0..340d5fa 100644 --- a/write_exit.html +++ b/write_exit.html @@ -311,8 +311,8 @@ {{:assign var="%s.%s"|args:$name:$code value="%s — %s"|args:$code:$acc_label}} {{/foreach}} -{{:include file="_get_config.html" keep="config.prefixes"}} -{{#foreach from=$config.prefixes item="code"}} +{{:include file="_get_config.html" keep="module.config.prefixes"}} +{{#foreach from=$module.config.prefixes item="code"}} {{:assign var="pattern_array." value="%s*"|args:$code}} {{/foreach}} {{:assign patterns=$pattern_array|implode:"|"}}