diff --git a/taxes_az/fixtures/client_script.json b/taxes_az/fixtures/client_script.json index 681b689..87ceed1 100644 --- a/taxes_az/fixtures/client_script.json +++ b/taxes_az/fixtures/client_script.json @@ -4,10 +4,32 @@ "doctype": "Client Script", "dt": "Declaration of value added tax", "enabled": 1, - "modified": "2026-01-15 14:12:50.844195", + "modified": "2026-02-04 18:58:47.567179", + "module": "Taxes Az", + "name": "DefaultDeclaration of value added tax yeni elave 1", + "script": "\r\nfrappe.ui.form.on('Declaration of value added tax', {\r\n onload: function(frm) {\r\n if (!frm.doc.__islocal) return; \r\n\r\n if (!frm.doc.əlavə1_yeni) {\r\n frm.set_value('əlavə1_yeni', []); \r\n }\r\n\r\n const default_rows = [\r\n { sətirkodu: '308', SahəAdı2: 'Məlumat' },\r\n { sətirkodu: '314', SahəAdı2: 'Məlumat' },\r\n { sətirkodu: '316', SahəAdı2: 'Məlumat' },\r\n \r\n ];\r\n\r\n default_rows.forEach(row => {\r\n frm.add_child('əlavə1_yeni', row);\r\n });\r\n\r\n frm.refresh_field('əlavə1_yeni'); \r\n }\r\n});", + "view": "Form" + }, + { + "docstatus": 0, + "doctype": "Client Script", + "dt": "Declaration of value added tax", + "enabled": 1, + "modified": "2026-02-04 18:58:43.018856", + "module": "Taxes Az", + "name": "DefaultDeclaration of value added tax yeni elave 1_2", + "script": "\r\nfrappe.ui.form.on('Declaration of value added tax', {\r\n onload: function(frm) {\r\n if (!frm.doc.__islocal) return; \r\n\r\n if (!frm.doc.əlavə1_2_yeni) {\r\n frm.set_value('əlavə1_2_yeni', []); \r\n }\r\n\r\n const default_rows = [\r\n { sətirkodu: '308 VM 175.1-ci maddəsinə əsasən alınmış elektron qaimə-fakturalar (elektron vergi hesab-fakturalar) üzrə nağdsız qaydada ödənilmiş məbləğ', SahəAdı2: 'Məlumat' },\r\n { sətirkodu: '314 VM 175.3-cü maddəsinə əsasən əvəzləşdirilməsinə yol verilməyən ƏDV məbləği', SahəAdı2: 'Məlumat' },\r\n { sətirkodu: '316 ƏDV sıfır (0) faiz dərəcəsi ilə ödənilmiş məbləğ', SahəAdı2: 'Məlumat' },\r\n \r\n ];\r\n\r\n default_rows.forEach(row => {\r\n frm.add_child('əlavə1_2_yeni', row);\r\n });\r\n\r\n frm.refresh_field('əlavə1_2_yeni'); \r\n }\r\n});", + "view": "Form" + }, + { + "docstatus": 0, + "doctype": "Client Script", + "dt": "Declaration of value added tax", + "enabled": 1, + "modified": "2026-02-05 14:42:01.576307", "module": "Taxes Az", "name": "Formula_Editor_Script_for_Declaration of value added tax", - "script": "// Generated by Formula Editor\nfrappe.ui.form.on(\"Declaration of value added tax\", {\n \"refresh\": async function(frm) {\n initialize_table_row_formulas(frm);\n },\n \"ay\": async function(frm) {\n // Вычисляем универсальные поля только когда меняется ay\n await calculate_universal_fields(frm);\n },\n \"il\": async function(frm) {\n // Вычисляем универсальные поля только когда меняется il\n await calculate_universal_fields(frm);\n },\n \"ay\": async function(frm) {\n await calculate_universal_fields(frm);\n \n \n // Формула строки 23 в таблице əlavə_3_1 (порядок: 1)\n if (frm.doc.əlavə_3_1 && frm.doc.əlavə_3_1.length >= 23) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 22;\n const formula = \"report(Qaimə)\";\n \n await calculate_table_row_field(frm, \"əlavə_3_1\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəriədvnəzərəalınmadan\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 23 в таблице əlavə_3_1 (порядок: 2)\n if (frm.doc.əlavə_3_1 && frm.doc.əlavə_3_1.length >= 23) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 22;\n const formula = \"report(Mədaxil)\";\n \n await calculate_table_row_field(frm, \"əlavə_3_1\", rowIndex, \"daxilolmuşməbləğədvnəzərəalınmadan\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 17 в таблице əlavə_3_1 (порядок: 3)\n if (frm.doc.əlavə_3_1 && frm.doc.əlavə_3_1.length >= 17) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 16;\n const formula = \"report(Qaimə)\";\n \n await calculate_table_row_field(frm, \"əlavə_3_1\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəriədvnəzərəalınmadan\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 17 в таблице əlavə_3_1 (порядок: 4)\n if (frm.doc.əlavə_3_1 && frm.doc.əlavə_3_1.length >= 17) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 16;\n const formula = \"report(Mədaxil)\";\n \n await calculate_table_row_field(frm, \"əlavə_3_1\", rowIndex, \"daxilolmuşməbləğədvnəzərəalınmadan\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 1 в таблице əlavə_3_1 (порядок: 5)\n if (frm.doc.əlavə_3_1 && frm.doc.əlavə_3_1.length >= 1) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 0;\n const formula = \"report(Qaimə)\";\n \n await calculate_table_row_field(frm, \"əlavə_3_1\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəriədvnəzərəalınmadan\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 1 в таблице əlavə_3_1 (порядок: 6)\n if (frm.doc.əlavə_3_1 && frm.doc.əlavə_3_1.length >= 1) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 0;\n const formula = \"report(Mədaxil)\";\n \n await calculate_table_row_field(frm, \"əlavə_3_1\", rowIndex, \"daxilolmuşməbləğədvnəzərəalınmadan\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 2 в таблице hesabat_dövriyyəsi (порядок: 7)\n if (frm.doc.hesabat_dövriyyəsi && frm.doc.hesabat_dövriyyəsi.length >= 2) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 1;\n const formula = \"report(Qaimə)\";\n \n await calculate_table_row_field(frm, \"hesabat_dövriyyəsi\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəriədvnəzərəalınmadan\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 2 в таблице hesabat_dövriyyəsi (порядок: 8)\n if (frm.doc.hesabat_dövriyyəsi && frm.doc.hesabat_dövriyyəsi.length >= 2) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 1;\n const formula = \"report(Mədaxil)\";\n \n await calculate_table_row_field(frm, \"hesabat_dövriyyəsi\", rowIndex, \"daxilolmuşməbləğədvnəzərəalınmadan\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 2 в таблице hesabat_dövriyyəsi (порядок: 9)\n if (frm.doc.hesabat_dövriyyəsi && frm.doc.hesabat_dövriyyəsi.length >= 2) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 1;\n const formula = \"report(ƏDV məbləği)\";\n \n await calculate_table_row_field(frm, \"hesabat_dövriyyəsi\", rowIndex, \"ədvməbləği\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 1 в таблице hesabat_dövriyyəsi (порядок: 10)\n if (frm.doc.hesabat_dövriyyəsi && frm.doc.hesabat_dövriyyəsi.length >= 1) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 0;\n const formula = \"report(Qaimə)\";\n \n await calculate_table_row_field(frm, \"hesabat_dövriyyəsi\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəriədvnəzərəalınmadan\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 1 в таблице hesabat_dövriyyəsi (порядок: 11)\n if (frm.doc.hesabat_dövriyyəsi && frm.doc.hesabat_dövriyyəsi.length >= 1) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 0;\n const formula = \"report(Mədaxil)\";\n \n await calculate_table_row_field(frm, \"hesabat_dövriyyəsi\", rowIndex, \"daxilolmuşməbləğədvnəzərəalınmadan\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 1 в таблице hesabat_dövriyyəsi (порядок: 12)\n if (frm.doc.hesabat_dövriyyəsi && frm.doc.hesabat_dövriyyəsi.length >= 1) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 0;\n const formula = \"report(ƏDV məbləği)\";\n \n await calculate_table_row_field(frm, \"hesabat_dövriyyəsi\", rowIndex, \"ədvməbləği\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 8 в таблице hesabat_dövriyyəsi (порядок: 13)\n if (frm.doc.hesabat_dövriyyəsi && frm.doc.hesabat_dövriyyəsi.length >= 8) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 7;\n const formula = \"report(Qaimə)\";\n \n await calculate_table_row_field(frm, \"hesabat_dövriyyəsi\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəriədvnəzərəalınmadan\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 8 в таблице hesabat_dövriyyəsi (порядок: 14)\n if (frm.doc.hesabat_dövriyyəsi && frm.doc.hesabat_dövriyyəsi.length >= 8) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 7;\n const formula = \"report(Mədaxil)\";\n \n await calculate_table_row_field(frm, \"hesabat_dövriyyəsi\", rowIndex, \"daxilolmuşməbləğədvnəzərəalınmadan\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 8 в таблице hesabat_dövriyyəsi (порядок: 15)\n if (frm.doc.hesabat_dövriyyəsi && frm.doc.hesabat_dövriyyəsi.length >= 8) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 7;\n const formula = \"report(ƏDV məbləği)\";\n \n await calculate_table_row_field(frm, \"hesabat_dövriyyəsi\", rowIndex, \"ədvməbləği\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 2 в таблице debitor_borc (порядок: 16)\n if (frm.doc.debitor_borc && frm.doc.debitor_borc.length >= 2) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 1;\n const formula = \"report(Debitor borc-əvvəl)\";\n \n await calculate_table_row_field(frm, \"debitor_borc\", rowIndex, \"hesabatdövrününəvvəlinədebitorborcməbləği\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 2 в таблице debitor_borc (порядок: 17)\n if (frm.doc.debitor_borc && frm.doc.debitor_borc.length >= 2) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 1;\n const formula = \"report(yaranan-Debitor borc)\";\n \n await calculate_table_row_field(frm, \"debitor_borc\", rowIndex, \"hesabatdövrüayüzrəyaranandebitorborcməbləği\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 2 в таблице debitor_borc (порядок: 18)\n if (frm.doc.debitor_borc && frm.doc.debitor_borc.length >= 2) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 1;\n const formula = \"report(silinən-Debitor borc)\";\n \n await calculate_table_row_field(frm, \"debitor_borc\", rowIndex, \"hesabatdövrüayərzindəsilinəndebitorborcməbləği\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 2 в таблице debitor_borc (порядок: 19)\n if (frm.doc.debitor_borc && frm.doc.debitor_borc.length >= 2) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 1;\n const formula = \"report(Debitor borc-son)\";\n \n await calculate_table_row_field(frm, \"debitor_borc\", rowIndex, \"hesabat_dövrünün_sonuna_debitor_borc_məbləği\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 1 в таблице debitor_borc (порядок: 20)\n if (frm.doc.debitor_borc && frm.doc.debitor_borc.length >= 1) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 0;\n const formula = \"report(Debitor borc-əvvəl)\";\n \n await calculate_table_row_field(frm, \"debitor_borc\", rowIndex, \"hesabatdövrününəvvəlinədebitorborcməbləği\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 1 в таблице debitor_borc (порядок: 21)\n if (frm.doc.debitor_borc && frm.doc.debitor_borc.length >= 1) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 0;\n const formula = \"report(yaranan-Debitor borc)\";\n \n await calculate_table_row_field(frm, \"debitor_borc\", rowIndex, \"hesabatdövrüayüzrəyaranandebitorborcməbləği\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 1 в таблице debitor_borc (порядок: 22)\n if (frm.doc.debitor_borc && frm.doc.debitor_borc.length >= 1) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 0;\n const formula = \"report(silinən-Debitor borc)\";\n \n await calculate_table_row_field(frm, \"debitor_borc\", rowIndex, \"hesabatdövrüayərzindəsilinəndebitorborcməbləği\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 1 в таблице debitor_borc (порядок: 23)\n if (frm.doc.debitor_borc && frm.doc.debitor_borc.length >= 1) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 0;\n const formula = \"report(Debitor borc-son)\";\n \n await calculate_table_row_field(frm, \"debitor_borc\", rowIndex, \"hesabat_dövrünün_sonuna_debitor_borc_məbləği\", formula, \"ay\");\n } catch (error) {\n }\n }\n },\n \"il\": async function(frm) {\n await calculate_universal_fields(frm);\n \n \n // Формула строки 23 в таблице əlavə_3_1 (порядок: 1)\n if (frm.doc.əlavə_3_1 && frm.doc.əlavə_3_1.length >= 23) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 22;\n const formula = \"report(Qaimə)\";\n \n await calculate_table_row_field(frm, \"əlavə_3_1\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəriədvnəzərəalınmadan\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 23 в таблице əlavə_3_1 (порядок: 2)\n if (frm.doc.əlavə_3_1 && frm.doc.əlavə_3_1.length >= 23) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 22;\n const formula = \"report(Mədaxil)\";\n \n await calculate_table_row_field(frm, \"əlavə_3_1\", rowIndex, \"daxilolmuşməbləğədvnəzərəalınmadan\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 17 в таблице əlavə_3_1 (порядок: 3)\n if (frm.doc.əlavə_3_1 && frm.doc.əlavə_3_1.length >= 17) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 16;\n const formula = \"report(Qaimə)\";\n \n await calculate_table_row_field(frm, \"əlavə_3_1\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəriədvnəzərəalınmadan\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 17 в таблице əlavə_3_1 (порядок: 4)\n if (frm.doc.əlavə_3_1 && frm.doc.əlavə_3_1.length >= 17) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 16;\n const formula = \"report(Mədaxil)\";\n \n await calculate_table_row_field(frm, \"əlavə_3_1\", rowIndex, \"daxilolmuşməbləğədvnəzərəalınmadan\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 1 в таблице əlavə_3_1 (порядок: 5)\n if (frm.doc.əlavə_3_1 && frm.doc.əlavə_3_1.length >= 1) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 0;\n const formula = \"report(Qaimə)\";\n \n await calculate_table_row_field(frm, \"əlavə_3_1\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəriədvnəzərəalınmadan\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 1 в таблице əlavə_3_1 (порядок: 6)\n if (frm.doc.əlavə_3_1 && frm.doc.əlavə_3_1.length >= 1) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 0;\n const formula = \"report(Mədaxil)\";\n \n await calculate_table_row_field(frm, \"əlavə_3_1\", rowIndex, \"daxilolmuşməbləğədvnəzərəalınmadan\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 2 в таблице hesabat_dövriyyəsi (порядок: 7)\n if (frm.doc.hesabat_dövriyyəsi && frm.doc.hesabat_dövriyyəsi.length >= 2) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 1;\n const formula = \"report(Qaimə)\";\n \n await calculate_table_row_field(frm, \"hesabat_dövriyyəsi\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəriədvnəzərəalınmadan\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 2 в таблице hesabat_dövriyyəsi (порядок: 8)\n if (frm.doc.hesabat_dövriyyəsi && frm.doc.hesabat_dövriyyəsi.length >= 2) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 1;\n const formula = \"report(Mədaxil)\";\n \n await calculate_table_row_field(frm, \"hesabat_dövriyyəsi\", rowIndex, \"daxilolmuşməbləğədvnəzərəalınmadan\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 2 в таблице hesabat_dövriyyəsi (порядок: 9)\n if (frm.doc.hesabat_dövriyyəsi && frm.doc.hesabat_dövriyyəsi.length >= 2) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 1;\n const formula = \"report(ƏDV məbləği)\";\n \n await calculate_table_row_field(frm, \"hesabat_dövriyyəsi\", rowIndex, \"ədvməbləği\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 1 в таблице hesabat_dövriyyəsi (порядок: 10)\n if (frm.doc.hesabat_dövriyyəsi && frm.doc.hesabat_dövriyyəsi.length >= 1) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 0;\n const formula = \"report(Qaimə)\";\n \n await calculate_table_row_field(frm, \"hesabat_dövriyyəsi\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəriədvnəzərəalınmadan\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 1 в таблице hesabat_dövriyyəsi (порядок: 11)\n if (frm.doc.hesabat_dövriyyəsi && frm.doc.hesabat_dövriyyəsi.length >= 1) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 0;\n const formula = \"report(Mədaxil)\";\n \n await calculate_table_row_field(frm, \"hesabat_dövriyyəsi\", rowIndex, \"daxilolmuşməbləğədvnəzərəalınmadan\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 1 в таблице hesabat_dövriyyəsi (порядок: 12)\n if (frm.doc.hesabat_dövriyyəsi && frm.doc.hesabat_dövriyyəsi.length >= 1) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 0;\n const formula = \"report(ƏDV məbləği)\";\n \n await calculate_table_row_field(frm, \"hesabat_dövriyyəsi\", rowIndex, \"ədvməbləği\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 8 в таблице hesabat_dövriyyəsi (порядок: 13)\n if (frm.doc.hesabat_dövriyyəsi && frm.doc.hesabat_dövriyyəsi.length >= 8) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 7;\n const formula = \"report(Qaimə)\";\n \n await calculate_table_row_field(frm, \"hesabat_dövriyyəsi\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəriədvnəzərəalınmadan\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 8 в таблице hesabat_dövriyyəsi (порядок: 14)\n if (frm.doc.hesabat_dövriyyəsi && frm.doc.hesabat_dövriyyəsi.length >= 8) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 7;\n const formula = \"report(Mədaxil)\";\n \n await calculate_table_row_field(frm, \"hesabat_dövriyyəsi\", rowIndex, \"daxilolmuşməbləğədvnəzərəalınmadan\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 8 в таблице hesabat_dövriyyəsi (порядок: 15)\n if (frm.doc.hesabat_dövriyyəsi && frm.doc.hesabat_dövriyyəsi.length >= 8) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 7;\n const formula = \"report(ƏDV məbləği)\";\n \n await calculate_table_row_field(frm, \"hesabat_dövriyyəsi\", rowIndex, \"ədvməbləği\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 2 в таблице debitor_borc (порядок: 16)\n if (frm.doc.debitor_borc && frm.doc.debitor_borc.length >= 2) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 1;\n const formula = \"report(Debitor borc-əvvəl)\";\n \n await calculate_table_row_field(frm, \"debitor_borc\", rowIndex, \"hesabatdövrününəvvəlinədebitorborcməbləği\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 2 в таблице debitor_borc (порядок: 17)\n if (frm.doc.debitor_borc && frm.doc.debitor_borc.length >= 2) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 1;\n const formula = \"report(yaranan-Debitor borc)\";\n \n await calculate_table_row_field(frm, \"debitor_borc\", rowIndex, \"hesabatdövrüayüzrəyaranandebitorborcməbləği\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 2 в таблице debitor_borc (порядок: 18)\n if (frm.doc.debitor_borc && frm.doc.debitor_borc.length >= 2) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 1;\n const formula = \"report(silinən-Debitor borc)\";\n \n await calculate_table_row_field(frm, \"debitor_borc\", rowIndex, \"hesabatdövrüayərzindəsilinəndebitorborcməbləği\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 2 в таблице debitor_borc (порядок: 19)\n if (frm.doc.debitor_borc && frm.doc.debitor_borc.length >= 2) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 1;\n const formula = \"report(Debitor borc-son)\";\n \n await calculate_table_row_field(frm, \"debitor_borc\", rowIndex, \"hesabat_dövrünün_sonuna_debitor_borc_məbləği\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 1 в таблице debitor_borc (порядок: 20)\n if (frm.doc.debitor_borc && frm.doc.debitor_borc.length >= 1) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 0;\n const formula = \"report(Debitor borc-əvvəl)\";\n \n await calculate_table_row_field(frm, \"debitor_borc\", rowIndex, \"hesabatdövrününəvvəlinədebitorborcməbləği\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 1 в таблице debitor_borc (порядок: 21)\n if (frm.doc.debitor_borc && frm.doc.debitor_borc.length >= 1) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 0;\n const formula = \"report(yaranan-Debitor borc)\";\n \n await calculate_table_row_field(frm, \"debitor_borc\", rowIndex, \"hesabatdövrüayüzrəyaranandebitorborcməbləği\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 1 в таблице debitor_borc (порядок: 22)\n if (frm.doc.debitor_borc && frm.doc.debitor_borc.length >= 1) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 0;\n const formula = \"report(silinən-Debitor borc)\";\n \n await calculate_table_row_field(frm, \"debitor_borc\", rowIndex, \"hesabatdövrüayərzindəsilinəndebitorborcməbləği\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 1 в таблице debitor_borc (порядок: 23)\n if (frm.doc.debitor_borc && frm.doc.debitor_borc.length >= 1) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 0;\n const formula = \"report(Debitor borc-son)\";\n \n await calculate_table_row_field(frm, \"debitor_borc\", rowIndex, \"hesabat_dövrünün_sonuna_debitor_borc_məbləği\", formula, \"il\");\n } catch (error) {\n }\n }\n },\n \"əlavə_3_1_add\": function(frm) {\n // Универсальные поля не используются\n \n // Обновляем индексы строк после добавления новой строки\n setTimeout(() => initialize_table_row_formulas(frm), 100);\n },\n \"əlavə_3_1_remove\": function(frm) {\n // Универсальные поля не используются\n \n // Обновляем индексы строк после удаления строки\n setTimeout(() => initialize_table_row_formulas(frm), 100);\n },\n \"hesabat_dövriyyəsi_add\": function(frm) {\n // Универсальные поля не используются\n \n // Обновляем индексы строк после добавления новой строки\n setTimeout(() => initialize_table_row_formulas(frm), 100);\n },\n \"hesabat_dövriyyəsi_remove\": function(frm) {\n // Универсальные поля не используются\n \n // Обновляем индексы строк после удаления строки\n setTimeout(() => initialize_table_row_formulas(frm), 100);\n },\n \"debitor_borc_add\": function(frm) {\n // Универсальные поля не используются\n \n // Обновляем индексы строк после добавления новой строки\n setTimeout(() => initialize_table_row_formulas(frm), 100);\n },\n \"debitor_borc_remove\": function(frm) {\n // Универсальные поля не используются\n \n // Обновляем индексы строк после удаления строки\n setTimeout(() => initialize_table_row_formulas(frm), 100);\n },\n});\n\n\n // Функция для обработки и выполнения формул\n async function processFormula(frm, formula) {\n try {\n // Проверяем наличие вызовов отчетов\n if (formula.includes(\"report(\")) {\n // Извлекаем все вызовы report() из формулы\n const reportRegex = /report\\(([^)]+)\\)/g;\n let match;\n let processedFormula = formula;\n \n // Массив для хранения промисов запросов к отчетам\n const reportPromises = [];\n const reportPlaceholders = [];\n \n // Находим все вызовы report() и заменяем их на плейсхолдеры\n while ((match = reportRegex.exec(formula)) !== null) {\n const fullMatch = match[0]; // report(fieldName)\n const fieldName = match[1]; // fieldName\n \n // Создаем уникальный плейсхолдер\n const placeholder = `__REPORT_PLACEHOLDER_${reportPromises.length}__`;\n \n // Ищем данные отчета в хранилище\n const reportFields = JSON.parse(frm.doc.report_fields_storage || \"{}\");\n const reportField = Object.values(reportFields).find(f => f.name === fieldName);\n \n if (reportField) {\n // Добавляем промис запроса к отчету\n reportPromises.push(\n getReportFieldValue(\n frm,\n reportField.report, \n JSON.parse(reportField.filters_json || \"{}\"), \n reportField.field_name, \n reportField.aggregation || 'sum'\n )\n );\n \n // Запоминаем соответствие плейсхолдера и вызова\n reportPlaceholders.push({\n placeholder: placeholder,\n original: fullMatch\n });\n \n // Заменяем вызов отчета на плейсхолдер\n processedFormula = processedFormula.replace(fullMatch, placeholder);\n }\n }\n \n // Если нашли вызовы отчетов, ждем выполнения всех запросов\n if (reportPromises.length > 0) {\n const reportResults = await Promise.all(reportPromises);\n \n // Заменяем плейсхолдеры на результаты\n for (let i = 0; i < reportPlaceholders.length; i++) {\n // Убедимся, что результат - числовое значение\n const reportValue = reportResults[i] !== undefined ? Number(reportResults[i]) : 0;\n processedFormula = processedFormula.replace(\n reportPlaceholders[i].placeholder, \n reportValue\n );\n }\n \n // Теперь формула не содержит вызовов report(), обрабатываем её обычным способом\n let transformResult = transform_expression(processedFormula, false);\n \n // Если есть внешняя трансформация, применяем её\n let result;\n if (transformResult && transformResult.transformed) {\n result = eval(transformResult.transformed);\n } else {\n // Иначе просто вычисляем выражение\n result = eval(processedFormula);\n }\n \n // Возвращаем результат\n return isNaN(result) ? 0 : result;\n }\n }\n \n // Стандартная обработка для формул без отчетов\n let transformResult = transform_expression(formula, false);\n let result = eval(transformResult.transformed);\n return isNaN(result) ? 0 : result;\n } catch (e) {\n return 0;\n }\n }\n\n\n // Функция для расчета универсальных полей\n async function calculate_universal_fields(frm) {\n \n }\n \n // Функция для обработки квартала (rüb) и года (il)\n function processQuarterDateField(docValues) {\n // Проверяем, есть ли у нас значения rüb и il\n if (docValues && docValues.rüb && docValues.il) {\n // Получаем номер квартала (преобразуем из строки вида \"1 Rüb\" в число 1)\n const quarterStr = docValues.rüb;\n const quarterMatch = quarterStr.match(/(\\d+)/);\n \n if (!quarterMatch) {\n return null;\n }\n \n const quarterNum = parseInt(quarterMatch[1]);\n \n // Получаем год из поля il или используем текущий год\n let year = docValues.il || new Date().getFullYear();\n \n // Определяем начальный и конечный месяц квартала\n let startMonth, endMonth;\n \n switch(quarterNum) {\n case 1:\n startMonth = 1; // Январь\n endMonth = 3; // Март\n break;\n case 2:\n startMonth = 4; // Апрель\n endMonth = 6; // Июнь\n break;\n case 3:\n startMonth = 7; // Июль\n endMonth = 9; // Сентябрь\n break;\n case 4:\n startMonth = 10; // Октябрь\n endMonth = 12; // Декабрь\n break;\n default:\n return null;\n }\n \n // Определяем первый день квартала (1-е число начального месяца)\n const firstDay = new Date(year, startMonth - 1, 1);\n \n // Последний день квартала (последнее число конечного месяца)\n const lastDay = new Date(year, endMonth, 0);\n \n // Форматируем даты в формате YYYY-MM-DD\n const firstDayStr = `${year}-${String(startMonth).padStart(2, '0')}-01`;\n const lastDayStr = `${year}-${String(endMonth).padStart(2, '0')}-${String(lastDay.getDate()).padStart(2, '0')}`; \n \n // Возвращаем объект с диапазоном дат\n return {\n start: firstDayStr,\n end: lastDayStr\n };\n }\n \n // Если это не специальное поле или значение не распознано, возвращаем null\n return null;\n }\n \n // Функция для обработки специальных полей с азербайджанскими месяцами\n function processAzerbayjanDateField(docValues) {\n // Словарь для сопоставления названий месяцев с их номерами\n const monthNames = {\n \"Yanvar\": 1,\n \"Fevral\": 2,\n \"Mart\": 3,\n \"Aprel\": 4,\n \"May\": 5,\n \"İyun\": 6,\n \"İyul\": 7,\n \"Avqust\": 8,\n \"Sentyabr\": 9,\n \"Oktyabr\": 10,\n \"Noyabr\": 11,\n \"Dekabr\": 12\n };\n \n // Проверяем наличие квартала (rüb) и года (il)\n if (docValues && docValues.rüb && docValues.il) {\n // Вызываем специальную функцию для обработки квартала\n return processQuarterDateField(docValues);\n }\n \n // Проверяем, есть ли у нас значения ay и il\n if (docValues && docValues.ay && monthNames[docValues.ay]) {\n // Получаем номер месяца\n const monthNum = monthNames[docValues.ay];\n \n // Получаем год из поля il или используем текущий год\n let year = docValues.il || new Date().getFullYear();\n \n // Определяем первый день месяца (1-е число)\n const firstDay = new Date(year, monthNum - 1, 1);\n \n // Последний день месяца (получаем последнее число месяца)\n const lastDay = new Date(year, monthNum, 0);\n \n // Форматируем даты в формате YYYY-MM-DD\n const firstDayStr = `${year}-${String(monthNum).padStart(2, '0')}-01`;\n const lastDayStr = `${year}-${String(monthNum).padStart(2, '0')}-${String(lastDay.getDate()).padStart(2, '0')}`; \n \n // Возвращаем объект с диапазоном дат\n return {\n start: firstDayStr,\n end: lastDayStr\n };\n }\n \n // Если это не специальное поле или значение не распознано, возвращаем null\n return null;\n }\n \n\n\n// Функция для обработки азербайджанских дат\nfunction processAzerbayjanDateField(docValues) {\n // Словарь для сопоставления названий месяцев с их номерами\n const monthNames = {\n \"Yanvar\": 1,\n \"Fevral\": 2,\n \"Mart\": 3,\n \"Aprel\": 4,\n \"May\": 5,\n \"İyun\": 6,\n \"İyul\": 7,\n \"Avqust\": 8,\n \"Sentyabr\": 9,\n \"Oktyabr\": 10,\n \"Noyabr\": 11,\n \"Dekabr\": 12\n };\n \n // Проверяем наличие квартала (rüb) и года (il)\n if (docValues && docValues.rüb && docValues.il) {\n // Получаем номер квартала (преобразуем из строки вида \"1 Rüb\" в число 1)\n const quarterStr = docValues.rüb;\n const quarterMatch = quarterStr.match(/(\\d+)/);\n \n if (!quarterMatch) {\n return null;\n }\n \n const quarterNum = parseInt(quarterMatch[1]);\n \n // Получаем год из поля il или используем текущий год\n let year = docValues.il || new Date().getFullYear();\n \n // Определяем начальный и конечный месяц квартала\n let startMonth, endMonth;\n \n switch(quarterNum) {\n case 1:\n startMonth = 1; // Январь\n endMonth = 3; // Март\n break;\n case 2:\n startMonth = 4; // Апрель\n endMonth = 6; // Июнь\n break;\n case 3:\n startMonth = 7; // Июль\n endMonth = 9; // Сентябрь\n break;\n case 4:\n startMonth = 10; // Октябрь\n endMonth = 12; // Декабрь\n break;\n default:\n return null;\n }\n \n // Определяем первый день квартала (1-е число начального месяца)\n const firstDay = new Date(year, startMonth - 1, 1);\n \n // Последний день квартала (последнее число конечного месяца)\n const lastDay = new Date(year, endMonth, 0);\n \n // Форматируем даты в формате YYYY-MM-DD\n const firstDayStr = year + \"-\" + String(startMonth).padStart(2, '0') + \"-01\";\n const lastDayStr = year + \"-\" + String(endMonth).padStart(2, '0') + \"-\" + String(lastDay.getDate()).padStart(2, '0'); \n \n // Возвращаем объект с диапазоном дат\n return {\n start: firstDayStr,\n end: lastDayStr\n };\n }\n \n // Проверяем, есть ли у нас значения ay и il\n if (docValues && docValues.ay && monthNames[docValues.ay]) {\n // Получаем номер месяца\n const monthNum = monthNames[docValues.ay];\n \n // Получаем год из поля il или используем текущий год\n let year = docValues.il || new Date().getFullYear();\n \n // Определяем первый день месяца (1-е число)\n const firstDay = new Date(year, monthNum - 1, 1);\n \n // Последний день месяца (получаем последнее число месяца)\n const lastDay = new Date(year, monthNum, 0);\n \n // Форматируем даты в формате YYYY-MM-DD\n const firstDayStr = year + \"-\" + String(monthNum).padStart(2, '0') + \"-01\";\n const lastDayStr = year + \"-\" + String(monthNum).padStart(2, '0') + \"-\" + String(lastDay.getDate()).padStart(2, '0'); \n \n // Возвращаем объект с диапазоном дат\n return {\n start: firstDayStr,\n end: lastDayStr\n };\n }\n \n // Если это не специальное поле или значение не распознано, возвращаем null\n return null;\n}\n\nasync function getReportFieldValue(frm, reportName, filters, fieldName, aggregation) {\n try {\n // Обрабатываем фильтры с возможными ссылками на поля документа\n const processedFilters = {};\n \n for (const key in filters) {\n let value = filters[key];\n \n // Проверяем, является ли значение ссылкой на поле документа\n if (typeof value === 'string' && value.startsWith('doc.')) {\n const docField = value.substring(4);\n if (frm.doc[docField] !== undefined) {\n processedFilters[key] = frm.doc[docField];\n continue;\n }\n }\n \n // Обработка специальных переменных\n if (typeof value === 'string' && value.startsWith('$')) {\n switch (value) {\n case '$DefaultCompany':\n // Получаем компанию по умолчанию из настроек или документа\n processedFilters[key] = frm.doc.company || frappe.defaults.get_user_default(\"Company\");\n continue;\n \n case '$AyIlSpecial':\n // Обрабатываем специальные даты для азербайджанских месяцев/кварталов\n const dateRange = processAzerbayjanDateField(frm.doc);\n if (dateRange) {\n // Для полей from_date и to_date используем соответствующие значения\n if (key === 'from_date') {\n processedFilters[key] = dateRange.start;\n } else if (key === 'to_date') {\n processedFilters[key] = dateRange.end;\n } else {\n // Для других полей используем начальную дату\n processedFilters[key] = dateRange.start;\n }\n } else {\n // Если не удалось получить диапазон дат, используем текущую дату\n processedFilters[key] = frappe.datetime.get_today();\n }\n continue;\n \n default:\n // Для других $-переменных оставляем как есть\n processedFilters[key] = value;\n continue;\n }\n }\n \n // Обычные значения\n processedFilters[key] = value;\n }\n \n // Проверяем кеш\n if (!window.reportCache) window.reportCache = {};\n \n const cacheKey = reportName + \"|\" + JSON.stringify(processedFilters) + \"|\" + fieldName + \"|\" + aggregation;\n const now = new Date().getTime();\n \n if (window.reportCache[cacheKey] && \n window.reportCache[cacheKey].timestamp > now - 5 * 60 * 1000) {\n return window.reportCache[cacheKey].value;\n }\n \n // Выполняем запрос к серверу\n try {\n const result = await frappe.call({\n method: \"formula_editor.api.run_report_for_formula\",\n args: {\n report_name: reportName,\n filters: processedFilters,\n field_name: fieldName\n },\n freeze: false\n });\n \n if (result && result.message !== undefined) {\n if (result.message.error) {\n console.error('Report error:', result.message.error);\n return 0;\n } \n \n let value = parseFloat(result.message);\n if (isNaN(value)) value = 0;\n \n // Округляем до 2 знаков после запятой\n value = Math.round(value * 100) / 100;\n \n // Сохраняем в кеш\n window.reportCache[cacheKey] = {\n value: value,\n timestamp: now\n };\n \n return value;\n }\n } catch (err) {\n console.error('Report field error:', err);\n }\n \n return 0;\n } catch (error) {\n console.error('getReportFieldValue error:', error);\n return 0;\n }\n}\n\n\n function transform_expression(expression, for_child_table = false, table_name = null) {\n let transformed = expression;\n let needsAsync = false;\n let reportCalls = [];\n\n // === Обработка report(...) ===\n const reportRegex = /report\\(([^)]+)\\)/g;\n let match;\n \n // Находим все вызовы report() в выражении\n while ((match = reportRegex.exec(expression)) !== null) {\n const reportName = match[1]; // Имя поля отчета\n const fullMatch = match[0]; // Полный текст match - \"report(xyz)\"\n needsAsync = true;\n \n // Создаем уникальный плейсхолдер\n const placeholder = `__REPORT_PLACEHOLDER_${reportCalls.length}__`;\n \n // Ищем соответствующее поле отчета по имени\n \n if (reportName === \"Qaimə\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Sales invoice info report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"net_amount\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Mədaxil\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Payment entry info report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"paid_amount\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"ƏDV məbləği\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Payment entry info report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vat_amount\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Debitor borc-əvvəl\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Customer Outstanding Balance\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"opening_balance\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"yaranan-Debitor borc\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Customer Outstanding Balance\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"new_invoices\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"silinən-Debitor borc\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Customer Outstanding Balance\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"payments\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Debitor borc-son\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Customer Outstanding Balance\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"closing_balance\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n }\n\n // === Обработка table(...) ===\n const tableRegex = /table\\(([^,)]+),\\s*([^,)]+),\\s*([^)]+)\\)/g;\n let tableMatch;\n while ((tableMatch = tableRegex.exec(expression)) !== null) {\n const fullMatch = tableMatch[0];\n const tableName = tableMatch[1].trim().replace(/['\"]/g, '');\n const rowNumber = tableMatch[2].trim();\n const fieldName = tableMatch[3].trim().replace(/['\"]/g, '');\n \n const replacement = `(function() { \n try {\n if (!frm.doc[\"${tableName}\"] || !frm.doc[\"${tableName}\"][${rowNumber} - 1]) {\n return 0;\n }\n const value = frm.doc[\"${tableName}\"][${rowNumber} - 1][\"${fieldName}\"];\n return parseFloat(value) || 0;\n } catch (e) {\n return 0;\n }\n })()`;\n \n transformed = transformed.replace(fullMatch, replacement);\n }\n\n // === Обработка universal полей ===\n \n\n // === Обработка val() и row() ===\n const tablePrefixes = [\"items\", \"taxes\", \"packed_items\", \"payments\", \"advances\", \"timesheets\", \"payment_schedule\", \"sales_team\"];\n\n for (const prefix of tablePrefixes) {\n const sumPattern = new RegExp(`sum\\\\(${prefix}_([^)]+)\\\\)`, 'g');\n transformed = transformed.replace(sumPattern, (m, f) => \n `(frm.doc[\"${prefix}\"] && frm.doc[\"${prefix}\"].reduce((s, r) => s + (parseFloat(r[\"${f}\"]) || 0), 0) || 0)`\n );\n\n const valPattern = new RegExp(`val\\\\(${prefix}_([^)]+)\\\\)`, 'g');\n transformed = transformed.replace(valPattern, (m, f) => \n `(frm.doc[\"${prefix}\"] && frm.doc[\"${prefix}\"].reduce((s, r) => s + (parseFloat(r[\"${f}\"]) || 0), 0) || 0)`\n );\n }\n\n if (for_child_table) {\n transformed = transformed.replace(/row\\(([^)]+)\\)/g, (m, f) => \n `(parseFloat(row[\"${f}\"]) || 0)`\n );\n\n transformed = transformed.replace(/val\\(([^)]+)\\)/g, (m, f) => {\n if (f.startsWith(table_name + '_')) {\n return `(parseFloat(row[\"${f.slice(table_name.length + 1)}\"]) || 0)`;\n }\n return `(parseFloat(frm.doc[\"${f}\"]) || 0)`;\n });\n } else {\n transformed = transformed.replace(/val\\(([^)]+)\\)/g, (m, f) => \n `(parseFloat(frm.doc[\"${f}\"]) || 0)`\n );\n\n transformed = transformed.replace(/row\\(([^)]+)\\)/g, () => \n `0 /* ERROR: row() вне табличной части */`\n );\n }\n\n return { transformed, needsAsync, reportCalls };\n }\n\n\n// Функция для получения индекса строки по её имени (name/cdn)\nfunction get_row_index(frm, tableName, rowName) {\n \n // Проверяем наличие таблицы\n if (!frm.doc[tableName]) {\n return -1;\n }\n \n // Выводим все строки для отладки\n frm.doc[tableName].forEach((row, idx) => {\n });\n \n // Ищем индекс строки по имени\n for (let i = 0; i < frm.doc[tableName].length; i++) {\n if (frm.doc[tableName][i].name === rowName) {\n return i;\n }\n }\n return -1;\n}\n\n// Функция для доступа к полям конкретных строк таблицы\nfunction table_row(tableName, rowIndex, fieldName) {\n // Проверяем наличие необходимых аргументов\n if (!tableName || rowIndex === undefined || !fieldName) {\n return 0;\n }\n \n // Преобразуем rowIndex в число (на случай, если передана строка)\n const rowIdx = parseInt(rowIndex) - 1; // Индексация с 1 для пользователя, но с 0 в массиве\n \n try {\n // Проверяем наличие таблицы и строки\n if (!frm.doc[tableName] || !frm.doc[tableName][rowIdx]) {\n return 0;\n }\n \n // Получаем значение поля\n const value = frm.doc[tableName][rowIdx][fieldName];\n \n // Проверяем на NaN и возвращаем значение или 0\n const numValue = parseFloat(value);\n if (isNaN(numValue)) {\n return 0;\n }\n return numValue;\n } catch (error) {\n return 0;\n }\n}\n\n// Функция для обновления значения поля конкретной строки таблицы\nfunction set_table_row(frm, tableName, rowIndex, fieldName, value) {\n // Проверяем наличие необходимых аргументов\n if (!frm || !tableName || rowIndex === undefined || !fieldName) {\n return false;\n }\n \n // Преобразуем rowIndex в число (на случай, если передана строка)\n const rowIdx = parseInt(rowIndex) - 1; // Индексация с 1 для пользователя, но с 0 в массиве\n \n try {\n // Проверяем наличие таблицы и строки\n if (!frm.doc[tableName] || !frm.doc[tableName][rowIdx]) {\n return false;\n }\n \n // Получаем строку таблицы\n const row = frm.doc[tableName][rowIdx];\n \n // Получаем сетевое имя cdt и cdn для Frappe\n const cdt = frm.fields_dict[tableName].grid.doctype;\n const cdn = row.name;\n \n // Проверяем, является ли значение NaN, и если да, заменяем его на 0\n let finalValue = value;\n if (typeof value === 'number' && isNaN(value)) {\n finalValue = 0;\n }\n \n // Обновляем значение поля\n frappe.model.set_value(cdt, cdn, fieldName, finalValue);\n \n return true;\n } catch (error) {\n return false;\n }\n}\n\n// Функция для поиска строки таблицы по значению поля\nfunction find_table_row(frm, tableName, fieldName, value) {\n // Проверяем наличие необходимых аргументов\n if (!frm || !tableName || !fieldName) {\n return -1;\n }\n \n try {\n // Проверяем наличие таблицы\n if (!frm.doc[tableName]) {\n return -1;\n }\n \n // Ищем строку с указанным значением поля\n for (let i = 0; i < frm.doc[tableName].length; i++) {\n if (frm.doc[tableName][i][fieldName] == value) {\n // Возвращаем индекс строки (начиная с 1 для пользователя)\n return i + 1;\n }\n }\n \n // Если строка не найдена\n return -1;\n } catch (error) {\n return -1;\n }\n}\n\n\n // Функция для инициализации формул строк табличных частей\n function initialize_table_row_formulas(frm) {\n try {\n // Получаем информацию о формулах для строк табличных частей\n const formulas = JSON.parse(frm.doc.table_row_formulas_storage || \"{}\");\n \n // ВАЖНО: Преобразуем объект в массив и сортируем его по порядку выполнения\n const sortedFormulas = Object.entries(formulas).map(([id, formula]) => {\n return { id, ...formula };\n }).sort((a, b) => {\n // Сортировка по значению поля order (если порядок не задан, используем 10 по умолчанию)\n const orderA = a.order !== undefined ? parseInt(a.order) : 10;\n const orderB = b.order !== undefined ? parseInt(b.order) : 10;\n return orderA - orderB;\n });\n \n // Группируем формулы по табличным частям и строкам\n const formulasByTableAndRow = {};\n \n sortedFormulas.forEach(formula => {\n const tableName = formula.table_name;\n const rowIndex = parseInt(formula.row_index);\n \n if (!formulasByTableAndRow[tableName]) {\n formulasByTableAndRow[tableName] = {};\n }\n \n if (!formulasByTableAndRow[tableName][rowIndex]) {\n formulasByTableAndRow[tableName][rowIndex] = [];\n }\n \n formulasByTableAndRow[tableName][rowIndex].push(formula);\n });\n \n // Устанавливаем обработчики для каждой табличной части\n Object.keys(formulasByTableAndRow).forEach(tableName => {\n if (!frm.doc[tableName]) {\n return;\n }\n \n // Для каждой строки таблицы\n frm.doc[tableName].forEach((row, rowIdx) => {\n // Получаем отсортированные формулы для текущей строки (строки нумеруются с 1, а индексы с 0)\n const rowFormulas = formulasByTableAndRow[tableName][rowIdx + 1] || [];\n \n // Выполняем формулы в порядке сортировки (по полю order)\n for (const formula of rowFormulas) {\n try {\n // Определяем необходимость асинхронного вызова\n const usesUniversal = formula.formula && formula.formula.includes(\"univ(\");\n const usesReports = formula.formula && formula.formula.includes(\"report(\");\n \n // Вызываем расчет формулы согласно установленному порядку\n if (usesUniversal || usesReports) {\n // Для асинхронных вызовов используем await в асинхронной IIFE\n (async () => {\n try {\n await calculate_table_row_field(frm, tableName, rowIdx, formula.field_name, formula.formula, \"refresh\");\n } catch (asyncError) {\n }\n })();\n } else {\n // Для синхронных вызовов выполняем напрямую\n calculate_table_row_field(frm, tableName, rowIdx, formula.field_name, formula.formula, \"refresh\");\n }\n } catch (error) {\n }\n }\n });\n });\n } catch (error) {\n }\n }\n\n\n// Функция для расчета значения поля в строке табличной части\nasync function calculate_table_row_field(frm, tableName, rowIndex, fieldName, formula, triggerField) {\n try {\n \n if (!frm.doc[tableName] || !frm.doc[tableName][rowIndex]) {\n return;\n }\n\n const row = frm.doc[tableName][rowIndex];\n const cdt = frm.fields_dict[tableName].grid.doctype;\n const cdn = row.name;\n \n // === ЕДИНАЯ ТОЧКА ОБРАБОТКИ ВСЕХ ФУНКЦИЙ ===\n let finalFormula, reportCalls;\n \n try {\n // Используем transform_expression как единственную точку преобразования\n const transformResult = transform_expression(formula, true, tableName);\n \n if (transformResult) {\n finalFormula = transformResult.transformed;\n reportCalls = transformResult.reportCalls || [];\n } else {\n finalFormula = formula;\n reportCalls = [];\n }\n } catch (transformError) {\n console.error('Ошибка transform_expression:', transformError);\n finalFormula = formula;\n reportCalls = [];\n }\n \n // === ОБРАБОТКА АСИНХРОННЫХ ВЫЗОВОВ ОТЧЕТОВ ===\n if (reportCalls && reportCalls.length > 0) {\n try {\n // Выполняем все асинхронные запросы к отчетам параллельно\n const reportResults = await Promise.all(\n reportCalls.map(call => \n getReportFieldValue(\n frm,\n call.reportName,\n call.filters,\n call.fieldName,\n call.aggregation\n )\n )\n );\n \n // Заменяем плейсхолдеры на реальные значения\n for (let i = 0; i < reportCalls.length; i++) {\n const reportValue = reportResults[i] !== undefined ? Number(reportResults[i]) : 0;\n finalFormula = finalFormula.replace(\n reportCalls[i].placeholder, \n reportValue\n );\n }\n } catch (reportError) {\n console.error('Ошибка получения данных отчетов:', reportError);\n // В случае ошибки заменяем все плейсхолдеры на 0\n for (const call of reportCalls) {\n finalFormula = finalFormula.replace(call.placeholder, 0);\n }\n }\n }\n \n // === ВЫЧИСЛЕНИЕ ФИНАЛЬНОЙ ФОРМУЛЫ ===\n let result = 0;\n try {\n // Создаем функцию с доступом к контексту row и frm\n const evalFunc = new Function('row', 'frm', `return ${finalFormula};`);\n result = evalFunc(row, frm);\n } catch (evalError) {\n console.error('Ошибка вычисления формулы:', evalError, 'Formula:', finalFormula);\n }\n\n if (isNaN(result)) {\n result = 0;\n }\n\n // Устанавливаем вычисленное значение\n frappe.model.set_value(cdt, cdn, fieldName, result);\n\n // Обновляем таблицу\n frm.refresh_field(tableName);\n } catch (err) {\n console.error('Ошибка в calculate_table_row_field:', err);\n }\n}\n\n\n// Функция для получения индекса строки по её имени\nfunction get_row_index(frm, tableName, rowName) {\n \n // Проверяем наличие таблицы\n if (!frm.doc[tableName]) {\n return -1;\n }\n \n // Ищем индекс строки по имени\n for (let i = 0; i < frm.doc[tableName].length; i++) {\n if (frm.doc[tableName][i].name === rowName) {\n return i;\n }\n }\n return -1;\n}", + "script": "// Generated by Formula Editor\nfrappe.ui.form.on(\"Declaration of value added tax\", {\n \"refresh\": async function(frm) {\n initialize_table_row_formulas(frm);\n },\n \"ay\": async function(frm) {\n \n // Формула строки 23 в таблице əlavə_3_1 (порядок: 1)\n if (frm.doc.əlavə_3_1 && frm.doc.əlavə_3_1.length >= 23) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 22;\n const formula = \"report(Qaimə)\";\n \n await calculate_table_row_field(frm, \"əlavə_3_1\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəriədvnəzərəalınmadan\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 23 в таблице əlavə_3_1 (порядок: 2)\n if (frm.doc.əlavə_3_1 && frm.doc.əlavə_3_1.length >= 23) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 22;\n const formula = \"report(Mədaxil)\";\n \n await calculate_table_row_field(frm, \"əlavə_3_1\", rowIndex, \"daxilolmuşməbləğədvnəzərəalınmadan\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 17 в таблице əlavə_3_1 (порядок: 3)\n if (frm.doc.əlavə_3_1 && frm.doc.əlavə_3_1.length >= 17) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 16;\n const formula = \"report(Qaimə)\";\n \n await calculate_table_row_field(frm, \"əlavə_3_1\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəriədvnəzərəalınmadan\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 17 в таблице əlavə_3_1 (порядок: 4)\n if (frm.doc.əlavə_3_1 && frm.doc.əlavə_3_1.length >= 17) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 16;\n const formula = \"report(Mədaxil)\";\n \n await calculate_table_row_field(frm, \"əlavə_3_1\", rowIndex, \"daxilolmuşməbləğədvnəzərəalınmadan\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 1 в таблице əlavə_3_1 (порядок: 5)\n if (frm.doc.əlavə_3_1 && frm.doc.əlavə_3_1.length >= 1) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 0;\n const formula = \"report(Qaimə)\";\n \n await calculate_table_row_field(frm, \"əlavə_3_1\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəriədvnəzərəalınmadan\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 1 в таблице əlavə_3_1 (порядок: 6)\n if (frm.doc.əlavə_3_1 && frm.doc.əlavə_3_1.length >= 1) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 0;\n const formula = \"report(Mədaxil)\";\n \n await calculate_table_row_field(frm, \"əlavə_3_1\", rowIndex, \"daxilolmuşməbləğədvnəzərəalınmadan\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 2 в таблице hesabat_dövriyyəsi (порядок: 7)\n if (frm.doc.hesabat_dövriyyəsi && frm.doc.hesabat_dövriyyəsi.length >= 2) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 1;\n const formula = \"report(Qaimə)\";\n \n await calculate_table_row_field(frm, \"hesabat_dövriyyəsi\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəriədvnəzərəalınmadan\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 2 в таблице hesabat_dövriyyəsi (порядок: 8)\n if (frm.doc.hesabat_dövriyyəsi && frm.doc.hesabat_dövriyyəsi.length >= 2) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 1;\n const formula = \"report(Mədaxil)\";\n \n await calculate_table_row_field(frm, \"hesabat_dövriyyəsi\", rowIndex, \"daxilolmuşməbləğədvnəzərəalınmadan\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 2 в таблице hesabat_dövriyyəsi (порядок: 9)\n if (frm.doc.hesabat_dövriyyəsi && frm.doc.hesabat_dövriyyəsi.length >= 2) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 1;\n const formula = \"report(ƏDV məbləği)\";\n \n await calculate_table_row_field(frm, \"hesabat_dövriyyəsi\", rowIndex, \"ədvməbləği\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 1 в таблице hesabat_dövriyyəsi (порядок: 10)\n if (frm.doc.hesabat_dövriyyəsi && frm.doc.hesabat_dövriyyəsi.length >= 1) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 0;\n const formula = \"report(Qaimə)\";\n \n await calculate_table_row_field(frm, \"hesabat_dövriyyəsi\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəriədvnəzərəalınmadan\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 1 в таблице hesabat_dövriyyəsi (порядок: 11)\n if (frm.doc.hesabat_dövriyyəsi && frm.doc.hesabat_dövriyyəsi.length >= 1) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 0;\n const formula = \"report(Mədaxil)\";\n \n await calculate_table_row_field(frm, \"hesabat_dövriyyəsi\", rowIndex, \"daxilolmuşməbləğədvnəzərəalınmadan\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 1 в таблице hesabat_dövriyyəsi (порядок: 12)\n if (frm.doc.hesabat_dövriyyəsi && frm.doc.hesabat_dövriyyəsi.length >= 1) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 0;\n const formula = \"report(ƏDV məbləği)\";\n \n await calculate_table_row_field(frm, \"hesabat_dövriyyəsi\", rowIndex, \"ədvməbləği\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 8 в таблице hesabat_dövriyyəsi (порядок: 13)\n if (frm.doc.hesabat_dövriyyəsi && frm.doc.hesabat_dövriyyəsi.length >= 8) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 7;\n const formula = \"report(Qaimə)\";\n \n await calculate_table_row_field(frm, \"hesabat_dövriyyəsi\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəriədvnəzərəalınmadan\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 8 в таблице hesabat_dövriyyəsi (порядок: 14)\n if (frm.doc.hesabat_dövriyyəsi && frm.doc.hesabat_dövriyyəsi.length >= 8) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 7;\n const formula = \"report(Mədaxil)\";\n \n await calculate_table_row_field(frm, \"hesabat_dövriyyəsi\", rowIndex, \"daxilolmuşməbləğədvnəzərəalınmadan\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 8 в таблице hesabat_dövriyyəsi (порядок: 15)\n if (frm.doc.hesabat_dövriyyəsi && frm.doc.hesabat_dövriyyəsi.length >= 8) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 7;\n const formula = \"report(ƏDV məbləği)\";\n \n await calculate_table_row_field(frm, \"hesabat_dövriyyəsi\", rowIndex, \"ədvməbləği\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 2 в таблице əlavə_5 (порядок: 16)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 2) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 1;\n const formula = \"report(Azadolma maddə 164.1.1)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 3 в таблице əlavə_5 (порядок: 17)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 3) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 2;\n const formula = \"report(Azadolma maddə 164.1.2)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 4 в таблице əlavə_5 (порядок: 18)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 4) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 3;\n const formula = \"report(Azadolma maddə 164.1.3)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 5 в таблице əlavə_5 (порядок: 19)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 5) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 4;\n const formula = \"report(Azadolma maddə 164.1.5)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 6 в таблице əlavə_5 (порядок: 20)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 6) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 5;\n const formula = \"report(Azadolma maddə 164.1.6)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 7 в таблице əlavə_5 (порядок: 21)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 7) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 6;\n const formula = \"report(Azadolma maddə 164.1.7)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 8 в таблице əlavə_5 (порядок: 22)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 8) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 7;\n const formula = \"report(Azadolma maddə 164.1.8)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 9 в таблице əlavə_5 (порядок: 23)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 9) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 8;\n const formula = \"report(Azadolma maddə 164.1.9)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 10 в таблице əlavə_5 (порядок: 24)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 10) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 9;\n const formula = \"report(Azadolma maddə 164.1.10)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 11 в таблице əlavə_5 (порядок: 25)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 11) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 10;\n const formula = \"report(Azadolma maddə 164.1.11)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 12 в таблице əlavə_5 (порядок: 26)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 12) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 11;\n const formula = \"report(Azadolma maddə 164.1.12)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 13 в таблице əlavə_5 (порядок: 27)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 13) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 12;\n const formula = \"report(Azadolma maddə 164.1.13)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 14 в таблице əlavə_5 (порядок: 28)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 14) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 13;\n const formula = \"report(Azadolma maddə 164.1.14)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 15 в таблице əlavə_5 (порядок: 29)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 15) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 14;\n const formula = \"report(Azadolma maddə 164.1.17)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 16 в таблице əlavə_5 (порядок: 30)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 16) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 15;\n const formula = \"report(Azadolma maddə 164.1.18)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 17 в таблице əlavə_5 (порядок: 31)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 17) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 16;\n const formula = \"report(Azadolma maddə 164.1.27)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 18 в таблице əlavə_5 (порядок: 32)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 18) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 17;\n const formula = \"report(Azadolma maddə 164.1.29)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 19 в таблице əlavə_5 (порядок: 33)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 19) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 18;\n const formula = \"report(Azadolma maddə 164.1.30)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 20 в таблице əlavə_5 (порядок: 34)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 20) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 19;\n const formula = \"report(Azadolma maddə 164.1.31)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 21 в таблице əlavə_5 (порядок: 35)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 21) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 20;\n const formula = \"report(Azadolma maddə 164.1.32)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 22 в таблице əlavə_5 (порядок: 36)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 22) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 21;\n const formula = \"report(Azadolma maddə 164.1.34)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 23 в таблице əlavə_5 (порядок: 37)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 23) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 22;\n const formula = \"report(Azadolma maddə 164.1.36)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 24 в таблице əlavə_5 (порядок: 38)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 24) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 23;\n const formula = \"report(Azadolma maddə 164.1.37)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 25 в таблице əlavə_5 (порядок: 39)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 25) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 24;\n const formula = \"report(Azadolma maddə 164.1.42)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 26 в таблице əlavə_5 (порядок: 40)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 26) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 25;\n const formula = \"report(Azadolma maddə 164.1.43)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 27 в таблице əlavə_5 (порядок: 41)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 27) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 26;\n const formula = \"report(Azadolma maddə 164.1.46)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 28 в таблице əlavə_5 (порядок: 42)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 28) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 27;\n const formula = \"report(Azadolma maddə 164.1.47)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 29 в таблице əlavə_5 (порядок: 43)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 29) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 28;\n const formula = \"report(Azadolma maddə 164.1.48)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 30 в таблице əlavə_5 (порядок: 44)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 30) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 29;\n const formula = \"report(Azadolma maddə 164.1.49)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 31 в таблице əlavə_5 (порядок: 45)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 31) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 30;\n const formula = \"report(Azadolma maddə 164.1.50)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 32 в таблице əlavə_5 (порядок: 46)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 32) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 31;\n const formula = \"report(Azadolma maddə 164.1.51)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 33 в таблице əlavə_5 (порядок: 47)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 33) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 32;\n const formula = \"report(Azadolma maddə 164.1.55)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 34 в таблице əlavə_5 (порядок: 48)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 34) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 33;\n const formula = \"report(Azadolma maddə 164.1.34-1)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 35 в таблице əlavə_5 (порядок: 49)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 35) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 34;\n const formula = \"report(Azadolma maddə 164.1.34-2)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 36 в таблице əlavə_5 (порядок: 50)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 36) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 35;\n const formula = \"report(Azadolma maddə 164.1.41)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 37 в таблице əlavə_5 (порядок: 51)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 37) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 36;\n const formula = \"report(Azadolma maddə 164.1.41-1)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 38 в таблице əlavə_5 (порядок: 52)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 38) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 37;\n const formula = \"report(Azadolma maddə 164.1.41-2)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 39 в таблице əlavə_5 (порядок: 53)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 39) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 38;\n const formula = \"report(Azadolma maddə 164.1.41-3)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 40 в таблице əlavə_5 (порядок: 54)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 40) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 39;\n const formula = \"report(Azadolma maddə 164.1.41-4)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 41 в таблице əlavə_5 (порядок: 55)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 41) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 40;\n const formula = \"report(Azadolma maddə 164.1.57)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 44 в таблице əlavə_5 (порядок: 56)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 44) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 43;\n const formula = \"report(Azadolma maddə 164.1.10-1)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 45 в таблице əlavə_5 (порядок: 57)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 45) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 44;\n const formula = \"report(Azadolma maddə 164.1.58)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 46 в таблице əlavə_5 (порядок: 58)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 46) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 45;\n const formula = \"report(Azadolma maddə 164.1.59)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 47 в таблице əlavə_5 (порядок: 59)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 47) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 46;\n const formula = \"report(Azadolma maddə 164.1.8-1)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 48 в таблице əlavə_5 (порядок: 60)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 48) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 47;\n const formula = \"report(Azadolma maddə 164.1.56-1)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 49 в таблице əlavə_5 (порядок: 61)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 49) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 48;\n const formula = \"report(Azadolma maddə 164.1.19)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 50 в таблице əlavə_5 (порядок: 62)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 50) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 49;\n const formula = \"report(Azadolma maddə 164.1.19-1)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 2 в таблице əlavə_4 (порядок: 63)\n if (frm.doc.əlavə_4 && frm.doc.əlavə_4.length >= 2) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 1;\n const formula = \"report(0% - maddə 165.1.1)\";\n \n await calculate_table_row_field(frm, \"əlavə_4\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 3 в таблице əlavə_4 (порядок: 64)\n if (frm.doc.əlavə_4 && frm.doc.əlavə_4.length >= 3) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 2;\n const formula = \"report(0% - maddə 165.1.2)\";\n \n await calculate_table_row_field(frm, \"əlavə_4\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 4 в таблице əlavə_4 (порядок: 65)\n if (frm.doc.əlavə_4 && frm.doc.əlavə_4.length >= 4) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 3;\n const formula = \"report(0% - maddə 165.1.3)\";\n \n await calculate_table_row_field(frm, \"əlavə_4\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 5 в таблице əlavə_4 (порядок: 65)\n if (frm.doc.əlavə_4 && frm.doc.əlavə_4.length >= 5) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 4;\n const formula = \"report(0% - maddə 165.1.3 (Mal))\";\n \n await calculate_table_row_field(frm, \"əlavə_4\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 6 в таблице əlavə_4 (порядок: 66)\n if (frm.doc.əlavə_4 && frm.doc.əlavə_4.length >= 6) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 5;\n const formula = \"report(0% - maddə 165.1.3 (Xid))\";\n \n await calculate_table_row_field(frm, \"əlavə_4\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 7 в таблице əlavə_4 (порядок: 67)\n if (frm.doc.əlavə_4 && frm.doc.əlavə_4.length >= 7) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 6;\n const formula = \"report(0% - maddə 165.1.4)\";\n \n await calculate_table_row_field(frm, \"əlavə_4\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 8 в таблице əlavə_4 (порядок: 68)\n if (frm.doc.əlavə_4 && frm.doc.əlavə_4.length >= 8) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 7;\n const formula = \"report(0% - maddə 165.1.5)\";\n \n await calculate_table_row_field(frm, \"əlavə_4\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 12 в таблице əlavə_4 (порядок: 69)\n if (frm.doc.əlavə_4 && frm.doc.əlavə_4.length >= 12) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 11;\n const formula = \"report(0% - maddə 165.1.9)\";\n \n await calculate_table_row_field(frm, \"əlavə_4\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 13 в таблице əlavə_4 (порядок: 70)\n if (frm.doc.əlavə_4 && frm.doc.əlavə_4.length >= 13) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 12;\n const formula = \"report(0% - maddə 165.1.10)\";\n \n await calculate_table_row_field(frm, \"əlavə_4\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 14 в таблице əlavə_4 (порядок: 71)\n if (frm.doc.əlavə_4 && frm.doc.əlavə_4.length >= 14) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 13;\n const formula = \"report(0% - maddə 165.1.11)\";\n \n await calculate_table_row_field(frm, \"əlavə_4\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 51 в таблице əlavə_5 (порядок: 72)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 51) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 50;\n const formula = \"report(Azadolma maddə 164.1.2-1)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 52 в таблице əlavə_5 (порядок: 73)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 52) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 51;\n const formula = \"report(Azadolma maddə 164.1.9-1)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n \n // Формула строки 53 в таблице əlavə_5 (порядок: 74)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 53) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 52;\n const formula = \"report(Azadolma maddə 164.1.51-1)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"ay\");\n } catch (error) {\n }\n }\n },\n \"il\": async function(frm) {\n \n // Формула строки 23 в таблице əlavə_3_1 (порядок: 1)\n if (frm.doc.əlavə_3_1 && frm.doc.əlavə_3_1.length >= 23) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 22;\n const formula = \"report(Qaimə)\";\n \n await calculate_table_row_field(frm, \"əlavə_3_1\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəriədvnəzərəalınmadan\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 23 в таблице əlavə_3_1 (порядок: 2)\n if (frm.doc.əlavə_3_1 && frm.doc.əlavə_3_1.length >= 23) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 22;\n const formula = \"report(Mədaxil)\";\n \n await calculate_table_row_field(frm, \"əlavə_3_1\", rowIndex, \"daxilolmuşməbləğədvnəzərəalınmadan\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 17 в таблице əlavə_3_1 (порядок: 3)\n if (frm.doc.əlavə_3_1 && frm.doc.əlavə_3_1.length >= 17) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 16;\n const formula = \"report(Qaimə)\";\n \n await calculate_table_row_field(frm, \"əlavə_3_1\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəriədvnəzərəalınmadan\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 17 в таблице əlavə_3_1 (порядок: 4)\n if (frm.doc.əlavə_3_1 && frm.doc.əlavə_3_1.length >= 17) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 16;\n const formula = \"report(Mədaxil)\";\n \n await calculate_table_row_field(frm, \"əlavə_3_1\", rowIndex, \"daxilolmuşməbləğədvnəzərəalınmadan\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 1 в таблице əlavə_3_1 (порядок: 5)\n if (frm.doc.əlavə_3_1 && frm.doc.əlavə_3_1.length >= 1) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 0;\n const formula = \"report(Qaimə)\";\n \n await calculate_table_row_field(frm, \"əlavə_3_1\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəriədvnəzərəalınmadan\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 1 в таблице əlavə_3_1 (порядок: 6)\n if (frm.doc.əlavə_3_1 && frm.doc.əlavə_3_1.length >= 1) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 0;\n const formula = \"report(Mədaxil)\";\n \n await calculate_table_row_field(frm, \"əlavə_3_1\", rowIndex, \"daxilolmuşməbləğədvnəzərəalınmadan\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 2 в таблице hesabat_dövriyyəsi (порядок: 7)\n if (frm.doc.hesabat_dövriyyəsi && frm.doc.hesabat_dövriyyəsi.length >= 2) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 1;\n const formula = \"report(Qaimə)\";\n \n await calculate_table_row_field(frm, \"hesabat_dövriyyəsi\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəriədvnəzərəalınmadan\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 2 в таблице hesabat_dövriyyəsi (порядок: 8)\n if (frm.doc.hesabat_dövriyyəsi && frm.doc.hesabat_dövriyyəsi.length >= 2) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 1;\n const formula = \"report(Mədaxil)\";\n \n await calculate_table_row_field(frm, \"hesabat_dövriyyəsi\", rowIndex, \"daxilolmuşməbləğədvnəzərəalınmadan\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 2 в таблице hesabat_dövriyyəsi (порядок: 9)\n if (frm.doc.hesabat_dövriyyəsi && frm.doc.hesabat_dövriyyəsi.length >= 2) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 1;\n const formula = \"report(ƏDV məbləği)\";\n \n await calculate_table_row_field(frm, \"hesabat_dövriyyəsi\", rowIndex, \"ədvməbləği\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 1 в таблице hesabat_dövriyyəsi (порядок: 10)\n if (frm.doc.hesabat_dövriyyəsi && frm.doc.hesabat_dövriyyəsi.length >= 1) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 0;\n const formula = \"report(Qaimə)\";\n \n await calculate_table_row_field(frm, \"hesabat_dövriyyəsi\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəriədvnəzərəalınmadan\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 1 в таблице hesabat_dövriyyəsi (порядок: 11)\n if (frm.doc.hesabat_dövriyyəsi && frm.doc.hesabat_dövriyyəsi.length >= 1) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 0;\n const formula = \"report(Mədaxil)\";\n \n await calculate_table_row_field(frm, \"hesabat_dövriyyəsi\", rowIndex, \"daxilolmuşməbləğədvnəzərəalınmadan\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 1 в таблице hesabat_dövriyyəsi (порядок: 12)\n if (frm.doc.hesabat_dövriyyəsi && frm.doc.hesabat_dövriyyəsi.length >= 1) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 0;\n const formula = \"report(ƏDV məbləği)\";\n \n await calculate_table_row_field(frm, \"hesabat_dövriyyəsi\", rowIndex, \"ədvməbləği\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 8 в таблице hesabat_dövriyyəsi (порядок: 13)\n if (frm.doc.hesabat_dövriyyəsi && frm.doc.hesabat_dövriyyəsi.length >= 8) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 7;\n const formula = \"report(Qaimə)\";\n \n await calculate_table_row_field(frm, \"hesabat_dövriyyəsi\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəriədvnəzərəalınmadan\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 8 в таблице hesabat_dövriyyəsi (порядок: 14)\n if (frm.doc.hesabat_dövriyyəsi && frm.doc.hesabat_dövriyyəsi.length >= 8) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 7;\n const formula = \"report(Mədaxil)\";\n \n await calculate_table_row_field(frm, \"hesabat_dövriyyəsi\", rowIndex, \"daxilolmuşməbləğədvnəzərəalınmadan\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 8 в таблице hesabat_dövriyyəsi (порядок: 15)\n if (frm.doc.hesabat_dövriyyəsi && frm.doc.hesabat_dövriyyəsi.length >= 8) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 7;\n const formula = \"report(ƏDV məbləği)\";\n \n await calculate_table_row_field(frm, \"hesabat_dövriyyəsi\", rowIndex, \"ədvməbləği\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 2 в таблице əlavə_5 (порядок: 16)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 2) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 1;\n const formula = \"report(Azadolma maddə 164.1.1)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 3 в таблице əlavə_5 (порядок: 17)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 3) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 2;\n const formula = \"report(Azadolma maddə 164.1.2)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 4 в таблице əlavə_5 (порядок: 18)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 4) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 3;\n const formula = \"report(Azadolma maddə 164.1.3)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 5 в таблице əlavə_5 (порядок: 19)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 5) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 4;\n const formula = \"report(Azadolma maddə 164.1.5)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 6 в таблице əlavə_5 (порядок: 20)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 6) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 5;\n const formula = \"report(Azadolma maddə 164.1.6)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 7 в таблице əlavə_5 (порядок: 21)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 7) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 6;\n const formula = \"report(Azadolma maddə 164.1.7)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 8 в таблице əlavə_5 (порядок: 22)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 8) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 7;\n const formula = \"report(Azadolma maddə 164.1.8)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 9 в таблице əlavə_5 (порядок: 23)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 9) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 8;\n const formula = \"report(Azadolma maddə 164.1.9)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 10 в таблице əlavə_5 (порядок: 24)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 10) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 9;\n const formula = \"report(Azadolma maddə 164.1.10)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 11 в таблице əlavə_5 (порядок: 25)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 11) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 10;\n const formula = \"report(Azadolma maddə 164.1.11)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 12 в таблице əlavə_5 (порядок: 26)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 12) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 11;\n const formula = \"report(Azadolma maddə 164.1.12)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 13 в таблице əlavə_5 (порядок: 27)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 13) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 12;\n const formula = \"report(Azadolma maddə 164.1.13)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 14 в таблице əlavə_5 (порядок: 28)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 14) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 13;\n const formula = \"report(Azadolma maddə 164.1.14)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 15 в таблице əlavə_5 (порядок: 29)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 15) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 14;\n const formula = \"report(Azadolma maddə 164.1.17)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 16 в таблице əlavə_5 (порядок: 30)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 16) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 15;\n const formula = \"report(Azadolma maddə 164.1.18)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 17 в таблице əlavə_5 (порядок: 31)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 17) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 16;\n const formula = \"report(Azadolma maddə 164.1.27)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 18 в таблице əlavə_5 (порядок: 32)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 18) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 17;\n const formula = \"report(Azadolma maddə 164.1.29)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 19 в таблице əlavə_5 (порядок: 33)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 19) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 18;\n const formula = \"report(Azadolma maddə 164.1.30)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 20 в таблице əlavə_5 (порядок: 34)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 20) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 19;\n const formula = \"report(Azadolma maddə 164.1.31)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 21 в таблице əlavə_5 (порядок: 35)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 21) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 20;\n const formula = \"report(Azadolma maddə 164.1.32)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 22 в таблице əlavə_5 (порядок: 36)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 22) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 21;\n const formula = \"report(Azadolma maddə 164.1.34)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 23 в таблице əlavə_5 (порядок: 37)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 23) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 22;\n const formula = \"report(Azadolma maddə 164.1.36)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 24 в таблице əlavə_5 (порядок: 38)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 24) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 23;\n const formula = \"report(Azadolma maddə 164.1.37)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 25 в таблице əlavə_5 (порядок: 39)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 25) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 24;\n const formula = \"report(Azadolma maddə 164.1.42)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 26 в таблице əlavə_5 (порядок: 40)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 26) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 25;\n const formula = \"report(Azadolma maddə 164.1.43)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 27 в таблице əlavə_5 (порядок: 41)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 27) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 26;\n const formula = \"report(Azadolma maddə 164.1.46)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 28 в таблице əlavə_5 (порядок: 42)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 28) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 27;\n const formula = \"report(Azadolma maddə 164.1.47)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 29 в таблице əlavə_5 (порядок: 43)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 29) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 28;\n const formula = \"report(Azadolma maddə 164.1.48)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 30 в таблице əlavə_5 (порядок: 44)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 30) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 29;\n const formula = \"report(Azadolma maddə 164.1.49)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 31 в таблице əlavə_5 (порядок: 45)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 31) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 30;\n const formula = \"report(Azadolma maddə 164.1.50)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 32 в таблице əlavə_5 (порядок: 46)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 32) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 31;\n const formula = \"report(Azadolma maddə 164.1.51)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 33 в таблице əlavə_5 (порядок: 47)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 33) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 32;\n const formula = \"report(Azadolma maddə 164.1.55)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 34 в таблице əlavə_5 (порядок: 48)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 34) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 33;\n const formula = \"report(Azadolma maddə 164.1.34-1)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 35 в таблице əlavə_5 (порядок: 49)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 35) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 34;\n const formula = \"report(Azadolma maddə 164.1.34-2)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 36 в таблице əlavə_5 (порядок: 50)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 36) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 35;\n const formula = \"report(Azadolma maddə 164.1.41)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 37 в таблице əlavə_5 (порядок: 51)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 37) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 36;\n const formula = \"report(Azadolma maddə 164.1.41-1)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 38 в таблице əlavə_5 (порядок: 52)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 38) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 37;\n const formula = \"report(Azadolma maddə 164.1.41-2)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 39 в таблице əlavə_5 (порядок: 53)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 39) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 38;\n const formula = \"report(Azadolma maddə 164.1.41-3)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 40 в таблице əlavə_5 (порядок: 54)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 40) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 39;\n const formula = \"report(Azadolma maddə 164.1.41-4)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 41 в таблице əlavə_5 (порядок: 55)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 41) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 40;\n const formula = \"report(Azadolma maddə 164.1.57)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 44 в таблице əlavə_5 (порядок: 56)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 44) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 43;\n const formula = \"report(Azadolma maddə 164.1.10-1)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 45 в таблице əlavə_5 (порядок: 57)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 45) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 44;\n const formula = \"report(Azadolma maddə 164.1.58)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 46 в таблице əlavə_5 (порядок: 58)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 46) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 45;\n const formula = \"report(Azadolma maddə 164.1.59)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 47 в таблице əlavə_5 (порядок: 59)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 47) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 46;\n const formula = \"report(Azadolma maddə 164.1.8-1)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 48 в таблице əlavə_5 (порядок: 60)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 48) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 47;\n const formula = \"report(Azadolma maddə 164.1.56-1)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 49 в таблице əlavə_5 (порядок: 61)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 49) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 48;\n const formula = \"report(Azadolma maddə 164.1.19)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 50 в таблице əlavə_5 (порядок: 62)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 50) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 49;\n const formula = \"report(Azadolma maddə 164.1.19-1)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 2 в таблице əlavə_4 (порядок: 63)\n if (frm.doc.əlavə_4 && frm.doc.əlavə_4.length >= 2) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 1;\n const formula = \"report(0% - maddə 165.1.1)\";\n \n await calculate_table_row_field(frm, \"əlavə_4\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 3 в таблице əlavə_4 (порядок: 64)\n if (frm.doc.əlavə_4 && frm.doc.əlavə_4.length >= 3) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 2;\n const formula = \"report(0% - maddə 165.1.2)\";\n \n await calculate_table_row_field(frm, \"əlavə_4\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 4 в таблице əlavə_4 (порядок: 65)\n if (frm.doc.əlavə_4 && frm.doc.əlavə_4.length >= 4) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 3;\n const formula = \"report(0% - maddə 165.1.3)\";\n \n await calculate_table_row_field(frm, \"əlavə_4\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 5 в таблице əlavə_4 (порядок: 65)\n if (frm.doc.əlavə_4 && frm.doc.əlavə_4.length >= 5) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 4;\n const formula = \"report(0% - maddə 165.1.3 (Mal))\";\n \n await calculate_table_row_field(frm, \"əlavə_4\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 6 в таблице əlavə_4 (порядок: 66)\n if (frm.doc.əlavə_4 && frm.doc.əlavə_4.length >= 6) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 5;\n const formula = \"report(0% - maddə 165.1.3 (Xid))\";\n \n await calculate_table_row_field(frm, \"əlavə_4\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 7 в таблице əlavə_4 (порядок: 67)\n if (frm.doc.əlavə_4 && frm.doc.əlavə_4.length >= 7) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 6;\n const formula = \"report(0% - maddə 165.1.4)\";\n \n await calculate_table_row_field(frm, \"əlavə_4\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 8 в таблице əlavə_4 (порядок: 68)\n if (frm.doc.əlavə_4 && frm.doc.əlavə_4.length >= 8) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 7;\n const formula = \"report(0% - maddə 165.1.5)\";\n \n await calculate_table_row_field(frm, \"əlavə_4\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 12 в таблице əlavə_4 (порядок: 69)\n if (frm.doc.əlavə_4 && frm.doc.əlavə_4.length >= 12) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 11;\n const formula = \"report(0% - maddə 165.1.9)\";\n \n await calculate_table_row_field(frm, \"əlavə_4\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 13 в таблице əlavə_4 (порядок: 70)\n if (frm.doc.əlavə_4 && frm.doc.əlavə_4.length >= 13) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 12;\n const formula = \"report(0% - maddə 165.1.10)\";\n \n await calculate_table_row_field(frm, \"əlavə_4\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 14 в таблице əlavə_4 (порядок: 71)\n if (frm.doc.əlavə_4 && frm.doc.əlavə_4.length >= 14) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 13;\n const formula = \"report(0% - maddə 165.1.11)\";\n \n await calculate_table_row_field(frm, \"əlavə_4\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 51 в таблице əlavə_5 (порядок: 72)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 51) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 50;\n const formula = \"report(Azadolma maddə 164.1.2-1)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 52 в таблице əlavə_5 (порядок: 73)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 52) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 51;\n const formula = \"report(Azadolma maddə 164.1.9-1)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n \n // Формула строки 53 в таблице əlavə_5 (порядок: 74)\n if (frm.doc.əlavə_5 && frm.doc.əlavə_5.length >= 53) {\n try {\n // Индекс строки на 1 меньше номера строки\n const rowIndex = 52;\n const formula = \"report(Azadolma maddə 164.1.51-1)\";\n \n await calculate_table_row_field(frm, \"əlavə_5\", rowIndex, \"təqdimedilmişmalişvəxidmətlərindəyəri\", formula, \"il\");\n } catch (error) {\n }\n }\n },\n \"əlavə_3_1_add\": function(frm) {\n // Обновляем индексы строк после добавления новой строки\n setTimeout(() => initialize_table_row_formulas(frm), 100);\n },\n \"əlavə_3_1_remove\": function(frm) {\n // Обновляем индексы строк после удаления строки\n setTimeout(() => initialize_table_row_formulas(frm), 100);\n },\n \"hesabat_dövriyyəsi_add\": function(frm) {\n // Обновляем индексы строк после добавления новой строки\n setTimeout(() => initialize_table_row_formulas(frm), 100);\n },\n \"hesabat_dövriyyəsi_remove\": function(frm) {\n // Обновляем индексы строк после удаления строки\n setTimeout(() => initialize_table_row_formulas(frm), 100);\n },\n \"əlavə_5_add\": function(frm) {\n // Обновляем индексы строк после добавления новой строки\n setTimeout(() => initialize_table_row_formulas(frm), 100);\n },\n \"əlavə_5_remove\": function(frm) {\n // Обновляем индексы строк после удаления строки\n setTimeout(() => initialize_table_row_formulas(frm), 100);\n },\n \"əlavə_4_add\": function(frm) {\n // Обновляем индексы строк после добавления новой строки\n setTimeout(() => initialize_table_row_formulas(frm), 100);\n },\n \"əlavə_4_remove\": function(frm) {\n // Обновляем индексы строк после удаления строки\n setTimeout(() => initialize_table_row_formulas(frm), 100);\n },\n});\n\n\n // Функция для обработки и выполнения формул\n async function processFormula(frm, formula) {\n try {\n // Проверяем наличие вызовов отчетов\n if (formula.includes(\"report(\")) {\n // Извлекаем все вызовы report() из формулы\n const reportRegex = /report\\(([^)]+)\\)/g;\n let match;\n let processedFormula = formula;\n \n // Массив для хранения промисов запросов к отчетам\n const reportPromises = [];\n const reportPlaceholders = [];\n \n // Находим все вызовы report() и заменяем их на плейсхолдеры\n while ((match = reportRegex.exec(formula)) !== null) {\n const fullMatch = match[0]; // report(fieldName)\n const fieldName = match[1]; // fieldName\n \n // Создаем уникальный плейсхолдер\n const placeholder = `__REPORT_PLACEHOLDER_${reportPromises.length}__`;\n \n // Ищем данные отчета в хранилище\n const reportFields = JSON.parse(frm.doc.report_fields_storage || \"{}\");\n const reportField = Object.values(reportFields).find(f => f.name === fieldName);\n \n if (reportField) {\n // Добавляем промис запроса к отчету\n reportPromises.push(\n getReportFieldValue(\n frm,\n reportField.report, \n JSON.parse(reportField.filters_json || \"{}\"), \n reportField.field_name, \n reportField.aggregation || 'sum'\n )\n );\n \n // Запоминаем соответствие плейсхолдера и вызова\n reportPlaceholders.push({\n placeholder: placeholder,\n original: fullMatch\n });\n \n // Заменяем вызов отчета на плейсхолдер\n processedFormula = processedFormula.replace(fullMatch, placeholder);\n }\n }\n \n // Если нашли вызовы отчетов, ждем выполнения всех запросов\n if (reportPromises.length > 0) {\n const reportResults = await Promise.all(reportPromises);\n \n // Заменяем плейсхолдеры на результаты\n for (let i = 0; i < reportPlaceholders.length; i++) {\n // Убедимся, что результат - числовое значение\n const reportValue = reportResults[i] !== undefined ? Number(reportResults[i]) : 0;\n processedFormula = processedFormula.replace(\n reportPlaceholders[i].placeholder, \n reportValue\n );\n }\n \n // Теперь формула не содержит вызовов report(), обрабатываем её обычным способом\n let transformResult = transform_expression(processedFormula, false);\n \n // Если есть внешняя трансформация, применяем её\n let result;\n if (transformResult && transformResult.transformed) {\n result = eval(transformResult.transformed);\n } else {\n // Иначе просто вычисляем выражение\n result = eval(processedFormula);\n }\n \n // Возвращаем результат\n return isNaN(result) ? 0 : result;\n }\n }\n \n // Стандартная обработка для формул без отчетов\n let transformResult = transform_expression(formula, false);\n let result = eval(transformResult.transformed);\n return isNaN(result) ? 0 : result;\n } catch (e) {\n return 0;\n }\n }\n\n\n // Функция для расчета универсальных полей\n async function calculate_universal_fields(frm) {\n \n }\n \n // Функция для обработки квартала (rüb) и года (il)\n function processQuarterDateField(docValues) {\n // Проверяем, есть ли у нас значения rüb и il\n if (docValues && docValues.rüb && docValues.il) {\n // Получаем номер квартала (преобразуем из строки вида \"1 Rüb\" в число 1)\n const quarterStr = docValues.rüb;\n const quarterMatch = quarterStr.match(/(\\d+)/);\n \n if (!quarterMatch) {\n return null;\n }\n \n const quarterNum = parseInt(quarterMatch[1]);\n \n // Получаем год из поля il или используем текущий год\n let year = docValues.il || new Date().getFullYear();\n \n // Определяем начальный и конечный месяц квартала\n let startMonth, endMonth;\n \n switch(quarterNum) {\n case 1:\n startMonth = 1; // Январь\n endMonth = 3; // Март\n break;\n case 2:\n startMonth = 4; // Апрель\n endMonth = 6; // Июнь\n break;\n case 3:\n startMonth = 7; // Июль\n endMonth = 9; // Сентябрь\n break;\n case 4:\n startMonth = 10; // Октябрь\n endMonth = 12; // Декабрь\n break;\n default:\n return null;\n }\n \n // Определяем первый день квартала (1-е число начального месяца)\n const firstDay = new Date(year, startMonth - 1, 1);\n \n // Последний день квартала (последнее число конечного месяца)\n const lastDay = new Date(year, endMonth, 0);\n \n // Форматируем даты в формате YYYY-MM-DD\n const firstDayStr = `${year}-${String(startMonth).padStart(2, '0')}-01`;\n const lastDayStr = `${year}-${String(endMonth).padStart(2, '0')}-${String(lastDay.getDate()).padStart(2, '0')}`; \n \n // Возвращаем объект с диапазоном дат\n return {\n start: firstDayStr,\n end: lastDayStr\n };\n }\n \n // Если это не специальное поле или значение не распознано, возвращаем null\n return null;\n }\n \n // Функция для обработки специальных полей с азербайджанскими месяцами\n function processAzerbayjanDateField(docValues) {\n // Словарь для сопоставления названий месяцев с их номерами\n const monthNames = {\n \"Yanvar\": 1,\n \"Fevral\": 2,\n \"Mart\": 3,\n \"Aprel\": 4,\n \"May\": 5,\n \"İyun\": 6,\n \"İyul\": 7,\n \"Avqust\": 8,\n \"Sentyabr\": 9,\n \"Oktyabr\": 10,\n \"Noyabr\": 11,\n \"Dekabr\": 12\n };\n \n // Проверяем наличие квартала (rüb) и года (il)\n if (docValues && docValues.rüb && docValues.il) {\n // Вызываем специальную функцию для обработки квартала\n return processQuarterDateField(docValues);\n }\n \n // Проверяем, есть ли у нас значения ay и il\n if (docValues && docValues.ay && monthNames[docValues.ay]) {\n // Получаем номер месяца\n const monthNum = monthNames[docValues.ay];\n \n // Получаем год из поля il или используем текущий год\n let year = docValues.il || new Date().getFullYear();\n \n // Определяем первый день месяца (1-е число)\n const firstDay = new Date(year, monthNum - 1, 1);\n \n // Последний день месяца (получаем последнее число месяца)\n const lastDay = new Date(year, monthNum, 0);\n \n // Форматируем даты в формате YYYY-MM-DD\n const firstDayStr = `${year}-${String(monthNum).padStart(2, '0')}-01`;\n const lastDayStr = `${year}-${String(monthNum).padStart(2, '0')}-${String(lastDay.getDate()).padStart(2, '0')}`; \n \n // Возвращаем объект с диапазоном дат\n return {\n start: firstDayStr,\n end: lastDayStr\n };\n }\n \n // Если это не специальное поле или значение не распознано, возвращаем null\n return null;\n }\n \n\n\n// Функция для обработки азербайджанских дат\nfunction processAzerbayjanDateField(docValues) {\n // Словарь для сопоставления названий месяцев с их номерами\n const monthNames = {\n \"Yanvar\": 1,\n \"Fevral\": 2,\n \"Mart\": 3,\n \"Aprel\": 4,\n \"May\": 5,\n \"İyun\": 6,\n \"İyul\": 7,\n \"Avqust\": 8,\n \"Sentyabr\": 9,\n \"Oktyabr\": 10,\n \"Noyabr\": 11,\n \"Dekabr\": 12\n };\n \n // Проверяем наличие квартала (rüb) и года (il)\n if (docValues && docValues.rüb && docValues.il) {\n // Получаем номер квартала (преобразуем из строки вида \"1 Rüb\" в число 1)\n const quarterStr = docValues.rüb;\n const quarterMatch = quarterStr.match(/(\\d+)/);\n \n if (!quarterMatch) {\n return null;\n }\n \n const quarterNum = parseInt(quarterMatch[1]);\n \n // Получаем год из поля il или используем текущий год\n let year = docValues.il || new Date().getFullYear();\n \n // Определяем начальный и конечный месяц квартала\n let startMonth, endMonth;\n \n switch(quarterNum) {\n case 1:\n startMonth = 1; // Январь\n endMonth = 3; // Март\n break;\n case 2:\n startMonth = 4; // Апрель\n endMonth = 6; // Июнь\n break;\n case 3:\n startMonth = 7; // Июль\n endMonth = 9; // Сентябрь\n break;\n case 4:\n startMonth = 10; // Октябрь\n endMonth = 12; // Декабрь\n break;\n default:\n return null;\n }\n \n // Определяем первый день квартала (1-е число начального месяца)\n const firstDay = new Date(year, startMonth - 1, 1);\n \n // Последний день квартала (последнее число конечного месяца)\n const lastDay = new Date(year, endMonth, 0);\n \n // Форматируем даты в формате YYYY-MM-DD\n const firstDayStr = year + \"-\" + String(startMonth).padStart(2, '0') + \"-01\";\n const lastDayStr = year + \"-\" + String(endMonth).padStart(2, '0') + \"-\" + String(lastDay.getDate()).padStart(2, '0'); \n \n // Возвращаем объект с диапазоном дат\n return {\n start: firstDayStr,\n end: lastDayStr\n };\n }\n \n // Проверяем, есть ли у нас значения ay и il\n if (docValues && docValues.ay && monthNames[docValues.ay]) {\n // Получаем номер месяца\n const monthNum = monthNames[docValues.ay];\n \n // Получаем год из поля il или используем текущий год\n let year = docValues.il || new Date().getFullYear();\n \n // Определяем первый день месяца (1-е число)\n const firstDay = new Date(year, monthNum - 1, 1);\n \n // Последний день месяца (получаем последнее число месяца)\n const lastDay = new Date(year, monthNum, 0);\n \n // Форматируем даты в формате YYYY-MM-DD\n const firstDayStr = year + \"-\" + String(monthNum).padStart(2, '0') + \"-01\";\n const lastDayStr = year + \"-\" + String(monthNum).padStart(2, '0') + \"-\" + String(lastDay.getDate()).padStart(2, '0'); \n \n // Возвращаем объект с диапазоном дат\n return {\n start: firstDayStr,\n end: lastDayStr\n };\n }\n \n // Если это не специальное поле или значение не распознано, возвращаем null\n return null;\n}\n\nasync function getReportFieldValue(frm, reportName, filters, fieldName, aggregation) {\n try {\n // Обрабатываем фильтры с возможными ссылками на поля документа\n const processedFilters = {};\n \n for (const key in filters) {\n let value = filters[key];\n \n // Проверяем, является ли значение ссылкой на поле документа\n if (typeof value === 'string' && value.startsWith('doc.')) {\n const docField = value.substring(4);\n if (frm.doc[docField] !== undefined) {\n processedFilters[key] = frm.doc[docField];\n continue;\n }\n }\n \n // Обработка специальных переменных\n if (typeof value === 'string' && value.startsWith('$')) {\n switch (value) {\n case '$DefaultCompany':\n // Получаем компанию по умолчанию из настроек или документа\n processedFilters[key] = frm.doc.company || frappe.defaults.get_user_default(\"Company\");\n continue;\n \n case '$AyIlSpecial':\n // Обрабатываем специальные даты для азербайджанских месяцев/кварталов\n const dateRange = processAzerbayjanDateField(frm.doc);\n if (dateRange) {\n // Для полей from_date и to_date используем соответствующие значения\n if (key === 'from_date') {\n processedFilters[key] = dateRange.start;\n } else if (key === 'to_date') {\n processedFilters[key] = dateRange.end;\n } else {\n // Для других полей используем начальную дату\n processedFilters[key] = dateRange.start;\n }\n } else {\n // Если не удалось получить диапазон дат, используем текущую дату\n processedFilters[key] = frappe.datetime.get_today();\n }\n continue;\n \n default:\n // Для других $-переменных оставляем как есть\n processedFilters[key] = value;\n continue;\n }\n }\n \n // Обычные значения\n processedFilters[key] = value;\n }\n \n // Проверяем кеш\n if (!window.reportCache) window.reportCache = {};\n \n const cacheKey = reportName + \"|\" + JSON.stringify(processedFilters) + \"|\" + fieldName + \"|\" + aggregation;\n const now = new Date().getTime();\n \n if (window.reportCache[cacheKey] && \n window.reportCache[cacheKey].timestamp > now - 5 * 60 * 1000) {\n return window.reportCache[cacheKey].value;\n }\n \n // Выполняем запрос к серверу\n try {\n const result = await frappe.call({\n method: \"formula_editor.api.run_report_for_formula\",\n args: {\n report_name: reportName,\n filters: processedFilters,\n field_name: fieldName\n },\n freeze: false\n });\n \n if (result && result.message !== undefined) {\n if (result.message.error) {\n console.error('Report error:', result.message.error);\n return 0;\n } \n \n let value = parseFloat(result.message);\n if (isNaN(value)) value = 0;\n \n // Округляем до 2 знаков после запятой\n value = Math.round(value * 100) / 100;\n \n // Сохраняем в кеш\n window.reportCache[cacheKey] = {\n value: value,\n timestamp: now\n };\n \n return value;\n }\n } catch (err) {\n console.error('Report field error:', err);\n }\n \n return 0;\n } catch (error) {\n console.error('getReportFieldValue error:', error);\n return 0;\n }\n}\n\n\n function transform_expression(expression, for_child_table = false, table_name = null) {\n let transformed = expression;\n let needsAsync = false;\n let reportCalls = [];\n\n // === Обработка report(...) ===\n const reportRegex = /report\\(([^)]+)\\)/g;\n let match;\n \n // Находим все вызовы report() в выражении\n while ((match = reportRegex.exec(expression)) !== null) {\n const reportName = match[1]; // Имя поля отчета\n const fullMatch = match[0]; // Полный текст match - \"report(xyz)\"\n needsAsync = true;\n \n // Создаем уникальный плейсхолдер\n const placeholder = `__REPORT_PLACEHOLDER_${reportCalls.length}__`;\n \n // Ищем соответствующее поле отчета по имени\n \n if (reportName === \"Qaimə\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Sales invoice info report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"net_amount\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Mədaxil\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Payment entry info report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"paid_amount\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"ƏDV məbləği\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Payment entry info report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vat_amount\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.1\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_1\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.2\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_2\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.3\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_3\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.5\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_165_1_5\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.6\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_6\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.7\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_7\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.8\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_8\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.9\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_9\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.10\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_165_1_10\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.11\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_165_1_11\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.12\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_12\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.13\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_13\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.14\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_14\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.17\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_17\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.18\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_18\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.27\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_27\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.29\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_29\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.30\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_30\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.31\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_31\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.32\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_32\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.34\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_34\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.36\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_36\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.37\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_37\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.42\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_42\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.43\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_43\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.46\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_46\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.47\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_47\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.48\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_48\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.49\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_49\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.50\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_50\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.51\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_51\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.55\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_55\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.34-1\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_34_1\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.34-2\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_34_2\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.41\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_41\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.41-1\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_41_1\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.41-2\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_41_2\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.41-3\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_41_3\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.41-4\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_41_4\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.57\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_57\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.10-1\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_10_1\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.58\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_58\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.59\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_59\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.8-1\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_8_1\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.56-1\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_56_1\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.19\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_19\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.19-1\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_19_1\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.2-1\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_2_1\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.9-1\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_9_1\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"Azadolma maddə 164.1.51-1\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_164_1_51_1\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"0% - maddə 165.1.1\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_165_1_1\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"0% - maddə 165.1.2\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_165_1_2\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"0% - maddə 165.1.3\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_165_1_3\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"0% - maddə 165.1.3 (Mal)\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_165_1_3_mal\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"0% - maddə 165.1.3 (Xid)\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_165_1_3_xid\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"0% - maddə 165.1.4\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_165_1_4\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"0% - maddə 165.1.5\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_165_1_5\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"0% - maddə 165.1.9\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_165_1_9\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"0% - maddə 165.1.10\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_165_1_10\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n if (reportName === \"0% - maddə 165.1.11\") {\n reportCalls.push({\n placeholder: placeholder,\n reportName: \"Tax Articles Revenue Report\",\n filters: JSON.parse(\"{\\\"company\\\":\\\"$DefaultCompany\\\",\\\"from_date\\\":\\\"$AyIlSpecial\\\",\\\"to_date\\\":\\\"$AyIlSpecial\\\",\\\"fiscal_year\\\":\\\"$DefaultFiscalYear\\\"}\"),\n fieldName: \"vm_165_1_11\",\n aggregation: \"sum\"\n });\n \n transformed = transformed.replace(fullMatch, placeholder);\n }\n }\n\n // === Обработка table(...) ===\n const tableRegex = /table\\(([^,)]+),\\s*([^,)]+),\\s*([^)]+)\\)/g;\n let tableMatch;\n while ((tableMatch = tableRegex.exec(expression)) !== null) {\n const fullMatch = tableMatch[0];\n const tableName = tableMatch[1].trim().replace(/['\"]/g, '');\n const rowNumber = tableMatch[2].trim();\n const fieldName = tableMatch[3].trim().replace(/['\"]/g, '');\n \n const replacement = `(function() { \n try {\n if (!frm.doc[\"${tableName}\"] || !frm.doc[\"${tableName}\"][${rowNumber} - 1]) {\n return 0;\n }\n const value = frm.doc[\"${tableName}\"][${rowNumber} - 1][\"${fieldName}\"];\n return parseFloat(value) || 0;\n } catch (e) {\n return 0;\n }\n })()`;\n \n transformed = transformed.replace(fullMatch, replacement);\n }\n\n // === Обработка universal полей ===\n \n\n // === Обработка val() и row() ===\n // Динамически получаем список всех табличных частей из DocType\n const tablePrefixes = [\"hesabat_dövriyyəsi\",\"debitor_borc\",\"əvəzləşdirilən_table\",\"dəqiqləşdirilən_table\",\"hesablaşmalar_table\",\"əlavə_1\",\"əlavə_1_2\",\"əlavə1_yeni\",\"əlavə1_2_yeni\",\"əlavə_2\",\"əlavə_2_2\",\"əlavə_2_3\",\"əlavə_4\",\"əlavə_5\",\"əlavə_7\",\"əlavə_9\",\"əlavə_10\",\"əlavə_10_2\",\"əlavə_3_1\",\"əlavə_3_2\",\"müəssisə_sertifikat\",\"müəssisə_malın_dəyəri\"];\n\n for (const prefix of tablePrefixes) {\n const sumPattern = new RegExp(`sum\\\\(${prefix}_([^)]+)\\\\)`, 'g');\n transformed = transformed.replace(sumPattern, (m, f) => \n `(frm.doc[\"${prefix}\"] && frm.doc[\"${prefix}\"].reduce((s, r) => s + (parseFloat(r[\"${f}\"]) || 0), 0) || 0)`\n );\n\n const valPattern = new RegExp(`val\\\\(${prefix}_([^)]+)\\\\)`, 'g');\n transformed = transformed.replace(valPattern, (m, f) => \n `(frm.doc[\"${prefix}\"] && frm.doc[\"${prefix}\"].reduce((s, r) => s + (parseFloat(r[\"${f}\"]) || 0), 0) || 0)`\n );\n }\n\n if (for_child_table) {\n transformed = transformed.replace(/row\\(([^)]+)\\)/g, (m, f) => \n `(parseFloat(row[\"${f}\"]) || 0)`\n );\n\n transformed = transformed.replace(/val\\(([^)]+)\\)/g, (m, f) => {\n if (f.startsWith(table_name + '_')) {\n return `(parseFloat(row[\"${f.slice(table_name.length + 1)}\"]) || 0)`;\n }\n return `(parseFloat(frm.doc[\"${f}\"]) || 0)`;\n });\n } else {\n transformed = transformed.replace(/val\\(([^)]+)\\)/g, (m, f) => \n `(parseFloat(frm.doc[\"${f}\"]) || 0)`\n );\n\n transformed = transformed.replace(/row\\(([^)]+)\\)/g, () => \n `0 /* ERROR: row() вне табличной части */`\n );\n }\n\n return { transformed, needsAsync, reportCalls };\n }\n\n\n// Функция для получения индекса строки по её имени (name/cdn)\nfunction get_row_index(frm, tableName, rowName) {\n \n // Проверяем наличие таблицы\n if (!frm.doc[tableName]) {\n return -1;\n }\n \n // Выводим все строки для отладки\n frm.doc[tableName].forEach((row, idx) => {\n });\n \n // Ищем индекс строки по имени\n for (let i = 0; i < frm.doc[tableName].length; i++) {\n if (frm.doc[tableName][i].name === rowName) {\n return i;\n }\n }\n return -1;\n}\n\n// Функция для доступа к полям конкретных строк таблицы\nfunction table_row(tableName, rowIndex, fieldName) {\n // Проверяем наличие необходимых аргументов\n if (!tableName || rowIndex === undefined || !fieldName) {\n return 0;\n }\n \n // Преобразуем rowIndex в число (на случай, если передана строка)\n const rowIdx = parseInt(rowIndex) - 1; // Индексация с 1 для пользователя, но с 0 в массиве\n \n try {\n // Проверяем наличие таблицы и строки\n if (!frm.doc[tableName] || !frm.doc[tableName][rowIdx]) {\n return 0;\n }\n \n // Получаем значение поля\n const value = frm.doc[tableName][rowIdx][fieldName];\n \n // Проверяем на NaN и возвращаем значение или 0\n const numValue = parseFloat(value);\n if (isNaN(numValue)) {\n return 0;\n }\n return numValue;\n } catch (error) {\n return 0;\n }\n}\n\n// Функция для обновления значения поля конкретной строки таблицы\nfunction set_table_row(frm, tableName, rowIndex, fieldName, value) {\n // Проверяем наличие необходимых аргументов\n if (!frm || !tableName || rowIndex === undefined || !fieldName) {\n return false;\n }\n \n // Преобразуем rowIndex в число (на случай, если передана строка)\n const rowIdx = parseInt(rowIndex) - 1; // Индексация с 1 для пользователя, но с 0 в массиве\n \n try {\n // Проверяем наличие таблицы и строки\n if (!frm.doc[tableName] || !frm.doc[tableName][rowIdx]) {\n return false;\n }\n \n // Получаем строку таблицы\n const row = frm.doc[tableName][rowIdx];\n \n // Получаем сетевое имя cdt и cdn для Frappe\n const cdt = frm.fields_dict[tableName].grid.doctype;\n const cdn = row.name;\n \n // Проверяем, является ли значение NaN, и если да, заменяем его на 0\n let finalValue = value;\n if (typeof value === 'number' && isNaN(value)) {\n finalValue = 0;\n }\n \n // Обновляем значение поля\n frappe.model.set_value(cdt, cdn, fieldName, finalValue);\n \n return true;\n } catch (error) {\n return false;\n }\n}\n\n// Функция для поиска строки таблицы по значению поля\nfunction find_table_row(frm, tableName, fieldName, value) {\n // Проверяем наличие необходимых аргументов\n if (!frm || !tableName || !fieldName) {\n return -1;\n }\n \n try {\n // Проверяем наличие таблицы\n if (!frm.doc[tableName]) {\n return -1;\n }\n \n // Ищем строку с указанным значением поля\n for (let i = 0; i < frm.doc[tableName].length; i++) {\n if (frm.doc[tableName][i][fieldName] == value) {\n // Возвращаем индекс строки (начиная с 1 для пользователя)\n return i + 1;\n }\n }\n \n // Если строка не найдена\n return -1;\n } catch (error) {\n return -1;\n }\n}\n\n\n // Функция для инициализации формул строк табличных частей\n function initialize_table_row_formulas(frm) {\n try {\n // Получаем информацию о формулах для строк табличных частей\n const formulas = JSON.parse(frm.doc.table_row_formulas_storage || \"{}\");\n \n // ВАЖНО: Преобразуем объект в массив и сортируем его по порядку выполнения\n const sortedFormulas = Object.entries(formulas).map(([id, formula]) => {\n return { id, ...formula };\n }).sort((a, b) => {\n // Сортировка по значению поля order (если порядок не задан, используем 10 по умолчанию)\n const orderA = a.order !== undefined ? parseInt(a.order) : 10;\n const orderB = b.order !== undefined ? parseInt(b.order) : 10;\n return orderA - orderB;\n });\n \n // Группируем формулы по табличным частям и строкам\n const formulasByTableAndRow = {};\n \n sortedFormulas.forEach(formula => {\n const tableName = formula.table_name;\n const rowIndex = parseInt(formula.row_index);\n \n if (!formulasByTableAndRow[tableName]) {\n formulasByTableAndRow[tableName] = {};\n }\n \n if (!formulasByTableAndRow[tableName][rowIndex]) {\n formulasByTableAndRow[tableName][rowIndex] = [];\n }\n \n formulasByTableAndRow[tableName][rowIndex].push(formula);\n });\n \n // Устанавливаем обработчики для каждой табличной части\n Object.keys(formulasByTableAndRow).forEach(tableName => {\n if (!frm.doc[tableName]) {\n return;\n }\n \n // Для каждой строки таблицы\n frm.doc[tableName].forEach((row, rowIdx) => {\n // Получаем отсортированные формулы для текущей строки (строки нумеруются с 1, а индексы с 0)\n const rowFormulas = formulasByTableAndRow[tableName][rowIdx + 1] || [];\n \n // Выполняем формулы в порядке сортировки (по полю order)\n for (const formula of rowFormulas) {\n try {\n // Определяем необходимость асинхронного вызова\n const usesUniversal = formula.formula && formula.formula.includes(\"univ(\");\n const usesReports = formula.formula && formula.formula.includes(\"report(\");\n \n // Вызываем расчет формулы согласно установленному порядку\n if (usesUniversal || usesReports) {\n // Для асинхронных вызовов используем await в асинхронной IIFE\n (async () => {\n try {\n await calculate_table_row_field(frm, tableName, rowIdx, formula.field_name, formula.formula, \"refresh\");\n } catch (asyncError) {\n }\n })();\n } else {\n // Для синхронных вызовов выполняем напрямую\n calculate_table_row_field(frm, tableName, rowIdx, formula.field_name, formula.formula, \"refresh\");\n }\n } catch (error) {\n }\n }\n });\n });\n } catch (error) {\n }\n }\n\n\n// Функция для расчета значения поля в строке табличной части\nasync function calculate_table_row_field(frm, tableName, rowIndex, fieldName, formula, triggerField) {\n try {\n \n if (!frm.doc[tableName] || !frm.doc[tableName][rowIndex]) {\n return;\n }\n\n const row = frm.doc[tableName][rowIndex];\n const cdt = frm.fields_dict[tableName].grid.doctype;\n const cdn = row.name;\n \n // === ЕДИНАЯ ТОЧКА ОБРАБОТКИ ВСЕХ ФУНКЦИЙ ===\n let finalFormula, reportCalls;\n \n try {\n // Используем transform_expression как единственную точку преобразования\n const transformResult = transform_expression(formula, true, tableName);\n \n if (transformResult) {\n finalFormula = transformResult.transformed;\n reportCalls = transformResult.reportCalls || [];\n } else {\n finalFormula = formula;\n reportCalls = [];\n }\n } catch (transformError) {\n console.error('Ошибка transform_expression:', transformError);\n finalFormula = formula;\n reportCalls = [];\n }\n \n // === ОБРАБОТКА АСИНХРОННЫХ ВЫЗОВОВ ОТЧЕТОВ ===\n if (reportCalls && reportCalls.length > 0) {\n try {\n // Выполняем все асинхронные запросы к отчетам параллельно\n const reportResults = await Promise.all(\n reportCalls.map(call => \n getReportFieldValue(\n frm,\n call.reportName,\n call.filters,\n call.fieldName,\n call.aggregation\n )\n )\n );\n \n // Заменяем плейсхолдеры на реальные значения\n for (let i = 0; i < reportCalls.length; i++) {\n const reportValue = reportResults[i] !== undefined ? Number(reportResults[i]) : 0;\n finalFormula = finalFormula.replace(\n reportCalls[i].placeholder, \n reportValue\n );\n }\n } catch (reportError) {\n console.error('Ошибка получения данных отчетов:', reportError);\n // В случае ошибки заменяем все плейсхолдеры на 0\n for (const call of reportCalls) {\n finalFormula = finalFormula.replace(call.placeholder, 0);\n }\n }\n }\n \n // === ВЫЧИСЛЕНИЕ ФИНАЛЬНОЙ ФОРМУЛЫ ===\n let result = 0;\n try {\n // Создаем функцию с доступом к контексту row и frm\n const evalFunc = new Function('row', 'frm', `return ${finalFormula};`);\n result = evalFunc(row, frm);\n } catch (evalError) {\n console.error('Ошибка вычисления формулы:', evalError, 'Formula:', finalFormula);\n }\n\n if (isNaN(result)) {\n result = 0;\n }\n\n // Устанавливаем вычисленное значение\n frappe.model.set_value(cdt, cdn, fieldName, result);\n\n // Обновляем таблицу\n frm.refresh_field(tableName);\n } catch (err) {\n console.error('Ошибка в calculate_table_row_field:', err);\n }\n}\n\n\n// Функция для получения индекса строки по её имени\nfunction get_row_index(frm, tableName, rowName) {\n \n // Проверяем наличие таблицы\n if (!frm.doc[tableName]) {\n return -1;\n }\n \n // Ищем индекс строки по имени\n for (let i = 0; i < frm.doc[tableName].length; i++) {\n if (frm.doc[tableName][i].name === rowName) {\n return i;\n }\n }\n return -1;\n}", "view": "Form" }, { @@ -1159,10 +1181,10 @@ "doctype": "Client Script", "dt": "Declaration of value added tax", "enabled": 1, - "modified": "2025-02-04 14:01:52.308510", + "modified": "2026-02-04 11:57:11.451580", "module": "Taxes Az", "name": "Declaration of value added tax Evezlesdirilen", - "script": "\r\nfrappe.ui.form.on('Declaration of value added tax', {\r\n onload: function(frm) {\r\n if (!frm.doc.__islocal) return; \r\n\r\n if (!frm.doc.table_zvvh) {\r\n frm.set_value('table_zvvh', []); \r\n }\r\n\r\n const default_rows = [\r\n { göstəricilər: '308. VM 175.1-ci maddəsinə əsasən alınmış elektron qaimə-fakturalar (elektron vergi hesab-fakturalar) üzrə nağdsız qaydada ödənilmiş məbləğ', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '308.1 Gəlirdən birbaşa çıxılmayan kapital xarakterli xərclər üzrə əvəzləşdirilmələr (ƏDV nəzərə alınmadan)', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '309. 01.01.2001-ci il tarixinə olan borcların nağdsız qaydada ödənilmiş məbləği', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '310. İdxalda ƏDV-yə cəlb olunmuş mallara(işlərə,xidmətlərə) görə ödənilmiş məbləğ', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '310.1 Gəlirdən birbaşa çıxılmayan kapital xarakterli xərclər üzrə əvəzləşdirilmələr (ƏDV nəzərə alınmadan)', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '311. İdxalda ƏDV-dən azad olunan mallara(işlərə,xidmətlərə) görə ödənilmiş məbləğ', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '312. Vergi Məcəlləsinin 169.4-cü maddəsinə əsasən qeyri-rezidentə ödənilmiş məbləğ', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '313. Vergi Məcəlləsi 175.2-cü maddəsinə əsasən əvəzləşdirilməsinə yol verilməyən ƏDV məbləği314. Vergi Məcəlləsinin 175.3-cü maddəsinə əsasən əvəzləşdirilməsinə yol verilməyən ƏDV məbləği', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '314. Vergi Məcəlləsinin 175.3-cü maddəsinə əsasən əvəzləşdirilməsinə yol verilməyən ƏDV məbləği', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '315. Vergi Məcəlləsinin 175.4-cü maddəsinə əsasən əvəzləşdirilməsinə yol verilməyən ƏDV məbləği', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '316. ƏDV-yə sıfır(0) faiz dərəcəsi ilə ödənilmiş məbləğ', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '317. Əməliyyatlar üzrə CƏMİ', SahəAdı2: 'Məlumat' },\r\n ];\r\n\r\n default_rows.forEach(row => {\r\n frm.add_child('table_zvvh', row);\r\n });\r\n\r\n frm.refresh_field('table_zvvh'); \r\n }\r\n});", + "script": "\r\nfrappe.ui.form.on('Declaration of value added tax', {\r\n onload: function(frm) {\r\n if (!frm.doc.__islocal) return; \r\n\r\n if (!frm.doc.əvəzləşdirilən_table) {\r\n frm.set_value('əvəzləşdirilən_table', []); \r\n }\r\n\r\n const default_rows = [\r\n { göstəricilər: '308. VM 175.1-ci maddəsinə əsasən alınmış elektron qaimə-fakturalar (elektron vergi hesab-fakturalar) üzrə nağdsız qaydada ödənilmiş məbləğ', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '308.1 Gəlirdən birbaşa çıxılmayan kapital xarakterli xərclər üzrə əvəzləşdirilmələr (ƏDV nəzərə alınmadan)', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '309. 01.01.2001-ci il tarixinə olan borcların nağdsız qaydada ödənilmiş məbləği', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '310. İdxalda ƏDV-yə cəlb olunmuş mallara(işlərə,xidmətlərə) görə ödənilmiş məbləğ', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '310.1 Gəlirdən birbaşa çıxılmayan kapital xarakterli xərclər üzrə əvəzləşdirilmələr (ƏDV nəzərə alınmadan)', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '311. İdxalda ƏDV-dən azad olunan mallara(işlərə,xidmətlərə) görə ödənilmiş məbləğ', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '312. Vergi Məcəlləsinin 169.4-cü maddəsinə əsasən qeyri-rezidentə ödənilmiş məbləğ', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '313. Vergi Məcəlləsi 175.2-cü maddəsinə əsasən əvəzləşdirilməsinə yol verilməyən ƏDV məbləği314. Vergi Məcəlləsinin 175.3-cü maddəsinə əsasən əvəzləşdirilməsinə yol verilməyən ƏDV məbləği', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '314. Vergi Məcəlləsinin 175.3-cü maddəsinə əsasən əvəzləşdirilməsinə yol verilməyən ƏDV məbləği', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '315. Vergi Məcəlləsinin 175.4-cü maddəsinə əsasən əvəzləşdirilməsinə yol verilməyən ƏDV məbləği', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '316. ƏDV-yə sıfır(0) faiz dərəcəsi ilə ödənilmiş məbləğ', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '317. Əməliyyatlar üzrə CƏMİ', SahəAdı2: 'Məlumat' },\r\n ];\r\n\r\n default_rows.forEach(row => {\r\n frm.add_child('əvəzləşdirilən_table', row);\r\n });\r\n\r\n frm.refresh_field('əvəzləşdirilən_table'); \r\n }\r\n});", "view": "Form" }, { @@ -1170,10 +1192,10 @@ "doctype": "Client Script", "dt": "Declaration of value added tax", "enabled": 1, - "modified": "2025-02-06 16:02:44.108865", + "modified": "2026-02-04 11:56:49.240146", "module": "Taxes Az", "name": "Declaration of value added tax Deqiqlesdirilen", - "script": "frappe.ui.form.on('Declaration of value added tax', {\r\n onload: function(frm) {\r\n if (!frm.doc.__islocal) return; \r\n\r\n if (!frm.doc.table_wtjt) {\r\n frm.set_value('table_wtjt', []); \r\n }\r\n\r\n const default_rows = [\r\n { göstəricilər: '318. ƏDV-yə cəlb olunan ARTIRILAN dövriyyələr üzrə ƏDV-nin hesablanması', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '319. ƏDV-yə cəlb olunan AZALDILAN dövriyyələr üzrə ƏDV-nin hesablanması', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '319.1. ƏDV-yə cəlb olunan AZALDILAN dövriyyələr üzrə ƏDV-nin hesablanması', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '319.2. Vergi Məcəlləsinin 165.5-ci maddəsinə əsasən ƏDV-si qaytarılan malların geri qaytarılması halları üzrə ƏDV-nin hesablanması (NAĞD ödənişlər)', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '319.3. Vergi Məcəlləsinin 165.5-ci maddəsinə əsasən ƏDV-si qaytarılan malların geri qaytarılması halları üzrə ƏDV-nin hesablanması (NAĞDSIZ ödənişlər)', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '319.4. Vergi Məcəlləsinin 165.6-cı maddəsinə əsasən ƏDV-si qaytarılan malların geri qaytarılması halları üzrə ƏDV-nin hesablanması (NAĞDSIZ ödənişlər)', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '320. ƏDV-yə sıfır (0) faiz dərəcəsi ilə cəlb olunan əməliyyatlar üzrə ARTIRILAN dövriyyə', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '321. ƏDV-yə sıfır (0) faiz dərəcəsi ilə cəlb olunan əməliyyatlar üzrə AZALDILAN dövriyyə', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '322. ƏDV-dən azad olunan əməliyyatlar üzrə ARTIRILAN dövriyyə', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '323. ƏDV-dən azad olunan əməliyyatlar üzrə AZALDILAN dövriyyə', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '324. Əvəzləşdirilən əməliyyatların AZALDILMASINA görə ƏDV-nin bərpa edilən məbləği', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '325. Əvəzləşdirilən əməliyyatların ARTIRILMASINA görə artırılan hissə üçün ƏDV-nin əvəzləşdirilən məbləği', SahəAdı2: 'Məlumat' },\r\n ];\r\n\r\n default_rows.forEach(row => {\r\n frm.add_child('table_wtjt', row);\r\n });\r\n\r\n frm.refresh_field('table_wtjt'); \r\n }\r\n});", + "script": "frappe.ui.form.on('Declaration of value added tax', {\r\n onload: function(frm) {\r\n if (!frm.doc.__islocal) return; \r\n\r\n if (!frm.doc.dəqiqləşdirilən_table) {\r\n frm.set_value('dəqiqləşdirilən_table', []); \r\n }\r\n\r\n const default_rows = [\r\n { göstəricilər: '318. ƏDV-yə cəlb olunan ARTIRILAN dövriyyələr üzrə ƏDV-nin hesablanması', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '319. ƏDV-yə cəlb olunan AZALDILAN dövriyyələr üzrə ƏDV-nin hesablanması', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '319.1. ƏDV-yə cəlb olunan AZALDILAN dövriyyələr üzrə ƏDV-nin hesablanması', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '319.2. Vergi Məcəlləsinin 165.5-ci maddəsinə əsasən ƏDV-si qaytarılan malların geri qaytarılması halları üzrə ƏDV-nin hesablanması (NAĞD ödənişlər)', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '319.3. Vergi Məcəlləsinin 165.5-ci maddəsinə əsasən ƏDV-si qaytarılan malların geri qaytarılması halları üzrə ƏDV-nin hesablanması (NAĞDSIZ ödənişlər)', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '319.4. Vergi Məcəlləsinin 165.6-cı maddəsinə əsasən ƏDV-si qaytarılan malların geri qaytarılması halları üzrə ƏDV-nin hesablanması (NAĞDSIZ ödənişlər)', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '320. ƏDV-yə sıfır (0) faiz dərəcəsi ilə cəlb olunan əməliyyatlar üzrə ARTIRILAN dövriyyə', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '321. ƏDV-yə sıfır (0) faiz dərəcəsi ilə cəlb olunan əməliyyatlar üzrə AZALDILAN dövriyyə', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '322. ƏDV-dən azad olunan əməliyyatlar üzrə ARTIRILAN dövriyyə', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '323. ƏDV-dən azad olunan əməliyyatlar üzrə AZALDILAN dövriyyə', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '324. Əvəzləşdirilən əməliyyatların AZALDILMASINA görə ƏDV-nin bərpa edilən məbləği', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '325. Əvəzləşdirilən əməliyyatların ARTIRILMASINA görə artırılan hissə üçün ƏDV-nin əvəzləşdirilən məbləği', SahəAdı2: 'Məlumat' },\r\n ];\r\n\r\n default_rows.forEach(row => {\r\n frm.add_child('dəqiqləşdirilən_table', row);\r\n });\r\n\r\n frm.refresh_field('dəqiqləşdirilən_table'); \r\n }\r\n});", "view": "Form" }, { @@ -1181,10 +1203,10 @@ "doctype": "Client Script", "dt": "Declaration of value added tax", "enabled": 1, - "modified": "2025-02-06 16:04:42.114333", + "modified": "2026-02-04 11:56:21.738317", "module": "Taxes Az", "name": "Declaration of value added tax Hesablasmalar", - "script": "frappe.ui.form.on('Declaration of value added tax', {\r\n onload: function(frm) {\r\n if (!frm.doc.__islocal) return; \r\n\r\n if (!frm.doc.table_kyya) {\r\n frm.set_value('table_kyya', []); \r\n }\r\n\r\n const default_rows = [\r\n { göstəricilər: '326. Büdcəyə ödənilməlidir', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '327. Büdcədən qaytarılır', SahəAdı2: 'Məlumat' },\r\n ];\r\n\r\n default_rows.forEach(row => {\r\n frm.add_child('table_kyya', row);\r\n });\r\n\r\n frm.refresh_field('table_kyya'); \r\n }\r\n});", + "script": "frappe.ui.form.on('Declaration of value added tax', {\r\n onload: function(frm) {\r\n if (!frm.doc.__islocal) return; \r\n\r\n if (!frm.doc.hesablaşmalar_table) {\r\n frm.set_value('hesablaşmalar_table', []); \r\n }\r\n\r\n const default_rows = [\r\n { göstəricilər: '326. Büdcəyə ödənilməlidir', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '327. Büdcədən qaytarılır', SahəAdı2: 'Məlumat' },\r\n ];\r\n\r\n default_rows.forEach(row => {\r\n frm.add_child('hesablaşmalar_table', row);\r\n });\r\n\r\n frm.refresh_field('hesablaşmalar_table'); \r\n }\r\n});", "view": "Form" }, { @@ -1192,10 +1214,10 @@ "doctype": "Client Script", "dt": "Declaration of value added tax", "enabled": 1, - "modified": "2025-02-06 16:07:56.296777", + "modified": "2026-02-04 11:54:54.233012", "module": "Taxes Az", "name": "Declaration of value added tax Elave1 Cari hesabat 2", - "script": "frappe.ui.form.on('Declaration of value added tax', {\r\n onload: function(frm) {\r\n if (!frm.doc.__islocal) return; \r\n\r\n if (!frm.doc.table_rsid) {\r\n frm.set_value('table_rsid', []); \r\n }\r\n\r\n const default_rows = [\r\n { göstəricilər: 'Cari hesabat dövründə əldə edilmiş Yük Gömrük Bəyannaməsi üzrə alınmış malın ƏDV-siz ümumi dəyəri və ƏDV məbləğlərinin CƏMİ', SahəAdı2: 'Məlumat' },\r\n ];\r\n\r\n default_rows.forEach(row => {\r\n frm.add_child('table_rsid', row);\r\n });\r\n\r\n frm.refresh_field('table_rsid'); \r\n }\r\n});", + "script": "frappe.ui.form.on('Declaration of value added tax', {\r\n onload: function(frm) {\r\n if (!frm.doc.__islocal) return; \r\n\r\n if (!frm.doc.əlavə_1_2) {\r\n frm.set_value('əlavə_1_2', []); \r\n }\r\n\r\n const default_rows = [\r\n { göstəricilər: 'Cari hesabat dövründə əldə edilmiş Yük Gömrük Bəyannaməsi üzrə alınmış malın ƏDV-siz ümumi dəyəri və ƏDV məbləğlərinin CƏMİ', SahəAdı2: 'Məlumat' },\r\n ];\r\n\r\n default_rows.forEach(row => {\r\n frm.add_child('əlavə_1_2', row);\r\n });\r\n\r\n frm.refresh_field('əlavə_1_2'); \r\n }\r\n});", "view": "Form" }, { @@ -1214,10 +1236,10 @@ "doctype": "Client Script", "dt": "Declaration of value added tax", "enabled": 1, - "modified": "2025-02-06 16:22:46.575761", + "modified": "2026-02-04 11:59:08.762718", "module": "Taxes Az", "name": "Declaration of value added tax Elave3 2ci", - "script": "frappe.ui.form.on('Declaration of value added tax', {\r\n onload: function(frm) {\r\n if (!frm.doc.__islocal) return; \r\n\r\n if (!frm.doc.table_pycw) {\r\n frm.set_value('table_pycw', []); \r\n }\r\n\r\n const default_rows = [\r\n { göstəricilər: '328. VM-nin 159.2-ci maddəsinə əsasən bu Məcəllənin 167-ci və 168-ci maddələrinə uyğun olaraq Azərbaycan Respublikasının hüdudlarından kənarda malların təqdim edilməsi, xidmətlərin göstərilməsi və işlər görülməsi üzrə əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '329. VM-nin 159.5-ci maddəsinə əsasən fövqəladə hallarda, qanunvericiliklə müəyyən edilmiş təbii itki normaları daxilində zayolmadan əmələ gələn itkilər, təbii itki normaları daxilində xarabolmalar və bu kimi əskikgəlmələr üzrə məbləğ', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '330. Vergi Məcəlləsinin 159.7-ci maddəsinə əsasən vergiyə cəlb olunmayan əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '331. Vergi Məcəlləsinin 160-cı maddəsinə əsasən vergiyə cəlb edilməyən əməliyyatlar, o cümlədən müəssisənin təqdim edilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '332. Müstəqil sahibkarlıq fəaliyyəti çərçivəsində malların göndərilməsi, işlərin görülməsi və xidmətlərin göstərilməsi sayılmayan əməliyyatlar üzrə', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '333. Rüsumsuz ticarət mağazalarında (Duty-Free) malların təqdim edilməsi və xidmətlərin göstərilməsi üzrə əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '334. Qeyri-sahibkarlıq fəaliyyəti üzrə əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '335. Pul vəsaitləri üzrə əməliyyatlar (maliyyə xidmətləri istisna olmaqla)', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '336. Torpaq sahələrinin təqdim edilməsi üzrə əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n ];\r\n\r\n default_rows.forEach(row => {\r\n frm.add_child('table_pycw', row);\r\n });\r\n\r\n frm.refresh_field('table_pycw'); \r\n }\r\n});", + "script": "frappe.ui.form.on('Declaration of value added tax', {\r\n onload: function(frm) {\r\n if (!frm.doc.__islocal) return; \r\n\r\n if (!frm.doc.əlavə_3_2) {\r\n frm.set_value('əlavə_3_2', []); \r\n }\r\n\r\n const default_rows = [\r\n { göstəricilər: '328. VM-nin 159.2-ci maddəsinə əsasən bu Məcəllənin 167-ci və 168-ci maddələrinə uyğun olaraq Azərbaycan Respublikasının hüdudlarından kənarda malların təqdim edilməsi, xidmətlərin göstərilməsi və işlər görülməsi üzrə əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '329. VM-nin 159.5-ci maddəsinə əsasən fövqəladə hallarda, qanunvericiliklə müəyyən edilmiş təbii itki normaları daxilində zayolmadan əmələ gələn itkilər, təbii itki normaları daxilində xarabolmalar və bu kimi əskikgəlmələr üzrə məbləğ', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '330. Vergi Məcəlləsinin 159.7-ci maddəsinə əsasən vergiyə cəlb olunmayan əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '331. Vergi Məcəlləsinin 160-cı maddəsinə əsasən vergiyə cəlb edilməyən əməliyyatlar, o cümlədən müəssisənin təqdim edilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '332. Müstəqil sahibkarlıq fəaliyyəti çərçivəsində malların göndərilməsi, işlərin görülməsi və xidmətlərin göstərilməsi sayılmayan əməliyyatlar üzrə', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '333. Rüsumsuz ticarət mağazalarında (Duty-Free) malların təqdim edilməsi və xidmətlərin göstərilməsi üzrə əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '334. Qeyri-sahibkarlıq fəaliyyəti üzrə əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '335. Pul vəsaitləri üzrə əməliyyatlar (maliyyə xidmətləri istisna olmaqla)', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '336. Torpaq sahələrinin təqdim edilməsi üzrə əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n ];\r\n\r\n default_rows.forEach(row => {\r\n frm.add_child('əlavə_3_2', row);\r\n });\r\n\r\n frm.refresh_field('əlavə_3_2'); \r\n }\r\n});", "view": "Form" }, { @@ -1225,10 +1247,10 @@ "doctype": "Client Script", "dt": "Declaration of value added tax", "enabled": 1, - "modified": "2025-02-06 16:28:01.423534", + "modified": "2026-02-04 21:52:33.406826", "module": "Taxes Az", "name": "Declaration of value added tax Elave 4", - "script": "frappe.ui.form.on('Declaration of value added tax', {\r\n onload: function(frm) {\r\n if (!frm.doc.__islocal) return; \r\n\r\n if (!frm.doc.table_hnwx) {\r\n frm.set_value('table_hnwx', []); \r\n }\r\n\r\n const default_rows = [\r\n { göstəricilər: '302. ƏDV-yə sıfır(0) dərəcə ilə cəlb edilən əməliyyatların məbləği CƏMİ', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '302.1 VM-nin 165.1.1-ci maddəsinə əsasən Azərbaycan Respublikasında akkreditə edilmiş beynəlxalq təşkilatların və xarici ölkələrin diplomatik və konsulluq nümayəndəliklərinin rəsmi istifadəsi, həmçinin, bu nümayəndəliklərin müvafiq statuslu Azərbaycan Respublikasının vətəndaşı olmayan diplomatik və inzibati-texniki işçilərinin, o cümlədən onlarla yaşayan ailə üzvlərinin şəxsi istifadəsi üçün nəzərdə tutulan mallar və xidmətlər', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '302.2 VM-nin 165.1.2-ci maddəsinə əsasən qrant müqaviləsi (qərarı) əsasında xaricdən alınan qrantlar hesabına malların idxalı, qrant üzrə resipiyentlərə malların təqdim edilməsi, işlərin görülməsi və xidmətlərin göstərilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '302.3 VM-nin 165.1.3-cü maddəsinə əsasən aparılan əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '302.3.1. VM-nin 165.1.3-cü maddəsinə əsasən malların ixracı üzrə aparılmış əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '302.3.2. VM-nin 165.1.3-cü maddəsinə əsasən bu Məcəllənin 168.1.5-ci maddəsində göstərilmiş xidmətlərin ixracı üzrə aparılmış əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '302.4 VM-nin 165.1.4-cü maddəsinə əsasən beynəlxalq poçt xidmətləri istisna olmaqla, beynəlxalq və tranzit yük və sərnişin daşınması, habelə tranzit yük daşınması ilə bilavasitə bağlı yük aşırılma xidməti. Beynəlxalq və tranzit uçuşlarla bilavasitə bağlı olan işlərin görülməsi, xidmətlərin göstərilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '302.5 VM-nin 165.1.5-ci maddəsinə əsasən Azərbaycan Respublikasının Mərkəzi Bankına qızıl və digər qiymətlilərin göndərilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '302.6 Qanunla təsdiq olunmuş hasilatın pay bölgüsü haqqında, əsas boru kəməri haqqında və digər bu qəbildən olan sazişlərdə və ya qanunlarda, o cümlədən neft və qaz haqqında, ixrac məqsədli neft-qaz fəaliyyəti haqqında qanunlar çərçivəsində aparılan əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '302.6.1 o cümlədən əvvəlcədən alınmış ödənişlər', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '302.7 Təqdim ediləcək malların (işlərin, xidmətlərin) hesabına əvvəlcədən alınmış ödənişlər üzrə', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '302.8 Vergi Məcəlləsinin 165.1.9-cu maddəsinə əsasən aparılan əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '302.9 Vergi Məcəlləsinin 165.1.10-cu maddəsinə əsasən müəssisənin nizamnamə fonduna (kapitalına) pay şəklində əsas vəsaitin qoyulması (əsas vəsaitin pay şəklində qoyuluşu, onun müqabilində bilavasitə digər əmlakın əldə edilməsi ilə əlaqədar olmadıqda)əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '302.10 Xüsusi iqtisadi zonalar haqqında qanunlar çərçivəsində aparılan əməliyyatlar üzrə', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '302.11 Azərbaycan Respublikasının tərəfdar çıxdığı beynəlxalq müqavilələr üzrə', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '302-1 Elektron ticarət üzrə ƏDV-yə sıfır (0) dərəcə ilə cəlb edilən əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '302-2 Pərakəndə ticarət üzrə ƏDV-yə sıfır (0) dərəcə ilə cəlb edilən əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '302-3 Topdan ticarət üzrə ƏDV-yə sıfır (0) dərəcə ilə cəlb edilən əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n ];\r\n\r\n default_rows.forEach(row => {\r\n frm.add_child('table_hnwx', row);\r\n });\r\n\r\n frm.refresh_field('table_hnwx'); \r\n }\r\n});", + "script": "frappe.ui.form.on('Declaration of value added tax', {\r\n onload: function(frm) {\r\n if (!frm.doc.__islocal) return; \r\n\r\n if (!frm.doc.əlavə_4) {\r\n frm.set_value('əlavə_4', []); \r\n }\r\n\r\n const default_rows = [\r\n { göstəricilər: '302. ƏDV-yə sıfır(0) dərəcə ilə cəlb edilən əməliyyatların məbləği CƏMİ', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '302.1 VM-nin 165.1.1-ci maddəsinə əsasən Azərbaycan Respublikasında akkreditə edilmiş beynəlxalq təşkilatların və xarici ölkələrin diplomatik və konsulluq nümayəndəliklərinin rəsmi istifadəsi, həmçinin, bu nümayəndəliklərin müvafiq statuslu Azərbaycan Respublikasının vətəndaşı olmayan diplomatik və inzibati-texniki işçilərinin, o cümlədən onlarla yaşayan ailə üzvlərinin şəxsi istifadəsi üçün nəzərdə tutulan mallar və xidmətlər', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '302.2 VM-nin 165.1.2-ci maddəsinə əsasən qrant müqaviləsi (qərarı) əsasında xaricdən alınan qrantlar hesabına malların idxalı, qrant üzrə resipiyentlərə malların təqdim edilməsi, işlərin görülməsi və xidmətlərin göstərilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '302.3 VM-nin 165.1.3-cü maddəsinə əsasən aparılan əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '302.3.1. VM-nin 165.1.3-cü maddəsinə əsasən malların ixracı üzrə aparılmış əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '302.3.2. VM-nin 165.1.3-cü maddəsinə əsasən bu Məcəllənin 168.1.5-ci maddəsində göstərilmiş xidmətlərin ixracı üzrə aparılmış əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '302.4 VM-nin 165.1.4-cü maddəsinə əsasən beynəlxalq poçt xidmətləri istisna olmaqla, beynəlxalq və tranzit yük və sərnişin daşınması, habelə tranzit yük daşınması ilə bilavasitə bağlı yük aşırılma xidməti. Beynəlxalq və tranzit uçuşlarla bilavasitə bağlı olan işlərin görülməsi, xidmətlərin göstərilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '302.5 VM-nin 165.1.5-ci maddəsinə əsasən Azərbaycan Respublikasının Mərkəzi Bankına qızıl və digər qiymətlilərin göndərilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '302.6 Qanunla təsdiq olunmuş hasilatın pay bölgüsü haqqında, əsas boru kəməri haqqında və digər bu qəbildən olan sazişlərdə və ya qanunlarda, o cümlədən neft və qaz haqqında, ixrac məqsədli neft-qaz fəaliyyəti haqqında qanunlar çərçivəsində aparılan əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '302.6.1 o cümlədən əvvəlcədən alınmış ödənişlər', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '302.7 Təqdim ediləcək malların (işlərin, xidmətlərin) hesabına əvvəlcədən alınmış ödənişlər üzrə', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '302.8 Vergi Məcəlləsinin 165.1.9-cu maddəsinə əsasən aparılan əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '302.9 Vergi Məcəlləsinin 165.1.10-cu maddəsinə əsasən müəssisənin nizamnamə fonduna (kapitalına) pay şəklində əsas vəsaitin qoyulması (əsas vəsaitin pay şəklində qoyuluşu, onun müqabilində bilavasitə digər əmlakın əldə edilməsi ilə əlaqədar olmadıqda)əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '302.10\tVergi Məcəlləsinin 165.1.11-ci maddəsinə əsasən aparılan əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '302.11\tXüsusi iqtisadi zonalar haqqında qanunlar çərçivəsində aparılan əməliyyatlar üzrə', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '302.12 Azərbaycan Respublikasının tərəfdar çıxdığı beynəlxalq müqavilələr üzrə', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '302-1 Elektron ticarət üzrə ƏDV-yə sıfır (0) dərəcə ilə cəlb edilən əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '302-2 Pərakəndə ticarət üzrə ƏDV-yə sıfır (0) dərəcə ilə cəlb edilən əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '302-3 Topdan ticarət üzrə ƏDV-yə sıfır (0) dərəcə ilə cəlb edilən əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n ];\r\n\r\n default_rows.forEach(row => {\r\n frm.add_child('əlavə_4', row);\r\n });\r\n\r\n frm.refresh_field('əlavə_4'); \r\n }\r\n});", "view": "Form" }, { @@ -1236,10 +1258,10 @@ "doctype": "Client Script", "dt": "Declaration of value added tax", "enabled": 1, - "modified": "2025-02-06 16:43:13.470379", + "modified": "2026-02-04 22:20:42.433622", "module": "Taxes Az", "name": "Declaration of value added tax Elave 5", - "script": "frappe.ui.form.on('Declaration of value added tax', {\r\n onload: function(frm) {\r\n if (!frm.doc.__islocal) return; \r\n\r\n if (!frm.doc.table_bchc) {\r\n frm.set_value('table_bchc', []); \r\n }\r\n\r\n const default_rows = [\r\n { göstəricilər: '303. ƏDV-dən azad olunan əməliyyatların məbləği CƏMİ', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.1 VM-nin 164.1.1-ci maddəsinə əsasən özəlləşdirilmə qaydasında dövlət müəssisəsindən satın alınan əmlakın dəyəri, habelə dövlət əmlakının icarəyə verilməsindən alınan icarə haqqının büdcəyə ödənilməli olan hissəsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.2 VM-nin 164.1.2-ci maddəsinə əsasən maliyyə xidmətlərinin göstərilməsi, o cümlədən maliyyə lizinqi əməliyyatları üzrə ödənilən faizlər', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.3 VM-nin 164.1.3-cü maddəsinə əsasən milli və ya xarici valyutanın (numizmatika məqsədlərindən başqa), həmçinin qiymətli kağızların göndərilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.4 VM-nin VM-nin 164.1.5-ci maddəsinə əsasən idxal olunan əmlak istisna olmaqla müəssisənin nizamnamə fonduna (kapitalına) pay şəklində hər hansı əmlakın (əsas vəsaitlər istisna olmaqla) qoyulması (əmlakın pay şəklində qoyuluşu, onun müqabilində bilavasitə digər əmlakın əldə edilməsi ilə əlaqədar olmadıqda)', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.5 VM-nin 164.1.6-cı maddəsinə əsasən tutulan məbləğlər hədlərində dövlət hakimiyyəti, yerli özünü idarəetmə və digər səlahiyyətli orqanların tutduğu dövlət rüsumu, icazə haqları, yığımlar, xüsusi notariusların aldığı haqlar (notariat hərəkətlərinin aparılmasına və notariat hərəkətləri ilə əlaqədar göstərilən xidmətə görə) və onların tutulması müqabilində göstərdiyi xidmətlər', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.6 VM-nin 164.1.7-ci maddəsinə əsasən siyahısı Azərbaycan Respublikasının Nazirlər Kabineti tərəfindən təsdiq edilən media məhsullarının və kitabların (elektron kitablar istisna olmaqla), habelə dərslik komplektlərinin idxalı və satışı, həmin malların (məhsulların) istehsalı (nəşri) ilə bağlı rulon və ya vərəqə şəklində kağızın idxalı və satışı', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.7 VM-nin 164.1.8-ci maddəsinə əsasən mətbu media məhsullarının və kitabların (o cümlədən elektron kitabların), habelə dərslik komplektlərinin istehsalı ilə bağlı redaksiya, nəşriyyat və poliqrafiya fəaliyyəti (reklam xidmətləri istisna olmaqla)', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.8 VM-nin 164.1.9-cu maddəsinə əsasən dəfn və qəbiristanlığın mərasim xidmətləri', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.9 VM-nin 164.1.10-cu maddəsinə əsasən Azərbaycan Respublikasının Dövlət Neft Fondunun qanunvericiliklə nəzərdə tutulmuş vəzifələrinin yerinə yetirilməsi ilə bağlı mal idxalı, iş görülməsi və xidmət göstərilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.10 VM-nin 164.1.11-ci maddəsinə əsasən Azərbaycan Respublikasına, o cümlədən onu təmsil edən hüquqi şəxslərə neft-qaz ehtiyatlarının kəşfiyyatı, işlənməsi və hasilatın pay bölgüsü, ixrac boru kəmərləri haqqında və bu qəbildən olan digər sazişlərə uyğun olaraq verilməsi nəzərdə tutulan əsas fondların, daşınan əmlakın və digər aktivlərin Azərbaycan Respublikası Dövlət Neft Fonduna və ya Azərbaycan Respublikasını təmsil edən tərəfə hər hansı şəkildə təqdim edilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.11 VM-nin 164.1.12-ci maddəsinə əsasən metropolitenlə sərnişindaşıma xidmətləri', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.12 VM-nin 164.1.13-cü maddəsinə əsasən ödənişli təhsil xidmətlərinin göstərilməsi (digər fəaliyyətləri ilə bağlı xidmətlərin göstərilməsi istisna olmaqla)', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.13 VM-nin 164.1.14-cü maddəsinə əsasən Vergi Məcəllənin 106.1.9-106.1.11-ci maddələri ilə müəyyən olunan aktivlərin dəyəri və onların hər hansı şəkildə təqdim olunması üzrə əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.14 VM-nin 164.1.17-ci maddəsinə əsasən hüquqi şəxsin iştirak paylarının və ya səhmlərinin təqdim edilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.15 VM-nin 164.1.18-ci maddəsinə əsasən kənd təsərrüfatı məhsullarının istehsalçıları (o cümlədən, sənaye üsulu ilə) tərəfindən özlərinin istehsal etdikləri kənd təsərrüfatı məhsullarının satışı üzrə dövriyyələr', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.16 VM-nin 164.1.27-ci maddəsinə əsasən buğdanın idxalı və satışı, buğda ununun və çörəyin istehsalı və satışı', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.17 VM-nin 164.1.29-cu maddəsinə əsasən damazlıq heyvanların idxalı və satış', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.18 VM-nin 164.1.30-cu maddəsinə əsasən toxum və tinglərin idxalı və satışı', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.19 VM-nin 164.1.31-ci maddəsinə əsasən siyahısı müvafiq icra hakimiyyəti orqanının müəyyən etdiyi orqan (qurum) tərəfindən təsdiq edilən mineral gübrələrin, pestisidlərin idxalı və satışı', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.20 VM-nin 164.1.32-ci maddəsinə əsasən toxumların yetişdirilməsi, quşçuluq və arıçılıq üçün avadanlıqların, o cümlədən laboratoriya avadanlıqlarının, toxum, taxıl və quru paxlalı bitkilərin təmizlənməsi, çeşidlənməsi və ya kalibrlənməsi üçün maşınların idxalı və satışı', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.21 VM-nin 164.1.34-cü maddəsinə əsasən siyahısı Azərbaycan Respublikasının Nazirlər Kabineti tərəfindən təsdiq olunmuş bilavasitə kənd təsərrüfatı təyinatlı suvarma və digər qurğuların, maşınların, avadanlıqların və texnikaların, habelə kənd təsərrüfatı texnikasının ehtiyat hissələrinin istehsalı, idxalı və satışı', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.22 VM-nin 164.1.36-cı maddəsinə əsasən ödəmə qabiliyyətini itirmiş bankların restrukturizasiya və sağlamlaşdırma tədbirləri çərçivəsində müvafiq icra hakimiyyəti orqanının müəyyən etdiyi qaydada qeyri-işlək (toksik) aktivlərin təqdim edilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.23 VM-nin 164.1.37-ci maddəsinə əsasən heyvan və quş ətinin satışı', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.24 VM-nin 164.1.42-ci maddəsinə əsasən “Məşğulluq haqqında” Azərbaycan Respublikasının Qanununa uyğun olaraq müvafiq icra hakimiyyəti orqanının müəyyən etdiyi orqan (qurum) tərəfindən haqqı ödənilən ictimai işlərin təşkili ilə əlaqədar işçi qüvvəsinin təqdim edilməsi üzrə əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.25 VM-nin 164.1.43-cü maddəsinə əsasən kəpəyin istehsalı və satışı', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.26 VM-nin 164.1.44-cü maddəsinə əsasən Azərbaycan Futbol Federasiyaları Assosiasiyası tərəfindən verilmiş təsdiqedici sənəd əsasında Azərbaycan Respublikasında keçirilən UEFA 2019 Avropa Liqasının final oyunu ilə əlaqədar UEFA, onun yaratdığı qeyri-rezident hüquqi şəxslər və qeyri-rezident futbol klubları (assosiasiyaları) tərəfindən həmin oyunla bağlı malların təqdim edilməsi, işlər görülməsi və xidmətlər göstərilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.27 VM-nin 164.1.45-ci maddəsinə əsasən Azərbaycan Futbol Federasiyaları Assosiasiyası tərəfindən verilmiş təsdiqedici sənəd əsasında Azərbaycan Respublikasında keçirilən UEFA 2020 Futbol çempionatı ilə əlaqədar UEFA, onu təmsil edən, habelə onun yaratdığı və tərəfindən səlahiyyətləndirilmiş hüquqi şəxslər tərəfindən çempionatla bağlı malların təqdim edilməsi, işlər görülməsi və xidmətlər göstərilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.28 VM-nin 164.1.46-cı maddəsinə əsasən siyahısı Azərbaycan Respublikasının Nazirlər Kabineti tərəfindən təsdiq edilən yem və yem əlavələrinin satışı üzrə dövriyyələr', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.29 VM-nin 164.1.47-ci maddəsinə əsasən bina tikintisi fəaliyyəti ilə məşğul olan şəxslər tərəfindən tikilən binanın yaşayış sahəsinin dövlətə ayrılan hissəsi üzrə dövriyyələr', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.30 VM-nin 164.1.48-ci maddəsinə əsasən siyahısı müvafiq icra hakimiyyəti orqanının müəyyən etdiyi orqan (qurum) (Prezident) tərəfindən təsdiq edilən dövlət adından yaradılan publik hüquqi şəxslər tərəfindən nizamnaməsində nəzərdə tutulan və ona həvalə edilən vəzifələrin yerinə yetirilməsi üçün büdcə qanunvericiliyinə uyğun olaraq dövlət büdcəsindən ayrılmış vəsait hesabına Maliyyə Nazirliyi ilə bağlanılmış müqavilə əsasında işlərin və xidmətlərin göstərilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.31 VM-nin 164.1.49-cu maddəsinə əsasən Azərbaycan Respublikasında keçirilən Formula 1 və Formula 2 yarışları ilə bağlı Gənclər və İdman Nazirliyi ilə bağlanılmış müqavilə əsasında mal, iş və xidmətin təqdim edilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.32 VM-nin 164.1.50-ci maddəsinə əsasən Azərbaycan Respublikasında daimi nümayəndəlik yaratmayan qeyri-rezident şəxslərin mülki aviasiya fəaliyyəti çərçivəsində hava gəmilərinin və hava gəmilərinin mühərriklərinin rezident hüquqi şəxslərə icarəyə və ya lizinqə verilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.33 VM-nin 164.1.51-ci maddəsinə əsasən “Tibbi sığorta haqqında” Azərbaycan Respublikasının Qanununa uyğun olaraq icbari tibbi sığorta fondunun, habelə siyahısı müvafiq icra hakimiyyəti orqanının müəyyən etdiyi orqan (qurum) tərəfindən təsdiq edilən ictimai və sosial məqsədlər üçün yaradılmış fondların vəsaiti hesabına tibbi xidmətlərin göstərilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.34 VM-nin 164.1.55-ci maddəsinə əsasən külçə, sikkə və ya qranul şəklində qızılın və gümüşün satışı', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.35 VM-nin 164.1.34-1-ci maddəsinə əsasən kənd təsərrüfatı texnikalarının mülkiyyət hüququnun keçməməsi şərtilə kənd təsərrüfatı istehsalçılarına lizinqə (icarəyə) verilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.36 VM-nin 164.1.34-2-ci maddəsinə əsasən kənd təsərrüfatı məhsullarının istehsalçılarına aqrotexniki xidmətlərin göstərilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.37 VM-nin 164.1.41-ci maddəsinə əsasən yalnız elektrik mühərriki ilə işləyən avtomobillərin satışı', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.38 VM-nin 164.1.41-1-ci maddəsinə əsasən istehsal tarixi 3 ildən və mühərrikinin həcmi 2500 kubsantimetrdən çox olmayan hibrid avtomobillərin satışı', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.39 VM-nin 164.1.41-2-ci maddəsinə əsasən Elektrik mühərriki ilə işləyən avtomobillər üçün ikinci və üçüncü səviyyə elektrik enerji doldurucularının satışı', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.40 VM-nin 164.1.57-ci maddəsinə əsasən lotereya biletlərinin satıcısı ilə bağlanmış müqavilə əsasında və ya onun tapşırığı əsasında lotereya biletlərinin bütün mərhələlərdə agent qaydasında satışının həyata keçirilməsi üzrə xidmətlərin göstərilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.41 Təqdim ediləcək malların (işlərin, xidmətlərin) hesabına əvvəlcədən alınmış ödənişləri', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.42 Azərbaycan Respublikasının tərəfdar çıxdığı beynəlxalq müqavilələr üzrə', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.43 VM-nin 164.1.10-1-ci maddəsinə əsasən yaşayış sahələrini satmaq öhdəliyi ilə kirayəyə vermə sahəsində fəaliyyət göstərən müvafiq icra hakimiyyəti orqanının müəyyən etdiyi orqan (qurum) tərəfindən yaşayış sahələrinin kirayəçilərə təqdim edilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.44 VM-nin 164.1.58-ci maddəsinə əsasən özəl baytarlıq xidmətlərinin göstərilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.45 VM-nin 164.1.59-cu maddəsinə əsasən vəkillər və vəkil qurumları tərəfindən order markasının əldə edilməsi ilə bağlı Azərbaycan Respublikasının Vəkillər Kollegiyasına edilən ödənişlər', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.46 VM-nin 164.1.8-1-ci maddəsinə əsasən media subyektləri (audiovizual media subyektləri istisna olmaqla) tərəfindən istehsal olunan media məhsullarının təqdim edilməsi, habelə Azərbaycan Respublikasında daimi nümayəndəlik yaratmayan qeyri-rezident şəxslər tərəfindən media subyektlərinə (audiovizual media subyektləri istisna olmaqla) media fəaliyyəti ilə bilavasitə bağlı olan işlərin görülməsi və xidmətlərin göstərilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.47 VM-nin 164.1.41-3-cü maddəsinə əsasən Azərbaycan Respublikasının ərazisində istehsal olunan minik avtomobillərinin satışı', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.48 VM-nin 164.1.56-1-ci maddəsinə əsasən Azərbaycan Respublikasının Minatəmizləmə Agentliyinin təsdiqedici sənədi əsasında Azərbaycan Respublikasının işğaldan azad edilmiş ərazilərinin, habelə müharibə və hərbi əməliyyatların təsirinə məruz qalmış digər ərazilərin minalardan və partlamamış hərbi sursatdan, tərkibində partlayıcı olan qurğulardan və digər partlayıcı qalıqlardan təmizlənməsi çərçivəsində bütün növ texnikanın, avadanlıqların, texniki vasitələrin və qurğuların, onların ehtiyat hissələrinin, fərdi zirehli qoruyucu geyimlərin, alətlərin, partlayıcı və pirotexniki vasitələrin istehsalı və satışı', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.49 VM-nin 164.19-cu maddəsinə əsasən müdafiə təyinatlı məmulatların yaradılması və istehsalı fəaliyyətini həyata keçirən şəxslər tərəfindən bu məqsədlə Azərbaycan Respublikasının Müdafiə Sənayesi Nazirliyinin təsdiqedici sənədi əsasında texnologiyaların, avadanlıqların, dəstləşdirici hissələrin və xammalın idxalı və həmin şəxslər tərəfindən istehsal edilmiş müdafiə təyinatlı məmulatların satışı', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.50 VM-nin 164.19-1-ci maddəsinə əsasən müvafiq icra hakimiyyəti orqanının müəyyən etdiyi orqan (qurum) tərəfindən verilmiş təsdiqedici sənəd əsasında müdafiə və dövlət təhlükəsizliyi məqsədləri üçün istifadə olunan bütün növ texnika və texniki vasitələrin, onların ehtiyat hissələrinin, xüsusi proqram təminatlarının və silah-sursatın idxalı və satışı', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.51 VM-nin 164.1.2-1-ci maddəsinə əsasən ƏDV-dən azad olunan, yaxud ƏDV-yə cəlb edilməyən əməliyyatlar çərçivəsində əldə edilmiş aktivlərin (əsas vəsaitlərin) maliyyə lizinqi müqaviləsi üzrə təqdim edilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.52 VM-nin 164.1.9-1-ci maddəsinə əsasən müvafiq icra hakimiyyəti orqanının müəyyən etdiyi orqan (qurum) tərəfindən verilmiş təsdiqedici sənəd əsasında müdafiə və dövlət təhlükəsizliyi məqsədləri üçün istifadə olunan bütün növ texnika və texniki vasitələrin, onların ehtiyat hissələrinin, xüsusi proqram təminatlarının və silah-sursatın idxalı və satışı', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.53 VM-nin 164.1.51-1-ci maddəsinə əsasən tədris bazası kimi fəaliyyət göstərən tibb müəssisələrində tibbi xidmətlərin göstərilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.54 Xüsusi iqtisadi zonalar haqqında qanunlar çərçivəsində aparılan əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303-1 Elektron ticarət üzrə ƏDV-dən azad olunan əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303-2 Pərakəndə ticarət üzrə ƏDV-dən azad olunan əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303-3 Topdan ticarət üzrə ƏDV-dən azad olunan əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n ];\r\n\r\n default_rows.forEach(row => {\r\n frm.add_child('table_bchc', row);\r\n });\r\n\r\n frm.refresh_field('table_bchc'); \r\n }\r\n});", + "script": "frappe.ui.form.on('Declaration of value added tax', {\r\n onload: function(frm) {\r\n if (!frm.doc.__islocal) return; \r\n\r\n if (!frm.doc.əlavə_5) {\r\n frm.set_value('əlavə_5', []); \r\n }\r\n\r\n const default_rows = [\r\n { göstəricilər: '303. ƏDV-dən azad olunan əməliyyatların məbləği CƏMİ', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.1 VM-nin 164.1.1-ci maddəsinə əsasən özəlləşdirilmə qaydasında dövlət müəssisəsindən satın alınan əmlakın dəyəri, habelə dövlət əmlakının icarəyə verilməsindən alınan icarə haqqının büdcəyə ödənilməli olan hissəsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.2 VM-nin 164.1.2-ci maddəsinə əsasən maliyyə xidmətlərinin göstərilməsi, o cümlədən maliyyə lizinqi əməliyyatları üzrə ödənilən faizlər', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.3 VM-nin 164.1.3-cü maddəsinə əsasən milli və ya xarici valyutanın (numizmatika məqsədlərindən başqa), həmçinin qiymətli kağızların göndərilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.4 VM-nin 164.1.5-ci maddəsinə əsasən idxal olunan əmlak istisna olmaqla müəssisənin nizamnamə fonduna (kapitalına) pay şəklində hər hansı əmlakın (əsas vəsaitlər istisna olmaqla) qoyulması (əmlakın pay şəklində qoyuluşu, onun müqabilində bilavasitə digər əmlakın əldə edilməsi ilə əlaqədar olmadıqda)', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.5 VM-nin 164.1.6-cı maddəsinə əsasən tutulan məbləğlər hədlərində dövlət hakimiyyəti, yerli özünü idarəetmə və digər səlahiyyətli orqanların tutduğu dövlət rüsumu, icazə haqları, yığımlar, xüsusi notariusların aldığı haqlar (notariat hərəkətlərinin aparılmasına və notariat hərəkətləri ilə əlaqədar göstərilən xidmətə görə) və onların tutulması müqabilində göstərdiyi xidmətlər', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.6 VM-nin 164.1.7-ci maddəsinə əsasən siyahısı Azərbaycan Respublikasının Nazirlər Kabineti tərəfindən təsdiq edilən media məhsullarının və kitabların (elektron kitablar istisna olmaqla), habelə dərslik komplektlərinin idxalı və satışı, həmin malların (məhsulların) istehsalı (nəşri) ilə bağlı rulon və ya vərəqə şəklində kağızın idxalı və satışı', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.7 VM-nin 164.1.8-ci maddəsinə əsasən mətbu media məhsullarının və kitabların (o cümlədən elektron kitabların), habelə dərslik komplektlərinin istehsalı ilə bağlı redaksiya, nəşriyyat və poliqrafiya fəaliyyəti (reklam xidmətləri istisna olmaqla)', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.8 VM-nin 164.1.9-cu maddəsinə əsasən dəfn və qəbiristanlığın mərasim xidmətləri', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.9 VM-nin 164.1.10-cu maddəsinə əsasən Azərbaycan Respublikasının Dövlət Neft Fondunun qanunvericiliklə nəzərdə tutulmuş vəzifələrinin yerinə yetirilməsi ilə bağlı mal idxalı, iş görülməsi və xidmət göstərilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.10 VM-nin 164.1.11-ci maddəsinə əsasən Azərbaycan Respublikasına, o cümlədən onu təmsil edən hüquqi şəxslərə neft-qaz ehtiyatlarının kəşfiyyatı, işlənməsi və hasilatın pay bölgüsü, ixrac boru kəmərləri haqqında və bu qəbildən olan digər sazişlərə uyğun olaraq verilməsi nəzərdə tutulan əsas fondların, daşınan əmlakın və digər aktivlərin Azərbaycan Respublikası Dövlət Neft Fonduna və ya Azərbaycan Respublikasını təmsil edən tərəfə hər hansı şəkildə təqdim edilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.11 VM-nin 164.1.12-ci maddəsinə əsasən metropolitenlə sərnişindaşıma xidmətləri', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.12 VM-nin 164.1.13-cü maddəsinə əsasən ödənişli təhsil xidmətlərinin göstərilməsi (digər fəaliyyətləri ilə bağlı xidmətlərin göstərilməsi istisna olmaqla)', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.13 VM-nin 164.1.14-cü maddəsinə əsasən Vergi Məcəllənin 106.1.9-106.1.11-ci maddələri ilə müəyyən olunan aktivlərin dəyəri və onların hər hansı şəkildə təqdim olunması üzrə əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.14 VM-nin 164.1.17-ci maddəsinə əsasən hüquqi şəxsin iştirak paylarının və ya səhmlərinin təqdim edilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.15 VM-nin 164.1.18-ci maddəsinə əsasən kənd təsərrüfatı məhsullarının istehsalçıları (o cümlədən, sənaye üsulu ilə) tərəfindən özlərinin istehsal etdikləri kənd təsərrüfatı məhsullarının satışı üzrə dövriyyələr', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.16 VM-nin 164.1.27-ci maddəsinə əsasən buğdanın idxalı və satışı, buğda ununun və çörəyin istehsalı və satışı', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.17 VM-nin 164.1.29-cu maddəsinə əsasən damazlıq heyvanların idxalı və satış', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.18 VM-nin 164.1.30-cu maddəsinə əsasən toxum və tinglərin idxalı və satışı', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.19 VM-nin 164.1.31-ci maddəsinə əsasən siyahısı müvafiq icra hakimiyyəti orqanının müəyyən etdiyi orqan (qurum) tərəfindən təsdiq edilən mineral gübrələrin, pestisidlərin idxalı və satışı', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.20 VM-nin 164.1.32-ci maddəsinə əsasən toxumların yetişdirilməsi, quşçuluq və arıçılıq üçün avadanlıqların, o cümlədən laboratoriya avadanlıqlarının, toxum, taxıl və quru paxlalı bitkilərin təmizlənməsi, çeşidlənməsi və ya kalibrlənməsi üçün maşınların idxalı və satışı', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.21 VM-nin 164.1.34-cü maddəsinə əsasən siyahısı Azərbaycan Respublikasının Nazirlər Kabineti tərəfindən təsdiq olunmuş bilavasitə kənd təsərrüfatı təyinatlı suvarma və digər qurğuların, maşınların, avadanlıqların və texnikaların, habelə kənd təsərrüfatı texnikasının ehtiyat hissələrinin istehsalı, idxalı və satışı', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.22 VM-nin 164.1.36-cı maddəsinə əsasən ödəmə qabiliyyətini itirmiş bankların restrukturizasiya və sağlamlaşdırma tədbirləri çərçivəsində müvafiq icra hakimiyyəti orqanının müəyyən etdiyi qaydada qeyri-işlək (toksik) aktivlərin təqdim edilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.23 VM-nin 164.1.37-ci maddəsinə əsasən heyvan və quş ətinin satışı', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.24 VM-nin 164.1.42-ci maddəsinə əsasən “Məşğulluq haqqında” Azərbaycan Respublikasının Qanununa uyğun olaraq müvafiq icra hakimiyyəti orqanının müəyyən etdiyi orqan (qurum) tərəfindən haqqı ödənilən ictimai işlərin təşkili ilə əlaqədar işçi qüvvəsinin təqdim edilməsi üzrə əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.25 VM-nin 164.1.43-cü maddəsinə əsasən kəpəyin istehsalı və satışı', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.26 VM-nin 164.1.46-cı maddəsinə əsasən siyahısı Azərbaycan Respublikasının Nazirlər Kabineti tərəfindən təsdiq edilən yem və yem əlavələrinin satışı üzrə dövriyyələr', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.27 VM-nin 164.1.47-ci maddəsinə əsasən bina tikintisi fəaliyyəti ilə məşğul olan şəxslər tərəfindən tikilən binanın yaşayış sahəsinin dövlətə ayrılan hissəsi üzrə dövriyyələr', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.28 VM-nin 164.1.48-ci maddəsinə əsasən siyahısı müvafiq icra hakimiyyəti orqanının müəyyən etdiyi orqan (qurum) (Prezident) tərəfindən təsdiq edilən dövlət adından yaradılan publik hüquqi şəxslər tərəfindən nizamnaməsində nəzərdə tutulan və ona həvalə edilən vəzifələrin yerinə yetirilməsi üçün büdcə qanunvericiliyinə uyğun olaraq dövlət büdcəsindən ayrılmış vəsait hesabına Maliyyə Nazirliyi ilə bağlanılmış müqavilə əsasında işlərin və xidmətlərin göstərilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.29 VM-nin 164.1.49-cu maddəsinə əsasən Azərbaycan Respublikasında keçirilən Formula 1 və Formula 2 yarışları ilə bağlı Gənclər və İdman Nazirliyi ilə bağlanılmış müqavilə əsasında mal, iş və xidmətin təqdim edilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.30 VM-nin 164.1.50-ci maddəsinə əsasən Azərbaycan Respublikasında daimi nümayəndəlik yaratmayan qeyri-rezident şəxslərin mülki aviasiya fəaliyyəti çərçivəsində hava gəmilərinin və hava gəmilərinin mühərriklərinin rezident hüquqi şəxslərə icarəyə və ya lizinqə verilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.31 VM-nin 164.1.51-ci maddəsinə əsasən “Tibbi sığorta haqqında” Azərbaycan Respublikasının Qanununa uyğun olaraq icbari tibbi sığorta fondunun, habelə siyahısı müvafiq icra hakimiyyəti orqanının müəyyən etdiyi orqan (qurum) tərəfindən təsdiq edilən ictimai və sosial məqsədlər üçün yaradılmış fondların vəsaiti hesabına tibbi xidmətlərin göstərilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.32 VM-nin 164.1.55-ci maddəsinə əsasən külçə, sikkə və ya qranul şəklində qızılın və gümüşün satışı', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.33 VM-nin 164.1.34-1-ci maddəsinə əsasən kənd təsərrüfatı texnikalarının mülkiyyət hüququnun keçməməsi şərtilə kənd təsərrüfatı istehsalçılarına lizinqə (icarəyə) verilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.34 VM-nin 164.1.34-2-ci maddəsinə əsasən kənd təsərrüfatı məhsullarının istehsalçılarına aqrotexniki xidmətlərin göstərilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.35 VM-nin 164.1.41-ci maddəsinə əsasən yalnız elektrik mühərriki ilə işləyən avtomobillərin satışı', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.36 VM-nin 164.1.41-1-ci maddəsinə əsasən istehsal tarixi 3 ildən və mühərrikinin həcmi 2500 kubsantimetrdən çox olmayan hibrid avtomobillərin satışı', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.37 VM-nin 164.1.41-2-ci maddəsinə əsasən Elektrik mühərriki ilə işləyən avtomobillər üçün ikinci və üçüncü səviyyə elektrik enerji doldurucularının satışı', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.38\tVM-nin 164.1.41-3-cü maddəsinə əsasən Azərbaycan Respublikasının ərazisində istehsal olunan minik avtomobillərinin satış̧ı', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.39\tVM-nin 164.1.41-4-ci maddəsinə əsasən Azərbaycan Respublikasının ərazisində istehsal olunan avtobusların satışı', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.40 VM-nin 164.1.57-ci maddəsinə əsasən lotereya biletlərinin satıcısı ilə bağlanmış müqavilə əsasında və ya onun tapşırığı əsasında lotereya biletlərinin bütün mərhələlərdə agent qaydasında satışının həyata keçirilməsi üzrə xidmətlərin göstərilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.41 Təqdim ediləcək malların (işlərin, xidmətlərin) hesabına əvvəlcədən alınmış ödənişləri', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.42 Azərbaycan Respublikasının tərəfdar çıxdığı beynəlxalq müqavilələr üzrə', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.43 VM-nin 164.1.10-1-ci maddəsinə əsasən yaşayış sahələrini satmaq öhdəliyi ilə kirayəyə vermə sahəsində fəaliyyət göstərən müvafiq icra hakimiyyəti orqanının müəyyən etdiyi orqan (qurum) tərəfindən yaşayış sahələrinin kirayəçilərə təqdim edilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.44 VM-nin 164.1.58-ci maddəsinə əsasən özəl baytarlıq xidmətlərinin göstərilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.45 VM-nin 164.1.59-cu maddəsinə əsasən vəkillər və vəkil qurumları tərəfindən order markasının əldə edilməsi ilə bağlı Azərbaycan Respublikasının Vəkillər Kollegiyasına edilən ödənişlər', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.46 VM-nin 164.1.8-1-ci maddəsinə əsasən media subyektləri (audiovizual media subyektləri istisna olmaqla) tərəfindən istehsal olunan media məhsullarının təqdim edilməsi, habelə Azərbaycan Respublikasında daimi nümayəndəlik yaratmayan qeyri-rezident şəxslər tərəfindən media subyektlərinə (audiovizual media subyektləri istisna olmaqla) media fəaliyyəti ilə bilavasitə bağlı olan işlərin görülməsi və xidmətlərin göstərilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.47 VM-nin 164.1.56-1-ci maddəsinə əsasən Azərbaycan Respublikasının Minatəmizləmə Agentliyinin təsdiqedici sənədi əsasında Azərbaycan Respublikasının işğaldan azad edilmiş ərazilərinin, habelə müharibə və hərbi əməliyyatların təsirinə məruz qalmış digər ərazilərin minalardan və partlamamış hərbi sursatdan, tərkibində partlayıcı olan qurğulardan və digər partlayıcı qalıqlardan təmizlənməsi çərçivəsində bütün növ texnikanın, avadanlıqların, texniki vasitələrin və qurğuların, onların ehtiyat hissələrinin, fərdi zirehli qoruyucu geyimlərin, alətlərin, partlayıcı və pirotexniki vasitələrin istehsalı və satışı', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.48 VM-nin 164.1.19-cu maddəsinə əsasən müdafiə təyinatlı məmulatların yaradılması və istehsalı fəaliyyətini həyata keçirən şəxslər tərəfindən bu məqsədlə Azərbaycan Respublikasının Müdafiə Sənayesi Nazirliyinin təsdiqedici sənədi əsasında texnologiyaların, avadanlıqların, dəstləşdirici hissələrin və xammalın idxalı və həmin şəxslər tərəfindən istehsal edilmiş müdafiə təyinatlı məmulatların satışı', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.49 VM-nin 164.1.19-1-ci maddəsinə əsasən müvafiq icra hakimiyyəti orqanının müəyyən etdiyi orqan (qurum) tərəfindən verilmiş təsdiqedici sənəd əsasında müdafiə və dövlət təhlükəsizliyi məqsədləri üçün istifadə olunan bütün növ texnika və texniki vasitələrin, onların ehtiyat hissələrinin, xüsusi proqram təminatlarının və silah-sursatın idxalı və satışı', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.50 VM-nin 164.1.2-1-ci maddəsinə əsasən ƏDV-dən azad olunan, yaxud ƏDV-yə cəlb edilməyən əməliyyatlar çərçivəsində əldə edilmiş aktivlərin (əsas vəsaitlərin) maliyyə lizinqi müqaviləsi üzrə təqdim edilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.51 VM-nin 164.1.9-1-ci maddəsinə əsasən müvafiq icra hakimiyyəti orqanının müəyyən etdiyi orqan (qurum) tərəfindən verilmiş təsdiqedici sənəd əsasında müdafiə və dövlət təhlükəsizliyi məqsədləri üçün istifadə olunan bütün növ texnika və texniki vasitələrin, onların ehtiyat hissələrinin, xüsusi proqram təminatlarının və silah-sursatın idxalı və satışı', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.52 VM-nin 164.1.51-1-ci maddəsinə əsasən tədris bazası kimi fəaliyyət göstərən tibb müəssisələrində tibbi xidmətlərin göstərilməsi', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303.53 Xüsusi iqtisadi zonalar haqqında qanunlar çərçivəsində aparılan əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303-1 Elektron ticarət üzrə ƏDV-dən azad olunan əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303-2 Pərakəndə ticarət üzrə ƏDV-dən azad olunan əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n { göstəricilər: '303-3 Topdan ticarət üzrə ƏDV-dən azad olunan əməliyyatlar', SahəAdı2: 'Məlumat' },\r\n ];\r\n\r\n default_rows.forEach(row => {\r\n frm.add_child('əlavə_5', row);\r\n });\r\n\r\n frm.refresh_field('əlavə_5'); \r\n }\r\n});", "view": "Form" }, { diff --git a/taxes_az/taxes_az/doctype/declaration_of_value_added_tax/declaration_of_value_added_tax.json b/taxes_az/taxes_az/doctype/declaration_of_value_added_tax/declaration_of_value_added_tax.json index 0d3f86b..5e8245b 100644 --- a/taxes_az/taxes_az/doctype/declaration_of_value_added_tax/declaration_of_value_added_tax.json +++ b/taxes_az/taxes_az/doctype/declaration_of_value_added_tax/declaration_of_value_added_tax.json @@ -6,110 +6,116 @@ "doctype": "DocType", "engine": "InnoDB", "field_order": [ - "ümumi_məlumat_tab", + "\u00fcmumi_m\u0259lumat_tab", "html_pegz", - "idarə", - "vergiorqanı", - "vergidövrü", + "idar\u0259", + "vergiorqan\u0131", + "vergid\u00f6vr\u00fc", "ay", "rub_not_use", "il", - "şəxsi", - "vöen", - "soyadı", - "atasınınadı", - "mobnömrə1", - "mobnömrə2", + "\u015f\u0259xsi", + "v\u00f6en", + "soyad\u0131", + "atas\u0131n\u0131nad\u0131", + "mobn\u00f6mr\u02591", + "mobn\u00f6mr\u02592", "column_break_yjgp", - "ödəyicitipi", - "adı", - "şəhərnömrəsi1", - "şəhərnömrəsi2", + "\u00f6d\u0259yicitipi", + "ad\u0131", + "\u015f\u0259h\u0259rn\u00f6mr\u0259si1", + "\u015f\u0259h\u0259rn\u00f6mr\u0259si2", "section_break_pcfz", - "əsasfəaliyyətnövününkodu", - "təqdimolunmuşəlavələrinsayı", - "bəyannaməninnövü", - "dəqiqləşdirilmişbəyannamənintəqdimedilməsibarədəbildiriş", + "\u0259sasf\u0259aliyy\u0259tn\u00f6v\u00fcn\u00fcnkodu", + "t\u0259qdimolunmu\u015f\u0259lav\u0259l\u0259rinsay\u0131", + "b\u0259yannam\u0259ninn\u00f6v\u00fc", + "d\u0259qiql\u0259\u015fdirilmi\u015fb\u0259yannam\u0259nint\u0259qdimedilm\u0259sibar\u0259d\u0259bildiri\u015f", "column_break_xcxz", - "adi", "section_break_jvpd", - "ədvbildirişininverilmətarixi", - "ədvqeydiyyatınınqüvəyyəminmətarixi", + "\u0259dvbildiri\u015fininverilm\u0259tarixi", + "\u0259dvqeydiyyat\u0131n\u0131nq\u00fcv\u0259yy\u0259minm\u0259tarixi", "column_break_gxjk", - "ədvbildirişininnsi", - "valyutanınnövü", + "\u0259dvbildiri\u015fininnsi", + "valyutan\u0131nn\u00f6v\u00fc", "section_break_yrag", - "vergininödəyicisininqrupu", + "verginin\u00f6d\u0259yicisininqrupu", "section_break_pmau", - "vergiödəyisininqrupu", + "vergi\u00f6d\u0259yisininqrupu", "section_break_vfvd", - "bəyan_ediləcək_məlumatım_yoxdur", - "verginin_hesablanması_tab", + "b\u0259yan_edil\u0259c\u0259k_m\u0259lumat\u0131m_yoxdur", + "verginin_hesablanmas\u0131_tab", "html_vohk", - "hesabatdövründəkidövriyyəüzrə", - "hesabat_dövriyyəsi", + "hesabatd\u00f6vr\u00fcnd\u0259kid\u00f6vriyy\u0259\u00fczr\u0259", + "hesabat_d\u00f6vriyy\u0259si", "debitorborclar", "debitor_borc", - "əvəzləşdirilən", - "table_zvvh", - "dəqiqləşdirilən", - "table_wtjt", - "hesablaşmalar", - "table_kyya", + "\u0259v\u0259zl\u0259\u015fdiril\u0259n", + "\u0259v\u0259zl\u0259\u015fdiril\u0259n_table", + "d\u0259qiql\u0259\u015fdiril\u0259n", + "d\u0259qiql\u0259\u015fdiril\u0259n_table", + "hesabla\u015fmalar", + "hesabla\u015fmalar_table", "section_break_ceqn", "html_yofg", "section_break_hzbr", "html_fofs", - "əlavə_1_tab", + "\u0259lav\u0259_1_tab", "html_ushs", "section_break_jcoc", - "table_ftqr", + "\u0259lav\u0259_1", "section_break_xyxd", - "table_rsid", - "əlavə_2_tab", + "\u0259lav\u0259_1_2", + "\u0259lav\u02591_tab", + "html_kkmf", + "section_break_daro", + "\u0259lav\u02591_yeni", + "section_break_wthk", + "c\u0259mi", + "\u0259lav\u02591_2_yeni", + "\u0259lav\u0259_2_tab", "html_bjil", "section_break_lfrv", "html_nnwk", - "table_fdbw", + "\u0259lav\u0259_2", "section_break_mwdd", "html_krqo", - "table_zedr", + "\u0259lav\u0259_2_2", "section_break_rpyz", "html_fokz", - "table_anob", - "əlavə_3_tab", + "\u0259lav\u0259_2_3", + "\u0259lav\u0259_3_tab", "html_pyao", - "əlavə_4_tab", + "\u0259lav\u0259_4_tab", "html_bijk", "section_break_gzyr", - "table_hnwx", - "əlavə_5_tab", + "\u0259lav\u0259_4", + "\u0259lav\u0259_5_tab", "html_sywe", "section_break_zyqi", - "table_bchc", - "əlavə_6_tab", + "\u0259lav\u0259_5", + "\u0259lav\u0259_6_tab", "html_sffy", - "01012001ciiltarixinəkreditorqalığın", + "01012001ciiltarixin\u0259kreditorqal\u0131\u011f\u0131n", "date_fcfr", - "ədvsizməbləğ", - "20liədvməbləği", - "ciiltarixinəkreditorqalığıncarihesabatayındaödənilmişdəyəri", - "ədvsizməbləğ2", - "20liədvməbləği2", - "əlavə_7_tab", + "\u0259dvsizm\u0259bl\u0259\u011f", + "20li\u0259dvm\u0259bl\u0259\u011fi", + "ciiltarixin\u0259kreditorqal\u0131\u011f\u0131ncarihesabatay\u0131nda\u00f6d\u0259nilmi\u015fd\u0259y\u0259ri", + "\u0259dvsizm\u0259bl\u0259\u011f2", + "20li\u0259dvm\u0259bl\u0259\u011fi2", + "\u0259lav\u0259_7_tab", "html_fayt", "section_break_sxpc", - "table_vonn", - "büdcəyəödənilmişdəyərinədvsizvəədvməbləğinincəmi", + "\u0259lav\u0259_7", + "b\u00fcdc\u0259y\u0259\u00f6d\u0259nilmi\u015fd\u0259y\u0259rin\u0259dvsizv\u0259\u0259dvm\u0259bl\u0259\u011fininc\u0259mi", "int_homh", "column_break_vdct", "int_bhko", - "əlavə_8_tab", + "\u0259lav\u0259_8_tab", "html_ifqp", - "əlavə_9_tab", + "\u0259lav\u0259_9_tab", "html_tbnc", "section_break_ftyx", - "table_gpfh", + "\u0259lav\u0259_9", "section_break_tflh", "html_qefu", "column_break_knbv", @@ -118,137 +124,138 @@ "int_tgba", "column_break_zpha", "int_ppkp", - "əlavə_10_tab", + "\u0259lav\u0259_10_tab", "html_lsiw", "section_break_fpyw", "html_dlcr", "section_break_wval", - "table_bgay", - "cəmi1", + "\u0259lav\u0259_10", + "c\u0259mi1", "section_break_ldfi", "html_jiwg", "section_break_ibeu", - "table_hnbv", - "cəmi2", - "ədvtutulandövriyyəbarədəməlumat", - "əlavə_3_1", - "ədvtutulanəməliyyatsayılmayandövriyyəbarədəməlumat", - "table_pycw", - "müəssisənintəqdimetdiyisertifikatlar", - "table_kmis", - "müəssisəninaldığısertifikatlarüzrətəqdimetdiyimalındəyəri", - "table_twws", + "\u0259lav\u0259_10_2", + "c\u0259mi2", + "\u0259dvtutuland\u00f6vriyy\u0259bar\u0259d\u0259m\u0259lumat", + "\u0259lav\u0259_3_1", + "\u0259dvtutulan\u0259m\u0259liyyatsay\u0131lmayand\u00f6vriyy\u0259bar\u0259d\u0259m\u0259lumat", + "\u0259lav\u0259_3_2", + "m\u00fc\u0259ssis\u0259nint\u0259qdimetdiyisertifikatlar", + "m\u00fc\u0259ssis\u0259_sertifikat", + "m\u00fc\u0259ssis\u0259ninald\u0131\u011f\u0131sertifikatlar\u00fczr\u0259t\u0259qdimetdiyimal\u0131nd\u0259y\u0259ri", + "m\u00fc\u0259ssis\u0259_mal\u0131n_d\u0259y\u0259ri", "section_break_qiyd", - "sertifikathesabatdövründəmalındəyərininsəhifəsicəmi" + "sertifikathesabatd\u00f6vr\u00fcnd\u0259mal\u0131nd\u0259y\u0259rinins\u0259hif\u0259sic\u0259mi", + "ad_select" ], "fields": [ { - "fieldname": "ümumi_məlumat_tab", + "fieldname": "\u00fcmumi_m\u0259lumat_tab", "fieldtype": "Tab Break", - "label": "Ümumi məlumat" + "label": "\u00dcmumi m\u0259lumat" }, { "fieldname": "html_pegz", "fieldtype": "HTML", - "options": "

