fixed table prefix

This commit is contained in:
Ali 2025-10-28 14:03:46 +04:00
parent 530e329105
commit 7d0b445ebc
2 changed files with 8 additions and 4 deletions

View File

@ -373,8 +373,7 @@ frappe.require([
// Они будут добавлены позже вместе с другими обработчиками
// Добавляем функцию преобразования выражений
functions.push(generateTransformExpressionFunction(universal_fields, report_fields));
functions.push(generateTransformExpressionFunction(universal_fields, report_fields, table_doctypes));
// Добавляем функцию для работы с конкретными строками табличных частей
functions.push(generateTableRowAccessFunction());

View File

@ -107,7 +107,11 @@ function delete_client_script_for_doctype(doctype) {
});
}
function generateTransformExpressionFunction(universal_fields, report_fields) {
function generateTransformExpressionFunction(universal_fields, report_fields, table_doctypes) {
// Получаем список всех табличных частей динамически
const tableNames = table_doctypes ? Object.keys(table_doctypes) : [];
const tablePrefixesJson = JSON.stringify(tableNames);
return `
function transform_expression(expression, for_child_table = false, table_name = null) {
let transformed = expression;
@ -211,7 +215,8 @@ function generateTransformExpressionFunction(universal_fields, report_fields) {
}).filter(Boolean).join('\n')}
// === Обработка val() и row() ===
const tablePrefixes = ["items", "taxes", "packed_items", "payments", "advances", "timesheets", "payment_schedule", "sales_team"];
// Динамически получаем список всех табличных частей из DocType
const tablePrefixes = ${tablePrefixesJson};
for (const prefix of tablePrefixes) {
const sumPattern = new RegExp(\`sum\\\\(\${prefix}_([^)]+)\\\\)\`, 'g');