fix: don't throw if item does not have default BOM
This commit is contained in:
		
							parent
							
								
									21e6db2bc7
								
							
						
					
					
						commit
						268c19e745
					
				| @ -347,7 +347,7 @@ class ProductionPlan(Document): | ||||
| 			if not data.pending_qty: | ||||
| 				continue | ||||
| 
 | ||||
| 			item_details = get_item_details(data.item_code) | ||||
| 			item_details = get_item_details(data.item_code, throw=False) | ||||
| 			if self.combine_items: | ||||
| 				if item_details.bom_no in refs: | ||||
| 					refs[item_details.bom_no]["so_details"].append( | ||||
|  | ||||
| @ -1082,7 +1082,7 @@ def get_bom_operations(doctype, txt, searchfield, start, page_len, filters): | ||||
| 
 | ||||
| 
 | ||||
| @frappe.whitelist() | ||||
| def get_item_details(item, project=None, skip_bom_info=False): | ||||
| def get_item_details(item, project=None, skip_bom_info=False, throw=True): | ||||
| 	res = frappe.db.sql( | ||||
| 		""" | ||||
| 		select stock_uom, description, item_name, allow_alternative_item, | ||||
| @ -1118,12 +1118,15 @@ def get_item_details(item, project=None, skip_bom_info=False): | ||||
| 
 | ||||
| 	if not res["bom_no"]: | ||||
| 		if project: | ||||
| 			res = get_item_details(item) | ||||
| 			res = get_item_details(item, throw=throw) | ||||
| 			frappe.msgprint( | ||||
| 				_("Default BOM not found for Item {0} and Project {1}").format(item, project), alert=1 | ||||
| 			) | ||||
| 		else: | ||||
| 			frappe.throw(_("Default BOM for {0} not found").format(item)) | ||||
| 			msg = _("Default BOM for {0} not found").format(item) | ||||
| 			frappe.msgprint(msg, raise_exception=throw, indicator="yellow", alert=(not throw)) | ||||
| 
 | ||||
| 			return res | ||||
| 
 | ||||
| 	bom_data = frappe.db.get_value( | ||||
| 		"BOM", | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user