Əlavə dəyər vergisinin bəyannaməsi

" + "options": "

\u018flav\u0259 d\u0259y\u0259r vergisinin b\u0259yannam\u0259si

" }, { - "fieldname": "idarə", + "fieldname": "idar\u0259", "fieldtype": "Section Break", - "label": "İdarə" + "label": "\u0130dar\u0259" }, { - "fieldname": "vergiorqanı", + "fieldname": "vergiorqan\u0131", "fieldtype": "Select", - "label": "Vergi orqanı", - "options": "2 saylı Ərazi Vergilər Baş idarəsi\tSumqayıt\t02\n3 saylı Ərazi Vergilər İdarəsi\tQuba\t03\n4 saylı Ərazi Vergilər İdarəsi\tŞamaxı\t04\n5 saylı Ərazi Vergilər İdarəsi\tŞirvan\t05\n6 saylı Ərazi Vergilər Baş İdarəsi\tLənkəran\t06\nQarabağ Ərazi Vergilər Baş İdarəsi\tAğdam, Füzuli, Şuşa, Xocalı, Xocavənd\t07\n8 saylı Ərazi Vergilər İdarəsi\tBeyləqan\t08\n9 saylı Ərazi Vergilər İdarəsi\tGöyçay\t09\n10 saylı Ərazi Vergilər İdarəsi\tQəbələ\t10\n11 saylı Ərazi Vergilər Baş İdarəsi\tYevlax\t11\n12 saylı Ərazi Vergilər Baş İdarəsi\tGəncə\t12\n13 saylı Ərazi Vergilər İdarəsi\tZaqatala\t13\n14 saylı Ərazi Vergilər İdarəsi\tŞəmkir\t14\nDövlət Vergi xidmətinin Milli Gəlirlər Baş idarəsi\tBakı\t16\nDövlət Vergi xidmətinin Bakı şəhəri Lokal Gəlirlər Baş idarəsi\tBakı\t19\nDövlət Vergi xidmətinin Bakı şəhəri Kiçik Sahibkarlıqla İş üzrə Baş idarəsi\tBakı\t39\nNaxçıvan şəhəri üzrə Vergilər İdarəsi\tNaxçıvan\t27\n2 saylı Ərazi Vergilər İdarəsi (Naxçıvan MR)\tŞərur, Sədərək, Kəngərli\t30\n3 saylı Ərazi Vergilər İdarəsi (Naxçıvan MR)\tŞahbuz, Babək\t26\n4 saylı Ərazi Vergilər İdarəsi (Naxçıvan MR)\tCulfa, Ordubad\t24\nŞərqi Zəngəzur Ərazi Vergilər İdarəsi\tCəbrayıl, Kəlbəcər, Laçın, Qubadlı, Zəngilan\t55" + "label": "Vergi orqan\u0131", + "options": "2 sayl\u0131 \u018frazi Vergil\u0259r Ba\u015f idar\u0259si\tSumqay\u0131t\t02\n3 sayl\u0131 \u018frazi Vergil\u0259r \u0130dar\u0259si\tQuba\t03\n4 sayl\u0131 \u018frazi Vergil\u0259r \u0130dar\u0259si\t\u015eamax\u0131\t04\n5 sayl\u0131 \u018frazi Vergil\u0259r \u0130dar\u0259si\t\u015eirvan\t05\n6 sayl\u0131 \u018frazi Vergil\u0259r Ba\u015f \u0130dar\u0259si\tL\u0259nk\u0259ran\t06\nQaraba\u011f \u018frazi Vergil\u0259r Ba\u015f \u0130dar\u0259si\tA\u011fdam, F\u00fczuli, \u015eu\u015fa, Xocal\u0131, Xocav\u0259nd\t07\n8 sayl\u0131 \u018frazi Vergil\u0259r \u0130dar\u0259si\tBeyl\u0259qan\t08\n9 sayl\u0131 \u018frazi Vergil\u0259r \u0130dar\u0259si\tG\u00f6y\u00e7ay\t09\n10 sayl\u0131 \u018frazi Vergil\u0259r \u0130dar\u0259si\tQ\u0259b\u0259l\u0259\t10\n11 sayl\u0131 \u018frazi Vergil\u0259r Ba\u015f \u0130dar\u0259si\tYevlax\t11\n12 sayl\u0131 \u018frazi Vergil\u0259r Ba\u015f \u0130dar\u0259si\tG\u0259nc\u0259\t12\n13 sayl\u0131 \u018frazi Vergil\u0259r \u0130dar\u0259si\tZaqatala\t13\n14 sayl\u0131 \u018frazi Vergil\u0259r \u0130dar\u0259si\t\u015e\u0259mkir\t14\nD\u00f6vl\u0259t Vergi xidm\u0259tinin Milli G\u0259lirl\u0259r Ba\u015f idar\u0259si\tBak\u0131\t16\nD\u00f6vl\u0259t Vergi xidm\u0259tinin Bak\u0131 \u015f\u0259h\u0259ri Lokal G\u0259lirl\u0259r Ba\u015f idar\u0259si\tBak\u0131\t19\nD\u00f6vl\u0259t Vergi xidm\u0259tinin Bak\u0131 \u015f\u0259h\u0259ri Ki\u00e7ik Sahibkarl\u0131qla \u0130\u015f \u00fczr\u0259 Ba\u015f idar\u0259si\tBak\u0131\t39\nNax\u00e7\u0131van \u015f\u0259h\u0259ri \u00fczr\u0259 Vergil\u0259r \u0130dar\u0259si\tNax\u00e7\u0131van\t27\n2 sayl\u0131 \u018frazi Vergil\u0259r \u0130dar\u0259si (Nax\u00e7\u0131van MR)\t\u015e\u0259rur, S\u0259d\u0259r\u0259k, K\u0259ng\u0259rli\t30\n3 sayl\u0131 \u018frazi Vergil\u0259r \u0130dar\u0259si (Nax\u00e7\u0131van MR)\t\u015eahbuz, Bab\u0259k\t26\n4 sayl\u0131 \u018frazi Vergil\u0259r \u0130dar\u0259si (Nax\u00e7\u0131van MR)\tCulfa, Ordubad\t24\n\u015e\u0259rqi Z\u0259ng\u0259zur \u018frazi Vergil\u0259r \u0130dar\u0259si\tC\u0259bray\u0131l, K\u0259lb\u0259c\u0259r, La\u00e7\u0131n, Qubadl\u0131, Z\u0259ngilan\t55" }, { "fieldname": "il", "fieldtype": "Int", - "label": "İl", + "label": "\u0130l", "length": 4 }, { - "fieldname": "şəxsi", + "fieldname": "\u015f\u0259xsi", "fieldtype": "Section Break", - "label": "Şəxsi" + "label": "\u015e\u0259xsi" }, { - "fieldname": "vöen", + "fieldname": "v\u00f6en", "fieldtype": "Int", - "label": "VÖEN" + "label": "V\u00d6EN" }, { - "fieldname": "soyadı", + "fieldname": "soyad\u0131", "fieldtype": "Data", - "label": "Soyadı" + "label": "Soyad\u0131" }, { - "fieldname": "atasınınadı", + "fieldname": "atas\u0131n\u0131nad\u0131", "fieldtype": "Data", - "label": "Atasının adı" + "label": "Atas\u0131n\u0131n ad\u0131" }, { - "fieldname": "mobnömrə1", + "fieldname": "mobn\u00f6mr\u02591", "fieldtype": "Int", - "label": "Mob nömrə 1" + "label": "Mob n\u00f6mr\u0259 1" }, { - "fieldname": "mobnömrə2", + "fieldname": "mobn\u00f6mr\u02592", "fieldtype": "Int", - "label": "Mob nömrə 2" + "label": "Mob n\u00f6mr\u0259 2" }, { "fieldname": "column_break_yjgp", "fieldtype": "Column Break" }, { - "fieldname": "ödəyicitipi", + "fieldname": "\u00f6d\u0259yicitipi", "fieldtype": "Select", - "label": "Ödəyici tipi", - "options": "Hüquqi\nFiziki" + "label": "\u00d6d\u0259yici tipi", + "options": "H\u00fcquqi\nFiziki" }, { - "fieldname": "adı", + "fieldname": "ad\u0131", "fieldtype": "Data", - "label": "Adı" + "label": "Ad\u0131" }, { - "fieldname": "şəhərnömrəsi1", + "fieldname": "\u015f\u0259h\u0259rn\u00f6mr\u0259si1", "fieldtype": "Int", - "label": "Şəhər nömrəsi 1" + "label": "\u015e\u0259h\u0259r n\u00f6mr\u0259si 1" }, { - "fieldname": "şəhərnömrəsi2", + "fieldname": "\u015f\u0259h\u0259rn\u00f6mr\u0259si2", "fieldtype": "Int", - "label": "Şəhər nömrəsi 2" + "label": "\u015e\u0259h\u0259r n\u00f6mr\u0259si 2" }, { "fieldname": "section_break_pcfz", "fieldtype": "Section Break" }, { - "fieldname": "əsasfəaliyyətnövününkodu", + "fieldname": "\u0259sasf\u0259aliyy\u0259tn\u00f6v\u00fcn\u00fcnkodu", "fieldtype": "Int", - "label": "Əsas fəaliyyət növünün kodu" + "label": "\u018fsas f\u0259aliyy\u0259t n\u00f6v\u00fcn\u00fcn kodu" }, { - "fieldname": "təqdimolunmuşəlavələrinsayı", + "fieldname": "t\u0259qdimolunmu\u015f\u0259lav\u0259l\u0259rinsay\u0131", "fieldtype": "Int", - "label": "Təqdim olunmuş əlavələrin sayı" + "label": "T\u0259qdim olunmu\u015f \u0259lav\u0259l\u0259rin say\u0131" }, { - "fieldname": "bəyannaməninnövü", + "fieldname": "b\u0259yannam\u0259ninn\u00f6v\u00fc", "fieldtype": "Select", - "label": "Bəyannamənin növü", - "options": "Cari\nDəqiqləşdirilmiş\nLəğv olma\nLəğvin dəqiqləşdirilmişi\nAnaloji\nKönüllü açıqlama" + "label": "B\u0259yannam\u0259nin n\u00f6v\u00fc", + "options": "Cari\nD\u0259qiql\u0259\u015fdirilmi\u015f\nL\u0259\u011fv olma\nL\u0259\u011fvin d\u0259qiql\u0259\u015fdirilmi\u015fi\nAnaloji\nK\u00f6n\u00fcll\u00fc a\u00e7\u0131qlama" }, { - "fieldname": "dəqiqləşdirilmişbəyannamənintəqdimedilməsibarədəbildiriş", + "fieldname": "d\u0259qiql\u0259\u015fdirilmi\u015fb\u0259yannam\u0259nint\u0259qdimedilm\u0259sibar\u0259d\u0259bildiri\u015f", "fieldtype": "Float", - "precision": "2", - "label": "Dəqiqləşdirilmiş bəyannamənin təqdim edilməsi barədə bildirişin nömrəsi" + "label": "D\u0259qiql\u0259\u015fdirilmi\u015f b\u0259yannam\u0259nin t\u0259qdim edilm\u0259si bar\u0259d\u0259 bildiri\u015fin n\u00f6mr\u0259si", + "precision": "2" }, { "fieldname": "column_break_xcxz", @@ -257,7 +264,7 @@ { "fieldname": "ad_select", "fieldtype": "Select", - "label": "Adı" + "label": "Ad\u0131" }, { "fieldname": "section_break_vfvd", @@ -265,78 +272,78 @@ }, { "default": "0", - "fieldname": "bəyan_ediləcək_məlumatım_yoxdur", + "fieldname": "b\u0259yan_edil\u0259c\u0259k_m\u0259lumat\u0131m_yoxdur", "fieldtype": "Check", - "label": "Bəyan ediləcək məlumatım yoxdur" + "label": "B\u0259yan edil\u0259c\u0259k m\u0259lumat\u0131m yoxdur" }, { - "fieldname": "vergidövrü", + "fieldname": "vergid\u00f6vr\u00fc", "fieldtype": "Select", - "label": "Vergi dövrü", - "options": "Rüblük" + "label": "Vergi d\u00f6vr\u00fc", + "options": "R\u00fcbl\u00fck" }, { "fieldname": "section_break_jvpd", "fieldtype": "Section Break" }, { - "fieldname": "ədvbildirişininverilmətarixi", + "fieldname": "\u0259dvbildiri\u015fininverilm\u0259tarixi", "fieldtype": "Float", - "precision": "2", - "label": "ƏDV Bildirişinin verilmə tarixi" + "label": "\u018fDV Bildiri\u015finin verilm\u0259 tarixi", + "precision": "2" }, { - "fieldname": "ədvqeydiyyatınınqüvəyyəminmətarixi", + "fieldname": "\u0259dvqeydiyyat\u0131n\u0131nq\u00fcv\u0259yy\u0259minm\u0259tarixi", "fieldtype": "Float", - "precision": "2", - "label": "ƏDV qeydiyyatının qüvəyyə minmə tarixi" + "label": "\u018fDV qeydiyyat\u0131n\u0131n q\u00fcv\u0259yy\u0259 minm\u0259 tarixi", + "precision": "2" }, { "fieldname": "column_break_gxjk", "fieldtype": "Column Break" }, { - "fieldname": "ədvbildirişininnsi", + "fieldname": "\u0259dvbildiri\u015fininnsi", "fieldtype": "Float", - "precision": "2", - "label": "ƏDV Bildirişinin №-si" + "label": "\u018fDV Bildiri\u015finin \u2116-si", + "precision": "2" }, { - "fieldname": "valyutanınnövü", + "fieldname": "valyutan\u0131nn\u00f6v\u00fc", "fieldtype": "Select", - "label": "Valyutanın Növü", - "options": "Azərbaycan manatı\nABŞ dolları" + "label": "Valyutan\u0131n N\u00f6v\u00fc", + "options": "Az\u0259rbaycan manat\u0131\nAB\u015e dollar\u0131" }, { "fieldname": "section_break_yrag", "fieldtype": "Section Break" }, { - "fieldname": "vergininödəyicisininqrupu", + "fieldname": "verginin\u00f6d\u0259yicisininqrupu", "fieldtype": "Select", - "label": "Verginin ödəyicisinin qrupu", - "options": "VM çərçivəsində fəaliyyət göstərən vergi ödəyicisi\nQanun çərçivəsində fəaliyyət göstərən xüsusi vergi rejimli müəssisələr" + "label": "Verginin \u00f6d\u0259yicisinin qrupu", + "options": "VM \u00e7\u0259r\u00e7iv\u0259sind\u0259 f\u0259aliyy\u0259t g\u00f6st\u0259r\u0259n vergi \u00f6d\u0259yicisi\nQanun \u00e7\u0259r\u00e7iv\u0259sind\u0259 f\u0259aliyy\u0259t g\u00f6st\u0259r\u0259n x\u00fcsusi vergi rejimli m\u00fc\u0259ssis\u0259l\u0259r" }, { "fieldname": "ay", "fieldtype": "Select", "label": "Ay", - "options": "Yanvar\nFevral\nMart\nAprel\nMay\nİyun\nİyul\nAvqust\nSentyabr\nOktyabr\nNoyabr\nDekabr" + "options": "Yanvar\nFevral\nMart\nAprel\nMay\n\u0130yun\n\u0130yul\nAvqust\nSentyabr\nOktyabr\nNoyabr\nDekabr" }, { "fieldname": "section_break_pmau", "fieldtype": "Section Break" }, { - "fieldname": "vergiödəyisininqrupu", + "fieldname": "vergi\u00f6d\u0259yisininqrupu", "fieldtype": "Select", - "label": "Vergi ödəyisinin qrupu", - "options": "Vergi Məcəlləsi çərçivəsində fəaliyyət göstərən vergi ödəyicisi\nQanunla təsdiq olunmuş hasilatın pay bölgüsü haqqında, əsas boru kəməri haqqında və digər bu qəbildən olan sazişlər və ya qanunlar çərçivəsində fəaliyyət göstərən xüsusi vergi rejimli ödəyici" + "label": "Vergi \u00f6d\u0259yisinin qrupu", + "options": "Vergi M\u0259c\u0259ll\u0259si \u00e7\u0259r\u00e7iv\u0259sind\u0259 f\u0259aliyy\u0259t g\u00f6st\u0259r\u0259n vergi \u00f6d\u0259yicisi\nQanunla t\u0259sdiq olunmu\u015f hasilat\u0131n pay b\u00f6lg\u00fcs\u00fc haqq\u0131nda, \u0259sas boru k\u0259m\u0259ri haqq\u0131nda v\u0259 dig\u0259r bu q\u0259bild\u0259n olan sazi\u015fl\u0259r v\u0259 ya qanunlar \u00e7\u0259r\u00e7iv\u0259sind\u0259 f\u0259aliyy\u0259t g\u00f6st\u0259r\u0259n x\u00fcsusi vergi rejimli \u00f6d\u0259yici" }, { - "fieldname": "verginin_hesablanması_tab", + "fieldname": "verginin_hesablanmas\u0131_tab", "fieldtype": "Tab Break", - "label": "Verginin hesablanması" + "label": "Verginin hesablanmas\u0131" }, { "fieldname": "html_vohk", @@ -351,246 +358,196 @@ "fieldtype": "HTML" }, { - "fieldname": "əlavə_1_tab", + "fieldname": "\u0259lav\u0259_1_tab", "fieldtype": "Tab Break", - "label": "Əlavə 1" + "label": "\u018flav\u0259 1" }, { - "fieldname": "əlavə_2_tab", + "fieldname": "\u0259lav\u0259_2_tab", "fieldtype": "Tab Break", - "label": "Əlavə 2" + "label": "\u018flav\u0259 2" }, { - "fieldname": "əlavə_3_tab", + "fieldname": "\u0259lav\u0259_3_tab", "fieldtype": "Tab Break", - "label": "Əlavə 3" + "label": "\u018flav\u0259 3" }, { "fieldname": "html_pyao", "fieldtype": "HTML" }, { - "fieldname": "əlavə_4_tab", + "fieldname": "\u0259lav\u0259_4_tab", "fieldtype": "Tab Break", - "label": "Əlavə 4" + "label": "\u018flav\u0259 4" }, { "fieldname": "html_bijk", "fieldtype": "HTML", - "options": "

