changes made
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") {