Merge pull request #58050 from mihir-kandoi/codex/fix-bom-creator-item-selection

fix(manufacturing): preserve BOM Creator item details
This commit is contained in:
Mihir Kandoi
2026-08-11 20:53:31 +05:30
committed by GitHub
2 changed files with 15 additions and 8 deletions

View File

@@ -208,13 +208,6 @@ frappe.ui.form.on("BOM Creator", {
});
frappe.ui.form.on("BOM Creator Item", {
item_code(frm, cdt, cdn) {
let item = frappe.get_doc(cdt, cdn);
if (item.item_code && item.is_root) {
frappe.model.set_value(cdt, cdn, "fg_item", item.item_code);
}
},
do_not_explode(frm, cdt, cdn) {
let item = frappe.get_doc(cdt, cdn);
if (!item.do_not_explode) {
@@ -237,6 +230,20 @@ frappe.ui.form.on("BOM Creator Item", {
});
erpnext.bom.BomConfigurator = class BomConfigurator extends erpnext.TransactionController {
item_code(doc, cdt, cdn) {
if (cdt !== "BOM Creator Item") {
return;
}
let item = frappe.get_doc(cdt, cdn);
if (item.item_code && item.is_root) {
frappe.model.set_value(cdt, cdn, "fg_item", item.item_code);
}
// BOM Creator does not support TransactionController's server-side item selection.
return this.process_item_selection(doc, cdt, cdn);
}
conversion_rate(doc) {
if (this.frm.doc.currency === this.get_company_currency()) {
this.frm.set_value("conversion_rate", 1.0);

View File

@@ -79,7 +79,7 @@ def _preprocess_ctx(ctx):
@erpnext.normalize_ctx_input(ItemDetailsCtx)
def get_item_details(
ctx: ItemDetailsCtx,
doc: Document | str | None = None,
doc: Document | str | dict | None = None,
for_validate: bool | None = False,
overwrite_warehouse: bool = True,
):