Merge pull request #56428 from raghavisruia/item-allow-negative-stock-confirmation

feat: confirmation dialog when enabling negative stock on Item
This commit is contained in:
Mihir Kandoi
2026-07-09 20:52:03 +05:30
committed by GitHub
3 changed files with 17 additions and 19 deletions

View File

@@ -562,6 +562,18 @@ $.extend(erpnext.utils, {
},
});
erpnext.utils.confirm_negative_stock = function (frm) {
if (!frm.doc.allow_negative_stock) return;
frappe.confirm(
__(
"Using negative stock disables FIFO/Moving average valuation when inventory is negative. This is considered dangerous from accounting point of view.<br>Do you still want to enable negative inventory?"
),
() => {},
() => frm.set_value("allow_negative_stock", 0)
);
};
erpnext.utils.select_alternate_items = function (opts) {
const frm = opts.frm;
const warehouse_field = opts.warehouse_field || "warehouse";

View File

@@ -54,6 +54,10 @@ frappe.ui.form.on("Item", {
}
},
allow_negative_stock(frm) {
erpnext.utils.confirm_negative_stock(frm);
},
setup: function (frm) {
frm.add_fetch("attribute", "numeric_values", "numeric_values");
frm.add_fetch("attribute", "from_range", "from_range");

View File

@@ -96,25 +96,7 @@ frappe.ui.form.on("Stock Settings", {
},
allow_negative_stock: function (frm) {
if (!frm.doc.allow_negative_stock) {
return;
}
let msg = __(
"Using negative stock disables FIFO/Moving average valuation when inventory is negative."
);
msg += " ";
msg += __("This is considered dangerous from accounting point of view.");
msg += "<br>";
msg += __("Do you still want to enable negative inventory?");
frappe.confirm(
msg,
() => {},
() => {
frm.set_value("allow_negative_stock", 0);
}
);
erpnext.utils.confirm_negative_stock(frm);
},
auto_insert_price_list_rate_if_missing(frm) {
if (!frm.doc.auto_insert_price_list_rate_if_missing) return;