diff --git a/erpnext/accounts/doctype/journal_voucher/journal_voucher.py b/erpnext/accounts/doctype/journal_voucher/journal_voucher.py
index 7a036fe..fe41a2c 100644
--- a/erpnext/accounts/doctype/journal_voucher/journal_voucher.py
+++ b/erpnext/accounts/doctype/journal_voucher/journal_voucher.py
@@ -429,7 +429,7 @@
 			if d.against_expense_claim:
 				amt = frappe.db.sql("""select sum(debit) as amt from `tabJournal Voucher Detail` 
 					where against_expense_claim = %s and docstatus = 1""", d.against_expense_claim ,as_dict=1)[0].amt
-				frappe.db.sql("update `tabExpense Claim` set total_amount_reimbursed = %s where name = %s",(amt, d.against_expense_claim))
+				frappe.db.set_value("Expense Claim", d.against_expense_claim , "total_amount_reimbursed", amt)
 				
 	def validate_expense_claim(self):
 		for d in self.entries:
diff --git a/erpnext/hr/doctype/expense_claim/expense_claim.js b/erpnext/hr/doctype/expense_claim/expense_claim.js
index 79d7aac..ba45928 100644
--- a/erpnext/hr/doctype/expense_claim/expense_claim.js
+++ b/erpnext/hr/doctype/expense_claim/expense_claim.js
@@ -22,10 +22,12 @@
 
 				var d1 = frappe.model.add_child(jv, 'Journal Voucher Detail', 'entries');
 				d1.debit = cur_frm.doc.total_sanctioned_amount;
+				d1.against_expense_claim = cur_frm.doc.name;
 
 				// credit to bank
 				var d1 = frappe.model.add_child(jv, 'Journal Voucher Detail', 'entries');
 				d1.credit = cur_frm.doc.total_sanctioned_amount;
+				d1.against_expense_claim = cur_frm.doc.name;
 				if(r.message) {
 					d1.account = r.message.account;
 					d1.balance = r.message.balance;
@@ -89,7 +91,8 @@
 		if(doc.docstatus==0 && doc.exp_approver==user && doc.approval_status=="Approved")
 			 cur_frm.savesubmit();
 
-		if(doc.docstatus==1 && frappe.model.can_create("Journal Voucher") && doc.total_amount_reimbursed < doc.total_sanctioned_amount)
+		if(doc.docstatus==1 && frappe.model.can_create("Journal Voucher") && 
+			cint(doc.total_amount_reimbursed) < cint(doc.total_sanctioned_amount))
 			 cur_frm.add_custom_button(__("Make Bank Voucher"),
 			 	cur_frm.cscript.make_bank_voucher, frappe.boot.doctype_icons["Journal Voucher"]);
 	}
@@ -109,7 +112,7 @@
 		} else {
 			if(doc.approval_status=="Approved") {
 				cur_frm.set_intro(__("Expense Claim has been approved."));
-				if(doc.total_amount_reimbursed== doc.total_sanctioned_amount){
+				if(Math.abs(cint(doc.total_amount_reimbursed) - cint(doc.total_sanctioned_amount)) < .001){
 					cur_frm.set_intro(__("Expense Claim has been reimbursed."));
 				}
 			} else if(doc.approval_status=="Rejected") {
