fix: incoming rate for legacy serial no

(cherry picked from commit 2773b7c002)

# Conflicts:
#	erpnext/stock/deprecated_serial_batch.py
#	erpnext/stock/doctype/stock_reposting_settings/stock_reposting_settings.json
#	erpnext/stock/doctype/stock_reposting_settings/stock_reposting_settings.py
This commit is contained in:
Rohit Waghchaure
2026-05-15 13:49:41 +05:30
committed by Mergify
parent 651af67b26
commit 6e6ef83d60
3 changed files with 82 additions and 1 deletions

View File

@@ -32,9 +32,26 @@ class DeprecatedSerialNoValuation:
# get rate from serial nos within same company
incoming_values = 0.0
<<<<<<< HEAD
=======
posting_datetime = self.sle.posting_datetime
if not posting_datetime and self.sle.posting_date:
posting_datetime = get_combine_datetime(self.sle.posting_date, self.sle.posting_time)
do_not_fetch_rate = frappe.db.get_single_value(
"Stock Reposting Settings", "do_not_fetch_incoming_rate_from_serial_no"
)
>>>>>>> 2773b7c002 (fix: incoming rate for legacy serial no)
for serial_no in serial_nos:
sn_details = frappe.db.get_value("Serial No", serial_no, ["purchase_rate", "company"], as_dict=1)
if sn_details and sn_details.purchase_rate and sn_details.company == self.sle.company:
if (
sn_details
and sn_details.purchase_rate
and sn_details.company == self.sle.company
and (not frappe.flags.through_repost_item_valuation or not do_not_fetch_rate)
):
self.serial_no_incoming_rate[serial_no] += flt(sn_details.purchase_rate)
incoming_values += self.serial_no_incoming_rate[serial_no]
continue

View File

@@ -1,5 +1,6 @@
{
"actions": [],
"allow_bulk_edit": 1,
"allow_rename": 1,
"beta": 1,
"creation": "2021-10-01 10:56:30.814787",
@@ -13,6 +14,16 @@
"end_time",
"limits_dont_apply_on",
"item_based_reposting",
<<<<<<< HEAD
=======
"column_break_mavd",
"do_not_fetch_incoming_rate_from_serial_no",
"section_break_dxuf",
"enable_parallel_reposting",
"no_of_parallel_reposting",
"column_break_itvd",
"enable_separate_reposting_for_gl",
>>>>>>> 2773b7c002 (fix: incoming rate for legacy serial no)
"errors_notification_section",
"notify_reposting_error_to_role"
],
@@ -65,12 +76,59 @@
"fieldname": "errors_notification_section",
"fieldtype": "Section Break",
"label": "Errors Notification"
<<<<<<< HEAD
=======
},
{
"default": "0",
"depends_on": "eval: doc.item_based_reposting",
"fieldname": "enable_parallel_reposting",
"fieldtype": "Check",
"label": "Enable Parallel Reposting"
},
{
"default": "4",
"depends_on": "eval: doc.item_based_reposting === 1 && doc.enable_parallel_reposting === 1",
"fieldname": "no_of_parallel_reposting",
"fieldtype": "Int",
"label": "No of Parallel Reposting (Per Item)"
},
{
"fieldname": "section_break_dxuf",
"fieldtype": "Section Break"
},
{
"fieldname": "column_break_itvd",
"fieldtype": "Column Break"
},
{
"default": "0",
"depends_on": "item_based_reposting",
"fieldname": "enable_separate_reposting_for_gl",
"fieldtype": "Check",
"label": "Enable Separate Reposting for GL"
},
{
"fieldname": "column_break_mavd",
"fieldtype": "Column Break"
},
{
"default": "0",
"description": "For legacy serial nos, do not fetch incoming rate from serial no and calculate it based on the inward transaction",
"fieldname": "do_not_fetch_incoming_rate_from_serial_no",
"fieldtype": "Check",
"label": "Do not fetch incoming rate from Serial No"
>>>>>>> 2773b7c002 (fix: incoming rate for legacy serial no)
}
],
"index_web_pages_for_search": 1,
"issingle": 1,
"links": [],
<<<<<<< HEAD
"modified": "2025-07-08 11:27:46.659056",
=======
"modified": "2026-05-15 12:59:34.392491",
>>>>>>> 2773b7c002 (fix: incoming rate for legacy serial no)
"modified_by": "Administrator",
"module": "Stock",
"name": "Stock Reposting Settings",

View File

@@ -16,6 +16,12 @@ class StockRepostingSettings(Document):
if TYPE_CHECKING:
from frappe.types import DF
<<<<<<< HEAD
=======
do_not_fetch_incoming_rate_from_serial_no: DF.Check
enable_parallel_reposting: DF.Check
enable_separate_reposting_for_gl: DF.Check
>>>>>>> 2773b7c002 (fix: incoming rate for legacy serial no)
end_time: DF.Time | None
item_based_reposting: DF.Check
limit_reposting_timeslot: DF.Check