Set target exchange rate from source if currency is same
diff --git a/erpnext/accounts/doctype/payment_entry/payment_entry.js b/erpnext/accounts/doctype/payment_entry/payment_entry.js
index ba76bdc..2fa627f 100644
--- a/erpnext/accounts/doctype/payment_entry/payment_entry.js
+++ b/erpnext/accounts/doctype/payment_entry/payment_entry.js
@@ -376,14 +376,32 @@
source_exchange_rate: function(frm) {
if (frm.doc.paid_amount) {
frm.set_value("base_paid_amount", flt(frm.doc.paid_amount) * flt(frm.doc.source_exchange_rate));
+ if(!frm.set_paid_amount_based_on_received_amount &&
+ (frm.doc.paid_from_account_currency == frm.doc.paid_to_account_currency)) {
+ frm.set_value("target_exchange_rate", frm.doc.source_exchange_rate);
+ frm.set_value("base_received_amount", frm.doc.base_paid_amount);
+ }
+
+ frm.events.set_difference_amount(frm);
}
},
target_exchange_rate: function(frm) {
+ frm.set_paid_amount_based_on_received_amount = true;
+
if (frm.doc.received_amount) {
frm.set_value("base_received_amount",
flt(frm.doc.received_amount) * flt(frm.doc.target_exchange_rate));
+
+ if(!frm.doc.source_exchange_rate &&
+ (frm.doc.paid_from_account_currency == frm.doc.paid_to_account_currency)) {
+ frm.set_value("source_exchange_rate", frm.doc.target_exchange_rate);
+ frm.set_value("base_paid_amount", frm.doc.base_received_amount);
+ }
+
+ frm.events.set_difference_amount(frm);
}
+ frm.set_paid_amount_based_on_received_amount = false;
},
paid_amount: function(frm) {