diff --git a/hr/doctype/salary_manager/salary_manager.py b/hr/doctype/salary_manager/salary_manager.py
index 29b13ae..37a8c5d 100644
--- a/hr/doctype/salary_manager/salary_manager.py
+++ b/hr/doctype/salary_manager/salary_manager.py
@@ -12,7 +12,6 @@
 		self.doc = doc
 		self.doclist = doclist
 		
-		
 	def get_emp_list(self):
 		"""
 			Returns list of active employees based on selected criteria 
diff --git a/hr/doctype/salary_slip/salary_slip.py b/hr/doctype/salary_slip/salary_slip.py
index f5eeea1..94660d0 100644
--- a/hr/doctype/salary_slip/salary_slip.py
+++ b/hr/doctype/salary_slip/salary_slip.py
@@ -29,18 +29,17 @@
 			if struct:
 				self.pull_sal_struct(struct)
 
-
 	def check_sal_struct(self):
-		struct = webnotes.conn.sql("select name from `tabSalary Structure` where employee ='%s' and is_active = 'Yes' "%self.doc.employee)
+		struct = webnotes.conn.sql("""select name from `tabSalary Structure` 
+			where employee=%s and is_active = 'Yes'""", self.doc.employee)
 		if not struct:
-			msgprint("Please create Salary Structure for employee '%s'"%self.doc.employee)
-			self.doc.employee = ''
+			msgprint("Please create Salary Structure for employee '%s'" % self.doc.employee)
+			self.doc.employee = None
 		return struct and struct[0][0] or ''
 
-
 	def pull_sal_struct(self, struct):
-		from hr.doctype.salary_structure.salary_structure import make_salary_slip
-		self.doclist = make_salary_slip(struct, self.doclist)
+		from hr.doctype.salary_structure.salary_structure import get_mapped_doclist
+		self.doclist = get_mapped_doclist(struct, self.doclist)
 		
 	def pull_emp_details(self):
 		emp = webnotes.conn.get_value("Employee", self.doc.employee, 
diff --git a/hr/doctype/salary_structure/salary_structure.py b/hr/doctype/salary_structure/salary_structure.py
index 2dc056d..a034b90 100644
--- a/hr/doctype/salary_structure/salary_structure.py
+++ b/hr/doctype/salary_structure/salary_structure.py
@@ -74,6 +74,9 @@
 		
 @webnotes.whitelist()
 def make_salary_slip(source_name, target_doclist=None):
+	return [d.fields for d in get_mapped_doclist(source_name, target_doclist)]
+	
+def get_mapped_doclist(source_name, target_doclist=None):
 	from webnotes.model.mapper import get_mapped_doclist
 	
 	def postprocess(source, target):
@@ -109,4 +112,4 @@
 		}
 	}, target_doclist, postprocess)
 
-	return [d.fields for d in doclist]
\ No newline at end of file
+	return doclist
\ No newline at end of file
