diff --git a/erpnext/stock/doctype/serial_no/serial_no.py b/erpnext/stock/doctype/serial_no/serial_no.py index eff2ef14674..db2dc537ddd 100644 --- a/erpnext/stock/doctype/serial_no/serial_no.py +++ b/erpnext/stock/doctype/serial_no/serial_no.py @@ -152,7 +152,7 @@ def get_serial_nos(serial_no): def get_serial_nos_from_serial_and_batch_bundle(serial_and_batch_bundle): table = frappe.qb.DocType("Serial and Batch Entry") query = frappe.qb.from_(table).select(table.serial_no).where(table.parent == serial_and_batch_bundle) - return [item[0] for item in query.run(as_list=True)] + return query.run(pluck=True) def clean_serial_no_string(serial_no: str) -> str: diff --git a/erpnext/stock/report/available_serial_no/available_serial_no.py b/erpnext/stock/report/available_serial_no/available_serial_no.py index 8a20fed848a..d3a1c0c0ed2 100644 --- a/erpnext/stock/report/available_serial_no/available_serial_no.py +++ b/erpnext/stock/report/available_serial_no/available_serial_no.py @@ -80,8 +80,7 @@ def execute(filters=None): sle.update({"in_qty": max(sle.actual_qty, 0), "out_qty": min(sle.actual_qty, 0)}) - if frappe.get_value("Item", sle.item_code, "has_serial_no"): - update_available_serial_nos(available_serial_nos, sle) + update_available_serial_nos(available_serial_nos, sle) if sle.actual_qty: sle["in_out_rate"] = flt(sle.stock_value_difference / sle.actual_qty, precision) @@ -306,10 +305,8 @@ def get_items(filters): if condition := get_item_group_condition(item_group, item): conditions.append(condition) - items = [] if conditions: for condition in conditions: query = query.where(condition) - items = [r[0] for r in query.run()] - return items + return query.run(pluck=True)