mirror of
https://github.com/frappe/erpnext.git
synced 2026-03-12 06:48:31 +00:00
fix(postgres): validate against period closing using MAX(period_end_date) (#51554)
* fix(postgres): validate against period closing using MAX(period_end_date) * refactor: remove non-existent field --------- Co-authored-by: Matt Howard <github.severity519@passmail.net> Co-authored-by: ruthra kumar <ruthra@erpnext.com>
This commit is contained in:
@@ -804,12 +804,19 @@ def validate_against_pcv(is_opening, posting_date, company):
|
||||
title=_("Invalid Opening Entry"),
|
||||
)
|
||||
|
||||
last_pcv_date = frappe.db.get_value(
|
||||
"Period Closing Voucher", {"docstatus": 1, "company": company}, "max(period_end_date)"
|
||||
)
|
||||
# Local import so you don't have to touch file-level imports
|
||||
from frappe.query_builder.functions import Max
|
||||
|
||||
pcv = frappe.qb.DocType("Period Closing Voucher")
|
||||
|
||||
last_pcv_date = (
|
||||
frappe.qb.from_(pcv)
|
||||
.select(Max(pcv.period_end_date))
|
||||
.where((pcv.docstatus == 1) & (pcv.company == company))
|
||||
).run(pluck=True)[0]
|
||||
|
||||
if last_pcv_date and getdate(posting_date) <= getdate(last_pcv_date):
|
||||
message = _("Books have been closed till the period ending on {0}").format(formatdate(last_pcv_date))
|
||||
message = _("Books have been closed till the period ending on {0}.").format(formatdate(last_pcv_date))
|
||||
message += "</br >"
|
||||
message += _("You cannot create/amend any accounting entries till this date.")
|
||||
frappe.throw(message, title=_("Period Closed"))
|
||||
|
||||
Reference in New Issue
Block a user