ƏDV-yə sıfır(0) dərəcə ilə tutulan dövriyyə barədə məlumat

" + "options": "

\u018fDV-y\u0259 s\u0131f\u0131r(0) d\u0259r\u0259c\u0259 il\u0259 tutulan d\u00f6vriyy\u0259 bar\u0259d\u0259 m\u0259lumat

" }, { - "fieldname": "əlavə_5_tab", + "fieldname": "\u0259lav\u0259_5_tab", "fieldtype": "Tab Break", - "label": "Əlavə 5" + "label": "\u018flav\u0259 5" }, { "fieldname": "html_sywe", "fieldtype": "HTML", - "options": "

ƏDV-dən azad olunan dövriyyə barədə məlumat

" + "options": "

\u018fDV-d\u0259n azad olunan d\u00f6vriyy\u0259 bar\u0259d\u0259 m\u0259lumat

" }, { - "fieldname": "əlavə_6_tab", + "fieldname": "\u0259lav\u0259_6_tab", "fieldtype": "Tab Break", - "label": "Əlavə 6" + "label": "\u018flav\u0259 6" }, { "fieldname": "html_sffy", "fieldtype": "HTML", - "options": "

01.01.2001-ci il tarixinə kreditor qalıq üzrə aparılmış ödənişlər barədə məlumat

