Inspection required before delivery isn't working for item variants (#9362)
* makes `copy_attributes_to_variant` to not ignore "Table"
* fixes test cases - `test_auto_material_request` and `test_auto_material_request_for_variant`
* adds test case - tables in templates should be copied to variants
* [ci] use deprecated trusty build for now
diff --git a/erpnext/controllers/item_variant.py b/erpnext/controllers/item_variant.py
index 3349303..226b17f 100644
--- a/erpnext/controllers/item_variant.py
+++ b/erpnext/controllers/item_variant.py
@@ -169,6 +169,7 @@
return variant
+
def copy_attributes_to_variant(item, variant):
from frappe.model import no_value_fields
@@ -181,8 +182,9 @@
exclude_fields += ['manufacturer', 'manufacturer_part_no']
for field in item.meta.fields:
- if field.fieldtype not in no_value_fields and (not field.no_copy)\
- and field.fieldname not in exclude_fields:
+ # "Table" is part of `no_value_field` but we shouldn't ignore tables
+ if (field.fieldtype == 'Table' or field.fieldtype not in no_value_fields) \
+ and (not field.no_copy) and field.fieldname not in exclude_fields:
if variant.get(field.fieldname) != item.get(field.fieldname):
variant.set(field.fieldname, item.get(field.fieldname))
variant.variant_of = item.name