[minor] save last company in multi-company scenario
This commit is contained in:
parent
b1b95526c6
commit
45ca8a4d31
@ -68,7 +68,10 @@ class PurchaseOrder(BuyingController):
|
||||
})
|
||||
|
||||
def validate_minimum_order_qty(self):
|
||||
itemwise_min_order_qty = frappe._dict(frappe.db.sql("select name, min_order_qty from tabItem"))
|
||||
items = list(set([d.item_code for d in self.get("items")]))
|
||||
|
||||
itemwise_min_order_qty = frappe._dict(frappe.db.sql("""select name, min_order_qty
|
||||
from tabItem where name in ({0})""".format(", ".join(["%s"] * len(items))), items))
|
||||
|
||||
itemwise_qty = frappe._dict()
|
||||
for d in self.get("items"):
|
||||
@ -77,7 +80,8 @@ class PurchaseOrder(BuyingController):
|
||||
|
||||
for item_code, qty in itemwise_qty.items():
|
||||
if flt(qty) < flt(itemwise_min_order_qty.get(item_code)):
|
||||
frappe.throw(_("Item #{0}: Ordered qty can not less than item's minimum order qty (defined in item master).").format(item_code))
|
||||
frappe.throw(_("Item {0}: Ordered qty {1} cannot be less than minimum order qty {2} (defined in Item).").format(item_code,
|
||||
qty, itemwise_min_order_qty.get(item_code)))
|
||||
|
||||
def get_schedule_dates(self):
|
||||
for d in self.get('items'):
|
||||
@ -217,15 +221,15 @@ class PurchaseOrder(BuyingController):
|
||||
|
||||
def on_update(self):
|
||||
pass
|
||||
|
||||
|
||||
def before_recurring(self):
|
||||
super(PurchaseOrder, self).before_recurring()
|
||||
|
||||
|
||||
for field in ("per_received", "per_billed"):
|
||||
self.set(field, None)
|
||||
|
||||
for d in self.get("items"):
|
||||
for field in ("received_qty", "billed_amt", "prevdoc_doctype", "prevdoc_docname",
|
||||
for field in ("received_qty", "billed_amt", "prevdoc_doctype", "prevdoc_docname",
|
||||
"prevdoc_detail_docname", "supplier_quotation", "supplier_quotation_item"):
|
||||
d.set(field, None)
|
||||
|
||||
|
@ -320,8 +320,9 @@ class ProductionPlanningTool(Document):
|
||||
# shortage
|
||||
requested_qty = total_qty - flt(item_projected_qty.get(item))
|
||||
# consider minimum order qty
|
||||
requested_qty = requested_qty > flt(so_item_qty[0][3]) and \
|
||||
requested_qty or flt(so_item_qty[0][3])
|
||||
|
||||
if requested_qty < flt(so_item_qty[0][3]):
|
||||
requested_qty = flt(so_item_qty[0][3])
|
||||
|
||||
# distribute requested qty SO wise
|
||||
for item_details in so_item_qty:
|
||||
|
@ -190,8 +190,11 @@ erpnext.TransactionController = erpnext.taxes_and_totals.extend({
|
||||
if (this.frm.doc.posting_date) var date = this.frm.doc.posting_date;
|
||||
else var date = this.frm.doc.transaction_date;
|
||||
erpnext.get_fiscal_year(this.frm.doc.company, date, fn);
|
||||
|
||||
erpnext.get_letter_head(this.frm.doc.company);
|
||||
|
||||
if(this.frm.doc.company) {
|
||||
erpnext.last_selected_company = this.frm.doc.company;
|
||||
}
|
||||
},
|
||||
|
||||
transaction_date: function() {
|
||||
|
@ -41,6 +41,8 @@ $.extend(erpnext, {
|
||||
if(companies.length === 1) {
|
||||
if(!cur_frm.doc.company) cur_frm.set_value("company", companies[0]);
|
||||
cur_frm.toggle_display("company", false);
|
||||
} else if(erpnext.last_selected_company) {
|
||||
if(!cur_frm.doc.company) cur_frm.set_value("company", erpnext.last_selected_company);
|
||||
}
|
||||
}
|
||||
},
|
||||
@ -76,8 +78,8 @@ $.extend(erpnext, {
|
||||
"options": "Serial No",
|
||||
"label": __("Serial No"),
|
||||
"get_query": function () {
|
||||
return {
|
||||
filters: {
|
||||
return {
|
||||
filters: {
|
||||
item_code:grid_row.doc.item_code ,
|
||||
warehouse:grid_row.doc.warehouse
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user