" + "options": "

01.01.2001-ci il tarixin\u0259 kreditor qal\u0131q \u00fczr\u0259 apar\u0131lm\u0131\u015f \u00f6d\u0259ni\u015fl\u0259r bar\u0259d\u0259 m\u0259lumat

" }, { - "fieldname": "əlavə_7_tab", + "fieldname": "\u0259lav\u0259_7_tab", "fieldtype": "Tab Break", - "label": "Əlavə 7" + "label": "\u018flav\u0259 7" }, { "fieldname": "html_fayt", "fieldtype": "HTML", - "options": "

Qeyri-rezidentin büdcəyə ödədiyi ƏDV məbləğləri barədə məlumat

" + "options": "

Qeyri-rezidentin b\u00fcdc\u0259y\u0259 \u00f6d\u0259diyi \u018fDV m\u0259bl\u0259\u011fl\u0259ri bar\u0259d\u0259 m\u0259lumat

" }, { - "fieldname": "əlavə_8_tab", + "fieldname": "\u0259lav\u0259_8_tab", "fieldtype": "Tab Break", - "label": "Əlavə 8" + "label": "\u018flav\u0259 8" }, { "fieldname": "html_ifqp", "fieldtype": "HTML" }, { - "fieldname": "əlavə_9_tab", + "fieldname": "\u0259lav\u0259_9_tab", "fieldtype": "Tab Break", - "label": "Əlavə 9" + "label": "\u018flav\u0259 9" }, { "fieldname": "html_tbnc", "fieldtype": "HTML", - "options": "

