From 8f2fdcae88252cddaaeeb89f881671c2101ad886 Mon Sep 17 00:00:00 2001 From: Mihir Kandoi Date: Wed, 19 Feb 2025 13:03:45 +0530 Subject: [PATCH] fix: patch (cherry picked from commit 1230127d24cc1ae97129ad8e592ca3cdf8f59c32) # Conflicts: # erpnext/patches.txt --- erpnext/patches.txt | 5 +++++ .../v15_0}/recalculate_amount_difference_field.py | 9 +++++++-- ...me_field_from_rate_difference_to_amount_difference.py | 0 .../doctype/purchase_receipt_item/patches/__init__.py | 0 4 files changed, 12 insertions(+), 2 deletions(-) rename erpnext/{stock/doctype/purchase_receipt_item/patches => patches/v15_0}/recalculate_amount_difference_field.py (88%) rename erpnext/{stock/doctype/purchase_receipt_item/patches => patches/v15_0}/rename_field_from_rate_difference_to_amount_difference.py (100%) delete mode 100644 erpnext/stock/doctype/purchase_receipt_item/patches/__init__.py diff --git a/erpnext/patches.txt b/erpnext/patches.txt index 604f0ff6141..e0a1fcf3cbf 100644 --- a/erpnext/patches.txt +++ b/erpnext/patches.txt @@ -402,6 +402,7 @@ execute:frappe.db.set_single_value("Accounts Settings", "exchange_gain_loss_post erpnext.patches.v14_0.disable_add_row_in_gross_profit <<<<<<< HEAD <<<<<<< HEAD +<<<<<<< HEAD erpnext.patches.v15_0.set_difference_amount_in_asset_value_adjustment erpnext.patches.v14_0.update_posting_datetime erpnext.stock.doctype.stock_ledger_entry.patches.ensure_sle_indexes @@ -414,3 +415,7 @@ erpnext.stock.doctype.purchase_receipt_item.patches.recalculate_amount_differenc erpnext.stock.doctype.purchase_receipt_item.patches.rename_field_from_rate_difference_to_amount_difference erpnext.stock.doctype.purchase_receipt_item.patches.recalculate_amount_difference_field >>>>>>> 154e9813c4 (fix: revert last commit) +======= +erpnext.patches.v15_0.rename_field_from_rate_difference_to_amount_difference +erpnext.patches.v15_0.recalculate_amount_difference_field +>>>>>>> 1230127d24 (fix: patch) diff --git a/erpnext/stock/doctype/purchase_receipt_item/patches/recalculate_amount_difference_field.py b/erpnext/patches/v15_0/recalculate_amount_difference_field.py similarity index 88% rename from erpnext/stock/doctype/purchase_receipt_item/patches/recalculate_amount_difference_field.py rename to erpnext/patches/v15_0/recalculate_amount_difference_field.py index fc904baa927..5ece5f08ddb 100644 --- a/erpnext/stock/doctype/purchase_receipt_item/patches/recalculate_amount_difference_field.py +++ b/erpnext/patches/v15_0/recalculate_amount_difference_field.py @@ -31,6 +31,8 @@ def execute(): if result := query.run(as_dict=True): item_wise_billed_qty = get_billed_qty_against_purchase_receipt([item.name for item in result]) + purchase_receipts = set() + precision = frappe.get_precision("Purchase Receipt Item", "amount") for item in result: adjusted_amt = 0.0 @@ -44,7 +46,7 @@ def execute(): ) * item.qty adjusted_amt = flt( adjusted_amt * flt(item.conversion_rate), - frappe.get_precision("Purchase Receipt Item", "amount"), + precision, ) if adjusted_amt != item.amount_difference_with_purchase_invoice: @@ -55,7 +57,10 @@ def execute(): adjusted_amt, update_modified=False, ) - adjust_incoming_rate_for_pr(frappe.get_doc("Purchase Receipt", item.parent)) + purchase_receipts.add(item.parent) + + for pr in purchase_receipts: + adjust_incoming_rate_for_pr(frappe.get_doc("Purchase Receipt", pr)) def get_billed_qty_against_purchase_receipt(pr_names): diff --git a/erpnext/stock/doctype/purchase_receipt_item/patches/rename_field_from_rate_difference_to_amount_difference.py b/erpnext/patches/v15_0/rename_field_from_rate_difference_to_amount_difference.py similarity index 100% rename from erpnext/stock/doctype/purchase_receipt_item/patches/rename_field_from_rate_difference_to_amount_difference.py rename to erpnext/patches/v15_0/rename_field_from_rate_difference_to_amount_difference.py diff --git a/erpnext/stock/doctype/purchase_receipt_item/patches/__init__.py b/erpnext/stock/doctype/purchase_receipt_item/patches/__init__.py deleted file mode 100644 index e69de29bb2d..00000000000