As far as I’m aware, there is no way to use the fetch_from
DocType feature to obtain deep nested values like Item Attributes.
So, in this example we copy the Colour
Item Attribute Value
to a custom colour
field on the BOM using a custom script set to:
- Script Type: DocType Event
- Reference Document Type: BOM
- DocType Event: Before Validate
Code:
if doc.item:
item = frappe.get_cached_doc('Item', doc.item)
for row in item.attributes:
if row.attribute == 'Colour' and row.attribute_value:
doc.colour = row.attribute_value.strip()