diff --git a/custom_ui/fixtures/bid_meeting_note_form.json b/custom_ui/fixtures/bid_meeting_note_form.json index ba8889c..9938d5b 100644 --- a/custom_ui/fixtures/bid_meeting_note_form.json +++ b/custom_ui/fixtures/bid_meeting_note_form.json @@ -145,7 +145,7 @@ "type": "Multi-Select w/ Quantity" } ], - "modified": "2026-02-15 02:33:43.948485", + "modified": "2026-02-18 03:54:28.004107", "name": "SNW Install Bid Meeting Notes", "notes": null, "project_template": "", diff --git a/custom_ui/fixtures/company.json b/custom_ui/fixtures/company.json index 66ec555..63970a8 100644 --- a/custom_ui/fixtures/company.json +++ b/custom_ui/fixtures/company.json @@ -28,7 +28,7 @@ "default_deferred_expense_account": null, "default_deferred_revenue_account": null, "default_discount_account": null, - "default_employee_advance_account": null, + "default_employee_advance_account": "Employee Advances - VS", "default_expense_account": "Cost of Goods Sold - VS", "default_expense_claim_payable_account": "Creditors - VS", "default_finance_book": null, @@ -39,7 +39,7 @@ "default_letter_head": null, "default_operating_cost_account": null, "default_payable_account": "Creditors - VS", - "default_payroll_payable_account": null, + "default_payroll_payable_account": "Payroll Payable - VS", "default_provisional_account": null, "default_receivable_account": "Debtors - VS", "default_sales_contact": null, @@ -109,14 +109,14 @@ "date_of_incorporation": null, "default_advance_paid_account": null, "default_advance_received_account": null, - "default_bank_account": null, + "default_bank_account": "Riverbank Checking - DL", "default_buying_terms": null, "default_cash_account": "Cash - DL", "default_currency": "USD", "default_deferred_expense_account": null, "default_deferred_revenue_account": null, "default_discount_account": null, - "default_employee_advance_account": null, + "default_employee_advance_account": "Employee Advances - DL", "default_expense_account": "Cost of Goods Sold - DL", "default_expense_claim_payable_account": "Creditors - DL", "default_finance_book": null, @@ -127,7 +127,7 @@ "default_letter_head": null, "default_operating_cost_account": null, "default_payable_account": "Creditors - DL", - "default_payroll_payable_account": null, + "default_payroll_payable_account": "Payroll Payable - DL", "default_provisional_account": null, "default_receivable_account": "Debtors - DL", "default_sales_contact": null, @@ -204,7 +204,7 @@ "default_deferred_expense_account": null, "default_deferred_revenue_account": null, "default_discount_account": null, - "default_employee_advance_account": null, + "default_employee_advance_account": "Employee Advances - SD", "default_expense_account": "Cost of Goods Sold - SD", "default_expense_claim_payable_account": "Creditors - SD", "default_finance_book": null, @@ -215,7 +215,7 @@ "default_letter_head": null, "default_operating_cost_account": null, "default_payable_account": "Creditors - SD", - "default_payroll_payable_account": null, + "default_payroll_payable_account": "Payroll Payable - SD", "default_provisional_account": null, "default_receivable_account": "Debtors - SD", "default_sales_contact": null, @@ -292,7 +292,7 @@ "default_deferred_expense_account": null, "default_deferred_revenue_account": null, "default_discount_account": null, - "default_employee_advance_account": null, + "default_employee_advance_account": "Employee Advances - NYC", "default_expense_account": "Cost of Goods Sold - NYC", "default_expense_claim_payable_account": "Creditors - NYC", "default_finance_book": null, @@ -303,7 +303,7 @@ "default_letter_head": null, "default_operating_cost_account": null, "default_payable_account": "Creditors - NYC", - "default_payroll_payable_account": null, + "default_payroll_payable_account": "Payroll Payable - NYC", "default_provisional_account": null, "default_receivable_account": "Debtors - NYC", "default_sales_contact": null, @@ -373,14 +373,14 @@ "date_of_incorporation": null, "default_advance_paid_account": null, "default_advance_received_account": null, - "default_bank_account": null, + "default_bank_account": "Mountain West Checking - LF", "default_buying_terms": null, "default_cash_account": "Cash - LF", "default_currency": "USD", "default_deferred_expense_account": null, "default_deferred_revenue_account": null, "default_discount_account": null, - "default_employee_advance_account": null, + "default_employee_advance_account": "Employee Advances - LF", "default_expense_account": "Cost of Goods Sold - LF", "default_expense_claim_payable_account": "Creditors - LF", "default_finance_book": null, @@ -391,7 +391,7 @@ "default_letter_head": "Lowe Fencing", "default_operating_cost_account": null, "default_payable_account": "Creditors - LF", - "default_payroll_payable_account": null, + "default_payroll_payable_account": "Payroll Payable - LF", "default_provisional_account": null, "default_receivable_account": "Debtors - LF", "default_sales_contact": null, diff --git a/custom_ui/fixtures/cost_center.json b/custom_ui/fixtures/cost_center.json deleted file mode 100644 index 9daef62..0000000 --- a/custom_ui/fixtures/cost_center.json +++ /dev/null @@ -1,158 +0,0 @@ -[ - { - "company": "sprinklersnorthwest (Demo)", - "cost_center_name": "sprinklersnorthwest (Demo)", - "cost_center_number": null, - "disabled": 0, - "docstatus": 0, - "doctype": "Cost Center", - "is_group": 1, - "modified": "2024-04-03 13:53:36.319170", - "name": "sprinklersnorthwest (Demo) - SD", - "old_parent": "", - "parent_cost_center": null - }, - { - "company": "Nuco Yard Care", - "cost_center_name": "Nuco Yard Care", - "cost_center_number": null, - "disabled": 0, - "docstatus": 0, - "doctype": "Cost Center", - "is_group": 1, - "modified": "2024-04-08 14:26:26.835628", - "name": "Nuco Yard Care - NYC", - "old_parent": "", - "parent_cost_center": null - }, - { - "company": "Veritas Stone", - "cost_center_name": "Veritas Stone", - "cost_center_number": null, - "disabled": 0, - "docstatus": 0, - "doctype": "Cost Center", - "is_group": 1, - "modified": "2024-04-12 04:46:43.619995", - "name": "Veritas Stone - VS", - "old_parent": "", - "parent_cost_center": null - }, - { - "company": "Daniels Landscape Supplies", - "cost_center_name": "Daniels Landscape Supplies", - "cost_center_number": null, - "disabled": 0, - "docstatus": 0, - "doctype": "Cost Center", - "is_group": 1, - "modified": "2024-04-12 05:00:21.971732", - "name": "Daniels Landscape Supplies - DL", - "old_parent": "", - "parent_cost_center": null - }, - { - "company": "Lowe Fencing", - "cost_center_name": "Lowe Fencing", - "cost_center_number": null, - "disabled": 0, - "docstatus": 0, - "doctype": "Cost Center", - "is_group": 1, - "modified": "2024-04-08 14:26:52.065488", - "name": "Lowe Fencing - LF", - "old_parent": "", - "parent_cost_center": null - }, - { - "company": "Sprinklers Northwest", - "cost_center_name": "sprinklersnorthwest", - "cost_center_number": null, - "disabled": 0, - "docstatus": 0, - "doctype": "Cost Center", - "is_group": 1, - "modified": "2024-04-03 13:53:07.596849", - "name": "sprinklersnorthwest - S", - "old_parent": "", - "parent_cost_center": null - }, - { - "company": "Veritas Stone", - "cost_center_name": "Main", - "cost_center_number": null, - "disabled": 0, - "docstatus": 0, - "doctype": "Cost Center", - "is_group": 0, - "modified": "2024-04-12 04:46:43.636132", - "name": "Main - VS", - "old_parent": "Veritas Stone - VS", - "parent_cost_center": "Veritas Stone - VS" - }, - { - "company": "Nuco Yard Care", - "cost_center_name": "Main", - "cost_center_number": null, - "disabled": 0, - "docstatus": 0, - "doctype": "Cost Center", - "is_group": 0, - "modified": "2024-04-08 14:26:26.857578", - "name": "Main - NYC", - "old_parent": "Nuco Yard Care - NYC", - "parent_cost_center": "Nuco Yard Care - NYC" - }, - { - "company": "Daniels Landscape Supplies", - "cost_center_name": "Main", - "cost_center_number": null, - "disabled": 0, - "docstatus": 0, - "doctype": "Cost Center", - "is_group": 0, - "modified": "2024-04-12 05:00:22.025686", - "name": "Main - DL", - "old_parent": "Daniels Landscape Supplies - DL", - "parent_cost_center": "Daniels Landscape Supplies - DL" - }, - { - "company": "sprinklersnorthwest (Demo)", - "cost_center_name": "Main", - "cost_center_number": null, - "disabled": 0, - "docstatus": 0, - "doctype": "Cost Center", - "is_group": 0, - "modified": "2024-04-03 13:53:36.354903", - "name": "Main - SD", - "old_parent": "sprinklersnorthwest (Demo) - SD", - "parent_cost_center": "sprinklersnorthwest (Demo) - SD" - }, - { - "company": "Lowe Fencing", - "cost_center_name": "Main", - "cost_center_number": null, - "disabled": 0, - "docstatus": 0, - "doctype": "Cost Center", - "is_group": 0, - "modified": "2024-04-08 14:26:52.096499", - "name": "Main - LF", - "old_parent": "Lowe Fencing - LF", - "parent_cost_center": "Lowe Fencing - LF" - }, - { - "company": "Sprinklers Northwest", - "cost_center_name": "Main", - "cost_center_number": null, - "disabled": 0, - "docstatus": 0, - "doctype": "Cost Center", - "is_group": 0, - "modified": "2024-04-03 13:53:07.616694", - "name": "Main - S", - "old_parent": "sprinklersnorthwest - S", - "parent_cost_center": "sprinklersnorthwest - S" - } -] \ No newline at end of file diff --git a/custom_ui/fixtures/custom_field.json b/custom_ui/fixtures/custom_field.json index aa04261..1996951 100644 --- a/custom_ui/fixtures/custom_field.json +++ b/custom_ui/fixtures/custom_field.json @@ -7922,63 +7922,6 @@ "unique": 0, "width": null }, - { - "allow_in_quick_entry": 0, - "allow_on_submit": 0, - "bold": 0, - "collapsible": 0, - "collapsible_depends_on": null, - "columns": 0, - "default": null, - "depends_on": null, - "description": null, - "docstatus": 0, - "doctype": "Custom Field", - "dt": "Task Type", - "fetch_from": "", - "fetch_if_empty": 0, - "fieldname": "custom_completion_trigger_doctype", - "fieldtype": "Select", - "hidden": 0, - "hide_border": 0, - "hide_days": 0, - "hide_seconds": 0, - "ignore_user_permissions": 0, - "ignore_xss_filter": 0, - "in_global_search": 0, - "in_list_view": 0, - "in_preview": 0, - "in_standard_filter": 0, - "insert_after": "custom_completion_trigger", - "is_system_generated": 0, - "is_virtual": 0, - "label": "Completion Trigger Doctype", - "length": 0, - "link_filters": null, - "mandatory_depends_on": null, - "modified": "2026-02-07 04:06:25.878473", - "module": null, - "name": "Task Type-custom_completion_trigger_doctype", - "no_copy": 0, - "non_negative": 0, - "options": "Service Address 2\nProject\nTask\nService Appointment", - "permlevel": 0, - "placeholder": null, - "precision": "", - "print_hide": 0, - "print_hide_if_no_value": 0, - "print_width": null, - "read_only": 0, - "read_only_depends_on": null, - "report_hide": 0, - "reqd": 0, - "search_index": 0, - "show_dashboard": 0, - "sort_options": 0, - "translatable": 1, - "unique": 0, - "width": null - }, { "allow_in_quick_entry": 0, "allow_on_submit": 0, @@ -8036,6 +7979,63 @@ "unique": 0, "width": null }, + { + "allow_in_quick_entry": 0, + "allow_on_submit": 0, + "bold": 0, + "collapsible": 0, + "collapsible_depends_on": null, + "columns": 0, + "default": null, + "depends_on": null, + "description": null, + "docstatus": 0, + "doctype": "Custom Field", + "dt": "Task Type", + "fetch_from": "", + "fetch_if_empty": 0, + "fieldname": "custom_completion_trigger_doctype", + "fieldtype": "Select", + "hidden": 0, + "hide_border": 0, + "hide_days": 0, + "hide_seconds": 0, + "ignore_user_permissions": 0, + "ignore_xss_filter": 0, + "in_global_search": 0, + "in_list_view": 0, + "in_preview": 0, + "in_standard_filter": 0, + "insert_after": "custom_completion_trigger", + "is_system_generated": 0, + "is_virtual": 0, + "label": "Completion Trigger Doctype", + "length": 0, + "link_filters": null, + "mandatory_depends_on": null, + "modified": "2026-02-07 04:06:25.878473", + "module": null, + "name": "Task Type-custom_completion_trigger_doctype", + "no_copy": 0, + "non_negative": 0, + "options": "Service Address 2\nProject\nTask\nService Appointment", + "permlevel": 0, + "placeholder": null, + "precision": "", + "print_hide": 0, + "print_hide_if_no_value": 0, + "print_width": null, + "read_only": 0, + "read_only_depends_on": null, + "report_hide": 0, + "reqd": 0, + "search_index": 0, + "show_dashboard": 0, + "sort_options": 0, + "translatable": 1, + "unique": 0, + "width": null + }, { "allow_in_quick_entry": 0, "allow_on_submit": 0, @@ -8150,63 +8150,6 @@ "unique": 0, "width": null }, - { - "allow_in_quick_entry": 0, - "allow_on_submit": 0, - "bold": 0, - "collapsible": 0, - "collapsible_depends_on": null, - "columns": 0, - "default": null, - "depends_on": null, - "description": null, - "docstatus": 0, - "doctype": "Custom Field", - "dt": "Task Type", - "fetch_from": null, - "fetch_if_empty": 0, - "fieldname": "custom_target_percent", - "fieldtype": "Int", - "hidden": 0, - "hide_border": 0, - "hide_days": 0, - "hide_seconds": 0, - "ignore_user_permissions": 0, - "ignore_xss_filter": 0, - "in_global_search": 0, - "in_list_view": 0, - "in_preview": 0, - "in_standard_filter": 0, - "insert_after": "custom_completion_trigger_doctype", - "is_system_generated": 0, - "is_virtual": 0, - "label": "Target Percent", - "length": 0, - "link_filters": null, - "mandatory_depends_on": null, - "modified": "2026-02-09 01:29:07.550589", - "module": null, - "name": "Task Type-custom_target_percent", - "no_copy": 0, - "non_negative": 0, - "options": null, - "permlevel": 0, - "placeholder": null, - "precision": "", - "print_hide": 0, - "print_hide_if_no_value": 0, - "print_width": null, - "read_only": 0, - "read_only_depends_on": null, - "report_hide": 0, - "reqd": 0, - "search_index": 0, - "show_dashboard": 0, - "sort_options": 0, - "translatable": 0, - "unique": 0, - "width": null - }, { "allow_in_quick_entry": 0, "allow_on_submit": 0, @@ -8435,6 +8378,63 @@ "unique": 0, "width": null }, + { + "allow_in_quick_entry": 0, + "allow_on_submit": 0, + "bold": 0, + "collapsible": 0, + "collapsible_depends_on": null, + "columns": 0, + "default": null, + "depends_on": null, + "description": null, + "docstatus": 0, + "doctype": "Custom Field", + "dt": "Task Type", + "fetch_from": null, + "fetch_if_empty": 0, + "fieldname": "custom_target_percent", + "fieldtype": "Int", + "hidden": 0, + "hide_border": 0, + "hide_days": 0, + "hide_seconds": 0, + "ignore_user_permissions": 0, + "ignore_xss_filter": 0, + "in_global_search": 0, + "in_list_view": 0, + "in_preview": 0, + "in_standard_filter": 0, + "insert_after": "custom_completion_trigger_doctype", + "is_system_generated": 0, + "is_virtual": 0, + "label": "Target Percent", + "length": 0, + "link_filters": null, + "mandatory_depends_on": null, + "modified": "2026-02-09 01:29:07.550589", + "module": null, + "name": "Task Type-custom_target_percent", + "no_copy": 0, + "non_negative": 0, + "options": null, + "permlevel": 0, + "placeholder": null, + "precision": "", + "print_hide": 0, + "print_hide_if_no_value": 0, + "print_width": null, + "read_only": 0, + "read_only_depends_on": null, + "report_hide": 0, + "reqd": 0, + "search_index": 0, + "show_dashboard": 0, + "sort_options": 0, + "translatable": 0, + "unique": 0, + "width": null + }, { "allow_in_quick_entry": 0, "allow_on_submit": 0, @@ -8834,63 +8834,6 @@ "unique": 0, "width": null }, - { - "allow_in_quick_entry": 0, - "allow_on_submit": 0, - "bold": 0, - "collapsible": 0, - "collapsible_depends_on": null, - "columns": 0, - "default": "0", - "depends_on": null, - "description": null, - "docstatus": 0, - "doctype": "Custom Field", - "dt": "Address", - "fetch_from": null, - "fetch_if_empty": 0, - "fieldname": "is_your_company_address", - "fieldtype": "Check", - "hidden": 1, - "hide_border": 0, - "hide_days": 0, - "hide_seconds": 0, - "ignore_user_permissions": 0, - "ignore_xss_filter": 0, - "in_global_search": 0, - "in_list_view": 0, - "in_preview": 0, - "in_standard_filter": 0, - "insert_after": "custom_subdivision", - "is_system_generated": 0, - "is_virtual": 0, - "label": "Is Your Company Address", - "length": 0, - "link_filters": null, - "mandatory_depends_on": null, - "modified": "2020-10-14 17:41:40.878179", - "module": null, - "name": "Address-is_your_company_address", - "no_copy": 0, - "non_negative": 0, - "options": null, - "permlevel": 0, - "placeholder": null, - "precision": "", - "print_hide": 0, - "print_hide_if_no_value": 0, - "print_width": null, - "read_only": 0, - "read_only_depends_on": null, - "report_hide": 0, - "reqd": 0, - "search_index": 0, - "show_dashboard": 0, - "sort_options": 0, - "translatable": 0, - "unique": 0, - "width": null - }, { "allow_in_quick_entry": 0, "allow_on_submit": 0, @@ -8948,6 +8891,63 @@ "unique": 0, "width": null }, + { + "allow_in_quick_entry": 0, + "allow_on_submit": 0, + "bold": 0, + "collapsible": 0, + "collapsible_depends_on": null, + "columns": 0, + "default": "0", + "depends_on": null, + "description": null, + "docstatus": 0, + "doctype": "Custom Field", + "dt": "Address", + "fetch_from": null, + "fetch_if_empty": 0, + "fieldname": "is_your_company_address", + "fieldtype": "Check", + "hidden": 1, + "hide_border": 0, + "hide_days": 0, + "hide_seconds": 0, + "ignore_user_permissions": 0, + "ignore_xss_filter": 0, + "in_global_search": 0, + "in_list_view": 0, + "in_preview": 0, + "in_standard_filter": 0, + "insert_after": "custom_subdivision", + "is_system_generated": 0, + "is_virtual": 0, + "label": "Is Your Company Address", + "length": 0, + "link_filters": null, + "mandatory_depends_on": null, + "modified": "2020-10-14 17:41:40.878179", + "module": null, + "name": "Address-is_your_company_address", + "no_copy": 0, + "non_negative": 0, + "options": null, + "permlevel": 0, + "placeholder": null, + "precision": "", + "print_hide": 0, + "print_hide_if_no_value": 0, + "print_width": null, + "read_only": 0, + "read_only_depends_on": null, + "report_hide": 0, + "reqd": 0, + "search_index": 0, + "show_dashboard": 0, + "sort_options": 0, + "translatable": 0, + "unique": 0, + "width": null + }, { "allow_in_quick_entry": 0, "allow_on_submit": 0, @@ -13178,11 +13178,11 @@ "description": null, "docstatus": 0, "doctype": "Custom Field", - "dt": "Address", + "dt": "Customer", "fetch_from": null, "fetch_if_empty": 0, - "fieldname": "custom_section_break_aecpx", - "fieldtype": "Section Break", + "fieldname": "custom_column_break_q0puw", + "fieldtype": "Column Break", "hidden": 0, "hide_border": 0, "hide_days": 0, @@ -13193,16 +13193,16 @@ "in_list_view": 0, "in_preview": 0, "in_standard_filter": 0, - "insert_after": "custom_customers", + "insert_after": "custom_billing_address", "is_system_generated": 0, "is_virtual": 0, "label": "", "length": 0, "link_filters": null, "mandatory_depends_on": null, - "modified": "2025-01-13 16:23:39.204178", + "modified": "2025-02-05 05:55:12.837126", "module": null, - "name": "Address-custom_section_break_aecpx", + "name": "Customer-custom_column_break_q0puw", "no_copy": 0, "non_negative": 0, "options": null, @@ -13235,11 +13235,11 @@ "description": null, "docstatus": 0, "doctype": "Custom Field", - "dt": "Customer", + "dt": "Address", "fetch_from": null, "fetch_if_empty": 0, - "fieldname": "custom_column_break_q0puw", - "fieldtype": "Column Break", + "fieldname": "custom_section_break_aecpx", + "fieldtype": "Section Break", "hidden": 0, "hide_border": 0, "hide_days": 0, @@ -13250,16 +13250,16 @@ "in_list_view": 0, "in_preview": 0, "in_standard_filter": 0, - "insert_after": "custom_billing_address", + "insert_after": "custom_customers", "is_system_generated": 0, "is_virtual": 0, "label": "", "length": 0, "link_filters": null, "mandatory_depends_on": null, - "modified": "2025-02-05 05:55:12.837126", + "modified": "2025-01-13 16:23:39.204178", "module": null, - "name": "Customer-custom_column_break_q0puw", + "name": "Address-custom_section_break_aecpx", "no_copy": 0, "non_negative": 0, "options": null, @@ -16301,63 +16301,6 @@ "unique": 0, "width": null }, - { - "allow_in_quick_entry": 0, - "allow_on_submit": 0, - "bold": 0, - "collapsible": 0, - "collapsible_depends_on": null, - "columns": 0, - "default": null, - "depends_on": null, - "description": null, - "docstatus": 0, - "doctype": "Custom Field", - "dt": "Quotation", - "fetch_from": null, - "fetch_if_empty": 0, - "fieldname": "custom_column_break_wwhxd", - "fieldtype": "Column Break", - "hidden": 0, - "hide_border": 0, - "hide_days": 0, - "hide_seconds": 0, - "ignore_user_permissions": 0, - "ignore_xss_filter": 0, - "in_global_search": 0, - "in_list_view": 0, - "in_preview": 0, - "in_standard_filter": 0, - "insert_after": "section_break_44", - "is_system_generated": 0, - "is_virtual": 0, - "label": "", - "length": 0, - "link_filters": null, - "mandatory_depends_on": null, - "modified": "2024-09-26 05:42:46.471845", - "module": null, - "name": "Quotation-custom_column_break_wwhxd", - "no_copy": 0, - "non_negative": 0, - "options": null, - "permlevel": 0, - "placeholder": null, - "precision": "", - "print_hide": 1, - "print_hide_if_no_value": 0, - "print_width": null, - "read_only": 0, - "read_only_depends_on": null, - "report_hide": 0, - "reqd": 0, - "search_index": 0, - "show_dashboard": 0, - "sort_options": 0, - "translatable": 0, - "unique": 0, - "width": null - }, { "allow_in_quick_entry": 0, "allow_on_submit": 0, @@ -16472,6 +16415,63 @@ "unique": 0, "width": null }, + { + "allow_in_quick_entry": 0, + "allow_on_submit": 0, + "bold": 0, + "collapsible": 0, + "collapsible_depends_on": null, + "columns": 0, + "default": null, + "depends_on": null, + "description": null, + "docstatus": 0, + "doctype": "Custom Field", + "dt": "Quotation", + "fetch_from": null, + "fetch_if_empty": 0, + "fieldname": "custom_column_break_wwhxd", + "fieldtype": "Column Break", + "hidden": 0, + "hide_border": 0, + "hide_days": 0, + "hide_seconds": 0, + "ignore_user_permissions": 0, + "ignore_xss_filter": 0, + "in_global_search": 0, + "in_list_view": 0, + "in_preview": 0, + "in_standard_filter": 0, + "insert_after": "section_break_44", + "is_system_generated": 0, + "is_virtual": 0, + "label": "", + "length": 0, + "link_filters": null, + "mandatory_depends_on": null, + "modified": "2024-09-26 05:42:46.471845", + "module": null, + "name": "Quotation-custom_column_break_wwhxd", + "no_copy": 0, + "non_negative": 0, + "options": null, + "permlevel": 0, + "placeholder": null, + "precision": "", + "print_hide": 1, + "print_hide_if_no_value": 0, + "print_width": null, + "read_only": 0, + "read_only_depends_on": null, + "report_hide": 0, + "reqd": 0, + "search_index": 0, + "show_dashboard": 0, + "sort_options": 0, + "translatable": 0, + "unique": 0, + "width": null + }, { "allow_in_quick_entry": 0, "allow_on_submit": 0, @@ -17384,63 +17384,6 @@ "unique": 0, "width": null }, - { - "allow_in_quick_entry": 0, - "allow_on_submit": 0, - "bold": 0, - "collapsible": 0, - "collapsible_depends_on": null, - "columns": 0, - "default": null, - "depends_on": null, - "description": null, - "docstatus": 0, - "doctype": "Custom Field", - "dt": "Quotation", - "fetch_from": null, - "fetch_if_empty": 0, - "fieldname": "custom_column_break_holw9", - "fieldtype": "Column Break", - "hidden": 0, - "hide_border": 0, - "hide_days": 0, - "hide_seconds": 0, - "ignore_user_permissions": 0, - "ignore_xss_filter": 0, - "in_global_search": 0, - "in_list_view": 0, - "in_preview": 0, - "in_standard_filter": 0, - "insert_after": "pricing_rule_details", - "is_system_generated": 0, - "is_virtual": 0, - "label": "", - "length": 0, - "link_filters": null, - "mandatory_depends_on": null, - "modified": "2024-09-26 05:01:09.652660", - "module": null, - "name": "Quotation-custom_column_break_holw9", - "no_copy": 0, - "non_negative": 0, - "options": null, - "permlevel": 0, - "placeholder": null, - "precision": "", - "print_hide": 1, - "print_hide_if_no_value": 0, - "print_width": null, - "read_only": 0, - "read_only_depends_on": null, - "report_hide": 0, - "reqd": 0, - "search_index": 0, - "show_dashboard": 0, - "sort_options": 0, - "translatable": 0, - "unique": 0, - "width": null - }, { "allow_in_quick_entry": 0, "allow_on_submit": 0, @@ -17555,6 +17498,63 @@ "unique": 0, "width": null }, + { + "allow_in_quick_entry": 0, + "allow_on_submit": 0, + "bold": 0, + "collapsible": 0, + "collapsible_depends_on": null, + "columns": 0, + "default": null, + "depends_on": null, + "description": null, + "docstatus": 0, + "doctype": "Custom Field", + "dt": "Quotation", + "fetch_from": null, + "fetch_if_empty": 0, + "fieldname": "custom_column_break_holw9", + "fieldtype": "Column Break", + "hidden": 0, + "hide_border": 0, + "hide_days": 0, + "hide_seconds": 0, + "ignore_user_permissions": 0, + "ignore_xss_filter": 0, + "in_global_search": 0, + "in_list_view": 0, + "in_preview": 0, + "in_standard_filter": 0, + "insert_after": "pricing_rule_details", + "is_system_generated": 0, + "is_virtual": 0, + "label": "", + "length": 0, + "link_filters": null, + "mandatory_depends_on": null, + "modified": "2024-09-26 05:01:09.652660", + "module": null, + "name": "Quotation-custom_column_break_holw9", + "no_copy": 0, + "non_negative": 0, + "options": null, + "permlevel": 0, + "placeholder": null, + "precision": "", + "print_hide": 1, + "print_hide_if_no_value": 0, + "print_width": null, + "read_only": 0, + "read_only_depends_on": null, + "report_hide": 0, + "reqd": 0, + "search_index": 0, + "show_dashboard": 0, + "sort_options": 0, + "translatable": 0, + "unique": 0, + "width": null + }, { "allow_in_quick_entry": 0, "allow_on_submit": 0, diff --git a/custom_ui/fixtures/doctype.json b/custom_ui/fixtures/doctype.json index a55e6c3..01a1f29 100644 --- a/custom_ui/fixtures/doctype.json +++ b/custom_ui/fixtures/doctype.json @@ -1408,8 +1408,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:22.718725", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:56.742093", "module": "CRM", "name": "Properties", "naming_rule": "By fieldname", @@ -3186,8 +3186,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:22.823913", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:56.858702", "module": "CRM", "name": "SNW Jobs", "naming_rule": "Autoincrement", @@ -4109,8 +4109,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:22.904603", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:56.945388", "module": "Projects", "name": "Work Schedule", "naming_rule": "", @@ -9151,8 +9151,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:23.045853", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:57.082026", "module": "CRM", "name": "Follow Up Checklist", "naming_rule": "By fieldname", @@ -9457,8 +9457,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:23.105215", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:57.142428", "module": "CRM", "name": "Follow Check List Fields", "naming_rule": "By fieldname", @@ -10147,8 +10147,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:23.191927", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:57.223647", "module": "Brotherton SOP", "name": "SOP-Documentation", "naming_rule": "Set by user", @@ -10348,8 +10348,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:23.245708", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:57.280001", "module": "Desk", "name": "SOP Notes", "naming_rule": "", @@ -10694,8 +10694,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:23.308542", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:57.342885", "module": "Desk", "name": "Tutorials", "naming_rule": "By fieldname", @@ -11064,8 +11064,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:23.375193", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:57.405780", "module": "Desk", "name": "Brotherton Meetings Scheduler", "naming_rule": "", @@ -11242,8 +11242,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:23.432789", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:57.458217", "module": "Desk", "name": "Meeting Participants", "naming_rule": "", @@ -11588,8 +11588,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:23.506076", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:57.531049", "module": "Desk", "name": "Add-On Job Detail", "naming_rule": "By fieldname", @@ -11870,8 +11870,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:23.559134", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:57.590750", "module": "Desk", "name": "Crew Schedule Detail", "naming_rule": "", @@ -12152,8 +12152,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:23.615380", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:57.652306", "module": "Setup", "name": "City", "naming_rule": "By fieldname", @@ -14738,8 +14738,8 @@ "make_attachments_public": 1, "max_attachments": 5, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:23.744499", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:57.775224", "module": "Projects", "name": "Fencing Job Queue", "naming_rule": "Set by user", @@ -15630,8 +15630,8 @@ "make_attachments_public": 1, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:23.816935", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:57.848048", "module": "Setup", "name": "Irrigation District", "naming_rule": "By fieldname", @@ -15808,8 +15808,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:23.869015", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:57.901293", "module": "Setup", "name": "Linked Companies", "naming_rule": "", @@ -16154,8 +16154,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:23.926376", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:57.959975", "module": "Contacts", "name": "Address Contact Role", "naming_rule": "", @@ -17440,6 +17440,70 @@ "unique": 0, "width": null }, + { + "allow_bulk_edit": 0, + "allow_in_quick_entry": 0, + "allow_on_submit": 0, + "bold": 0, + "collapsible": 0, + "collapsible_depends_on": null, + "columns": 0, + "default": null, + "depends_on": null, + "description": null, + "documentation_url": null, + "fetch_from": null, + "fetch_if_empty": 0, + "fieldname": "amended_from", + "fieldtype": "Link", + "hidden": 0, + "hide_border": 0, + "hide_days": 0, + "hide_seconds": 0, + "ignore_user_permissions": 0, + "ignore_xss_filter": 0, + "in_filter": 0, + "in_global_search": 0, + "in_list_view": 0, + "in_preview": 0, + "in_standard_filter": 0, + "is_virtual": 0, + "label": "Amended From", + "length": 0, + "link_filters": null, + "make_attachment_public": 0, + "mandatory_depends_on": null, + "max_height": null, + "no_copy": 1, + "non_negative": 0, + "oldfieldname": null, + "oldfieldtype": null, + "options": "Backflow Test Form", + "parent": "Backflow Test Form", + "parentfield": "fields", + "parenttype": "DocType", + "permlevel": 0, + "placeholder": null, + "precision": null, + "print_hide": 1, + "print_hide_if_no_value": 0, + "print_width": null, + "read_only": 1, + "read_only_depends_on": null, + "remember_last_selected_value": 0, + "report_hide": 0, + "reqd": 0, + "search_index": 1, + "set_only_once": 0, + "show_dashboard": 0, + "show_on_timeline": 0, + "show_preview_popup": 0, + "sort_options": 0, + "translatable": 0, + "trigger": null, + "unique": 0, + "width": null + }, { "allow_bulk_edit": 0, "allow_in_quick_entry": 0, @@ -17524,8 +17588,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:24.005549", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:58.042143", "module": "Selling", "name": "Backflow Test Form", "naming_rule": "", @@ -18214,8 +18278,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:24.090678", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:58.125224", "module": "Selling", "name": "Pre-Built Routes", "naming_rule": "By \"Naming Series\" field", @@ -18735,8 +18799,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:24.151842", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:58.181922", "module": "Contacts", "name": "Assigned Address", "naming_rule": "By fieldname", @@ -20341,6 +20405,70 @@ "unique": 0, "width": null }, + { + "allow_bulk_edit": 0, + "allow_in_quick_entry": 0, + "allow_on_submit": 0, + "bold": 0, + "collapsible": 0, + "collapsible_depends_on": null, + "columns": 0, + "default": null, + "depends_on": null, + "description": null, + "documentation_url": null, + "fetch_from": null, + "fetch_if_empty": 0, + "fieldname": "amended_from", + "fieldtype": "Link", + "hidden": 0, + "hide_border": 0, + "hide_days": 0, + "hide_seconds": 0, + "ignore_user_permissions": 0, + "ignore_xss_filter": 0, + "in_filter": 0, + "in_global_search": 0, + "in_list_view": 0, + "in_preview": 0, + "in_standard_filter": 0, + "is_virtual": 0, + "label": "Amended From", + "length": 0, + "link_filters": null, + "make_attachment_public": 0, + "mandatory_depends_on": null, + "max_height": null, + "no_copy": 1, + "non_negative": 0, + "oldfieldname": null, + "oldfieldtype": null, + "options": "Locate Log", + "parent": "Locate Log", + "parentfield": "fields", + "parenttype": "DocType", + "permlevel": 0, + "placeholder": null, + "precision": null, + "print_hide": 1, + "print_hide_if_no_value": 0, + "print_width": null, + "read_only": 1, + "read_only_depends_on": null, + "remember_last_selected_value": 0, + "report_hide": 0, + "reqd": 0, + "search_index": 1, + "set_only_once": 0, + "show_dashboard": 0, + "show_on_timeline": 0, + "show_preview_popup": 0, + "sort_options": 0, + "translatable": 0, + "trigger": null, + "unique": 0, + "width": null + }, { "allow_bulk_edit": 0, "allow_in_quick_entry": 0, @@ -20439,8 +20567,8 @@ "make_attachments_public": 1, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:24.274836", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:58.297143", "module": "Projects", "name": "Locate Log", "naming_rule": "", @@ -21395,6 +21523,70 @@ "unique": 0, "width": null }, + { + "allow_bulk_edit": 0, + "allow_in_quick_entry": 0, + "allow_on_submit": 0, + "bold": 0, + "collapsible": 0, + "collapsible_depends_on": null, + "columns": 0, + "default": null, + "depends_on": null, + "description": null, + "documentation_url": null, + "fetch_from": null, + "fetch_if_empty": 0, + "fieldname": "amended_from", + "fieldtype": "Link", + "hidden": 0, + "hide_border": 0, + "hide_days": 0, + "hide_seconds": 0, + "ignore_user_permissions": 0, + "ignore_xss_filter": 0, + "in_filter": 0, + "in_global_search": 0, + "in_list_view": 0, + "in_preview": 0, + "in_standard_filter": 0, + "is_virtual": 0, + "label": "Amended From", + "length": 0, + "link_filters": null, + "make_attachment_public": 0, + "mandatory_depends_on": null, + "max_height": null, + "no_copy": 1, + "non_negative": 0, + "oldfieldname": null, + "oldfieldtype": null, + "options": "Backflow test report form", + "parent": "Backflow test report form", + "parentfield": "fields", + "parenttype": "DocType", + "permlevel": 0, + "placeholder": null, + "precision": null, + "print_hide": 1, + "print_hide_if_no_value": 0, + "print_width": null, + "read_only": 1, + "read_only_depends_on": null, + "remember_last_selected_value": 0, + "report_hide": 0, + "reqd": 0, + "search_index": 1, + "set_only_once": 0, + "show_dashboard": 0, + "show_on_timeline": 0, + "show_preview_popup": 0, + "sort_options": 0, + "translatable": 0, + "trigger": null, + "unique": 0, + "width": null + }, { "allow_bulk_edit": 0, "allow_in_quick_entry": 0, @@ -21479,8 +21671,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:24.347179", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:58.369829", "module": "Brotherton SOP", "name": "Backflow test report form", "naming_rule": "", @@ -21785,8 +21977,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:24.423800", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:58.440463", "module": "Accounts", "name": "QB Export Entry", "naming_rule": "Autoincrement", @@ -22323,8 +22515,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:24.490483", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:58.505673", "module": "Accounts", "name": "QB Export", "naming_rule": "Expression", @@ -22821,8 +23013,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:24.550235", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:58.564164", "module": "Desk", "name": "Custom Customer Address Link", "naming_rule": "", @@ -23167,8 +23359,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:24.616040", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:58.627216", "module": "Selling", "name": "On-Site Meeting", "naming_rule": "Expression", @@ -23345,8 +23537,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:24.669687", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:58.682665", "module": "Selling", "name": "Route Technician Assignment", "naming_rule": "", @@ -23499,8 +23691,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:24.731128", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:58.738233", "module": "Desk", "name": "Test Doctype", "naming_rule": "", @@ -23677,8 +23869,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:24.783628", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:58.788951", "module": "Custom", "name": "Lead Company Link", "naming_rule": "", @@ -23895,8 +24087,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:24.841053", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:58.840269", "module": "Custom UI", "name": "Customer Task Link", "naming_rule": "", @@ -24113,8 +24305,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:24.894560", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:58.891422", "module": "Custom UI", "name": "Address Task Link", "naming_rule": "", @@ -24267,8 +24459,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:24.951994", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:58.941222", "module": "Custom", "name": "Lead Companies Link", "naming_rule": "", @@ -24485,8 +24677,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:25.003318", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:58.994171", "module": "Custom", "name": "Address Project Link", "naming_rule": "", @@ -24703,8 +24895,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:25.055327", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:59.051082", "module": "Custom", "name": "Address Quotation Link", "naming_rule": "", @@ -24921,8 +25113,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:25.107909", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:59.106232", "module": "Custom", "name": "Address On-Site Meeting Link", "naming_rule": "", @@ -25139,8 +25331,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:25.159256", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:59.160894", "module": "Custom", "name": "Address Sales Order Link", "naming_rule": "", @@ -25293,8 +25485,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:25.216541", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:59.215030", "module": "Custom", "name": "Contact Address Link", "naming_rule": "", @@ -25447,8 +25639,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:25.270176", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:59.268931", "module": "Custom", "name": "Lead On-Site Meeting Link", "naming_rule": "", @@ -26049,8 +26241,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:25.337359", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:59.338411", "module": "Selling", "name": "Quotation Template", "naming_rule": "", @@ -26547,8 +26739,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:25.416617", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:59.414290", "module": "Selling", "name": "Quotation Template Item", "naming_rule": "", @@ -26701,8 +26893,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:25.475746", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:59.466637", "module": "Custom UI", "name": "Customer Company Link", "naming_rule": "", @@ -26855,8 +27047,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:25.527492", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:59.517759", "module": "Custom UI", "name": "Customer Address Link", "naming_rule": "", @@ -27009,8 +27201,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:25.579279", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:59.571616", "module": "Custom UI", "name": "Customer Contact Link", "naming_rule": "", @@ -27163,8 +27355,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:25.631286", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:59.625071", "module": "Custom", "name": "Address Contact Link", "naming_rule": "", @@ -27317,8 +27509,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:25.691941", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:59.677468", "module": "Custom", "name": "Customer On-Site Meeting Link", "naming_rule": "", @@ -27471,8 +27663,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:25.743954", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:59.730485", "module": "Custom", "name": "Customer Project Link", "naming_rule": "", @@ -27625,8 +27817,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:25.795688", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:59.783302", "module": "Custom", "name": "Customer Quotation Link", "naming_rule": "", @@ -27779,8 +27971,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:25.848130", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:59.837260", "module": "Custom", "name": "Customer Sales Order Link", "naming_rule": "", @@ -27933,8 +28125,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:25.901906", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:59.891072", "module": "Custom", "name": "Lead Address Link", "naming_rule": "", @@ -28087,8 +28279,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:25.962488", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:59.941261", "module": "Custom", "name": "Lead Contact Link", "naming_rule": "", @@ -28241,8 +28433,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:26.021412", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:54:59.991240", "module": "Custom", "name": "Lead Quotation Link", "naming_rule": "", @@ -28395,8 +28587,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:26.074761", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:55:00.041588", "module": "Custom", "name": "Address Company Link", "naming_rule": "", @@ -29445,8 +29637,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:26.143427", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:55:00.106804", "module": "Custom UI", "name": "Bid Meeting Note Form Field", "naming_rule": "", @@ -29855,8 +30047,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-15 02:31:38.096645", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:55:00.166449", "module": "Custom UI", "name": "Bid Meeting Note Form", "naming_rule": "Expression", @@ -30737,8 +30929,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:26.272764", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:55:00.232746", "module": "Custom UI", "name": "Bid Meeting Note Field", "naming_rule": "", @@ -31147,8 +31339,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:26.334112", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:55:00.296541", "module": "Custom UI", "name": "Bid Meeting Note", "naming_rule": "", @@ -31325,8 +31517,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:26.386749", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:55:00.346318", "module": "Custom UI", "name": "Project Task Link", "naming_rule": "", @@ -31479,8 +31671,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:26.451241", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:55:00.402929", "module": "Custom UI", "name": "Condition", "naming_rule": "", @@ -31785,8 +31977,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-13 03:40:26.512284", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:55:00.458061", "module": "Custom UI", "name": "Bid Meeting Note Field Quantity", "naming_rule": "", @@ -32963,8 +33155,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": "8f5c4ab438c1cc983599ecba1a41031e", - "modified": "2026-02-15 02:17:23.073232", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:55:00.537703", "module": "Custom UI", "name": "Service Address 2", "naming_rule": "", @@ -33141,8 +33333,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": null, - "modified": "2026-02-15 02:15:49.087409", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:55:00.594029", "module": "Custom UI", "name": "Skip Day", "naming_rule": "", @@ -33487,8 +33679,8 @@ "make_attachments_public": 0, "max_attachments": 0, "menu_index": null, - "migration_hash": null, - "modified": "2026-02-17 08:14:21.379886", + "migration_hash": "4dc7809bd52be5cb3c395e5b95eb3053", + "modified": "2026-02-18 03:55:00.653964", "module": "Custom UI", "name": "Address Customer Link", "naming_rule": "", diff --git a/custom_ui/fixtures/property_setter.json b/custom_ui/fixtures/property_setter.json index bcf5bcf..36a9dd9 100644 --- a/custom_ui/fixtures/property_setter.json +++ b/custom_ui/fixtures/property_setter.json @@ -79,22 +79,6 @@ "row_name": null, "value": "1" }, - { - "default_value": null, - "doc_type": "Task Type", - "docstatus": 0, - "doctype": "Property Setter", - "doctype_or_field": "DocType", - "field_name": null, - "is_system_generated": 0, - "modified": "2026-02-09 01:29:07.457962", - "module": null, - "name": "Task Type-main-field_order", - "property": "field_order", - "property_type": "Data", - "row_name": null, - "value": "[\"weight\", \"description\", \"base_date\", \"offset_days\", \"skip_weekends\", \"skip_holidays\", \"logic_key\", \"offset_direction\", \"title\", \"days\", \"calculate_from\", \"trigger\", \"task_type_calculate_from\", \"work_type\", \"no_due_date\", \"triggering_doctype\", \"custom_completion_trigger\", \"custom_completion_trigger_doctype\", \"target_percent\"]" - }, { "default_value": null, "doc_type": "Pre-Built Routes", @@ -15278,5 +15262,21 @@ "property_type": "Small Text", "row_name": null, "value": "[\"62m56h85vo\", \"62m5uugrvr\", \"62m57bgpkf\", \"62m5fgrjb0\"]" + }, + { + "default_value": null, + "doc_type": "Task Type", + "docstatus": 0, + "doctype": "Property Setter", + "doctype_or_field": "DocType", + "field_name": null, + "is_system_generated": 0, + "modified": "2026-02-18 03:59:01.922482", + "module": null, + "name": "Task Type-main-field_order", + "property": "field_order", + "property_type": "Data", + "row_name": null, + "value": "[\"weight\", \"description\", \"base_date\", \"offset_days\", \"skip_weekends\", \"skip_holidays\", \"logic_key\", \"offset_direction\", \"title\", \"days\", \"calculate_from\", \"trigger\", \"task_type_calculate_from\", \"work_type\", \"no_due_date\", \"triggering_doctype\", \"custom_completion_trigger\", \"custom_completion_trigger_doctype\", \"custom_target_percent\"]" } ] \ No newline at end of file diff --git a/custom_ui/hooks.py b/custom_ui/hooks.py index a50e88a..4b1eeb9 100644 --- a/custom_ui/hooks.py +++ b/custom_ui/hooks.py @@ -218,7 +218,7 @@ doc_events = { fixtures = [ {"dt": "Company"}, # {"dt": "Account"}, - {"dt": "Cost Center"}, + # {"dt": "Cost Center"}, {"dt": "Warehouse"}, {"dt": "Fiscal Year"}, { diff --git a/custom_ui/install.py b/custom_ui/install.py index 241ccb8..626c457 100644 --- a/custom_ui/install.py +++ b/custom_ui/install.py @@ -8,17 +8,16 @@ import holidays from datetime import date, timedelta from erpnext.accounts.doctype.account.chart_of_accounts.chart_of_accounts import create_charts - def after_install(): - create_module() + # create_module() # add_custom_fields() - frappe.db.commit() + # frappe.db.commit() # Proper way to refresh metadata - frappe.clear_cache(doctype="Address") - frappe.reload_doctype("Address") - frappe.clear_cache(doctype="On-Site Meeting") - frappe.reload_doctype("On-Site Meeting") + # frappe.clear_cache(doctype="Address") + # frappe.reload_doctype("Address") + # frappe.clear_cache(doctype="On-Site Meeting") + # frappe.reload_doctype("On-Site Meeting") # update_onsite_meeting_fields() # update_address_fields() # create_companies() @@ -29,7 +28,8 @@ def after_install(): # create_bid_meeting_note_form_templates() # create_accounts() # init_stripe_accounts() - build_frontend() + # build_frontend() + print("\nāœ… Custom UI installation complete. Please run `bench migrate` to apply changes to the database and refresh metadata.\n") def after_migrate(): add_custom_fields() @@ -734,14 +734,14 @@ def add_custom_fields(): label="Base Date", fieldtype="Select", options="Start\nEnd\nCompletion\nCreation", - reqd=1, + # reqd=1, insert_after="name" ), dict( fieldname="offset_days", label="Offset Days", fieldtype="Int", - reqd=1, + # reqd=1, insert_after="base_date" ), dict( @@ -767,14 +767,14 @@ def add_custom_fields(): label="Offset Direction", fieldtype="Select", options="After\nBefore", - reqd=1, + # reqd=1, insert_after="logic_key" ), dict( fieldname="title", label="Title", fieldtype="Data", - reqd=1, + # reqd=1, insert_after="offset_direction" ), dict( @@ -788,7 +788,7 @@ def add_custom_fields(): label="Calculate From", fieldtype="Select", options="Service Address 2\nProject\nTask", - reqd=1, + # reqd=1, insert_after="days" ), dict( @@ -796,7 +796,7 @@ def add_custom_fields(): label="Trigger", fieldtype="Select", options="Scheduled\nCompleted\nCreated", - reqd=1, + # reqd=1, insert_after="calculate_from" ), dict( @@ -811,7 +811,7 @@ def add_custom_fields(): label="Work Type", fieldtype="Select", options="Admin\nLabor\nQA", - reqd=1, + # reqd=1, insert_after="task_type_calculate_from" ), dict( @@ -825,7 +825,7 @@ def add_custom_fields(): label="Triggering Doctype", fieldtype="Select", options="Service Address 2\nProject\nTask", - reqd=1, + # reqd=1, insert_after="no_due_date" ) ], @@ -1598,19 +1598,59 @@ def create_accounts(): """Create necessary companies if they do not exist.""" print("\nšŸ”§ Checking for necessary companies...") - companies = frappe.get_all("Company", pluck="name") + companies = frappe.get_all("Company", fields=["name", "abbr", "create_chart_of_accounts_based_on"]) for company in companies: - if frappe.db.exists("Account", {"company": company}): - print(f"āœ… Accounts already exist for company '{company}'. Skipping account creation.") - continue - company_doc = frappe.get_doc("Company", company) + ensure_accounts(company) + # ensure_default_cost_center(company) + # ensure_default_warehouse(company) + frappe.db.commit() + +def ensure_accounts(company): + if frappe.db.exists("Account", {"company": company["name"]}): + print(f"āœ… Accounts already exist for company '{company['name']}'. Skipping account creation.") + return + if not company.get("create_chart_of_accounts_based_on"): + print(f"āš ļø Company '{company['name']}' does not have a chart template defined. Skipping account creation.") + frappe.throw("Company does not have a chart template defined. Please set a chart template for the company before running account creation.") create_charts( - company=company.name, - chart_template=company_doc.chart_template + company=company["name"], + chart_template=company["create_chart_of_accounts_based_on"] ) - - +def ensure_default_cost_center(company): + company_name = company["name"] + company_abbr = company["abbr"] + parent_cc = company_abbr + leaf_name = "General" + cost_center_name = f"{company_abbr} - {leaf_name}" + if not frappe.db.exists("Cost Center", {"cost_center_name": cost_center_name, "company": company_name}): + doc = frappe.get_doc({ + "doctype": "Cost Center", + "cost_center_name": cost_center_name, + "company": company_name, + "is_group": 0 + }) + doc.insert(ignore_permissions=True) + print(f"āœ… Created default Cost Center '{cost_center_name}' for company '{company_name}'.") + else: + print(f"āœ… Default Cost Center '{cost_center_name}' already exists for company '{company_name}'. Skipping creation.") + + +def ensure_default_warehouse(company_name, company_abbr): + warehouse_name = f"{company_abbr} - Main Warehouse" + if not frappe.db.exists("Warehouse", {"warehouse_name": warehouse_name, "company": company_name}): + doc = frappe.get_doc({ + "doctype": "Warehouse", + "warehouse_name": warehouse_name, + "company": company_name, + "is_group": 0 + }) + doc.insert(ignore_permissions=True) + print(f"āœ… Created default Warehouse '{warehouse_name}' for company '{company_name}'.") + else: + print(f"āœ… Default Warehouse '{warehouse_name}' already exists for company '{company_name}'. Skipping creation.") + + def create_stripe_accounts(): """Create necessary accounts if they do not exist.""" print("\nšŸ”§ Checking for necessary accounts...")