fix: multiple pos conversion issue resolved
diff --git a/erpnext/accounts/doctype/pos_invoice/pos_invoice.py b/erpnext/accounts/doctype/pos_invoice/pos_invoice.py
index a1239d6..74db259 100644
--- a/erpnext/accounts/doctype/pos_invoice/pos_invoice.py
+++ b/erpnext/accounts/doctype/pos_invoice/pos_invoice.py
@@ -161,7 +161,7 @@
bold_item_name = frappe.bold(item.item_name)
bold_extra_batch_qty_needed = frappe.bold(
- abs(available_batch_qty - reserved_batch_qty - item.qty)
+ abs(available_batch_qty - reserved_batch_qty - item.qty * item.conversion_factor)
)
bold_invalid_batch_no = frappe.bold(item.batch_no)
@@ -172,7 +172,7 @@
).format(item.idx, bold_invalid_batch_no, bold_item_name),
title=_("Item Unavailable"),
)
- elif (available_batch_qty - reserved_batch_qty - item.qty) < 0:
+ elif (available_batch_qty - reserved_batch_qty - item.qty * item.conversion_factor) < 0:
frappe.throw(
_(
"Row #{}: Batch No. {} of item {} has less than required stock available, {} more required"
@@ -246,7 +246,7 @@
),
title=_("Item Unavailable"),
)
- elif is_stock_item and flt(available_stock) < flt(d.qty):
+ elif is_stock_item and flt(available_stock) < flt(d.qty * d.conversion_factor):
frappe.throw(
_(
"Row #{}: Stock quantity not enough for Item Code: {} under warehouse {}. Available quantity {}."
diff --git a/erpnext/selling/page/point_of_sale/pos_controller.js b/erpnext/selling/page/point_of_sale/pos_controller.js
index c442774..5e70d6d 100644
--- a/erpnext/selling/page/point_of_sale/pos_controller.js
+++ b/erpnext/selling/page/point_of_sale/pos_controller.js
@@ -522,7 +522,7 @@
const from_selector = field === 'qty' && value === "+1";
if (from_selector)
- value = flt(item_row.qty) + flt(value);
+ value = flt(item_row.qty * item_row.conversion_factor) + flt(value);
if (item_row_exists) {
if (field === 'qty')