Open Ubaid-AI opened 2 months ago
i modified the function in File "apps/erpnext/erpnext/stock/doctype/stock_reconciliation/stock_reconciliation.py" and its working fine for now
def merge_similar_item_serial_nos(self, sl_entries):
new_sl_entries = []
merge_similar_entries = {}
for d in sl_entries:
if not d.serial_no or flt(d.get("actual_qty")) < 0:
new_sl_entries.append(d)
continue
key = (d.item_code, d.warehouse)
if key not in merge_similar_entries:
d.total_amount = flt(d.actual_qty) * d.valuation_rate
merge_similar_entries[key] = d
elif d.serial_no:
data = merge_similar_entries[key]
data.actual_qty += d.actual_qty
d.qty_after_transaction = d.qty_after_transaction or 0
data.qty_after_transaction = data.qty_after_transaction or 0
data.qty_after_transaction += d.qty_after_transaction
data.total_amount += d.actual_qty * d.valuation_rate
if data.actual_qty != 0:
data.valuation_rate = data.total_amount / data.actual_qty
data.incoming_rate = data.total_amount / data.actual_qty
else:
data.valuation_rate = 0
data.incoming_rate = 0
data.serial_no += "\n" + d.serial_no
new_sl_entries.extend(merge_similar_entries.values())
return new_sl_entries
App Versions
Route
Traceback
Request Data
Response Data