diff --git a/erpnext/public/js/controllers/buying.js b/erpnext/public/js/controllers/buying.js index 14ea2f80038..87a6de022a3 100644 --- a/erpnext/public/js/controllers/buying.js +++ b/erpnext/public/js/controllers/buying.js @@ -363,9 +363,10 @@ erpnext.buying.BuyingController = class BuyingController extends erpnext.Transac new erpnext.SerialBatchPackageSelector( me.frm, item, (r) => { if (r) { - me.frm.refresh_fields(); - frappe.model.set_value(cdt, cdn, - "serial_and_batch_bundle", r.name); + frappe.model.set_value(item.doctype, item.name, { + "serial_and_batch_bundle": r.name, + "qty": Math.abs(r.total_qty) + }); } } ); @@ -391,9 +392,10 @@ erpnext.buying.BuyingController = class BuyingController extends erpnext.Transac new erpnext.SerialBatchPackageSelector( me.frm, item, (r) => { if (r) { - me.frm.refresh_fields(); - frappe.model.set_value(cdt, cdn, - "rejected_serial_and_batch_bundle", r.name); + frappe.model.set_value(item.doctype, item.name, { + "rejected_serial_and_batch_bundle": r.name, + "rejected_qty": Math.abs(r.total_qty) + }); } } ); diff --git a/erpnext/public/js/controllers/transaction.js b/erpnext/public/js/controllers/transaction.js index 70c403b786a..6d05ec478fd 100644 --- a/erpnext/public/js/controllers/transaction.js +++ b/erpnext/public/js/controllers/transaction.js @@ -2329,9 +2329,10 @@ erpnext.show_serial_batch_selector = function (frm, item_row, callback, on_close new erpnext.SerialBatchPackageSelector(frm, item_row, (r) => { if (r) { - frm.refresh_fields(); - frappe.model.set_value(item_row.doctype, item_row.name, - "serial_and_batch_bundle", r.name); + frappe.model.set_value(item_row.doctype, item_row.name, { + "serial_and_batch_bundle": r.name, + "qty": Math.abs(r.total_qty) + }); } }); }); diff --git a/erpnext/public/js/utils/serial_no_batch_selector.js b/erpnext/public/js/utils/serial_no_batch_selector.js index b8932310121..8c7b2f2bb02 100644 --- a/erpnext/public/js/utils/serial_no_batch_selector.js +++ b/erpnext/public/js/utils/serial_no_batch_selector.js @@ -226,7 +226,6 @@ erpnext.SerialBatchPackageSelector = class SerialNoBatchBundleUpdate { based_on: based_on }, callback: (r) => { - debugger if (r.message) { this.dialog.fields_dict.entries.df.data = r.message; this.dialog.fields_dict.entries.grid.refresh(); @@ -271,6 +270,7 @@ erpnext.SerialBatchPackageSelector = class SerialNoBatchBundleUpdate { } }).then(r => { this.callback && this.callback(r.message); + this.frm.save(); this.dialog.hide(); }) } diff --git a/erpnext/selling/page/point_of_sale/pos_item_details.js b/erpnext/selling/page/point_of_sale/pos_item_details.js index 1091c46ef3a..e6b2b3b5d50 100644 --- a/erpnext/selling/page/point_of_sale/pos_item_details.js +++ b/erpnext/selling/page/point_of_sale/pos_item_details.js @@ -384,9 +384,10 @@ erpnext.PointOfSale.ItemDetails = class { new erpnext.SerialBatchPackageSelector(frm, item_row, (r) => { if (r) { - frm.refresh_fields(); - frappe.model.set_value(item_row.doctype, item_row.name, - "serial_and_batch_bundle", r.name); + frappe.model.set_value(item_row.doctype, item_row.name, { + "serial_and_batch_bundle": r.name, + "qty": Math.abs(r.total_qty) + }); } }); }); diff --git a/erpnext/selling/sales_common.js b/erpnext/selling/sales_common.js index f8e000a111e..2ee197bc859 100644 --- a/erpnext/selling/sales_common.js +++ b/erpnext/selling/sales_common.js @@ -444,11 +444,10 @@ erpnext.selling.SellingController = class SellingController extends erpnext.Tran new erpnext.SerialBatchPackageSelector( me.frm, item, (r) => { if (r) { - me.frm.refresh_fields(); - frappe.model.set_value(cdt, cdn, - "serial_and_batch_bundle", r.name); - - me.frm.save(); + frappe.model.set_value(item.doctype, item.name, { + "serial_and_batch_bundle": r.name, + "qty": Math.abs(r.total_qty) + }); } } ); diff --git a/erpnext/stock/deprecated_serial_batch.py b/erpnext/stock/deprecated_serial_batch.py index ac30f8200a5..8b4279b08a1 100644 --- a/erpnext/stock/deprecated_serial_batch.py +++ b/erpnext/stock/deprecated_serial_batch.py @@ -1,11 +1,11 @@ import frappe from frappe.query_builder.functions import CombineDatetime, Sum from frappe.utils import flt +from frappe.utils.deprecations import deprecated class DeprecatedSerialNoValuation: - # Will be deprecated in v16 - + @deprecated def calculate_stock_value_from_deprecarated_ledgers(self): serial_nos = list( filter(lambda x: x not in self.serial_no_incoming_rate and x, self.get_serial_nos()) @@ -25,6 +25,7 @@ class DeprecatedSerialNoValuation: self.stock_value_change += stock_value_change + @deprecated def get_incoming_value_for_serial_nos(self, serial_nos): # get rate from serial nos within same company all_serial_nos = frappe.get_all( @@ -66,12 +67,14 @@ class DeprecatedSerialNoValuation: class DeprecatedBatchNoValuation: + @deprecated def calculate_avg_rate_from_deprecarated_ledgers(self): entries = self.get_sle_for_batches() for ledger in entries: self.batch_avg_rate[ledger.batch_no] += flt(ledger.batch_value) / flt(ledger.batch_qty) self.available_qty[ledger.batch_no] += flt(ledger.batch_qty) + @deprecated def get_sle_for_batches(self): batch_nos = list(self.batch_nos.keys()) sle = frappe.qb.DocType("Stock Ledger Entry") diff --git a/erpnext/stock/doctype/stock_entry/stock_entry.js b/erpnext/stock/doctype/stock_entry/stock_entry.js index 6ffe5b35b2b..8788e15a6c4 100644 --- a/erpnext/stock/doctype/stock_entry/stock_entry.js +++ b/erpnext/stock/doctype/stock_entry/stock_entry.js @@ -1116,11 +1116,10 @@ erpnext.stock.select_batch_and_serial_no = (frm, item) => { new erpnext.SerialBatchPackageSelector( frm, item, (r) => { if (r) { - frm.refresh_fields(); - frappe.model.set_value(item.doctype, item.name, - "serial_and_batch_bundle", r.name); - - frm.save(); + frappe.model.set_value(item.doctype, item.name, { + "serial_and_batch_bundle": r.name, + "qty": Math.abs(r.total_qty) + }); } } ); diff --git a/erpnext/stock/report/batch_wise_balance_history/batch_wise_balance_history.py b/erpnext/stock/report/batch_wise_balance_history/batch_wise_balance_history.py index 483a1f127d7..858db81e4bf 100644 --- a/erpnext/stock/report/batch_wise_balance_history/batch_wise_balance_history.py +++ b/erpnext/stock/report/batch_wise_balance_history/batch_wise_balance_history.py @@ -5,6 +5,7 @@ import frappe from frappe import _ from frappe.utils import cint, flt, getdate +from frappe.utils.deprecations import deprecated from pypika import functions as fn from erpnext.stock.doctype.warehouse.warehouse import apply_warehouse_filter @@ -68,14 +69,13 @@ def get_columns(filters): def get_stock_ledger_entries(filters): - # Will be deprecated in v16 entries = get_stock_ledger_entries_for_batch_no(filters) entries += get_stock_ledger_entries_for_batch_bundle(filters) return entries -# get all details +@deprecated def get_stock_ledger_entries_for_batch_no(filters): if not filters.get("from_date"): frappe.throw(_("'From Date' is required"))