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: