diff --git a/erpnext/setup/install.py b/erpnext/setup/install.py index ccae5136a9e..fffe9b9bdf0 100644 --- a/erpnext/setup/install.py +++ b/erpnext/setup/install.py @@ -296,8 +296,20 @@ def update_pegged_currencies(): {"source_currency": "SAR", "pegged_against": "USD", "pegged_exchange_rate": 3.75}, ] + # Add items on pegged_currency_item if source_currency and pegged_against currency doc exist. + + currencies_exist = frappe.db.get_list( + "Currency", {"name": ["in", ["AED", "BHD", "JOD", "OMR", "QAR", "SAR", "USD"]]}, pluck="name" + ) + + if "USD" not in currencies_exist: + return + for currency in currencies_to_add: - if currency["source_currency"] not in existing_sources: + if ( + currency["source_currency"] in currencies_exist + and currency["source_currency"] not in existing_sources + ): doc.append("pegged_currency_item", currency) doc.save()