fix: batch selection issue (#41692)
This commit is contained in:
@@ -427,6 +427,7 @@ def get_batches_from_stock_ledger_entries(searchfields, txt, filters, start=0, p
|
|||||||
& (stock_ledger_entry.batch_no.isnotnull())
|
& (stock_ledger_entry.batch_no.isnotnull())
|
||||||
)
|
)
|
||||||
.groupby(stock_ledger_entry.batch_no, stock_ledger_entry.warehouse)
|
.groupby(stock_ledger_entry.batch_no, stock_ledger_entry.warehouse)
|
||||||
|
.having(Sum(stock_ledger_entry.actual_qty) > 0)
|
||||||
.offset(start)
|
.offset(start)
|
||||||
.limit(page_len)
|
.limit(page_len)
|
||||||
)
|
)
|
||||||
@@ -477,6 +478,7 @@ def get_batches_from_serial_and_batch_bundle(searchfields, txt, filters, start=0
|
|||||||
& (stock_ledger_entry.serial_and_batch_bundle.isnotnull())
|
& (stock_ledger_entry.serial_and_batch_bundle.isnotnull())
|
||||||
)
|
)
|
||||||
.groupby(bundle.batch_no, bundle.warehouse)
|
.groupby(bundle.batch_no, bundle.warehouse)
|
||||||
|
.having(Sum(bundle.qty) > 0)
|
||||||
.offset(start)
|
.offset(start)
|
||||||
.limit(page_len)
|
.limit(page_len)
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -2308,6 +2308,9 @@ erpnext.TransactionController = class TransactionController extends erpnext.taxe
|
|||||||
|
|
||||||
if (doc.is_return) {
|
if (doc.is_return) {
|
||||||
filters["is_return"] = 1;
|
filters["is_return"] = 1;
|
||||||
|
if (["Sales Invoice", "Delivery Note"].includes(doc.doctype)) {
|
||||||
|
filters["is_inward"] = 1;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (item.warehouse) filters["warehouse"] = item.warehouse;
|
if (item.warehouse) filters["warehouse"] = item.warehouse;
|
||||||
|
|||||||
@@ -111,7 +111,9 @@ frappe.ui.form.on("Stock Entry", {
|
|||||||
// or a pre-existing batch
|
// or a pre-existing batch
|
||||||
if (frm.doc.purpose != "Material Receipt") {
|
if (frm.doc.purpose != "Material Receipt") {
|
||||||
filters["warehouse"] = item.s_warehouse || item.t_warehouse;
|
filters["warehouse"] = item.s_warehouse || item.t_warehouse;
|
||||||
} else {
|
}
|
||||||
|
|
||||||
|
if (!item.s_warehouse && item.t_warehouse) {
|
||||||
filters["is_inward"] = 1;
|
filters["is_inward"] = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -14,6 +14,22 @@ frappe.ui.form.on("Stock Settings", {
|
|||||||
frm.set_query("default_warehouse", filters);
|
frm.set_query("default_warehouse", filters);
|
||||||
frm.set_query("sample_retention_warehouse", filters);
|
frm.set_query("sample_retention_warehouse", filters);
|
||||||
},
|
},
|
||||||
|
|
||||||
|
use_serial_batch_fields(frm) {
|
||||||
|
if (frm.doc.use_serial_batch_fields && !frm.doc.disable_serial_no_and_batch_selector) {
|
||||||
|
frm.set_value("disable_serial_no_and_batch_selector", 1);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
disable_serial_no_and_batch_selector(frm) {
|
||||||
|
if (!frm.doc.disable_serial_no_and_batch_selector && frm.doc.use_serial_batch_fields) {
|
||||||
|
frm.set_value("disable_serial_no_and_batch_selector", 1);
|
||||||
|
frappe.msgprint(
|
||||||
|
__("Serial No and Batch Selector cannot be use when Use Serial / Batch Fields is enabled.")
|
||||||
|
);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
allow_negative_stock: function (frm) {
|
allow_negative_stock: function (frm) {
|
||||||
if (!frm.doc.allow_negative_stock) {
|
if (!frm.doc.allow_negative_stock) {
|
||||||
return;
|
return;
|
||||||
|
|||||||
Reference in New Issue
Block a user