Merge pull request #2934 from nabinhait/develop

Pricing Rule Issue
diff --git a/erpnext/accounts/doctype/c_form/c_form.py b/erpnext/accounts/doctype/c_form/c_form.py
index c18d28a..7d879e4 100644
--- a/erpnext/accounts/doctype/c_form/c_form.py
+++ b/erpnext/accounts/doctype/c_form/c_form.py
@@ -18,17 +18,17 @@
 					`tabSales Invoice` where name = %s and docstatus = 1""", d.invoice_no)
 
 				if inv and inv[0][0] != 'Yes':
-					frappe.throw("C-form is not applicable for Invoice: %s" % d.invoice_no)
+					frappe.throw("C-form is not applicable for Invoice: {0}".format(d.invoice_no))
 
 				elif inv and inv[0][1] and inv[0][1] != self.name:
-					frappe.throw("""Invoice %s is tagged in another C-form: %s.
+					frappe.throw("""Invoice {0} is tagged in another C-form: {1}.
 						If you want to change C-form no for this invoice,
-						please remove invoice no from the previous c-form and then try again""" %
-						(d.invoice_no, inv[0][1]))
+						please remove invoice no from the previous c-form and then try again"""\
+						.format(d.invoice_no, inv[0][1]))
 
 				elif not inv:
-					frappe.throw("Row %s: Invoice %s is invalid, it might be cancelled / does not exist. \
-						Please enter a valid Invoice" % d.idx, d.invoice_no)
+					frappe.throw("Row {0}: Invoice {1} is invalid, it might be cancelled / does not exist. \
+						Please enter a valid Invoice".format(d.idx, d.invoice_no))
 
 	def on_update(self):
 		"""	Update C-Form No on invoices"""
diff --git a/erpnext/controllers/accounts_controller.py b/erpnext/controllers/accounts_controller.py
index 5219339..fcc350a 100644
--- a/erpnext/controllers/accounts_controller.py
+++ b/erpnext/controllers/accounts_controller.py
@@ -112,6 +112,8 @@
 				if item.get("item_code"):
 					args = parent_dict.copy()
 					args.update(item.as_dict())
+					if not args.get("transaction_date"):
+						args["transaction_date"] = args.get("posting_date")
 					ret = get_item_details(args)
 
 					for fieldname, value in ret.items():
diff --git a/erpnext/public/js/transaction.js b/erpnext/public/js/transaction.js
index e1e78a3..ebdb136 100644
--- a/erpnext/public/js/transaction.js
+++ b/erpnext/public/js/transaction.js
@@ -148,7 +148,7 @@
 							order_type: me.frm.doc.order_type,
 							is_pos: cint(me.frm.doc.is_pos),
 							is_subcontracted: me.frm.doc.is_subcontracted,
-							transaction_date: me.frm.doc.transaction_date,
+							transaction_date: me.frm.doc.transaction_date || me.frm.doc.posting_date,
 							ignore_pricing_rule: me.frm.doc.ignore_pricing_rule,
 							doctype: item.doctype,
 							name: item.name,