refactor: bring back titles on sales transactions and make them optional and visible on purchase transactions (#52633)

* fix: correct wrong PO titles

* refactor: restore title fields to sales transaction doctypes

* refactor: change title fields to optional fields with no default in purchase transactional doctypes

* chore: re-save doctype definitions

- updates modified timestamps
- regenerates type hints

---------

Co-authored-by: barredterra <14891507+barredterra@users.noreply.github.com>
(cherry picked from commit bd9427623f)

# Conflicts:
#	erpnext/accounts/doctype/pos_invoice/pos_invoice.json
#	erpnext/accounts/doctype/purchase_invoice/purchase_invoice.json
#	erpnext/accounts/doctype/sales_invoice/sales_invoice.json
#	erpnext/buying/doctype/purchase_order/purchase_order.json
#	erpnext/buying/doctype/supplier_quotation/supplier_quotation.json
#	erpnext/patches.txt
#	erpnext/selling/doctype/quotation/quotation.json
#	erpnext/selling/doctype/sales_order/sales_order.json
#	erpnext/stock/doctype/delivery_note/delivery_note.json
This commit is contained in:
Trusted Computer
2026-04-10 00:39:32 -07:00
committed by Mergify
parent 0df38a841e
commit b84d9bb1af
20 changed files with 246 additions and 12 deletions

View File

@@ -26,6 +26,8 @@
"due_date",
"amended_from",
"return_against",
"section_break_clmv",
"title",
"accounting_dimensions_section",
"project",
"dimension_col_break",
@@ -1619,12 +1621,36 @@
{
"fieldname": "column_break_bhao",
"fieldtype": "Column Break"
<<<<<<< HEAD
=======
},
{
"fieldname": "auto_repeat_section",
"fieldtype": "Section Break",
"label": "Auto Repeat"
},
{
"fieldname": "section_break_clmv",
"fieldtype": "Section Break"
},
{
"allow_on_submit": 1,
"fieldname": "title",
"fieldtype": "Data",
"label": "Title",
"no_copy": 1,
"print_hide": 1
>>>>>>> bd9427623f (refactor: bring back titles on sales transactions and make them optional and visible on purchase transactions (#52633))
}
],
"icon": "fa fa-file-text",
"is_submittable": 1,
"links": [],
<<<<<<< HEAD
"modified": "2026-02-10 14:23:07.181782",
=======
"modified": "2026-03-30 12:15:57.253316",
>>>>>>> bd9427623f (refactor: bring back titles on sales transactions and make them optional and visible on purchase transactions (#52633))
"modified_by": "Administrator",
"module": "Accounts",
"name": "POS Invoice",

View File

@@ -172,6 +172,7 @@ class POSInvoice(SalesInvoice):
terms: DF.TextEditor | None
territory: DF.Link | None
timesheets: DF.Table[SalesInvoiceTimesheet]
title: DF.Data | None
to_date: DF.Date | None
total: DF.Currency
total_advance: DF.Currency

View File

@@ -27,6 +27,8 @@
"update_billed_amount_in_purchase_receipt",
"apply_tds",
"amended_from",
"section_break_ecfi",
"title",
"supplier_invoice_details",
"bill_no",
"column_break_15",
@@ -208,6 +210,14 @@
"connections_tab"
],
"fields": [
{
"allow_on_submit": 1,
"fieldname": "title",
"fieldtype": "Data",
"label": "Title",
"no_copy": 1,
"print_hide": 1
},
{
"fieldname": "naming_series",
"fieldtype": "Select",
@@ -1675,6 +1685,19 @@
"fieldname": "totals_section",
"fieldtype": "Section Break",
"label": "Totals"
<<<<<<< HEAD
=======
},
{
"collapsible": 1,
"fieldname": "automation_section",
"fieldtype": "Section Break",
"label": "Automation"
},
{
"fieldname": "section_break_ecfi",
"fieldtype": "Section Break"
>>>>>>> bd9427623f (refactor: bring back titles on sales transactions and make them optional and visible on purchase transactions (#52633))
}
],
"grid_page_length": 50,
@@ -1682,7 +1705,7 @@
"idx": 204,
"is_submittable": 1,
"links": [],
"modified": "2026-03-25 11:45:38.696888",
"modified": "2026-03-30 12:16:40.157755",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Purchase Invoice",

View File

@@ -203,6 +203,7 @@ class PurchaseInvoice(BuyingController):
taxes_and_charges_deducted: DF.Currency
tc_name: DF.Link | None
terms: DF.TextEditor | None
title: DF.Data | None
to_date: DF.Date | None
total: DF.Currency
total_advance: DF.Currency

View File

@@ -33,6 +33,8 @@
"is_created_using_pos",
"pos_closing_entry",
"has_subcontracted",
"section_break_sgnf",
"title",
"accounting_dimensions_section",
"cost_center",
"dimension_col_break",
@@ -2320,7 +2322,23 @@
"collapsible": 1,
"fieldname": "utm_analytics_section",
"fieldtype": "Section Break",
<<<<<<< HEAD
"label": "UTM Analytics"
=======
"label": "Automation"
},
{
"fieldname": "section_break_sgnf",
"fieldtype": "Section Break"
},
{
"allow_on_submit": 1,
"fieldname": "title",
"fieldtype": "Data",
"label": "Title",
"no_copy": 1,
"print_hide": 1
>>>>>>> bd9427623f (refactor: bring back titles on sales transactions and make them optional and visible on purchase transactions (#52633))
}
],
"grid_page_length": 50,
@@ -2334,7 +2352,7 @@
"link_fieldname": "consolidated_invoice"
}
],
"modified": "2026-03-09 17:15:30.931929",
"modified": "2026-03-30 12:17:16.201016",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Sales Invoice",

View File

@@ -225,6 +225,7 @@ class SalesInvoice(SellingController):
terms: DF.TextEditor | None
territory: DF.Link | None
timesheets: DF.Table[SalesInvoiceTimesheet]
title: DF.Data | None
to_date: DF.Date | None
total: DF.Currency
total_advance: DF.Currency

View File

@@ -23,6 +23,8 @@
"is_subcontracted",
"has_unit_price_items",
"supplier_warehouse",
"section_break_zymg",
"title",
"accounting_dimensions_section",
"cost_center",
"dimension_col_break",
@@ -171,6 +173,14 @@
"fieldtype": "Section Break",
"options": "fa fa-user"
},
{
"allow_on_submit": 1,
"fieldname": "title",
"fieldtype": "Data",
"label": "Title",
"no_copy": 1,
"print_hide": 1
},
{
"fieldname": "naming_series",
"fieldtype": "Select",
@@ -1309,6 +1319,19 @@
"fieldtype": "Time",
"label": "Time",
"mandatory_depends_on": "is_internal_supplier"
<<<<<<< HEAD
=======
},
{
"collapsible": 1,
"fieldname": "auto_repeat_section",
"fieldtype": "Section Break",
"label": "Auto Repeat"
},
{
"fieldname": "section_break_zymg",
"fieldtype": "Section Break"
>>>>>>> bd9427623f (refactor: bring back titles on sales transactions and make them optional and visible on purchase transactions (#52633))
}
],
"grid_page_length": 50,
@@ -1316,7 +1339,7 @@
"idx": 105,
"is_submittable": 1,
"links": [],
"modified": "2026-03-25 11:46:18.748951",
"modified": "2026-03-30 12:17:43.342204",
"modified_by": "Administrator",
"module": "Buying",
"name": "Purchase Order",

View File

@@ -159,6 +159,7 @@ class PurchaseOrder(BuyingController):
taxes_and_charges_deducted: DF.Currency
tc_name: DF.Link | None
terms: DF.TextEditor | None
title: DF.Data | None
to_date: DF.Date | None
total: DF.Currency
total_net_weight: DF.Float

View File

@@ -16,6 +16,8 @@
"status",
"has_unit_price_items",
"amended_from",
"section_break_trpf",
"title",
"suppliers_section",
"suppliers",
"items_section",
@@ -371,6 +373,18 @@
"fieldtype": "Text Editor",
"label": "Shipping Address Details",
"read_only": 1
},
{
"fieldname": "section_break_trpf",
"fieldtype": "Section Break"
},
{
"allow_on_submit": 1,
"fieldname": "title",
"fieldtype": "Data",
"label": "Title",
"no_copy": 1,
"print_hide": 1
}
],
"grid_page_length": 50,
@@ -378,7 +392,7 @@
"index_web_pages_for_search": 1,
"is_submittable": 1,
"links": [],
"modified": "2026-03-19 15:27:56.730649",
"modified": "2026-03-30 12:18:08.451201",
"modified_by": "Administrator",
"module": "Buying",
"name": "Request for Quotation",
@@ -448,5 +462,6 @@
"show_name_in_global_search": 1,
"sort_field": "creation",
"sort_order": "DESC",
"states": []
"states": [],
"title_field": "company"
}

