mirror of
https://github.com/frappe/erpnext.git
synced 2026-04-29 03:28:32 +00:00
fix: do not validate if conversion rate is 1 for different currency
(cherry picked from commit e8a66d03bc)
This commit is contained in:
@@ -1819,17 +1819,6 @@ class TestSalesInvoice(FrappeTestCase):
|
|||||||
for field in expected_gle:
|
for field in expected_gle:
|
||||||
self.assertEqual(expected_gle[field], gle[field])
|
self.assertEqual(expected_gle[field], gle[field])
|
||||||
|
|
||||||
def test_invoice_exchange_rate(self):
|
|
||||||
si = create_sales_invoice(
|
|
||||||
customer="_Test Customer USD",
|
|
||||||
debit_to="_Test Receivable USD - _TC",
|
|
||||||
currency="USD",
|
|
||||||
conversion_rate=1,
|
|
||||||
do_not_save=1,
|
|
||||||
)
|
|
||||||
|
|
||||||
self.assertRaises(frappe.ValidationError, si.save)
|
|
||||||
|
|
||||||
def test_invalid_currency(self):
|
def test_invalid_currency(self):
|
||||||
# Customer currency = USD
|
# Customer currency = USD
|
||||||
|
|
||||||
|
|||||||
@@ -2692,12 +2692,17 @@ class AccountsController(TransactionBase):
|
|||||||
default_currency = erpnext.get_company_currency(self.company)
|
default_currency = erpnext.get_company_currency(self.company)
|
||||||
if not default_currency:
|
if not default_currency:
|
||||||
throw(_("Please enter default currency in Company Master"))
|
throw(_("Please enter default currency in Company Master"))
|
||||||
if (
|
|
||||||
(self.currency == default_currency and flt(self.conversion_rate) != 1.00)
|
if not self.conversion_rate:
|
||||||
or not self.conversion_rate
|
throw(_("Conversion rate cannot be 0"))
|
||||||
or (self.currency != default_currency and flt(self.conversion_rate) == 1.00)
|
|
||||||
):
|
if self.currency == default_currency and flt(self.conversion_rate) != 1.00:
|
||||||
throw(_("Conversion rate cannot be 0 or 1"))
|
throw(_("Conversion rate must be 1.00 if document currency is same as company currency"))
|
||||||
|
|
||||||
|
if self.currency != default_currency and flt(self.conversion_rate) == 1.00:
|
||||||
|
frappe.msgprint(
|
||||||
|
_("Conversion rate is 1.00, but document currency is different from company currency")
|
||||||
|
)
|
||||||
|
|
||||||
def check_finance_books(self, item, asset):
|
def check_finance_books(self, item, asset):
|
||||||
if (
|
if (
|
||||||
|
|||||||
Reference in New Issue
Block a user