diff --git a/erpnext/patches.txt b/erpnext/patches.txt index 263501fd31a..dcd4d119acd 100644 --- a/erpnext/patches.txt +++ b/erpnext/patches.txt @@ -363,4 +363,5 @@ erpnext.patches.v14_0.migrate_gl_to_payment_ledger erpnext.stock.doctype.delivery_note.patches.drop_unused_return_against_index # 2023-12-20 erpnext.patches.v14_0.set_maintain_stock_for_bom_item erpnext.patches.v15_0.delete_orphaned_asset_movement_item_records -erpnext.patches.v15_0.remove_cancelled_asset_capitalization_from_asset \ No newline at end of file +erpnext.patches.v15_0.remove_cancelled_asset_capitalization_from_asset +erpnext.patches.v15_0.fix_debit_credit_in_transaction_currency \ No newline at end of file diff --git a/erpnext/patches/v15_0/fix_debit_credit_in_transaction_currency.py b/erpnext/patches/v15_0/fix_debit_credit_in_transaction_currency.py new file mode 100644 index 00000000000..e0cc8f85a55 --- /dev/null +++ b/erpnext/patches/v15_0/fix_debit_credit_in_transaction_currency.py @@ -0,0 +1,21 @@ +import frappe + + +def execute(): + # update debit and credit in transaction currency: + # if transaction currency is same as account currency, + # then debit and credit in transaction currency is same as debit and credit in account currency + # else debit and credit divided by exchange rate + + # nosemgrep + frappe.db.sql( + """ + UPDATE `tabGL Entry` + SET + debit_in_transaction_currency = IF(transaction_currency = account_currency, debit_in_account_currency, debit / transaction_exchange_rate), + credit_in_transaction_currency = IF(transaction_currency = account_currency, credit_in_account_currency, credit / transaction_exchange_rate) + WHERE + transaction_exchange_rate > 0 + and transaction_currency is not null + """ + )