From 5a62bd6e85273ad9dad9175a77b1d4c57166ef2e Mon Sep 17 00:00:00 2001 From: ruthra kumar Date: Thu, 23 Jan 2025 13:48:09 +0530 Subject: [PATCH] refactor: allow reconciliation date for exchange gain / loss (cherry picked from commit 95af63e305c51a19bfea43c7f9580c68fb93433e) # Conflicts: # erpnext/accounts/doctype/accounts_settings/accounts_settings.json --- .../doctype/accounts_settings/accounts_settings.json | 10 +++++++++- .../doctype/accounts_settings/accounts_settings.py | 2 +- .../payment_reconciliation/payment_reconciliation.py | 2 ++ 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/erpnext/accounts/doctype/accounts_settings/accounts_settings.json b/erpnext/accounts/doctype/accounts_settings/accounts_settings.json index ddee7670ea1..b1393d5de9f 100644 --- a/erpnext/accounts/doctype/accounts_settings/accounts_settings.json +++ b/erpnext/accounts/doctype/accounts_settings/accounts_settings.json @@ -537,8 +537,12 @@ "fieldname": "exchange_gain_loss_posting_date", "fieldtype": "Select", "label": "Posting Date Inheritance for Exchange Gain / Loss", +<<<<<<< HEAD "options": "Invoice\nPayment" >>>>>>> 3fbd2ca0d9 (refactor: configurable posting date for Exc Gain / Loss journal) +======= + "options": "Invoice\nPayment\nReconciliation Date" +>>>>>>> 95af63e305 (refactor: allow reconciliation date for exchange gain / loss) } ], "icon": "icon-cog", @@ -546,11 +550,15 @@ "index_web_pages_for_search": 1, "issingle": 1, "links": [], +<<<<<<< HEAD <<<<<<< HEAD "modified": "2024-01-22 12:10:10.151819", ======= "modified": "2025-01-22 17:53:47.968079", >>>>>>> 3fbd2ca0d9 (refactor: configurable posting date for Exc Gain / Loss journal) +======= + "modified": "2025-01-23 13:15:44.077853", +>>>>>>> 95af63e305 (refactor: allow reconciliation date for exchange gain / loss) "modified_by": "Administrator", "module": "Accounts", "name": "Accounts Settings", @@ -579,4 +587,4 @@ "sort_order": "ASC", "states": [], "track_changes": 1 -} +} \ No newline at end of file diff --git a/erpnext/accounts/doctype/accounts_settings/accounts_settings.py b/erpnext/accounts/doctype/accounts_settings/accounts_settings.py index 94361f23b8c..ca3b18671a6 100644 --- a/erpnext/accounts/doctype/accounts_settings/accounts_settings.py +++ b/erpnext/accounts/doctype/accounts_settings/accounts_settings.py @@ -46,7 +46,7 @@ class AccountsSettings(Document): enable_fuzzy_matching: DF.Check enable_immutable_ledger: DF.Check enable_party_matching: DF.Check - exchange_gain_loss_posting_date: DF.Literal["Invoice", "Payment"] + exchange_gain_loss_posting_date: DF.Literal["Invoice", "Payment", "Reconciliation Date"] frozen_accounts_modifier: DF.Link | None general_ledger_remarks_length: DF.Int ignore_account_closing_balance: DF.Check diff --git a/erpnext/accounts/doctype/payment_reconciliation/payment_reconciliation.py b/erpnext/accounts/doctype/payment_reconciliation/payment_reconciliation.py index aa629ac7dcf..e9ed8c4a34b 100644 --- a/erpnext/accounts/doctype/payment_reconciliation/payment_reconciliation.py +++ b/erpnext/accounts/doctype/payment_reconciliation/payment_reconciliation.py @@ -385,6 +385,8 @@ class PaymentReconciliation(Document): res.update({"gain_loss_posting_date": pay.get("posting_date")}) if exc_gain_loss_posting_date == "Invoice": res.update({"gain_loss_posting_date": inv.get("invoice_date")}) + elif exc_gain_loss_posting_date == "Reconciliation Date": + res.update({"gain_loss_posting_date": nowdate()}) if pay.get("amount") == 0: entries.append(res)