From 5daf19da409324e639a799e3bf961ca4f61091a5 Mon Sep 17 00:00:00 2001 From: s-aga-r Date: Wed, 27 Mar 2024 14:52:05 +0530 Subject: [PATCH] fix(ux): Sales Order Stock Reservation Dialog --- .../doctype/sales_order/sales_order.js | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/erpnext/selling/doctype/sales_order/sales_order.js b/erpnext/selling/doctype/sales_order/sales_order.js index 715d4d13b7f..6653b06c361 100644 --- a/erpnext/selling/doctype/sales_order/sales_order.js +++ b/erpnext/selling/doctype/sales_order/sales_order.js @@ -278,6 +278,7 @@ frappe.ui.form.on("Sales Order", { label: __("Items to Reserve"), allow_bulk_edit: false, cannot_add_rows: true, + cannot_delete_rows: true, data: [], fields: [ { @@ -346,7 +347,7 @@ frappe.ui.form.on("Sales Order", { ], primary_action_label: __("Reserve Stock"), primary_action: () => { - var data = { items: dialog.fields_dict.items.grid.data }; + var data = { items: dialog.fields_dict.items.grid.get_selected_children() }; if (data.items && data.items.length > 0) { frappe.call({ @@ -363,9 +364,11 @@ frappe.ui.form.on("Sales Order", { frm.reload_doc(); }, }); - } - dialog.hide(); + dialog.hide(); + } else { + frappe.msgprint(__("Please select items to reserve.")); + } }, }); @@ -380,6 +383,7 @@ frappe.ui.form.on("Sales Order", { if (unreserved_qty > 0) { dialog.fields_dict.items.df.data.push({ + __checked: 1, sales_order_item: item.name, item_code: item.item_code, warehouse: item.warehouse, @@ -404,6 +408,7 @@ frappe.ui.form.on("Sales Order", { label: __("Reserved Stock"), allow_bulk_edit: false, cannot_add_rows: true, + cannot_delete_rows: true, in_place_edit: true, data: [], fields: [ @@ -447,7 +452,7 @@ frappe.ui.form.on("Sales Order", { ], primary_action_label: __("Unreserve Stock"), primary_action: () => { - var data = { sr_entries: dialog.fields_dict.sr_entries.grid.data }; + var data = { sr_entries: dialog.fields_dict.sr_entries.grid.get_selected_children() }; if (data.sr_entries && data.sr_entries.length > 0) { frappe.call({ @@ -463,9 +468,11 @@ frappe.ui.form.on("Sales Order", { frm.reload_doc(); }, }); - } - dialog.hide(); + dialog.hide(); + } else { + frappe.msgprint(__("Please select items to unreserve.")); + } }, });