fix(print): handle custom format with custom module

Co-authored-by: Aman <amanupadhayay2906@gmail.com>
Co-authored-by: Khushbu <mittalk1802@gmail.com>
Co-authored-by: Manya <girdharmanya28@gmail.com>
Co-authored-by: Ritika <ritika@korecent.com>
Co-authored-by: Siddharth <siddharth.khati03@gmail.com>
Co-authored-by: Yashvi <yashvi@korecent.com>
This commit is contained in:
Hussain Nagaria 2025-02-21 12:57:47 +05:30
parent d0c3a8ee56
commit 4f453f2ef2

View file

@ -438,21 +438,23 @@ def get_print_format(doctype: str, print_format: "PrintFormat") -> str:
# server, find template
module = print_format.module or frappe.db.get_value("DocType", doctype, "module")
path = os.path.join(
get_module_path(module, "Print Format", print_format.name),
frappe.scrub(print_format.name) + ".html",
)
if os.path.exists(path):
with open(path) as pffile:
return pffile.read()
else:
is_custom_module = frappe.get_cached_value("Module Def", module, "custom")
if is_custom_module:
if print_format.raw_printing:
return print_format.raw_commands
if print_format.html:
return print_format.html
frappe.throw(_("No template found at path: {0}").format(path), frappe.TemplateNotFoundError)
path = os.path.join(
get_module_path(module, "Print Format", print_format.name),
frappe.scrub(print_format.name) + ".html",
)
if os.path.exists(path):
with open(path) as pffile:
return pffile.read()
frappe.throw(_("No template found at path: {0}").format(path), frappe.TemplateNotFoundError)
def make_layout(doc: "Document", meta: "Meta", format_data=None) -> list: