fix: render missing terms before printing (#58367)

This commit is contained in:
Pandiyan P
2026-08-24 16:28:17 +05:30
committed by GitHub
parent 61238e7c4c
commit b33475e7cf

View File

@@ -719,6 +719,8 @@ class AccountsController(TransactionBase):
self.validate_non_invoice_documents_schedule() self.validate_non_invoice_documents_schedule()
def before_print(self, settings=None): def before_print(self, settings=None):
self.set_missing_terms()
if self.doctype in [ if self.doctype in [
"Purchase Order", "Purchase Order",
"Sales Order", "Sales Order",
@@ -742,6 +744,16 @@ class AccountsController(TransactionBase):
set_print_templates_for_item_table(self, settings) set_print_templates_for_item_table(self, settings)
set_print_templates_for_taxes(self, settings) set_print_templates_for_taxes(self, settings)
def set_missing_terms(self):
if not self.get("tc_name") or self.get("terms"):
return
from erpnext.setup.doctype.terms_and_conditions.terms_and_conditions import (
get_terms_and_conditions,
)
self.terms = get_terms_and_conditions(self.tc_name, self.as_dict())
def calculate_paid_amount(self): def calculate_paid_amount(self):
if hasattr(self, "is_pos") or hasattr(self, "is_paid"): if hasattr(self, "is_pos") or hasattr(self, "is_paid"):
is_paid = self.get("is_pos") or self.get("is_paid") is_paid = self.get("is_pos") or self.get("is_paid")