Bölmə 2. Obyektlər barədə məlumat

" + "options": "

B\u00f6lm\u0259 2. Obyektl\u0259r bar\u0259d\u0259 m\u0259lumat

" }, { - "fieldname": "əlavə_10_tab", + "fieldname": "\u0259lav\u0259_10_tab", "fieldtype": "Tab Break", - "label": "Əlavə 10" + "label": "\u018flav\u0259 10" }, { "fieldname": "html_lsiw", "fieldtype": "HTML", - "options": "

Bölmə 2. \"0\" (sıfır) dərəcə ilə ƏDV-yə cəlb edilmə haqqında sənaye parkının rezidentinin qeydiyyat şəhadətnamələri barədə məlumat

" - }, - { - "fieldname": "table_zvvh", - "fieldtype": "Table", - "options": "Declaration of value added tax Evezlesdirilen" - }, - { - "fieldname": "table_wtjt", - "fieldtype": "Table", - "options": "Declaration of value added tax Deqiqlesdirilen" - }, - { - "fieldname": "table_kyya", - "fieldtype": "Table", - "options": "Declaration of value added tax Hesablasmalar" + "options": "

B\u00f6lm\u0259 2. \"0\" (s\u0131f\u0131r) d\u0259r\u0259c\u0259 il\u0259 \u018fDV-y\u0259 c\u0259lb edilm\u0259 haqq\u0131nda s\u0259naye park\u0131n\u0131n rezidentinin qeydiyyat \u015f\u0259had\u0259tnam\u0259l\u0259ri bar\u0259d\u0259 m\u0259lumat

