diff --git a/frappe/public/js/frappe/views/reports/report_view.js b/frappe/public/js/frappe/views/reports/report_view.js index 95a3577698..c7d001ed94 100644 --- a/frappe/public/js/frappe/views/reports/report_view.js +++ b/frappe/public/js/frappe/views/reports/report_view.js @@ -836,8 +836,15 @@ frappe.views.ReportView = class ReportView extends frappe.views.ListView { const child_table_fields = frappe.meta.get_docfields(cdt).filter(standard_fields_filter); out[cdt] = child_table_fields; - }); + // add index column for child tables + out[cdt].push({ + label: __('Index'), + fieldname: 'idx', + fieldtype: 'Int', + parent: cdt + }); + }); return out; } @@ -857,7 +864,7 @@ frappe.views.ReportView = class ReportView extends frappe.views.ListView { .map(df => ({ label: __(df.label), value: df.fieldname, - checked: this.fields.find(f => f[0] === df.fieldname) + checked: this.fields.find(f => f[0] === df.fieldname && f[1] === this.doctype) })) }); @@ -936,6 +943,15 @@ frappe.views.ReportView = class ReportView extends frappe.views.ListView { docfield = this.group_by_control.get_group_by_docfield(); } + // child table index column + if (fieldname === 'idx' && doctype !== this.doctype) { + docfield = { + label: "Index", + fieldtype: "Int", + parent: doctype, + }; + } + if (!docfield) { docfield = frappe.model.get_std_field(fieldname, true);