fix migrate hook

This commit is contained in:
Casey 2026-02-18 08:14:30 -06:00
parent a6bb81bbf8
commit ae0365a42a
8 changed files with 708 additions and 634 deletions

View File

@ -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": "",

View File

@ -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,

View File

@ -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"
}
]

View File

@ -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,

View File

@ -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": "",

View File

@ -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\"]"
}
]

View File

@ -218,7 +218,7 @@ doc_events = {
fixtures = [
{"dt": "Company"},
# {"dt": "Account"},
{"dt": "Cost Center"},
# {"dt": "Cost Center"},
{"dt": "Warehouse"},
{"dt": "Fiscal Year"},
{

View File

@ -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...")