mirror of
https://github.com/frappe/erpnext.git
synced 2026-03-18 14:32:13 +00:00
fix(ux): set amount on foreign currency when foreign currency account is selected on last row of journal
(cherry picked from commit 2b66842d34)
This commit is contained in:
@@ -680,6 +680,7 @@ $.extend(erpnext.journal_entry, {
|
|||||||
callback: function (r) {
|
callback: function (r) {
|
||||||
if (r.message) {
|
if (r.message) {
|
||||||
$.extend(d, r.message);
|
$.extend(d, r.message);
|
||||||
|
erpnext.journal_entry.set_amount_on_last_row(frm, dt, dn);
|
||||||
erpnext.journal_entry.set_debit_credit_in_company_currency(frm, dt, dn);
|
erpnext.journal_entry.set_debit_credit_in_company_currency(frm, dt, dn);
|
||||||
refresh_field("accounts");
|
refresh_field("accounts");
|
||||||
}
|
}
|
||||||
@@ -687,4 +688,26 @@ $.extend(erpnext.journal_entry, {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
set_amount_on_last_row: function (frm, dt, dn) {
|
||||||
|
let row = locals[dt][dn];
|
||||||
|
let length = frm.doc.accounts.length;
|
||||||
|
if (row.idx != length) return;
|
||||||
|
|
||||||
|
let difference = frm.doc.accounts.reduce((total, row) => {
|
||||||
|
if (row.idx == length) return total;
|
||||||
|
|
||||||
|
return total + row.debit - row.credit;
|
||||||
|
}, 0);
|
||||||
|
|
||||||
|
if (difference) {
|
||||||
|
if (difference > 0) {
|
||||||
|
row.credit_in_account_currency = difference / row.exchange_rate;
|
||||||
|
row.credit = difference;
|
||||||
|
} else {
|
||||||
|
row.debit_in_account_currency = -difference / row.exchange_rate;
|
||||||
|
row.debit = -difference;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
refresh_field("accounts");
|
||||||
|
},
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user