Merge branch 'develop'
diff --git a/erpnext/__init__.py b/erpnext/__init__.py
index 97b7c37..9dcd029 100644
--- a/erpnext/__init__.py
+++ b/erpnext/__init__.py
@@ -2,7 +2,7 @@
 from __future__ import unicode_literals
 import frappe
 
-__version__ = '7.0.26'
+__version__ = '7.0.27'
 
 def get_default_company(user=None):
 	'''Get default company for user'''
diff --git a/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.py b/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.py
index d17e80f..38cef31 100644
--- a/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.py
+++ b/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.py
@@ -497,6 +497,18 @@
 
 				i += 1
 
+		if self.update_stock and valuation_tax:
+			for cost_center, amount in valuation_tax.items():
+				gl_entries.append(
+					self.get_gl_dict({
+						"account": self.expenses_included_in_valuation,
+						"cost_center": cost_center,
+						"against": self.supplier,
+						"credit": amount,
+						"remarks": self.remarks or "Accounting Entry for Stock"
+					})
+				)
+
 	def make_payment_gl_entries(self, gl_entries):
 		# Make Cash GL Entries
 		if cint(self.is_paid) and self.cash_bank_account and self.paid_amount:
diff --git a/erpnext/accounts/report/bank_reconciliation_statement/bank_reconciliation_statement.py b/erpnext/accounts/report/bank_reconciliation_statement/bank_reconciliation_statement.py
index 76e0de2..8ed338e 100644
--- a/erpnext/accounts/report/bank_reconciliation_statement/bank_reconciliation_statement.py
+++ b/erpnext/accounts/report/bank_reconciliation_statement/bank_reconciliation_statement.py
@@ -56,14 +56,6 @@
 			"width": 90
 		},
 		{
-			"fieldname": "payment_document",
-			"label": _("Payment Document"),
-			"fieldtype": "Link",
-			"options": "DocType",
-			"width": 120,
-			"hidden": 1
-		},
-		{
 			"fieldname": "payment_entry",
 			"label": _("Payment Entry"),
 			"fieldtype": "Dynamic Link",
diff --git a/erpnext/projects/doctype/project/project.py b/erpnext/projects/doctype/project/project.py
index f5ff2de..bdf3c3b 100644
--- a/erpnext/projects/doctype/project/project.py
+++ b/erpnext/projects/doctype/project/project.py
@@ -18,8 +18,10 @@
 		if not self.get('__unsaved') and not self.get("tasks"):
 			self.load_tasks()
 
-		self.set_onload('activity_summary', frappe.db.sql('''select activity_type, sum(hours) as total_hours
-			from `tabTimesheet Detail` where project=%s group by activity_type order by total_hours desc''', self.name, as_dict=True))
+		self.set_onload('activity_summary', frappe.db.sql('''select activity_type,
+			sum(hours) as total_hours
+			from `tabTimesheet Detail` where project=%s and docstatus < 2 group by activity_type
+			order by total_hours desc''', self.name, as_dict=True))
 
 	def __setup__(self):
 		self.onload()
@@ -187,12 +189,12 @@
 		"row_template": "templates/includes/projects/project_row.html"
 	}
 
-def get_users_for_project(doctype, txt, searchfield, start, page_len, filters):	
+def get_users_for_project(doctype, txt, searchfield, start, page_len, filters):
 	return frappe.db.sql("""select name, concat_ws(' ', first_name, middle_name, last_name)
-		from `tabUser` 
-		where enabled=1 
+		from `tabUser`
+		where enabled=1
 		and name not in ("Guest", "Administrator")
-		order by 
+		order by
 		name asc""")
 
 @frappe.whitelist()
diff --git a/erpnext/stock/doctype/stock_reconciliation/stock_reconciliation.py b/erpnext/stock/doctype/stock_reconciliation/stock_reconciliation.py
index 82b7e11..0f5cb96 100644
--- a/erpnext/stock/doctype/stock_reconciliation/stock_reconciliation.py
+++ b/erpnext/stock/doctype/stock_reconciliation/stock_reconciliation.py
@@ -78,10 +78,6 @@
 
 		default_currency = frappe.db.get_default("currency")
 
-		# validate no of rows
-		if len(self.items) > 100:
-			frappe.throw(_("""Max 100 rows for Stock Reconciliation."""))
-
 		for row_num, row in enumerate(self.items):
 			# find duplicates
 			if [row.item_code, row.warehouse] in item_warehouse_combinations: