[fix] [minor] stock balance report for serialized item
This commit is contained in:
parent
c10621a5be
commit
e505fbea54
@ -25,7 +25,11 @@ erpnext.StockGridReport = wn.views.TreeGridReport.extend({
|
|||||||
add_qty = 0;
|
add_qty = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if(sl.serial_no) {
|
||||||
|
var value_diff = this.get_serialized_value_diff(sl);
|
||||||
|
} else {
|
||||||
var value_diff = (rate * add_qty);
|
var value_diff = (rate * add_qty);
|
||||||
|
}
|
||||||
|
|
||||||
if(add_qty)
|
if(add_qty)
|
||||||
wh.fifo_stack.push([add_qty, sl.incoming_rate, sl.posting_date]);
|
wh.fifo_stack.push([add_qty, sl.incoming_rate, sl.posting_date]);
|
||||||
@ -108,15 +112,8 @@ erpnext.StockGridReport = wn.views.TreeGridReport.extend({
|
|||||||
get_serialized_buying_rates: function() {
|
get_serialized_buying_rates: function() {
|
||||||
var serialized_buying_rates = {};
|
var serialized_buying_rates = {};
|
||||||
|
|
||||||
$.each(wn.report_dump.data["Stock Ledger Entry"], function(i, sle) {
|
$.each(wn.report_dump.data["Serial No"], function(i, sn) {
|
||||||
if(sle.qty > 0 && sle.serial_no) {
|
serialized_buying_rates[sn.name.toLowerCase()] = flt(sn.incoming_rate);
|
||||||
$.each(sle.serial_no.trim().split("\n"), function(i, sr) {
|
|
||||||
if(sr && sle.incoming_rate !== undefined
|
|
||||||
&& !serialized_buying_rates[sr.trim().toLowerCase()]) {
|
|
||||||
serialized_buying_rates[sr.trim().toLowerCase()] = flt(sle.incoming_rate);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
|
||||||
return serialized_buying_rates;
|
return serialized_buying_rates;
|
||||||
|
@ -502,13 +502,14 @@ erpnext.TransactionController = erpnext.stock.StockController.extend({
|
|||||||
var company_currency = this.get_company_currency();
|
var company_currency = this.get_company_currency();
|
||||||
|
|
||||||
if(!this.frm.doc.conversion_rate) {
|
if(!this.frm.doc.conversion_rate) {
|
||||||
wn.throw(wn._('%(conversion_rate_label)s is mandatory. Maybe Currency Exchange \
|
wn.throw(repl('%(conversion_rate_label)s' +
|
||||||
record is not created for %(from_currency)s to %(to_currency)s'),
|
wn._(' is mandatory. Maybe Currency Exchange record is not created for ') +
|
||||||
|
'%(from_currency)s' + wn._(" to ") + '%(to_currency)s',
|
||||||
{
|
{
|
||||||
"conversion_rate_label": conversion_rate_label,
|
"conversion_rate_label": conversion_rate_label,
|
||||||
"from_currency": self.doc.currency,
|
"from_currency": this.frm.doc.currency,
|
||||||
"to_currency": company_currency
|
"to_currency": company_currency
|
||||||
});
|
}));
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
@ -88,6 +88,11 @@ data_map = {
|
|||||||
},
|
},
|
||||||
"force_index": "posting_sort_index"
|
"force_index": "posting_sort_index"
|
||||||
},
|
},
|
||||||
|
"Serial No": {
|
||||||
|
"columns": ["name", "purchase_rate as incoming_rate"],
|
||||||
|
"conditions": ["docstatus < 2"],
|
||||||
|
"order_by": "name"
|
||||||
|
},
|
||||||
"Stock Entry": {
|
"Stock Entry": {
|
||||||
"columns": ["name", "purpose"],
|
"columns": ["name", "purpose"],
|
||||||
"conditions": ["docstatus=1"],
|
"conditions": ["docstatus=1"],
|
||||||
|
@ -22,7 +22,7 @@ erpnext.StockBalance = erpnext.StockAnalytics.extend({
|
|||||||
this._super(wrapper, {
|
this._super(wrapper, {
|
||||||
title: "Stock Balance",
|
title: "Stock Balance",
|
||||||
doctypes: ["Item", "Item Group", "Warehouse", "Stock Ledger Entry", "Brand",
|
doctypes: ["Item", "Item Group", "Warehouse", "Stock Ledger Entry", "Brand",
|
||||||
"Stock Entry", "Project"],
|
"Stock Entry", "Project", "Serial No"],
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
setup_columns: function() {
|
setup_columns: function() {
|
||||||
|
Loading…
Reference in New Issue
Block a user