diff --git a/erpnext/selling/doctype/sales_order/sales_order.js b/erpnext/selling/doctype/sales_order/sales_order.js
index 417e93b..37c2294 100644
--- a/erpnext/selling/doctype/sales_order/sales_order.js
+++ b/erpnext/selling/doctype/sales_order/sales_order.js
@@ -66,16 +66,18 @@
 			}
 
 			if (frm.is_new()) {
-				if (frm.doc.__onload && frm.doc.__onload.enable_stock_reservation) {
-					if (frm.doc.__onload.reserve_stock_on_so_submission) {
-						// If `Reserve Stock on Sales Order Submission` is enabled in Stock Settings, set Reserve Stock to 1 else 0.
-						frm.set_value("reserve_stock", value ? 1 : 0);
+				frappe.db.get_single_value("Stock Settings", "enable_stock_reservation").then((value) => {
+					if (value) {
+						frappe.db.get_single_value("Stock Settings", "reserve_stock_on_sales_order_submission").then((value) => {
+							// If `Reserve Stock on Sales Order Submission` is enabled in Stock Settings, set Reserve Stock to 1 else 0.
+							frm.set_value("reserve_stock", value ? 1 : 0);
+						})
+					} else {
+						// If `Stock Reservation` is disabled in Stock Settings, set Reserve Stock to 0 and read only.
+						frm.set_value("reserve_stock", 0);
+						frm.set_df_property("reserve_stock", "read_only", 1);
 					}
-				} else {
-					// If `Stock Reservation` is disabled in Stock Settings, set Reserve Stock to 0 and read only.
-					frm.set_value("reserve_stock", 0);
-					frm.set_df_property("reserve_stock", "read_only", 1);
-				}
+				})
 			}
 		}
 	},
@@ -287,7 +289,7 @@
 			}
 
 			// Stock Reservation > Reserve button will be only visible if the SO has unreserved stock.
-			if (this.frm.doc.__onload && this.frm.doc.__onload.enable_stock_reservation && this.frm.doc.__onload.has_unreserved_stock) {
+			if (this.frm.doc.__onload && this.frm.doc.__onload.has_unreserved_stock) {
 				this.frm.add_custom_button(__('Reserve'), () => this.create_stock_reservation_entries(), __('Stock Reservation'));
 			}
 
diff --git a/erpnext/selling/doctype/sales_order/sales_order.py b/erpnext/selling/doctype/sales_order/sales_order.py
index 6abb8ed..e9b5c0f 100755
--- a/erpnext/selling/doctype/sales_order/sales_order.py
+++ b/erpnext/selling/doctype/sales_order/sales_order.py
@@ -50,13 +50,12 @@
 		super(SalesOrder, self).__init__(*args, **kwargs)
 
 	def onload(self) -> None:
-		stock_settings = frappe.get_doc("Stock Settings")
-		self.set_onload("enable_stock_reservation", stock_settings.enable_stock_reservation)
-		self.set_onload(
-			"reserve_stock_on_so_submission", stock_settings.reserve_stock_on_sales_order_submission
-		)
-		self.set_onload("has_reserved_stock", has_reserved_stock(self.doctype, self.name))
-		self.set_onload("has_unreserved_stock", self.has_unreserved_stock())
+		if frappe.get_cached_value("Stock Settings", None, "enable_stock_reservation"):
+			if self.has_unreserved_stock():
+				self.set_onload("has_unreserved_stock", True)
+
+		if has_reserved_stock(self.doctype, self.name):
+			self.set_onload("has_reserved_stock", True)
 
 	def validate(self):
 		super(SalesOrder, self).validate()