" }, { "fieldname": "html_ushs", "fieldtype": "HTML", - "options": "

Əldə edilmiş Yük Gömrük Bəyannamələri və bu bəyannamələr üzrə aparılmış ödənişlər

" + "options": "

\u018fld\u0259 edilmi\u015f Y\u00fck G\u00f6mr\u00fck B\u0259yannam\u0259l\u0259ri v\u0259 bu b\u0259yannam\u0259l\u0259r \u00fczr\u0259 apar\u0131lm\u0131\u015f \u00f6d\u0259ni\u015fl\u0259r

" }, { - "fieldname": "table_ftqr", - "fieldtype": "Table", - "options": "Declaration of value added tax Elave1 Cari hesabat" - }, - { - "fieldname": "table_rsid", - "fieldtype": "Table", - "options": "Declaration of value added tax Elave1 Cari hesabat 2" - }, - { - "fieldname": "hesabatdövründəkidövriyyəüzrə", + "fieldname": "hesabatd\u00f6vr\u00fcnd\u0259kid\u00f6vriyy\u0259\u00fczr\u0259", "fieldtype": "Tab Break", - "js_parent_subtab": "Verginin hesablanması", - "label": "Hesabat dövründəki dövriyyə üzrə" + "js_parent_subtab": "Verginin hesablanmas\u0131", + "label": "Hesabat d\u00f6vr\u00fcnd\u0259ki d\u00f6vriyy\u0259 \u00fczr\u0259" }, { "fieldname": "debitorborclar", "fieldtype": "Tab Break", - "js_parent_subtab": "Verginin hesablanması", + "js_parent_subtab": "Verginin hesablanmas\u0131", "label": "Debitor borclar" }, { - "fieldname": "əvəzləşdirilən", + "fieldname": "\u0259v\u0259zl\u0259\u015fdiril\u0259n", "fieldtype": "Tab Break", - "js_parent_subtab": "Verginin hesablanması", - "label": "Əvəzləşdirilən" + "js_parent_subtab": "Verginin hesablanmas\u0131", + "label": "\u018fv\u0259zl\u0259\u015fdiril\u0259n" }, { - "fieldname": "dəqiqləşdirilən", + "fieldname": "d\u0259qiql\u0259\u015fdiril\u0259n", "fieldtype": "Tab Break", - "js_parent_subtab": "Verginin hesablanması", - "label": "Dəqiqləşdirilən" + "js_parent_subtab": "Verginin hesablanmas\u0131", + "label": "D\u0259qiql\u0259\u015fdiril\u0259n" }, { - "fieldname": "hesablaşmalar", + "fieldname": "hesabla\u015fmalar", "fieldtype": "Tab Break", - "js_parent_subtab": "Verginin hesablanması", - "label": "Hesablaşmalar" + "js_parent_subtab": "Verginin hesablanmas\u0131", + "label": "Hesabla\u015fmalar" }, { "fieldname": "html_fokz", "fieldtype": "HTML", - "options": "

