From 8aac6a6b18ee08dfb4722e620acf3ea9fbae89ab Mon Sep 17 00:00:00 2001 From: Rohit Waghchaure Date: Mon, 7 Jul 2025 16:24:42 +0530 Subject: [PATCH] fix: fetch from parent optional in inventory dimension --- .../doctype/inventory_dimension/inventory_dimension.js | 6 ++++-- .../doctype/inventory_dimension/inventory_dimension.json | 6 +++--- .../doctype/inventory_dimension/inventory_dimension.py | 5 ----- .../doctype/inventory_dimension/test_inventory_dimension.py | 2 ++ 4 files changed, 9 insertions(+), 10 deletions(-) diff --git a/erpnext/stock/doctype/inventory_dimension/inventory_dimension.js b/erpnext/stock/doctype/inventory_dimension/inventory_dimension.js index c819d17b1e7..1b5f4a5743f 100644 --- a/erpnext/stock/doctype/inventory_dimension/inventory_dimension.js +++ b/erpnext/stock/doctype/inventory_dimension/inventory_dimension.js @@ -75,7 +75,9 @@ frappe.ui.form.on("Inventory Dimension", { set_parent_fields(frm) { if (frm.doc.apply_to_all_doctypes) { - frm.set_df_property("fetch_from_parent", "options", frm.doc.reference_document); + let options = ["\n", frm.doc.reference_document]; + + frm.set_df_property("fetch_from_parent", "options", options); } else if (frm.doc.document_type && frm.doc.istable) { frappe.call({ method: "erpnext.stock.doctype.inventory_dimension.inventory_dimension.get_parent_fields", @@ -85,7 +87,7 @@ frappe.ui.form.on("Inventory Dimension", { }, callback: (r) => { if (r.message && r.message.length) { - frm.set_df_property("fetch_from_parent", "options", [""].concat(r.message)); + frm.set_df_property("fetch_from_parent", "options", ["\n"].concat(r.message)); } else { frm.set_df_property("fetch_from_parent", "hidden", 1); } diff --git a/erpnext/stock/doctype/inventory_dimension/inventory_dimension.json b/erpnext/stock/doctype/inventory_dimension/inventory_dimension.json index 62105477efb..376b09f9370 100644 --- a/erpnext/stock/doctype/inventory_dimension/inventory_dimension.json +++ b/erpnext/stock/doctype/inventory_dimension/inventory_dimension.json @@ -143,7 +143,6 @@ "fieldtype": "Column Break" }, { - "depends_on": "eval:!doc.apply_to_all_doctypes", "description": "Set fieldname from which you want to fetch the data from the parent form.", "fieldname": "fetch_from_parent", "fieldtype": "Select", @@ -189,7 +188,7 @@ ], "index_web_pages_for_search": 1, "links": [], - "modified": "2024-07-08 08:58:50.228211", + "modified": "2025-07-07 15:51:29.329064", "modified_by": "Administrator", "module": "Stock", "name": "Inventory Dimension", @@ -225,7 +224,8 @@ "role": "Stock User" } ], + "row_format": "Dynamic", "sort_field": "creation", "sort_order": "DESC", "states": [] -} \ No newline at end of file +} diff --git a/erpnext/stock/doctype/inventory_dimension/inventory_dimension.py b/erpnext/stock/doctype/inventory_dimension/inventory_dimension.py index 3480926f0e6..f6c53beca2b 100644 --- a/erpnext/stock/doctype/inventory_dimension/inventory_dimension.py +++ b/erpnext/stock/doctype/inventory_dimension/inventory_dimension.py @@ -65,16 +65,11 @@ class InventoryDimension(Document): self.reset_value() self.set_source_and_target_fieldname() self.set_type_of_transaction() - self.set_fetch_value_from() def set_type_of_transaction(self): if self.apply_to_all_doctypes: self.type_of_transaction = "Both" - def set_fetch_value_from(self): - if self.apply_to_all_doctypes: - self.fetch_from_parent = self.reference_document - def do_not_update_document(self): if self.is_new() or not self.has_stock_ledger(): return diff --git a/erpnext/stock/doctype/inventory_dimension/test_inventory_dimension.py b/erpnext/stock/doctype/inventory_dimension/test_inventory_dimension.py index 0eca78649a9..98d4a43ff94 100644 --- a/erpnext/stock/doctype/inventory_dimension/test_inventory_dimension.py +++ b/erpnext/stock/doctype/inventory_dimension/test_inventory_dimension.py @@ -152,6 +152,8 @@ class TestInventoryDimension(IntegrationTestCase): reference_document="Rack", dimension_name="Rack", apply_to_all_doctypes=1 ) + inv_dimension.db_set("fetch_from_parent", "Rack") + self.assertEqual(inv_dimension.type_of_transaction, "Both") self.assertEqual(inv_dimension.fetch_from_parent, "Rack")