Merge pull request #53276 from frappe/mergify/bp/version-15-hotfix/pr-53235

fix: update item row delivery dates when header delivery date changes in sales order (backport #53235)
This commit is contained in:
Mihir Kandoi
2026-03-10 13:09:31 +05:30
committed by GitHub

View File

@@ -56,6 +56,13 @@ frappe.ui.form.on("Sales Order", {
frm.set_df_property("packed_items", "cannot_add_rows", true);
frm.set_df_property("packed_items", "cannot_delete_rows", true);
},
delivery_date(frm) {
if (frm.doc.delivery_date) {
frm.doc.items.forEach((d) => {
frappe.model.set_value(d.doctype, d.name, "delivery_date", frm.doc.delivery_date);
});
}
},
refresh: function (frm) {
if (frm.doc.docstatus === 1) {
@@ -145,7 +152,7 @@ frappe.ui.form.on("Sales Order", {
});
}
}
prevent_past_delivery_dates(frm);
// Hide `Reserve Stock` field description in submitted or cancelled Sales Order.
if (frm.doc.docstatus > 0) {
frm.set_df_property("reserve_stock", "description", null);
@@ -224,13 +231,6 @@ frappe.ui.form.on("Sales Order", {
];
},
delivery_date: function (frm) {
$.each(frm.doc.items || [], function (i, d) {
if (!d.delivery_date) d.delivery_date = frm.doc.delivery_date;
});
refresh_field("items");
},
create_stock_reservation_entries(frm) {
const dialog = new frappe.ui.Dialog({
title: __("Stock Reservation"),
@@ -1400,3 +1400,11 @@ erpnext.selling.SalesOrderController = class SalesOrderController extends erpnex
};
extend_cscript(cur_frm.cscript, new erpnext.selling.SalesOrderController({ frm: cur_frm }));
function prevent_past_delivery_dates(frm) {
if (frm.doc.transaction_date) {
frm.fields_dict["delivery_date"].datepicker?.update({
minDate: new Date(frm.doc.transaction_date),
});
}
}