01.01.2022-ci il tarixədək topdan və pərakəndə satış üçün ƏDV ödəməklə əldə edilmiş və müvafiq əvəzləşmə alınmış, lakin satılmamış kənd təsərrüfatı məhsullarının (yerli və xarici mənşəli) hərəkəti barədə məlumat

" + "options": "

01.01.2022-ci il tarix\u0259d\u0259k topdan v\u0259 p\u0259rak\u0259nd\u0259 sat\u0131\u015f \u00fc\u00e7\u00fcn \u018fDV \u00f6d\u0259m\u0259kl\u0259 \u0259ld\u0259 edilmi\u015f v\u0259 m\u00fcvafiq \u0259v\u0259zl\u0259\u015fm\u0259 al\u0131nm\u0131\u015f, lakin sat\u0131lmam\u0131\u015f k\u0259nd t\u0259s\u0259rr\u00fcfat\u0131 m\u0259hsullar\u0131n\u0131n (yerli v\u0259 xarici m\u0259n\u015f\u0259li) h\u0259r\u0259k\u0259ti bar\u0259d\u0259 m\u0259lumat

" }, { "fieldname": "html_bjil", "fieldtype": "HTML", - "options": "

Azərbaycan Respublikası ərazisində istehsal olunan kənd təsərrüfatı məhsullarının pərakəndə satışı üçün alınmış malların hərəkəti barədə məlumat

\n\n\n" - }, - { - "fieldname": "table_fdbw", - "fieldtype": "Table", - "options": "Declaration of value added tax Elave 2 Hisse 1" + "options": "

Az\u0259rbaycan Respublikas\u0131 \u0259razisind\u0259 istehsal olunan k\u0259nd t\u0259s\u0259rr\u00fcfat\u0131 m\u0259hsullar\u0131n\u0131n p\u0259rak\u0259nd\u0259 sat\u0131\u015f\u0131 \u00fc\u00e7\u00fcn al\u0131nm\u0131\u015f mallar\u0131n h\u0259r\u0259k\u0259ti bar\u0259d\u0259 m\u0259lumat

\n\n\n" }, { "fieldname": "html_krqo", "fieldtype": "HTML", - "options": "

Hissə 2. Hesabat dövrü üzrə satılmış kənd təsərrüfatı məhsullarının ticarət əlavəsi barədə məlumat

" + "options": "

Hiss\u0259 2. Hesabat d\u00f6vr\u00fc \u00fczr\u0259 sat\u0131lm\u0131\u015f k\u0259nd t\u0259s\u0259rr\u00fcfat\u0131 m\u0259hsullar\u0131n\u0131n ticar\u0259t \u0259lav\u0259si bar\u0259d\u0259 m\u0259lumat

" }, { - "fieldname": "table_anob", - "fieldtype": "Table", - "options": "Declaration of value added tax Bolme 3" - }, - { - "fieldname": "ədvtutulandövriyyəbarədəməlumat", + "fieldname": "\u0259dvtutuland\u00f6vriyy\u0259bar\u0259d\u0259m\u0259lumat", "fieldtype": "Tab Break", - "js_parent_subtab": "Əlavə 3", - "label": "ƏDV tutulan dövriyyə barədə məlumat" + "js_parent_subtab": "\u018flav\u0259 3", + "label": "\u018fDV tutulan d\u00f6vriyy\u0259 bar\u0259d\u0259 m\u0259lumat" }, { - "fieldname": "ədvtutulanəməliyyatsayılmayandövriyyəbarədəməlumat", + "fieldname": "\u0259dvtutulan\u0259m\u0259liyyatsay\u0131lmayand\u00f6vriyy\u0259bar\u0259d\u0259m\u0259lumat", "fieldtype": "Tab Break", - "js_parent_subtab": "Əlavə 3", - "label": "ƏDV tutulan əməliyyat sayılmayan dövriyyə barədə məlumat" - }, - { - "fieldname": "table_pycw", - "fieldtype": "Table", - "options": "Declaration of value added tax Elave3 2ci" + "js_parent_subtab": "\u018flav\u0259 3", + "label": "\u018fDV tutulan \u0259m\u0259liyyat say\u0131lmayan d\u00f6vriyy\u0259 bar\u0259d\u0259 m\u0259lumat" }, { "fieldname": "section_break_gzyr", "fieldtype": "Section Break" }, - { - "fieldname": "table_hnwx", - "fieldtype": "Table", - "options": "Declaration of value added tax Elave 4" - }, { "fieldname": "section_break_zyqi", "fieldtype": "Section Break" }, { - "fieldname": "table_bchc", - "fieldtype": "Table", - "options": "Declaration of value added tax Elave 5" - }, - { - "fieldname": "ədvsizməbləğ", + "fieldname": "\u0259dvsizm\u0259bl\u0259\u011f", "fieldtype": "Float", - "precision": "2", - "label": "ƏDV-siz məbləğ" + "label": "\u018fDV-siz m\u0259bl\u0259\u011f", + "precision": "2" }, { - "fieldname": "20liədvməbləği", + "fieldname": "20li\u0259dvm\u0259bl\u0259\u011fi", "fieldtype": "Float", - "precision": "2", - "label": "20%-li ƏDV məbləği" + "label": "20%-li \u018fDV m\u0259bl\u0259\u011fi", + "precision": "2" }, { - "fieldname": "ədvsizməbləğ2", + "fieldname": "\u0259dvsizm\u0259bl\u0259\u011f2", "fieldtype": "Float", - "precision": "2", - "label": "ƏDV-siz məbləğ" + "label": "\u018fDV-siz m\u0259bl\u0259\u011f", + "precision": "2" }, { - "fieldname": "20liədvməbləği2", + "fieldname": "20li\u0259dvm\u0259bl\u0259\u011fi2", "fieldtype": "Float", - "precision": "2", - "label": "20%-li ƏDV məbləği" + "label": "20%-li \u018fDV m\u0259bl\u0259\u011fi", + "precision": "2" }, { - "fieldname": "ciiltarixinəkreditorqalığıncarihesabatayındaödənilmişdəyəri", + "fieldname": "ciiltarixin\u0259kreditorqal\u0131\u011f\u0131ncarihesabatay\u0131nda\u00f6d\u0259nilmi\u015fd\u0259y\u0259ri", "fieldtype": "Section Break", - "label": "01.01.2001-ci il tarixinə kreditor qalığın cari hesabat ayında ödənilmiş dəyəri" + "label": "01.01.2001-ci il tarixin\u0259 kreditor qal\u0131\u011f\u0131n cari hesabat ay\u0131nda \u00f6d\u0259nilmi\u015f d\u0259y\u0259ri" }, { - "fieldname": "01012001ciiltarixinəkreditorqalığın", + "fieldname": "01012001ciiltarixin\u0259kreditorqal\u0131\u011f\u0131n", "fieldtype": "Section Break", - "label": "01.01.2001-ci il tarixinə kreditor qalığın ##.##.####-ci il tarixinə qalıq məbləği" + "label": "01.01.2001-ci il tarixin\u0259 kreditor qal\u0131\u011f\u0131n ##.##.####-ci il tarixin\u0259 qal\u0131q m\u0259bl\u0259\u011fi" }, { "fieldname": "date_fcfr", @@ -601,14 +558,9 @@ "fieldtype": "Section Break" }, { - "fieldname": "table_vonn", - "fieldtype": "Table", - "options": "Declaration of value added tax Elave 7" - }, - { - "fieldname": "büdcəyəödənilmişdəyərinədvsizvəədvməbləğinincəmi", + "fieldname": "b\u00fcdc\u0259y\u0259\u00f6d\u0259nilmi\u015fd\u0259y\u0259rin\u0259dvsizv\u0259\u0259dvm\u0259bl\u0259\u011fininc\u0259mi", "fieldtype": "Section Break", - "label": "Büdcəyə ödənilmiş dəyərin (ƏDV-siz) və ƏDV məbləğinin CƏMİ" + "label": "B\u00fcdc\u0259y\u0259 \u00f6d\u0259nilmi\u015f d\u0259y\u0259rin (\u018fDV-siz) v\u0259 \u018fDV m\u0259bl\u0259\u011finin C\u018fM\u0130" }, { "fieldname": "int_homh", @@ -625,25 +577,15 @@ "precision": "2" }, { - "fieldname": "müəssisənintəqdimetdiyisertifikatlar", + "fieldname": "m\u00fc\u0259ssis\u0259nint\u0259qdimetdiyisertifikatlar", "fieldtype": "Tab Break", - "js_parent_subtab": "Əlavə 8", - "label": "Müəssisənin təqdim etdiyi sertifikatlar" - }, - { - "fieldname": "table_kmis", - "fieldtype": "Table", - "options": "Declaration of value added tax Elave 8 1ci" + "js_parent_subtab": "\u018flav\u0259 8", + "label": "M\u00fc\u0259ssis\u0259nin t\u0259qdim etdiyi sertifikatlar" }, { "fieldname": "section_break_ftyx", "fieldtype": "Section Break" }, - { - "fieldname": "table_gpfh", - "fieldtype": "Table", - "options": "Declaration of value added tax Elave 9" - }, { "fieldname": "section_break_tflh", "fieldtype": "Section Break" @@ -673,12 +615,12 @@ { "fieldname": "html_qefu", "fieldtype": "HTML", - "options": "

Obyekt üzrə təqdim edilmiş malların (işlərin, xidmətlərin) dəyəri (manatla) CƏMİ

" + "options": "

Obyekt \u00fczr\u0259 t\u0259qdim edilmi\u015f mallar\u0131n (i\u015fl\u0259rin, xidm\u0259tl\u0259rin) d\u0259y\u0259ri (manatla) C\u018fM\u0130

" }, { "fieldname": "html_gvfa", "fieldtype": "HTML", - "options": "

Obyekt üzrə təqdim edilmiş mallara (işlərin, xidmətlərin) görə əldə edilmiş hasilat məbləği (manatla) CƏMİ

" + "options": "

Obyekt \u00fczr\u0259 t\u0259qdim edilmi\u015f mallara (i\u015fl\u0259rin, xidm\u0259tl\u0259rin) g\u00f6r\u0259 \u0259ld\u0259 edilmi\u015f hasilat m\u0259bl\u0259\u011fi (manatla) C\u018fM\u0130

" }, { "fieldname": "section_break_fpyw", @@ -687,37 +629,27 @@ { "fieldname": "html_dlcr", "fieldtype": "HTML", - "options": "

Hissə 1 Cari hesabat dövründə müəssisəsinin təqdim etdiyi şəhadətnamələr üzrə aldığı malların (işlərin, xidmətlərin) dəyəri barədə məlumat

" + "options": "

Hiss\u0259 1 Cari hesabat d\u00f6vr\u00fcnd\u0259 m\u00fc\u0259ssis\u0259sinin t\u0259qdim etdiyi \u015f\u0259had\u0259tnam\u0259l\u0259r \u00fczr\u0259 ald\u0131\u011f\u0131 mallar\u0131n (i\u015fl\u0259rin, xidm\u0259tl\u0259rin) d\u0259y\u0259ri bar\u0259d\u0259 m\u0259lumat

" }, { "fieldname": "section_break_wval", "fieldtype": "Section Break" }, { - "fieldname": "table_bgay", - "fieldtype": "Table", - "options": "Declaration of value added tax Elave 10 1ci" - }, - { - "fieldname": "cəmi1", + "fieldname": "c\u0259mi1", "fieldtype": "Float", - "precision": "2", - "label": "Cəmi" + "label": "C\u0259mi", + "precision": "2" }, { "fieldname": "section_break_ibeu", "fieldtype": "Section Break" }, { - "fieldname": "table_hnbv", - "fieldtype": "Table", - "options": "Declaration of value added tax Elave 10 2ci" - }, - { - "fieldname": "cəmi2", + "fieldname": "c\u0259mi2", "fieldtype": "Float", - "precision": "2", - "label": "Cəmi" + "label": "C\u0259mi", + "precision": "2" }, { "fieldname": "section_break_ldfi", @@ -726,28 +658,23 @@ { "fieldname": "html_jiwg", "fieldtype": "HTML", - "options": "

Hissə 2 Cari hesabat dövründə müəssisəsinin aldığı şəhadətnamə üzrə təqdim etdiyi malın (gördüyü işin, göstərdiyi xidmətin) dəyəri barədə məlumat

" + "options": "

Hiss\u0259 2 Cari hesabat d\u00f6vr\u00fcnd\u0259 m\u00fc\u0259ssis\u0259sinin ald\u0131\u011f\u0131 \u015f\u0259had\u0259tnam\u0259 \u00fczr\u0259 t\u0259qdim etdiyi mal\u0131n (g\u00f6rd\u00fcy\u00fc i\u015fin, g\u00f6st\u0259rdiyi xidm\u0259tin) d\u0259y\u0259ri bar\u0259d\u0259 m\u0259lumat

" }, { - "fieldname": "müəssisəninaldığısertifikatlarüzrətəqdimetdiyimalındəyəri", + "fieldname": "m\u00fc\u0259ssis\u0259ninald\u0131\u011f\u0131sertifikatlar\u00fczr\u0259t\u0259qdimetdiyimal\u0131nd\u0259y\u0259ri", "fieldtype": "Tab Break", - "js_parent_subtab": "Əlavə 8", - "label": "Müəssisənin aldığı sertifikatlar üzrə təqdim etdiyi malın (görülmüş işin, göstərilmiş xidmətin) dəyəri" - }, - { - "fieldname": "table_twws", - "fieldtype": "Table", - "options": "Declaration of value added tax Elave 8 2ci" + "js_parent_subtab": "\u018flav\u0259 8", + "label": "M\u00fc\u0259ssis\u0259nin ald\u0131\u011f\u0131 sertifikatlar \u00fczr\u0259 t\u0259qdim etdiyi mal\u0131n (g\u00f6r\u00fclm\u00fc\u015f i\u015fin, g\u00f6st\u0259rilmi\u015f xidm\u0259tin) d\u0259y\u0259ri" }, { "fieldname": "section_break_qiyd", "fieldtype": "Section Break" }, { - "fieldname": "sertifikathesabatdövründəmalındəyərininsəhifəsicəmi", + "fieldname": "sertifikathesabatd\u00f6vr\u00fcnd\u0259mal\u0131nd\u0259y\u0259rinins\u0259hif\u0259sic\u0259mi", "fieldtype": "Float", - "precision": "2", - "label": "Sertifikat üzrə hesabat dövründə təqdim edilmiş malın (görülmüş işin, göstərilmiş xidmətin) dəyərinin bu səhifəsi üzrə CƏMİ" + "label": "Sertifikat \u00fczr\u0259 hesabat d\u00f6vr\u00fcnd\u0259 t\u0259qdim edilmi\u015f mal\u0131n (g\u00f6r\u00fclm\u00fc\u015f i\u015fin, g\u00f6st\u0259rilmi\u015f xidm\u0259tin) d\u0259y\u0259rinin bu s\u0259hif\u0259si \u00fczr\u0259 C\u018fM\u0130", + "precision": "2" }, { "fieldname": "debitor_borc", @@ -755,12 +682,12 @@ "options": "Declaration of value added tax Debitor borclar" }, { - "fieldname": "hesabat_dövriyyəsi", + "fieldname": "hesabat_d\u00f6vriyy\u0259si", "fieldtype": "Table", "options": "Declaration of value added tax Hesabat Dovriyye uzre" }, { - "fieldname": "əlavə_3_1", + "fieldname": "\u0259lav\u0259_3_1", "fieldtype": "Table", "options": "Declaration of value added tax Elave3 1ci" }, @@ -768,8 +695,8 @@ "fieldname": "rub_not_use", "fieldtype": "Select", "hidden": 1, - "label": "Rüb", - "options": "1. Rüb\n2. Rüb\n3. Rüb\n4. Rüb", + "label": "R\u00fcb", + "options": "1. R\u00fcb\n2. R\u00fcb\n3. R\u00fcb\n4. R\u00fcb", "read_only": 1 }, { @@ -788,11 +715,6 @@ "fieldname": "section_break_mwdd", "fieldtype": "Section Break" }, - { - "fieldname": "table_zedr", - "fieldtype": "Table", - "options": "Declaration of value added tax Elave 2 Hisse 2" - }, { "fieldname": "section_break_rpyz", "fieldtype": "Section Break" @@ -808,12 +730,130 @@ { "fieldname": "html_nnwk", "fieldtype": "HTML", - "options": "

