diff --git a/erpnext/assets/doctype/asset_repair/asset_repair.js b/erpnext/assets/doctype/asset_repair/asset_repair.js
index 91bed4f..1cebfff 100644
--- a/erpnext/assets/doctype/asset_repair/asset_repair.js
+++ b/erpnext/assets/doctype/asset_repair/asset_repair.js
@@ -2,6 +2,34 @@
 // For license information, please see license.txt
 
 frappe.ui.form.on('Asset Repair', {
+	setup: function(frm) {
+		frm.fields_dict.cost_center.get_query = function(doc) {
+			return {
+				filters: {
+					'is_group': 0,
+					'company': doc.company
+				}
+			};
+		};
+
+		frm.fields_dict.project.get_query = function(doc) {
+			return {
+				filters: {
+					'company': doc.company
+				}
+			};
+		};
+
+		frm.fields_dict.warehouse.get_query = function(doc) {
+			return {
+				filters: {
+					'is_group': 0,
+					'company': doc.company
+				}
+			};
+		};
+	},
+
 	refresh: function(frm) {
 		if (frm.doc.docstatus) {
 			frm.add_custom_button("View General Ledger", function() {
@@ -40,30 +68,4 @@
 		var row = locals[cdt][cdn];
 		frappe.model.set_value(cdt, cdn, 'total_value', row.consumed_quantity * row.valuation_rate);
 	},
-});
-
-cur_frm.fields_dict.cost_center.get_query = function(doc) {
-	return {
-		filters: {
-			'is_group': 0,
-			'company': doc.company
-		}
-	};
-};
-
-cur_frm.fields_dict.project.get_query = function(doc) {
-	return {
-		filters: {
-			'company': doc.company
-		}
-	};
-};
-
-cur_frm.fields_dict.warehouse.get_query = function(doc) {
-	return {
-		filters: {
-			'is_group': 0,
-			'company': doc.company
-		}
-	};
-};
\ No newline at end of file
+});
\ No newline at end of file
