From f7e165b5ffd029973bd4cb54d1f852d22dda96df Mon Sep 17 00:00:00 2001 From: Nabin Hait Date: Mon, 29 Apr 2024 17:24:31 +0530 Subject: [PATCH] fix: Patch to fix the incorrect debit and credit in transaction currency (cherry picked from commit e0d12ba4d02776e5de779d5b64c9713b6521ecb8) # Conflicts: # erpnext/patches.txt --- erpnext/patches.txt | 8 ++++++- ...ix_debit_credit_in_transaction_currency.py | 21 +++++++++++++++++++ 2 files changed, 28 insertions(+), 1 deletion(-) create mode 100644 erpnext/patches/v15_0/fix_debit_credit_in_transaction_currency.py diff --git a/erpnext/patches.txt b/erpnext/patches.txt index c74a2839958..4a664a41298 100644 --- a/erpnext/patches.txt +++ b/erpnext/patches.txt @@ -360,4 +360,10 @@ erpnext.patches.v15_0.create_accounting_dimensions_in_payment_request 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 \ No newline at end of file +<<<<<<< HEAD +erpnext.patches.v15_0.delete_orphaned_asset_movement_item_records +======= +erpnext.patches.v15_0.delete_orphaned_asset_movement_item_records +erpnext.patches.v15_0.remove_cancelled_asset_capitalization_from_asset +erpnext.patches.v15_0.fix_debit_credit_in_transaction_currency +>>>>>>> e0d12ba4d0 (fix: Patch to fix the incorrect debit and credit in transaction currency) 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 + """ + )