Hissə 1. Hesabat dövrü ərzində alınmış və idxal olunmuş mallar barədə məlumat

" + "options": "

Hiss\u0259 1. Hesabat d\u00f6vr\u00fc \u0259rzind\u0259 al\u0131nm\u0131\u015f v\u0259 idxal olunmu\u015f mallar bar\u0259d\u0259 m\u0259lumat

" + }, + { + "fieldname": "\u0259lav\u0259_1", + "fieldtype": "Table", + "options": "Declaration of value added tax Elave1 Cari hesabat" + }, + { + "fieldname": "\u0259lav\u0259_1_2", + "fieldtype": "Table", + "options": "Declaration of value added tax Elave1 Cari hesabat 2" + }, + { + "fieldname": "\u0259lav\u0259_2", + "fieldtype": "Table", + "options": "Declaration of value added tax Elave 2 Hisse 1" + }, + { + "fieldname": "\u0259lav\u0259_2_2", + "fieldtype": "Table", + "options": "Declaration of value added tax Elave 2 Hisse 2" + }, + { + "fieldname": "\u0259lav\u0259_2_3", + "fieldtype": "Table", + "options": "Declaration of value added tax Bolme 3" + }, + { + "fieldname": "\u0259lav\u0259_4", + "fieldtype": "Table", + "options": "Declaration of value added tax Elave 4" + }, + { + "fieldname": "\u0259lav\u0259_5", + "fieldtype": "Table", + "options": "Declaration of value added tax Elave 5" + }, + { + "fieldname": "\u0259lav\u0259_7", + "fieldtype": "Table", + "options": "Declaration of value added tax Elave 7" + }, + { + "fieldname": "\u0259lav\u0259_9", + "fieldtype": "Table", + "options": "Declaration of value added tax Elave 9" + }, + { + "fieldname": "\u0259lav\u0259_10", + "fieldtype": "Table", + "options": "Declaration of value added tax Elave 10 1ci" + }, + { + "fieldname": "\u0259lav\u0259_10_2", + "fieldtype": "Table", + "options": "Declaration of value added tax Elave 10 2ci" + }, + { + "fieldname": "\u0259lav\u0259_3_2", + "fieldtype": "Table", + "options": "Declaration of value added tax Elave3 2ci" + }, + { + "fieldname": "m\u00fc\u0259ssis\u0259_sertifikat", + "fieldtype": "Table", + "options": "Declaration of value added tax Elave 8 1ci" + }, + { + "fieldname": "m\u00fc\u0259ssis\u0259_mal\u0131n_d\u0259y\u0259ri", + "fieldtype": "Table", + "options": "Declaration of value added tax Elave 8 2ci" + }, + { + "fieldname": "\u0259v\u0259zl\u0259\u015fdiril\u0259n_table", + "fieldtype": "Table", + "options": "Declaration of value added tax Evezlesdirilen" + }, + { + "fieldname": "d\u0259qiql\u0259\u015fdiril\u0259n_table", + "fieldtype": "Table", + "options": "Declaration of value added tax Deqiqlesdirilen" + }, + { + "fieldname": "hesabla\u015fmalar_table", + "fieldtype": "Table", + "options": "Declaration of value added tax Hesablasmalar" + }, + { + "fieldname": "\u0259lav\u02591_tab", + "fieldtype": "Tab Break", + "label": "\u0259lav\u0259 1" + }, + { + "fieldname": "html_kkmf", + "fieldtype": "HTML", + "options": "

\u018fv\u0259zl\u0259\u015fdirm\u0259 \u00fc\u00e7\u00fcn elektron qaim\u0259l\u0259r

" + }, + { + "fieldname": "section_break_daro", + "fieldtype": "Section Break" + }, + { + "fieldname": "section_break_wthk", + "fieldtype": "Section Break" + }, + { + "fieldname": "c\u0259mi", + "fieldtype": "Heading", + "label": "C\u018fM\u0130" + }, + { + "fieldname": "\u0259lav\u02591_yeni", + "fieldtype": "Table", + "options": "Declaration of value added tax yeni elave 1" + }, + { + "fieldname": "\u0259lav\u02591_2_yeni", + "fieldtype": "Table", + "options": "Declaration of value added tax yeni elave 1_2" } ], "index_web_pages_for_search": 1, "links": [], - "modified": "2025-08-01 16:09:14.810638", + "modified": "2026-02-04 18:57:11.904261", "modified_by": "Administrator", "module": "Taxes Az", "name": "Declaration of value added tax", @@ -832,7 +872,8 @@ "write": 1 } ], + "row_format": "Dynamic", "sort_field": "modified", "sort_order": "DESC", "states": [] -} \ No newline at end of file +} diff --git a/taxes_az/taxes_az/doctype/declaration_of_value_added_tax_elave_4/declaration_of_value_added_tax_elave_4.json b/taxes_az/taxes_az/doctype/declaration_of_value_added_tax_elave_4/declaration_of_value_added_tax_elave_4.json index 1587b50..744725d 100644 --- a/taxes_az/taxes_az/doctype/declaration_of_value_added_tax_elave_4/declaration_of_value_added_tax_elave_4.json +++ b/taxes_az/taxes_az/doctype/declaration_of_value_added_tax_elave_4/declaration_of_value_added_tax_elave_4.json @@ -16,34 +16,35 @@ "fieldtype": "Select", "in_list_view": 1, "label": "G\u00f6st\u0259ricil\u0259r", - "options": "302. \u018fDV-y\u0259 s\u0131f\u0131r(0) d\u0259r\u0259c\u0259 il\u0259 c\u0259lb edil\u0259n \u0259m\u0259liyyatlar\u0131n m\u0259bl\u0259\u011fi C\u018fM\u0130\n302.1 VM-nin 165.1.1-ci madd\u0259sin\u0259 \u0259sas\u0259n Az\u0259rbaycan Respublikas\u0131nda akkredit\u0259 edilmi\u015f beyn\u0259lxalq t\u0259\u015fkilatlar\u0131n v\u0259 xarici \u00f6lk\u0259l\u0259rin diplomatik v\u0259 konsulluq n\u00fcmay\u0259nd\u0259likl\u0259rinin r\u0259smi istifad\u0259si, h\u0259m\u00e7inin, bu n\u00fcmay\u0259nd\u0259likl\u0259rin m\u00fcvafiq statuslu Az\u0259rbaycan Respublikas\u0131n\u0131n v\u0259t\u0259nda\u015f\u0131 olmayan diplomatik v\u0259 inzibati-texniki i\u015f\u00e7il\u0259rinin, o c\u00fcml\u0259d\u0259n onlarla ya\u015fayan ail\u0259 \u00fczvl\u0259rinin \u015f\u0259xsi istifad\u0259si \u00fc\u00e7\u00fcn n\u0259z\u0259rd\u0259 tutulan mallar v\u0259 xidm\u0259tl\u0259r\n302.2 VM-nin 165.1.2-ci madd\u0259sin\u0259 \u0259sas\u0259n qrant m\u00fcqavil\u0259si (q\u0259rar\u0131) \u0259sas\u0131nda xaricd\u0259n al\u0131nan qrantlar hesab\u0131na mallar\u0131n idxal\u0131, qrant \u00fczr\u0259 resipiyentl\u0259r\u0259 mallar\u0131n t\u0259qdim edilm\u0259si, i\u015fl\u0259rin g\u00f6r\u00fclm\u0259si v\u0259 xidm\u0259tl\u0259rin g\u00f6st\u0259rilm\u0259si\n302.3 VM-nin 165.1.3-c\u00fc madd\u0259sin\u0259 \u0259sas\u0259n apar\u0131lan \u0259m\u0259liyyatlar\n302.3.1. VM-nin 165.1.3-c\u00fc madd\u0259sin\u0259 \u0259sas\u0259n mallar\u0131n ixrac\u0131 \u00fczr\u0259 apar\u0131lm\u0131\u015f \u0259m\u0259liyyatlar\n302.3.2. VM-nin 165.1.3-c\u00fc madd\u0259sin\u0259 \u0259sas\u0259n bu M\u0259c\u0259ll\u0259nin 168.1.5-ci madd\u0259sind\u0259 g\u00f6st\u0259rilmi\u015f xidm\u0259tl\u0259rin ixrac\u0131 \u00fczr\u0259 apar\u0131lm\u0131\u015f \u0259m\u0259liyyatlar\n302.4 VM-nin 165.1.4-c\u00fc madd\u0259sin\u0259 \u0259sas\u0259n beyn\u0259lxalq po\u00e7t xidm\u0259tl\u0259ri istisna olmaqla, beyn\u0259lxalq v\u0259 tranzit y\u00fck v\u0259 s\u0259rni\u015fin da\u015f\u0131nmas\u0131, habel\u0259 tranzit y\u00fck da\u015f\u0131nmas\u0131 il\u0259 bilavasit\u0259 ba\u011fl\u0131 y\u00fck a\u015f\u0131r\u0131lma xidm\u0259ti. Beyn\u0259lxalq v\u0259 tranzit u\u00e7u\u015flarla bilavasit\u0259 ba\u011fl\u0131 olan i\u015fl\u0259rin g\u00f6r\u00fclm\u0259si, xidm\u0259tl\u0259rin g\u00f6st\u0259rilm\u0259si\n302.5 VM-nin 165.1.5-ci madd\u0259sin\u0259 \u0259sas\u0259n Az\u0259rbaycan Respublikas\u0131n\u0131n M\u0259rk\u0259zi Bank\u0131na q\u0131z\u0131l v\u0259 dig\u0259r qiym\u0259tlil\u0259rin g\u00f6nd\u0259rilm\u0259si\n302.6 Qanunla t\u0259sdiq olunmu\u015f hasilat\u0131n pay b\u00f6lg\u00fcs\u00fc haqq\u0131nda, \u0259sas boru k\u0259m\u0259ri haqq\u0131nda v\u0259 dig\u0259r bu q\u0259bild\u0259n olan sazi\u015fl\u0259rd\u0259 v\u0259 ya qanunlarda, o c\u00fcml\u0259d\u0259n neft v\u0259 qaz haqq\u0131nda, ixrac m\u0259qs\u0259dli neft-qaz f\u0259aliyy\u0259ti haqq\u0131nda qanunlar \u00e7\u0259r\u00e7iv\u0259sind\u0259 apar\u0131lan \u0259m\u0259liyyatlar\n302.6.1 o c\u00fcml\u0259d\u0259n \u0259vv\u0259lc\u0259d\u0259n al\u0131nm\u0131\u015f \u00f6d\u0259ni\u015fl\u0259r\n302.7 T\u0259qdim edil\u0259c\u0259k mallar\u0131n (i\u015fl\u0259rin, xidm\u0259tl\u0259rin) hesab\u0131na \u0259vv\u0259lc\u0259d\u0259n al\u0131nm\u0131\u015f \u00f6d\u0259ni\u015fl\u0259r \u00fczr\u0259\n302.8 Vergi M\u0259c\u0259ll\u0259sinin 165.1.9-cu madd\u0259sin\u0259 \u0259sas\u0259n apar\u0131lan \u0259m\u0259liyyatlar\n302.9 Vergi M\u0259c\u0259ll\u0259sinin 165.1.10-cu madd\u0259sin\u0259 \u0259sas\u0259n m\u00fc\u0259ssis\u0259nin nizamnam\u0259 fonduna (kapital\u0131na) pay \u015f\u0259klind\u0259 \u0259sas v\u0259saitin qoyulmas\u0131 (\u0259sas v\u0259saitin pay \u015f\u0259klind\u0259 qoyulu\u015fu, onun m\u00fcqabilind\u0259 bilavasit\u0259 dig\u0259r \u0259mlak\u0131n \u0259ld\u0259 edilm\u0259si il\u0259 \u0259laq\u0259dar olmad\u0131qda)\u0259m\u0259liyyatlar\n302.10 X\u00fcsusi iqtisadi zonalar haqq\u0131nda qanunlar \u00e7\u0259r\u00e7iv\u0259sind\u0259 apar\u0131lan \u0259m\u0259liyyatlar \u00fczr\u0259\n302.11 Az\u0259rbaycan Respublikas\u0131n\u0131n t\u0259r\u0259fdar \u00e7\u0131xd\u0131\u011f\u0131 beyn\u0259lxalq m\u00fcqavil\u0259l\u0259r \u00fczr\u0259\n302-1 Elektron ticar\u0259t \u00fczr\u0259 \u018fDV-y\u0259 s\u0131f\u0131r (0) d\u0259r\u0259c\u0259 il\u0259 c\u0259lb edil\u0259n \u0259m\u0259liyyatlar\n302-2 P\u0259rak\u0259nd\u0259 ticar\u0259t \u00fczr\u0259 \u018fDV-y\u0259 s\u0131f\u0131r (0) d\u0259r\u0259c\u0259 il\u0259 c\u0259lb edil\u0259n \u0259m\u0259liyyatlar\n302-3 Topdan ticar\u0259t \u00fczr\u0259 \u018fDV-y\u0259 s\u0131f\u0131r (0) d\u0259r\u0259c\u0259 il\u0259 c\u0259lb edil\u0259n \u0259m\u0259liyyatlar", + "options": "302. \u018fDV-y\u0259 s\u0131f\u0131r(0) d\u0259r\u0259c\u0259 il\u0259 c\u0259lb edil\u0259n \u0259m\u0259liyyatlar\u0131n m\u0259bl\u0259\u011fi C\u018fM\u0130\n302.1 VM-nin 165.1.1-ci madd\u0259sin\u0259 \u0259sas\u0259n Az\u0259rbaycan Respublikas\u0131nda akkredit\u0259 edilmi\u015f beyn\u0259lxalq t\u0259\u015fkilatlar\u0131n v\u0259 xarici \u00f6lk\u0259l\u0259rin diplomatik v\u0259 konsulluq n\u00fcmay\u0259nd\u0259likl\u0259rinin r\u0259smi istifad\u0259si, h\u0259m\u00e7inin, bu n\u00fcmay\u0259nd\u0259likl\u0259rin m\u00fcvafiq statuslu Az\u0259rbaycan Respublikas\u0131n\u0131n v\u0259t\u0259nda\u015f\u0131 olmayan diplomatik v\u0259 inzibati-texniki i\u015f\u00e7il\u0259rinin, o c\u00fcml\u0259d\u0259n onlarla ya\u015fayan ail\u0259 \u00fczvl\u0259rinin \u015f\u0259xsi istifad\u0259si \u00fc\u00e7\u00fcn n\u0259z\u0259rd\u0259 tutulan mallar v\u0259 xidm\u0259tl\u0259r\n302.2 VM-nin 165.1.2-ci madd\u0259sin\u0259 \u0259sas\u0259n qrant m\u00fcqavil\u0259si (q\u0259rar\u0131) \u0259sas\u0131nda xaricd\u0259n al\u0131nan qrantlar hesab\u0131na mallar\u0131n idxal\u0131, qrant \u00fczr\u0259 resipiyentl\u0259r\u0259 mallar\u0131n t\u0259qdim edilm\u0259si, i\u015fl\u0259rin g\u00f6r\u00fclm\u0259si v\u0259 xidm\u0259tl\u0259rin g\u00f6st\u0259rilm\u0259si\n302.3 VM-nin 165.1.3-c\u00fc madd\u0259sin\u0259 \u0259sas\u0259n apar\u0131lan \u0259m\u0259liyyatlar\n302.3.1. VM-nin 165.1.3-c\u00fc madd\u0259sin\u0259 \u0259sas\u0259n mallar\u0131n ixrac\u0131 \u00fczr\u0259 apar\u0131lm\u0131\u015f \u0259m\u0259liyyatlar\n302.3.2. VM-nin 165.1.3-c\u00fc madd\u0259sin\u0259 \u0259sas\u0259n bu M\u0259c\u0259ll\u0259nin 168.1.5-ci madd\u0259sind\u0259 g\u00f6st\u0259rilmi\u015f xidm\u0259tl\u0259rin ixrac\u0131 \u00fczr\u0259 apar\u0131lm\u0131\u015f \u0259m\u0259liyyatlar\n302.4 VM-nin 165.1.4-c\u00fc madd\u0259sin\u0259 \u0259sas\u0259n beyn\u0259lxalq po\u00e7t xidm\u0259tl\u0259ri istisna olmaqla, beyn\u0259lxalq v\u0259 tranzit y\u00fck v\u0259 s\u0259rni\u015fin da\u015f\u0131nmas\u0131, habel\u0259 tranzit y\u00fck da\u015f\u0131nmas\u0131 il\u0259 bilavasit\u0259 ba\u011fl\u0131 y\u00fck a\u015f\u0131r\u0131lma xidm\u0259ti. Beyn\u0259lxalq v\u0259 tranzit u\u00e7u\u015flarla bilavasit\u0259 ba\u011fl\u0131 olan i\u015fl\u0259rin g\u00f6r\u00fclm\u0259si, xidm\u0259tl\u0259rin g\u00f6st\u0259rilm\u0259si\n302.5 VM-nin 165.1.5-ci madd\u0259sin\u0259 \u0259sas\u0259n Az\u0259rbaycan Respublikas\u0131n\u0131n M\u0259rk\u0259zi Bank\u0131na q\u0131z\u0131l v\u0259 dig\u0259r qiym\u0259tlil\u0259rin g\u00f6nd\u0259rilm\u0259si\n302.6 Qanunla t\u0259sdiq olunmu\u015f hasilat\u0131n pay b\u00f6lg\u00fcs\u00fc haqq\u0131nda, \u0259sas boru k\u0259m\u0259ri haqq\u0131nda v\u0259 dig\u0259r bu q\u0259bild\u0259n olan sazi\u015fl\u0259rd\u0259 v\u0259 ya qanunlarda, o c\u00fcml\u0259d\u0259n neft v\u0259 qaz haqq\u0131nda, ixrac m\u0259qs\u0259dli neft-qaz f\u0259aliyy\u0259ti haqq\u0131nda qanunlar \u00e7\u0259r\u00e7iv\u0259sind\u0259 apar\u0131lan \u0259m\u0259liyyatlar\n302.6.1 o c\u00fcml\u0259d\u0259n \u0259vv\u0259lc\u0259d\u0259n al\u0131nm\u0131\u015f \u00f6d\u0259ni\u015fl\u0259r\n302.7 T\u0259qdim edil\u0259c\u0259k mallar\u0131n (i\u015fl\u0259rin, xidm\u0259tl\u0259rin) hesab\u0131na \u0259vv\u0259lc\u0259d\u0259n al\u0131nm\u0131\u015f \u00f6d\u0259ni\u015fl\u0259r \u00fczr\u0259\n302.8 Vergi M\u0259c\u0259ll\u0259sinin 165.1.9-cu madd\u0259sin\u0259 \u0259sas\u0259n apar\u0131lan \u0259m\u0259liyyatlar\n302.9 Vergi M\u0259c\u0259ll\u0259sinin 165.1.10-cu madd\u0259sin\u0259 \u0259sas\u0259n m\u00fc\u0259ssis\u0259nin nizamnam\u0259 fonduna (kapital\u0131na) pay \u015f\u0259klind\u0259 \u0259sas v\u0259saitin qoyulmas\u0131 (\u0259sas v\u0259saitin pay \u015f\u0259klind\u0259 qoyulu\u015fu, onun m\u00fcqabilind\u0259 bilavasit\u0259 dig\u0259r \u0259mlak\u0131n \u0259ld\u0259 edilm\u0259si il\u0259 \u0259laq\u0259dar olmad\u0131qda)\u0259m\u0259liyyatlar\n302.10 Vergi M\u0259c\u0259ll\u0259sinin 165.1.11-ci madd\u0259sin\u0259 \u0259sas\u0259n apar\u0131lan \u0259m\u0259liyyatlar\n302.11 X\u00fcsusi iqtisadi zonalar haqq\u0131nda qanunlar \u00e7\u0259r\u00e7iv\u0259sind\u0259 apar\u0131lan \u0259m\u0259liyyatlar \u00fczr\u0259\n302.12 Az\u0259rbaycan Respublikas\u0131n\u0131n t\u0259r\u0259fdar \u00e7\u0131xd\u0131\u011f\u0131 beyn\u0259lxalq m\u00fcqavil\u0259l\u0259r \u00fczr\u0259\n302-1 Elektron ticar\u0259t \u00fczr\u0259 \u018fDV-y\u0259 s\u0131f\u0131r (0) d\u0259r\u0259c\u0259 il\u0259 c\u0259lb edil\u0259n \u0259m\u0259liyyatlar\n302-2 P\u0259rak\u0259nd\u0259 ticar\u0259t \u00fczr\u0259 \u018fDV-y\u0259 s\u0131f\u0131r (0) d\u0259r\u0259c\u0259 il\u0259 c\u0259lb edil\u0259n \u0259m\u0259liyyatlar\n302-3 Topdan ticar\u0259t \u00fczr\u0259 \u018fDV-y\u0259 s\u0131f\u0131r (0) d\u0259r\u0259c\u0259 il\u0259 c\u0259lb edil\u0259n \u0259m\u0259liyyatlar", "read_only": 1 }, { "fieldname": "t\u0259qdimedilmi\u015fmali\u015fv\u0259xidm\u0259tl\u0259rind\u0259y\u0259ri", "fieldtype": "Float", - "precision": "2", "in_list_view": 1, - "label": "T\u0259qdim edilmi\u015f mal, i\u015f v\u0259 xidm\u0259tl\u0259rin d\u0259y\u0259ri" + "label": "T\u0259qdim edilmi\u015f mal, i\u015f v\u0259 xidm\u0259tl\u0259rin d\u0259y\u0259ri", + "precision": "2" }, { "fieldname": "daxilolmu\u015fm\u0259bl\u0259\u011f", "fieldtype": "Float", - "precision": "2", "in_list_view": 1, - "label": "Daxil olmu\u015f m\u0259bl\u0259\u011f" + "label": "Daxil olmu\u015f m\u0259bl\u0259\u011f", + "precision": "2" } ], "index_web_pages_for_search": 1, "istable": 1, "links": [], - "modified": "2025-02-03 15:29:26.360542", + "modified": "2026-02-04 21:54:39.083244", "modified_by": "Administrator", "module": "Taxes Az", "name": "Declaration of value added tax Elave 4", "owner": "Administrator", "permissions": [], + "row_format": "Dynamic", "sort_field": "modified", "sort_order": "DESC", "states": [] -} \ No newline at end of file +} diff --git a/taxes_az/taxes_az/doctype/declaration_of_value_added_tax_yeni_elave_1/__init__.py b/taxes_az/taxes_az/doctype/declaration_of_value_added_tax_yeni_elave_1/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/taxes_az/taxes_az/doctype/declaration_of_value_added_tax_yeni_elave_1/declaration_of_value_added_tax_yeni_elave_1.json b/taxes_az/taxes_az/doctype/declaration_of_value_added_tax_yeni_elave_1/declaration_of_value_added_tax_yeni_elave_1.json new file mode 100644 index 0000000..61f1fc2 --- /dev/null +++ b/taxes_az/taxes_az/doctype/declaration_of_value_added_tax_yeni_elave_1/declaration_of_value_added_tax_yeni_elave_1.json @@ -0,0 +1,97 @@ +{ + "actions": [], + "allow_rename": 1, + "creation": "2026-02-04 18:41:21.897955", + "doctype": "DocType", + "editable_grid": 1, + "engine": "InnoDB", + "field_order": [ + "s\u0259tirkodu", + "qaim\u0259ninseriyas\u0131", + "qaim\u0259ninn\u00f6mr\u0259si", + "\u00fcmumim\u0259bl\u0259\u011fmanatla", + "\u0259dvm\u0259bl\u0259\u011fimanatla", + "v\u00f6enad\u0131", + "tarix", + "\u00f6d\u0259nilmi\u015f\u00fcmumim\u0259bl\u0259\u011fmanatla", + "\u00f6d\u0259nilmi\u015f\u0259dvm\u0259bl\u0259\u011fimanatla" + ], + "fields": [ + { + "fieldname": "s\u0259tirkodu", + "fieldtype": "Select", + "in_list_view": 1, + "label": "S\u0259tir kodu", + "options": "308\n314\n316" + }, + { + "fieldname": "qaim\u0259ninseriyas\u0131", + "fieldtype": "Data", + "in_list_view": 1, + "label": "Qaim\u0259nin seriyas\u0131", + "precision": "2" + }, + { + "fieldname": "qaim\u0259ninn\u00f6mr\u0259si", + "fieldtype": "Int", + "in_list_view": 1, + "label": "Qaim\u0259nin n\u00f6mr\u0259si", + "precision": "2" + }, + { + "fieldname": "\u00fcmumim\u0259bl\u0259\u011fmanatla", + "fieldtype": "Int", + "in_list_view": 1, + "label": "\u00dcmumi m\u0259bl\u0259\u011f,manatla", + "precision": "2" + }, + { + "fieldname": "\u0259dvm\u0259bl\u0259\u011fimanatla", + "fieldtype": "Int", + "in_list_view": 1, + "label": "\u018fDV m\u0259bl\u0259\u011fi,manatla", + "precision": "2" + }, + { + "fieldname": "v\u00f6enad\u0131", + "fieldtype": "Data", + "in_list_view": 1, + "label": "V\u00d6EN / Ad\u0131", + "precision": "2" + }, + { + "fieldname": "tarix", + "fieldtype": "Date", + "in_list_view": 1, + "label": "Tarix", + "precision": "2" + }, + { + "fieldname": "\u00f6d\u0259nilmi\u015f\u00fcmumim\u0259bl\u0259\u011fmanatla", + "fieldtype": "Int", + "in_list_view": 1, + "label": "\u00d6d\u0259nilmi\u015f \u00fcmumi m\u0259bl\u0259\u011f,manatla", + "precision": "2" + }, + { + "fieldname": "\u00f6d\u0259nilmi\u015f\u0259dvm\u0259bl\u0259\u011fimanatla", + "fieldtype": "Int", + "in_list_view": 1, + "label": "\u00d6d\u0259nilmi\u015f \u018fDV m\u0259bl\u0259\u011fi,manatla", + "precision": "2" + } + ], + "index_web_pages_for_search": 1, + "istable": 1, + "links": [], + "modified": "2026-02-04 18:48:15.462987", + "modified_by": "Administrator", + "module": "Taxes Az", + "name": "Declaration of value added tax yeni elave 1", + "owner": "Administrator", + "permissions": [], + "row_format": "Dynamic", + "sort_field": "modified", + "sort_order": "DESC", + "states": [] +} diff --git a/taxes_az/taxes_az/doctype/declaration_of_value_added_tax_yeni_elave_1/declaration_of_value_added_tax_yeni_elave_1.py b/taxes_az/taxes_az/doctype/declaration_of_value_added_tax_yeni_elave_1/declaration_of_value_added_tax_yeni_elave_1.py new file mode 100644 index 0000000..698850f --- /dev/null +++ b/taxes_az/taxes_az/doctype/declaration_of_value_added_tax_yeni_elave_1/declaration_of_value_added_tax_yeni_elave_1.py @@ -0,0 +1,9 @@ +# Copyright (c) 2026, Jey Soft and contributors +# For license information, please see license.txt + +# import frappe +from frappe.model.document import Document + + +class Declarationofvalueaddedtaxyenielave1(Document): + pass diff --git a/taxes_az/taxes_az/doctype/declaration_of_value_added_tax_yeni_elave_1_2/__init__.py b/taxes_az/taxes_az/doctype/declaration_of_value_added_tax_yeni_elave_1_2/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/taxes_az/taxes_az/doctype/declaration_of_value_added_tax_yeni_elave_1_2/declaration_of_value_added_tax_yeni_elave_1_2.json b/taxes_az/taxes_az/doctype/declaration_of_value_added_tax_yeni_elave_1_2/declaration_of_value_added_tax_yeni_elave_1_2.json new file mode 100644 index 0000000..a80c849 --- /dev/null +++ b/taxes_az/taxes_az/doctype/declaration_of_value_added_tax_yeni_elave_1_2/declaration_of_value_added_tax_yeni_elave_1_2.json @@ -0,0 +1,65 @@ +{ + "actions": [], + "allow_rename": 1, + "creation": "2026-02-04 18:48:40.299777", + "doctype": "DocType", + "editable_grid": 1, + "engine": "InnoDB", + "field_order": [ + "s\u0259tirkodu", + "\u00fcmumim\u0259bl\u0259\u011fmanatla", + "\u0259dvm\u0259bl\u0259\u011fimanatla", + "\u00f6d\u0259nilmi\u015f\u00fcmumim\u0259bl\u0259\u011fmanatla", + "\u00f6d\u0259nilmi\u015f\u0259dvm\u0259bl\u0259\u011fimanatla" + ], + "fields": [ + { + "fieldname": "s\u0259tirkodu", + "fieldtype": "Select", + "in_list_view": 1, + "label": "S\u0259tir kodu", + "options": "308\tVM 175.1-ci madd\u0259sin\u0259 \u0259sas\u0259n al\u0131nm\u0131\u015f elektron qaim\u0259-fakturalar (elektron vergi hesab-fakturalar) \u00fczr\u0259 na\u011fds\u0131z qaydada \u00f6d\u0259nilmi\u015f m\u0259bl\u0259\u011f\n314\tVM 175.3-c\u00fc madd\u0259sin\u0259 \u0259sas\u0259n \u0259v\u0259zl\u0259\u015fdirilm\u0259sin\u0259 yol verilm\u0259y\u0259n \u018fDV m\u0259bl\u0259\u011fi\n316\t\u018fDV s\u0131f\u0131r (0) faiz d\u0259r\u0259c\u0259si il\u0259 \u00f6d\u0259nilmi\u015f m\u0259bl\u0259\u011f" + }, + { + "fieldname": "\u00fcmumim\u0259bl\u0259\u011fmanatla", + "fieldtype": "Int", + "in_list_view": 1, + "label": "\u00dcmumi m\u0259bl\u0259\u011f,manatla", + "precision": "2" + }, + { + "fieldname": "\u0259dvm\u0259bl\u0259\u011fimanatla", + "fieldtype": "Int", + "in_list_view": 1, + "label": "\u018fDV m\u0259bl\u0259\u011fi,manatla", + "precision": "2" + }, + { + "fieldname": "\u00f6d\u0259nilmi\u015f\u00fcmumim\u0259bl\u0259\u011fmanatla", + "fieldtype": "Int", + "in_list_view": 1, + "label": "\u00d6d\u0259nilmi\u015f \u00fcmumi m\u0259bl\u0259\u011f,manatla", + "precision": "2" + }, + { + "fieldname": "\u00f6d\u0259nilmi\u015f\u0259dvm\u0259bl\u0259\u011fimanatla", + "fieldtype": "Int", + "in_list_view": 1, + "label": "\u00d6d\u0259nilmi\u015f \u018fDV m\u0259bl\u0259\u011fi,manatla", + "precision": "2" + } + ], + "index_web_pages_for_search": 1, + "istable": 1, + "links": [], + "modified": "2026-02-04 18:50:57.540374", + "modified_by": "Administrator", + "module": "Taxes Az", + "name": "Declaration of value added tax yeni elave 1_2", + "owner": "Administrator", + "permissions": [], + "row_format": "Dynamic", + "sort_field": "modified", + "sort_order": "DESC", + "states": [] +} diff --git a/taxes_az/taxes_az/doctype/declaration_of_value_added_tax_yeni_elave_1_2/declaration_of_value_added_tax_yeni_elave_1_2.py b/taxes_az/taxes_az/doctype/declaration_of_value_added_tax_yeni_elave_1_2/declaration_of_value_added_tax_yeni_elave_1_2.py new file mode 100644 index 0000000..07af702 --- /dev/null +++ b/taxes_az/taxes_az/doctype/declaration_of_value_added_tax_yeni_elave_1_2/declaration_of_value_added_tax_yeni_elave_1_2.py @@ -0,0 +1,9 @@ +# Copyright (c) 2026, Jey Soft and contributors +# For license information, please see license.txt + +# import frappe +from frappe.model.document import Document + + +class Declarationofvalueaddedtaxyenielave1_2(Document): + pass