Search query for account cleanup
diff --git a/erpnext/accounts/report/accounts_payable/accounts_payable.js b/erpnext/accounts/report/accounts_payable/accounts_payable.js
index 09fbd3e..300c228 100644
--- a/erpnext/accounts/report/accounts_payable/accounts_payable.js
+++ b/erpnext/accounts/report/accounts_payable/accounts_payable.js
@@ -18,7 +18,7 @@
 			"get_query": function() {
 				var company = frappe.query_report.filters_by_name.company.get_value();
 				return {
-					"query": "erpnext.accounts.utils.get_account_list",
+					"query": "erpnext.controllers.queries.get_account_list",
 					"filters": {
 						"report_type": "Balance Sheet",
 						"company": company,
diff --git a/erpnext/accounts/report/accounts_receivable/accounts_receivable.js b/erpnext/accounts/report/accounts_receivable/accounts_receivable.js
index 1cf0941..304c21b 100644
--- a/erpnext/accounts/report/accounts_receivable/accounts_receivable.js
+++ b/erpnext/accounts/report/accounts_receivable/accounts_receivable.js
@@ -18,7 +18,7 @@
 			"get_query": function() {
 				var company = frappe.query_report.filters_by_name.company.get_value();
 				return {
-					"query": "erpnext.accounts.utils.get_account_list", 
+					"query": "erpnext.controllers.queries.get_account_list", 
 					"filters": {
 						"report_type": "Balance Sheet",
 						"company": company,
diff --git a/erpnext/accounts/report/bank_clearance_summary/bank_clearance_summary.js b/erpnext/accounts/report/bank_clearance_summary/bank_clearance_summary.js
index abeaba8..c28ba70 100644
--- a/erpnext/accounts/report/bank_clearance_summary/bank_clearance_summary.js
+++ b/erpnext/accounts/report/bank_clearance_summary/bank_clearance_summary.js
@@ -23,7 +23,7 @@
 			"options": "Account",
 			"get_query": function() {
 				return {
-					"query": "erpnext.accounts.utils.get_account_list", 
+					"query": "erpnext.controllers.queries.get_account_list", 
 					"filters": [
 						['Account', 'account_type', 'in', 'Bank, Cash'],
 						['Account', 'group_or_ledger', '=', 'Ledger'],
diff --git a/erpnext/accounts/report/bank_reconciliation_statement/bank_reconciliation_statement.js b/erpnext/accounts/report/bank_reconciliation_statement/bank_reconciliation_statement.js
index 4bdcd9e..adc9ca2 100644
--- a/erpnext/accounts/report/bank_reconciliation_statement/bank_reconciliation_statement.js
+++ b/erpnext/accounts/report/bank_reconciliation_statement/bank_reconciliation_statement.js
@@ -11,7 +11,7 @@
 			"reqd": 1,
 			"get_query": function() {
 				return {
-					"query": "erpnext.accounts.utils.get_account_list",
+					"query": "erpnext.controllers.queries.get_account_list",
 					"filters": [
 						['Account', 'account_type', 'in', 'Bank, Cash'],
 						['Account', 'group_or_ledger', '=', 'Ledger'],
diff --git a/erpnext/accounts/report/item_wise_purchase_register/item_wise_purchase_register.js b/erpnext/accounts/report/item_wise_purchase_register/item_wise_purchase_register.js
index 402f894..13c0edc 100644
--- a/erpnext/accounts/report/item_wise_purchase_register/item_wise_purchase_register.js
+++ b/erpnext/accounts/report/item_wise_purchase_register/item_wise_purchase_register.js
@@ -30,7 +30,7 @@
 			"get_query": function() {
 				var company = frappe.query_report.filters_by_name.company.get_value();
 				return {
-					"query": "erpnext.accounts.utils.get_account_list", 
+					"query": "erpnext.controllers.queries.get_account_list", 
 					"filters": {
 						"report_type": "Balance Sheet",
 						"company": company,
diff --git a/erpnext/accounts/report/item_wise_sales_register/item_wise_sales_register.js b/erpnext/accounts/report/item_wise_sales_register/item_wise_sales_register.js
index 3264da7..79b1785 100644
--- a/erpnext/accounts/report/item_wise_sales_register/item_wise_sales_register.js
+++ b/erpnext/accounts/report/item_wise_sales_register/item_wise_sales_register.js
@@ -24,7 +24,7 @@
 			"get_query": function() {
 				var company = frappe.query_report.filters_by_name.company.get_value();
 				return {
-					"query": "erpnext.accounts.utils.get_account_list", 
+					"query": "erpnext.controllers.queries.get_account_list", 
 					"filters": {
 						"report_type": "Balance Sheet",
 						"company": company,
diff --git a/erpnext/accounts/report/payment_period_based_on_invoice_date/payment_period_based_on_invoice_date.js b/erpnext/accounts/report/payment_period_based_on_invoice_date/payment_period_based_on_invoice_date.js
index b0833b5..bff3f70 100644
--- a/erpnext/accounts/report/payment_period_based_on_invoice_date/payment_period_based_on_invoice_date.js
+++ b/erpnext/accounts/report/payment_period_based_on_invoice_date/payment_period_based_on_invoice_date.js
@@ -29,7 +29,7 @@
 			options: "Account",
 			get_query: function() {
 				return {
-					query: "erpnext.accounts.utils.get_account_list", 
+					query: "erpnext.controllers.queries.get_account_list", 
 					filters: {
 						"report_type": "Balance Sheet",
 						company: frappe.query_report.filters_by_name.company.get_value()
diff --git a/erpnext/accounts/report/purchase_register/purchase_register.js b/erpnext/accounts/report/purchase_register/purchase_register.js
index 7e999de..a1a41a5 100644
--- a/erpnext/accounts/report/purchase_register/purchase_register.js
+++ b/erpnext/accounts/report/purchase_register/purchase_register.js
@@ -24,7 +24,7 @@
 			"get_query": function() {
 				var company = frappe.query_report.filters_by_name.company.get_value();
 				return {
-					"query": "erpnext.accounts.utils.get_account_list", 
+					"query": "erpnext.controllers.queries.get_account_list", 
 					"filters": {
 						"report_type": "Balance Sheet",
 						"company": company,
diff --git a/erpnext/accounts/report/sales_register/sales_register.js b/erpnext/accounts/report/sales_register/sales_register.js
index 0cc48a6..ac30562 100644
--- a/erpnext/accounts/report/sales_register/sales_register.js
+++ b/erpnext/accounts/report/sales_register/sales_register.js
@@ -24,7 +24,7 @@
 			"get_query": function() {
 				var company = frappe.query_report.filters_by_name.company.get_value();
 				return {
-					"query": "erpnext.accounts.utils.get_account_list", 
+					"query": "erpnext.controllers.queries.get_account_list", 
 					"filters": {
 						"report_type": "Balance Sheet",
 						"company": company,
diff --git a/erpnext/accounts/utils.py b/erpnext/accounts/utils.py
index 75825fc..160514b 100644
--- a/erpnext/accounts/utils.py
+++ b/erpnext/accounts/utils.py
@@ -195,30 +195,6 @@
 	jv_obj.ignore_validate_update_after_submit = True
 	jv_obj.save()
 
-def get_account_list(doctype, txt, searchfield, start, page_len, filters):
-	filters = add_group_or_ledger_filter("Account", filters)
-
-	return frappe.widgets.reportview.execute("Account", filters = filters,
-		fields = ["name", "parent_account"],
-		limit_start=start, limit_page_length=page_len, as_list=True)
-
-def get_cost_center_list(doctype, txt, searchfield, start, page_len, filters):
-	filters = add_group_or_ledger_filter("Cost Center", filters)
-
-	return frappe.widgets.reportview.execute("Cost Center", filters = filters,
-		fields = ["name", "parent_cost_center"],
-		limit_start=start, limit_page_length=page_len, as_list=True)
-
-def add_group_or_ledger_filter(doctype, filters):
-	if isinstance(filters, dict):
-		if not filters.get("group_or_ledger"):
-			filters["group_or_ledger"] = "Ledger"
-	elif isinstance(filters, list):
-		if "group_or_ledger" not in [d[0] for d in filters]:
-			filters.append([doctype, "group_or_ledger", "=", "Ledger"])
-
-	return filters
-
 def remove_against_link_from_jv(ref_type, ref_no, against_field):
 	linked_jv = frappe.db.sql_list("""select parent from `tabJournal Voucher Detail`
 		where `%s`=%s and docstatus < 2""" % (against_field, "%s"), (ref_no))
diff --git a/erpnext/controllers/queries.py b/erpnext/controllers/queries.py
index 5cc7f64..a30cde7 100644
--- a/erpnext/controllers/queries.py
+++ b/erpnext/controllers/queries.py
@@ -234,3 +234,15 @@
 				'posting_date': filters['posting_date'], 'txt': "%%%s%%" % txt,
 				'mcond':get_match_cond(doctype),'start': start,
 				'page_len': page_len})
+
+def get_account_list(doctype, txt, searchfield, start, page_len, filters):
+	if isinstance(filters, dict):
+		if not filters.get("group_or_ledger"):
+			filters["group_or_ledger"] = "Ledger"
+	elif isinstance(filters, list):
+		if "group_or_ledger" not in [d[0] for d in filters]:
+			filters.append(["Account", "group_or_ledger", "=", "Ledger"])
+
+	return frappe.widgets.reportview.execute("Account", filters = filters,
+		fields = ["name", "parent_account"],
+		limit_start=start, limit_page_length=page_len, as_list=True)