diff --git a/taxes_az/taxes_az/doctype/property_tax_return/property_tax_return.js b/taxes_az/taxes_az/doctype/property_tax_return/property_tax_return.js index cabceff..958cc64 100644 --- a/taxes_az/taxes_az/doctype/property_tax_return/property_tax_return.js +++ b/taxes_az/taxes_az/doctype/property_tax_return/property_tax_return.js @@ -88,26 +88,21 @@ function setup_checkbox_exclusivity(frm) { function toggle_field_readonly(frm) { // Если выбран "İl Ərzində", поля 501.1 и 501.2 должны быть скрыты - const is_il_erzinde = frm.doc.il_erzinde; + const hide_column = frm.doc.il_erzinde ? 1 : 0; // 1 = скрыть, 0 = показать // Для əlavə 2 (taxable assets) - поле 501.1 - if (frm.fields_dict.elave_2 && frm.fields_dict.elave_2.grid) { - frm.fields_dict.elave_2.grid.set_column_disp( - 'hesabatilininəvvəlinəəsasvəsaitlərinqalıqdəyəri', - !is_il_erzinde // false скрывает, true показывает - ); + if (frm.get_field('elave_2')) { + const grid = frm.get_field('elave_2').grid; + grid.update_docfield_property('hesabatilininəvvəlinəəsasvəsaitlərinqalıqdəyəri', 'hidden', hide_column); + grid.reset_grid(); } // Для əlavə 1 (tax exempt assets) - поле 501.2 - if (frm.fields_dict.elave_1 && frm.fields_dict.elave_1.grid) { - frm.fields_dict.elave_1.grid.set_column_disp( - 'hesabatilininəvvəlinəəsasvəsaitlərinqalıqdəyərimanatla5012', - !is_il_erzinde // false скрывает, true показывает - ); + if (frm.get_field('elave_1')) { + const grid = frm.get_field('elave_1').grid; + grid.update_docfield_property('hesabatilininəvvəlinəəsasvəsaitlərinqalıqdəyərimanatla5012', 'hidden', hide_column); + grid.reset_grid(); } - - frm.refresh_field('elave_1'); - frm.refresh_field('elave_2'); } function calculate_binalar_totals(frm) { @@ -258,6 +253,11 @@ function update_child_table_values(frm, table_name, data_map) { // Обработчики для дочерней таблицы Elave 2 - автоматический пересчет суммы binalar frappe.ui.form.on('Property tax return Elave 2', { + form_render: function(frm, cdt, cdn) { + // Скрыть колонку при рендеринге формы строки + toggle_field_readonly(frm); + }, + // При изменении любого числового поля - пересчитать totals hesabatilininəvvəlinəəsasvəsaitlərinqalıqdəyəri: function(frm, cdt, cdn) { calculate_binalar_totals(frm); @@ -279,4 +279,12 @@ frappe.ui.form.on('Property tax return Elave 2', { elave_2_remove: function(frm, cdt, cdn) { calculate_binalar_totals(frm); } +}); + +// Обработчики для дочерней таблицы Elave 1 +frappe.ui.form.on('Property tax return Elave 1', { + form_render: function(frm, cdt, cdn) { + // Скрыть колонку при рендеринге формы строки + toggle_field_readonly(frm); + } }); \ No newline at end of file