Customer/customer group wise price list
diff --git a/erpnext/utilities/transaction_base.py b/erpnext/utilities/transaction_base.py
index 032b52f..eecbb06 100644
--- a/erpnext/utilities/transaction_base.py
+++ b/erpnext/utilities/transaction_base.py
@@ -33,9 +33,9 @@
self.doc.contact_display = contact_text or ''
self.doc.contact_email = contact_email or ''
self.doc.contact_mobile = contact_mobile or ''
-
- self.get_customer_details(self.doc.customer)
+
if args != 'onload':
+ self.get_customer_details(self.doc.customer)
self.get_sales_person(self.doc.customer)
# Get Customer Default Shipping Address - first load
@@ -50,8 +50,8 @@
self.doc.contact_email = contact_email or ''
self.doc.contact_mobile = contact_mobile or ''
- self.get_customer_details(self.doc.customer)
if self.doc.doctype != 'Quotation' and args != 'onload':
+ self.get_customer_details(self.doc.customer)
self.get_sales_person(self.doc.customer)
# Get Customer Address
@@ -118,13 +118,18 @@
# Get Customer Details
# -----------------------
def get_customer_details(self, name):
- customer_details = webnotes.conn.sql("select customer_name, customer_group, territory, default_sales_partner, default_commission_rate from tabCustomer where name = '%s' and docstatus != 2" %(name), as_dict = 1)
+ customer_details = webnotes.conn.sql("select customer_name, customer_group, territory, default_sales_partner, default_commission_rate, default_price_list from tabCustomer where name = '%s' and docstatus != 2" %(name), as_dict = 1)
if customer_details:
self.doc.customer_name = customer_details[0]['customer_name'] or ''
self.doc.customer_group = customer_details[0]['customer_group'] or ''
self.doc.territory = customer_details[0]['territory'] or ''
self.doc.sales_partner = customer_details[0]['default_sales_partner'] or ''
self.doc.commission_rate = customer_details[0]['default_commission_rate'] or ''
+ def_price_list = customer_details[0]['default_price_list'] or ''
+ if not def_price_list:
+ cg_price_list = webnotes.conn.sql("select default_price_list from `tabCustomer Group` where name = %s", customer_details[0]['customer_group'])
+ def_price_list = cg_price_list and cg_price_list[0][0] or ''
+ self.doc.price_list_name = def_price_list or self.doc.price_list_name
# Get Customer Shipping Address
# -----------------------