From c0ae1336f43cbaed5a1a226279a70252ae6500a7 Mon Sep 17 00:00:00 2001 From: "mergify[bot]" <37929162+mergify[bot]@users.noreply.github.com> Date: Wed, 23 Apr 2025 20:26:03 +0200 Subject: [PATCH] fix(Rename Tool): allow more than 500 rows (backport #47117) (#47225) Co-authored-by: Raffael Meyer <14891507+barredterra@users.noreply.github.com> fix(Rename Tool): allow more than 500 rows (#47117) --- .../doctype/rename_tool/rename_tool.js | 67 +++++++++++++++---- .../doctype/rename_tool/rename_tool.py | 9 ++- 2 files changed, 62 insertions(+), 14 deletions(-) diff --git a/erpnext/utilities/doctype/rename_tool/rename_tool.js b/erpnext/utilities/doctype/rename_tool/rename_tool.js index 1b8b2be2610..47677a62500 100644 --- a/erpnext/utilities/doctype/rename_tool/rename_tool.js +++ b/erpnext/utilities/doctype/rename_tool/rename_tool.js @@ -18,29 +18,70 @@ frappe.ui.form.on("Rename Tool", { allowed_file_types: [".csv"], }, }; - if (!frm.doc.file_to_rename) { - frm.get_field("rename_log").$wrapper.html(""); - } + + frm.trigger("render_overview"); + frm.page.set_primary_action(__("Rename"), function () { - frm.get_field("rename_log").$wrapper.html("
Renaming...
"); frappe.call({ method: "erpnext.utilities.doctype.rename_tool.rename_tool.upload", args: { select_doctype: frm.doc.select_doctype, }, - callback: function (r) { - let html = r.message.join("${__("Bulk Rename Jobs")}
+${__("Queued")}: ${counts.queued}
+${__("Started")}: ${counts.started}
+ + + `); + }); + }, }); diff --git a/erpnext/utilities/doctype/rename_tool/rename_tool.py b/erpnext/utilities/doctype/rename_tool/rename_tool.py index 19b29f79aa1..230845e55de 100644 --- a/erpnext/utilities/doctype/rename_tool/rename_tool.py +++ b/erpnext/utilities/doctype/rename_tool/rename_tool.py @@ -45,4 +45,11 @@ def upload(select_doctype=None, rows=None): rows = read_csv_content_from_attached_file(frappe.get_doc("Rename Tool", "Rename Tool")) - return bulk_rename(select_doctype, rows=rows) + # bulk rename allows only 500 rows at a time, so we created one job per 500 rows + for i in range(0, len(rows), 500): + frappe.enqueue( + method=bulk_rename, + queue="long", + doctype=select_doctype, + rows=rows[i : i + 500], + )