View File

@@ -63,6 +63,7 @@ class RequestforQuotation(BuyingController):
suppliers: DF.Table[RequestforQuotationSupplier]
tc_name: DF.Link | None
terms: DF.TextEditor | None
title: DF.Data | None
transaction_date: DF.Date
use_html: DF.Check
vendor: DF.Link | None

View File

@@ -9,7 +9,6 @@
"engine": "InnoDB",
"field_order": [
"supplier_section",
"title",
"naming_series",
"supplier",
"supplier_name",
@@ -21,6 +20,8 @@
"quotation_number",
"has_unit_price_items",
"amended_from",
"section_break_wwao",
"title",
"accounting_dimensions_section",
"cost_center",
"dimension_col_break",
@@ -127,10 +128,9 @@
"options": "fa fa-user"
},
{
"default": "{supplier_name}",
"allow_on_submit": 1,
"fieldname": "title",
"fieldtype": "Data",
"hidden": 1,
"label": "Title",
"no_copy": 1,
"print_hide": 1,
@@ -940,6 +940,18 @@
"no_copy": 1,
"options": "Item Wise Tax Detail",
"print_hide": 1
<<<<<<< HEAD
=======
},
{
"fieldname": "auto_repeat_section",
"fieldtype": "Section Break",
"label": "Auto Repeat"
},
{
"fieldname": "section_break_wwao",
"fieldtype": "Section Break"
>>>>>>> bd9427623f (refactor: bring back titles on sales transactions and make them optional and visible on purchase transactions (#52633))
}
],
"grid_page_length": 50,
@@ -948,7 +960,11 @@
"index_web_pages_for_search": 1,
"is_submittable": 1,
"links": [],
<<<<<<< HEAD
"modified": "2026-01-29 21:23:13.778468",
=======
"modified": "2026-03-30 12:18:35.777574",
>>>>>>> bd9427623f (refactor: bring back titles on sales transactions and make them optional and visible on purchase transactions (#52633))
"modified_by": "Administrator",
"module": "Buying",
"name": "Supplier Quotation",
@@ -1016,5 +1032,5 @@
"sort_order": "DESC",
"states": [],
"timeline_field": "supplier",
"title_field": "title"
"title_field": "supplier_name"
}

View File

@@ -470,6 +470,11 @@ erpnext.patches.v16_0.complete_onboarding_steps_for_older_sites #2
erpnext.patches.v16_0.migrate_asset_type_checkboxes_to_select
erpnext.patches.v16_0.update_order_qty_and_requested_qty_based_on_mr_and_po
erpnext.patches.v16_0.enable_serial_batch_setting
<<<<<<< HEAD
=======
erpnext.patches.v16_0.correct_po_titles
erpnext.patches.v16_0.co_by_product_patch
>>>>>>> bd9427623f (refactor: bring back titles on sales transactions and make them optional and visible on purchase transactions (#52633))
erpnext.patches.v16_0.update_requested_qty_packed_item
erpnext.patches.v16_0.remove_payables_receivables_workspace
erpnext.patches.v16_0.co_by_product_patch

View File

@@ -0,0 +1,15 @@
import frappe
def execute():
"""
This patch corrects the titles of purchase orders that were set to
the text string "{supplier_name}" instead of the actual supplier name.
"""
purchase_order = frappe.qb.DocType("Purchase Order")
(
frappe.qb.update(purchase_order)
.set(purchase_order.title, purchase_order.supplier_name)
.where(purchase_order.title == "{supplier_name}")
).run()

View File

@@ -22,6 +22,8 @@
"company",
"has_unit_price_items",
"amended_from",
"section_break_cojf",
"title",
"currency_and_price_list",
"currency",
"conversion_rate",
@@ -1122,13 +1124,33 @@
"fieldname": "utm_analytics_section",
"fieldtype": "Section Break",
"label": "UTM Analytics"
<<<<<<< HEAD
=======
},
{
"fieldname": "auto_repeat_section",
"fieldtype": "Section Break",
"label": "Auto Repeat"
},
{
"fieldname": "section_break_cojf",
"fieldtype": "Section Break"
},
{
"allow_on_submit": 1,
"fieldname": "title",
"fieldtype": "Data",
"label": "Title",
"no_copy": 1,
"print_hide": 1
>>>>>>> bd9427623f (refactor: bring back titles on sales transactions and make them optional and visible on purchase transactions (#52633))
}
],
"icon": "fa fa-shopping-cart",
"idx": 82,
"is_submittable": 1,
"links": [],
"modified": "2026-03-09 17:15:31.941114",
"modified": "2026-03-30 12:19:04.589592",
"modified_by": "Administrator",
"module": "Selling",
"name": "Quotation",

View File

@@ -112,6 +112,7 @@ class Quotation(SellingController):
tc_name: DF.Link | None
terms: DF.TextEditor | None
territory: DF.Link | None
title: DF.Data | None
total: DF.Currency
total_net_weight: DF.Float
total_qty: DF.Float

View File

@@ -26,6 +26,8 @@
"has_unit_price_items",
"is_subcontracted",
"amended_from",
"section_break_umok",
"title",
"accounting_dimensions_section",
"cost_center",
"dimension_col_break",
@@ -1742,6 +1744,33 @@
"hidden": 1,
"label": "Ignore Default Payment Terms Template",
"read_only": 1
<<<<<<< HEAD
=======
},
{
"allow_on_submit": 1,
"collapsible": 1,
"fieldname": "auto_repeat_section",
"fieldtype": "Section Break",
"hide_days": 1,
"hide_seconds": 1,
"label": "Auto Repeat",
"no_copy": 1,
"print_hide": 1,
"read_only": 1
},
{
"fieldname": "section_break_umok",
"fieldtype": "Section Break"
},
{
"allow_on_submit": 1,
"fieldname": "title",
"fieldtype": "Data",
"label": "Title",
"no_copy": 1,
"print_hide": 1
>>>>>>> bd9427623f (refactor: bring back titles on sales transactions and make them optional and visible on purchase transactions (#52633))
}
],
"grid_page_length": 50,
@@ -1749,7 +1778,7 @@
"idx": 105,
"is_submittable": 1,
"links": [],
"modified": "2026-03-04 18:04:05.873483",
"modified": "2026-03-30 12:19:27.522646",
"modified_by": "Administrator",
"module": "Selling",
"name": "Sales Order",

View File

@@ -181,6 +181,7 @@ class SalesOrder(SellingController):
tc_name: DF.Link | None
terms: DF.TextEditor | None
territory: DF.Link | None
title: DF.Data | None
to_date: DF.Date | None
total: DF.Currency
total_commission: DF.Currency

View File

@@ -22,6 +22,8 @@
"is_return",
"issue_credit_note",
"return_against",
"section_break_bxkw",
"title",
"accounting_dimensions_section",
"cost_center",
"column_break_18",
@@ -1444,15 +1446,33 @@
"label": "UTM Analytics"
},
{
<<<<<<< HEAD
"fieldname": "column_break_neoj",
"fieldtype": "Column Break"
=======
"fieldname": "auto_repeat_section",
"fieldtype": "Section Break",
"label": "Auto Repeat"
},
{
"fieldname": "section_break_bxkw",
"fieldtype": "Section Break"
},
{
"allow_on_submit": 1,
"fieldname": "title",
"fieldtype": "Data",
"label": "Title",
"no_copy": 1,
"print_hide": 1
>>>>>>> bd9427623f (refactor: bring back titles on sales transactions and make them optional and visible on purchase transactions (#52633))
}
],
"icon": "fa fa-truck",
"idx": 146,
"is_submittable": 1,
"links": [],
"modified": "2026-03-09 17:15:27.932956",
"modified": "2026-03-30 12:19:56.889644",
"modified_by": "Administrator",
"module": "Stock",
"name": "Delivery Note",

View File

@@ -145,6 +145,7 @@ class DeliveryNote(SellingController):
tc_name: DF.Link | None
terms: DF.TextEditor | None
territory: DF.Link | None
title: DF.Data | None
total: DF.Currency
total_commission: DF.Currency
total_net_weight: DF.Float

View File

@@ -25,6 +25,8 @@
"apply_putaway_rule",
"is_return",
"return_against",
"section_break_zwvg",
"title",
"accounting_dimensions_section",
"cost_center",
"dimension_col_break",
@@ -170,6 +172,14 @@
"print_width": "50%",
"width": "50%"
},
{
"allow_on_submit": 1,
"fieldname": "title",
"fieldtype": "Data",
"label": "Title",
"no_copy": 1,
"print_hide": 1
},
{
"fieldname": "naming_series",
"fieldtype": "Select",
@@ -1285,6 +1295,10 @@
{
"fieldname": "column_break_ugyv",
"fieldtype": "Column Break"
},
{
"fieldname": "section_break_zwvg",
"fieldtype": "Section Break"
}
],
"grid_page_length": 50,