From d90ec49241d1e65aad267a09a92d61ea2bb3e82c Mon Sep 17 00:00:00 2001 From: Rohit Waghchaure Date: Wed, 25 Feb 2026 17:23:57 +0530 Subject: [PATCH] fix: patch to complete onboarding stpes for existing records --- .../asset_onboarding/asset_onboarding.json | 4 +-- .../learn_asset/learn_asset.json | 2 +- .../buying_onboarding/buying_onboarding.json | 4 +-- .../create_item/create_item.json | 4 +-- .../create_purchase_invoice.json | 2 +- .../create_purchase_order.json | 2 +- .../create_supplier/create_supplier.json | 2 +- .../review_buying_settings.json | 2 +- .../setup_company/setup_company.json | 21 ----------- .../view_purchase_order_analysis.json | 2 +- .../manufacturing_onboarding.json | 4 +-- .../view_work_order_summary_report.json | 2 +- erpnext/patches.txt | 3 +- ...mplete_onboarding_steps_for_older_sites.py | 36 +++++++++++++++++++ .../projects_onboarding.json | 4 +-- .../selling_onboarding.json | 4 +-- .../create_customer/create_customer.json | 2 +- .../create_item/create_item.json | 4 +-- .../setup_company/setup_company.json | 21 ----------- .../stock_onboarding/stock_onboarding.json | 4 +-- .../create_item/create_item.json | 4 +-- .../subcontracting_onboarding.json | 4 +-- 22 files changed, 66 insertions(+), 71 deletions(-) delete mode 100644 erpnext/buying/onboarding_step/setup_company/setup_company.json create mode 100644 erpnext/patches/v16_0/complete_onboarding_steps_for_older_sites.py delete mode 100644 erpnext/selling/onboarding_step/setup_company/setup_company.json diff --git a/erpnext/assets/module_onboarding/asset_onboarding/asset_onboarding.json b/erpnext/assets/module_onboarding/asset_onboarding/asset_onboarding.json index fe4bac23091..b0b4b35094f 100644 --- a/erpnext/assets/module_onboarding/asset_onboarding/asset_onboarding.json +++ b/erpnext/assets/module_onboarding/asset_onboarding/asset_onboarding.json @@ -15,7 +15,7 @@ "doctype": "Module Onboarding", "idx": 0, "is_complete": 0, - "modified": "2026-02-23 22:51:11.027665", + "modified": "2026-02-25 16:59:52.159087", "modified_by": "Administrator", "module": "Assets", "name": "Asset Onboarding", @@ -40,5 +40,5 @@ "step": "View Balance Sheet" } ], - "title": "Assets Setup!" + "title": "Assets Setup" } diff --git a/erpnext/assets/onboarding_step/learn_asset/learn_asset.json b/erpnext/assets/onboarding_step/learn_asset/learn_asset.json index 54377ef0ac2..baf2f186592 100644 --- a/erpnext/assets/onboarding_step/learn_asset/learn_asset.json +++ b/erpnext/assets/onboarding_step/learn_asset/learn_asset.json @@ -8,7 +8,7 @@ "is_complete": 0, "is_single": 0, "is_skipped": 0, - "modified": "2026-02-23 22:44:25.734547", + "modified": "2026-02-25 15:09:37.450763", "modified_by": "Administrator", "name": "Learn Asset", "owner": "Administrator", diff --git a/erpnext/buying/module_onboarding/buying_onboarding/buying_onboarding.json b/erpnext/buying/module_onboarding/buying_onboarding/buying_onboarding.json index 96d08fecb1a..814c87f27d0 100644 --- a/erpnext/buying/module_onboarding/buying_onboarding/buying_onboarding.json +++ b/erpnext/buying/module_onboarding/buying_onboarding/buying_onboarding.json @@ -12,7 +12,7 @@ "doctype": "Module Onboarding", "idx": 0, "is_complete": 0, - "modified": "2026-02-24 16:57:55.172763", + "modified": "2026-02-25 16:59:28.328912", "modified_by": "Administrator", "module": "Buying", "name": "Buying Onboarding", @@ -37,5 +37,5 @@ "step": "Review Buying Settings" } ], - "title": "Buying Setup! " + "title": "Buying Setup" } diff --git a/erpnext/buying/onboarding_step/create_item/create_item.json b/erpnext/buying/onboarding_step/create_item/create_item.json index f1dc6a0ac91..8e1420e2add 100644 --- a/erpnext/buying/onboarding_step/create_item/create_item.json +++ b/erpnext/buying/onboarding_step/create_item/create_item.json @@ -4,11 +4,11 @@ "creation": "2026-02-19 12:38:40.865013", "docstatus": 0, "doctype": "Onboarding Step", - "idx": 7, + "idx": 8, "is_complete": 0, "is_single": 0, "is_skipped": 0, - "modified": "2026-02-24 16:57:14.098288", + "modified": "2026-02-25 16:58:56.384284", "modified_by": "Administrator", "name": "Create Item", "owner": "Administrator", diff --git a/erpnext/buying/onboarding_step/create_purchase_invoice/create_purchase_invoice.json b/erpnext/buying/onboarding_step/create_purchase_invoice/create_purchase_invoice.json index 8c35d155793..a3c63749621 100644 --- a/erpnext/buying/onboarding_step/create_purchase_invoice/create_purchase_invoice.json +++ b/erpnext/buying/onboarding_step/create_purchase_invoice/create_purchase_invoice.json @@ -8,7 +8,7 @@ "is_complete": 0, "is_single": 0, "is_skipped": 0, - "modified": "2026-02-23 20:26:00.223899", + "modified": "2026-02-25 16:58:56.386439", "modified_by": "Administrator", "name": "Create Purchase Invoice", "owner": "Administrator", diff --git a/erpnext/buying/onboarding_step/create_purchase_order/create_purchase_order.json b/erpnext/buying/onboarding_step/create_purchase_order/create_purchase_order.json index c39c5404046..b743a06c086 100644 --- a/erpnext/buying/onboarding_step/create_purchase_order/create_purchase_order.json +++ b/erpnext/buying/onboarding_step/create_purchase_order/create_purchase_order.json @@ -9,7 +9,7 @@ "is_complete": 0, "is_single": 0, "is_skipped": 0, - "modified": "2026-02-24 16:57:37.904322", + "modified": "2026-02-25 16:58:56.379480", "modified_by": "Administrator", "name": "Create Purchase Order", "owner": "Administrator", diff --git a/erpnext/buying/onboarding_step/create_supplier/create_supplier.json b/erpnext/buying/onboarding_step/create_supplier/create_supplier.json index 580fefedf16..470011efd5e 100644 --- a/erpnext/buying/onboarding_step/create_supplier/create_supplier.json +++ b/erpnext/buying/onboarding_step/create_supplier/create_supplier.json @@ -10,7 +10,7 @@ "is_complete": 0, "is_single": 0, "is_skipped": 0, - "modified": "2026-02-23 22:16:40.903633", + "modified": "2026-02-25 16:58:56.375824", "modified_by": "Administrator", "name": "Create Supplier", "owner": "Administrator", diff --git a/erpnext/buying/onboarding_step/review_buying_settings/review_buying_settings.json b/erpnext/buying/onboarding_step/review_buying_settings/review_buying_settings.json index 2703b14c6f9..52038d11800 100644 --- a/erpnext/buying/onboarding_step/review_buying_settings/review_buying_settings.json +++ b/erpnext/buying/onboarding_step/review_buying_settings/review_buying_settings.json @@ -8,7 +8,7 @@ "is_complete": 0, "is_single": 1, "is_skipped": 0, - "modified": "2026-02-24 16:57:14.031766", + "modified": "2026-02-25 16:58:56.388794", "modified_by": "Administrator", "name": "Review Buying Settings", "owner": "Administrator", diff --git a/erpnext/buying/onboarding_step/setup_company/setup_company.json b/erpnext/buying/onboarding_step/setup_company/setup_company.json deleted file mode 100644 index 89ae9a52553..00000000000 --- a/erpnext/buying/onboarding_step/setup_company/setup_company.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "action": "Go to Page", - "action_label": "Set up company", - "creation": "2026-02-20 11:12:50.373049", - "docstatus": 0, - "doctype": "Onboarding Step", - "idx": 1, - "is_complete": 0, - "is_single": 0, - "is_skipped": 0, - "modified": "2026-02-22 16:44:20.499954", - "modified_by": "Administrator", - "name": "Setup Company", - "owner": "Administrator", - "path": "company", - "reference_document": "Company", - "show_form_tour": 0, - "show_full_form": 0, - "title": "Setup Company", - "validate_action": 1 -} diff --git a/erpnext/buying/onboarding_step/view_purchase_order_analysis/view_purchase_order_analysis.json b/erpnext/buying/onboarding_step/view_purchase_order_analysis/view_purchase_order_analysis.json index 656b5c1fb44..9583034f337 100644 --- a/erpnext/buying/onboarding_step/view_purchase_order_analysis/view_purchase_order_analysis.json +++ b/erpnext/buying/onboarding_step/view_purchase_order_analysis/view_purchase_order_analysis.json @@ -8,7 +8,7 @@ "is_complete": 0, "is_single": 0, "is_skipped": 0, - "modified": "2026-02-23 22:44:35.794807", + "modified": "2026-02-25 10:33:43.731928", "modified_by": "Administrator", "name": "View Purchase Order Analysis", "owner": "Administrator", diff --git a/erpnext/manufacturing/module_onboarding/manufacturing_onboarding/manufacturing_onboarding.json b/erpnext/manufacturing/module_onboarding/manufacturing_onboarding/manufacturing_onboarding.json index 613b855aee4..be86ce22c9b 100644 --- a/erpnext/manufacturing/module_onboarding/manufacturing_onboarding/manufacturing_onboarding.json +++ b/erpnext/manufacturing/module_onboarding/manufacturing_onboarding/manufacturing_onboarding.json @@ -12,7 +12,7 @@ "doctype": "Module Onboarding", "idx": 0, "is_complete": 0, - "modified": "2026-02-23 22:51:27.390568", + "modified": "2026-02-25 16:59:39.508221", "modified_by": "Administrator", "module": "Manufacturing", "name": "Manufacturing Onboarding", @@ -40,5 +40,5 @@ "step": "Review Manufacturing Settings" } ], - "title": "Manufacturing Setup!" + "title": "Manufacturing Setup" } diff --git a/erpnext/manufacturing/onboarding_step/view_work_order_summary_report/view_work_order_summary_report.json b/erpnext/manufacturing/onboarding_step/view_work_order_summary_report/view_work_order_summary_report.json index 62875c8904f..16b8a54b13a 100644 --- a/erpnext/manufacturing/onboarding_step/view_work_order_summary_report/view_work_order_summary_report.json +++ b/erpnext/manufacturing/onboarding_step/view_work_order_summary_report/view_work_order_summary_report.json @@ -8,7 +8,7 @@ "is_complete": 0, "is_single": 0, "is_skipped": 0, - "modified": "2026-02-23 22:44:32.658354", + "modified": "2026-02-25 16:49:31.440969", "modified_by": "Administrator", "name": "View Work Order Summary Report", "owner": "Administrator", diff --git a/erpnext/patches.txt b/erpnext/patches.txt index bbb33de29db..a4c5ea1ff8f 100644 --- a/erpnext/patches.txt +++ b/erpnext/patches.txt @@ -467,4 +467,5 @@ erpnext.patches.v16_0.update_company_custom_field_in_bin erpnext.patches.v15_0.replace_http_with_https_in_sales_partner erpnext.patches.v16_0.migrate_asset_type_checkboxes_to_select erpnext.patches.v15_0.delete_quotation_lost_record_detail -erpnext.patches.v16_0.add_portal_redirects \ No newline at end of file +erpnext.patches.v16_0.add_portal_redirects +erpnext.patches.v16_0.complete_onboarding_steps_for_older_sites #2 \ No newline at end of file diff --git a/erpnext/patches/v16_0/complete_onboarding_steps_for_older_sites.py b/erpnext/patches/v16_0/complete_onboarding_steps_for_older_sites.py new file mode 100644 index 00000000000..73d50a976ee --- /dev/null +++ b/erpnext/patches/v16_0/complete_onboarding_steps_for_older_sites.py @@ -0,0 +1,36 @@ +import frappe +from frappe.utils import date_diff, getdate, today + + +def execute(): + steps = frappe.get_all( + "Onboarding Step", + filters={"is_complete": 0}, + fields=["name", "action", "reference_document"], + ) + + if not steps: + return + + company_creation = frappe.get_all("Company", fields=["creation"], order_by="creation asc", limit=1) + days_diff = date_diff(getdate(today()), getdate(company_creation[0].creation)) + + if days_diff > 15: + complete_all_onboarding_steps(steps) + else: + complete_onboarding_steps_if_record_exists(steps) + + +def complete_all_onboarding_steps(steps): + for step in steps: + frappe.db.set_value("Onboarding Step", step.name, "is_complete", 1, update_modified=False) + + +def complete_onboarding_steps_if_record_exists(steps): + for step in steps: + if ( + step.action == "Create Entry" + and step.reference_document + and frappe.get_all(step.reference_document, limit=1) + ): + frappe.db.set_value("Onboarding Step", step.name, "is_complete", 1, update_modified=False) diff --git a/erpnext/projects/module_onboarding/projects_onboarding/projects_onboarding.json b/erpnext/projects/module_onboarding/projects_onboarding/projects_onboarding.json index 64cc95e1b2d..1316558a0bb 100644 --- a/erpnext/projects/module_onboarding/projects_onboarding/projects_onboarding.json +++ b/erpnext/projects/module_onboarding/projects_onboarding/projects_onboarding.json @@ -12,7 +12,7 @@ "doctype": "Module Onboarding", "idx": 0, "is_complete": 0, - "modified": "2026-02-23 22:50:58.003699", + "modified": "2026-02-25 16:59:59.005097", "modified_by": "Administrator", "module": "Projects", "name": "Projects Onboarding", @@ -31,5 +31,5 @@ "step": "View Project Summary" } ], - "title": "Projects Setup!" + "title": "Projects Setup" } diff --git a/erpnext/selling/module_onboarding/selling_onboarding/selling_onboarding.json b/erpnext/selling/module_onboarding/selling_onboarding/selling_onboarding.json index d211ab6abf1..10e7ce5b33f 100644 --- a/erpnext/selling/module_onboarding/selling_onboarding/selling_onboarding.json +++ b/erpnext/selling/module_onboarding/selling_onboarding/selling_onboarding.json @@ -12,7 +12,7 @@ "doctype": "Module Onboarding", "idx": 1, "is_complete": 0, - "modified": "2026-02-24 16:57:50.753045", + "modified": "2026-02-25 16:59:32.154164", "modified_by": "Administrator", "module": "Selling", "name": "Selling Onboarding", @@ -37,5 +37,5 @@ "step": "Review Selling Settings" } ], - "title": "Selling Setup!" + "title": "Selling Setup" } diff --git a/erpnext/selling/onboarding_step/create_customer/create_customer.json b/erpnext/selling/onboarding_step/create_customer/create_customer.json index 142c395e55c..bd03a710b80 100644 --- a/erpnext/selling/onboarding_step/create_customer/create_customer.json +++ b/erpnext/selling/onboarding_step/create_customer/create_customer.json @@ -5,7 +5,7 @@ "docstatus": 0, "doctype": "Onboarding Step", "form_tour": "Customer Form Tour", - "idx": 0, + "idx": 1, "is_complete": 0, "is_single": 0, "is_skipped": 0, diff --git a/erpnext/selling/onboarding_step/create_item/create_item.json b/erpnext/selling/onboarding_step/create_item/create_item.json index f1dc6a0ac91..8e1420e2add 100644 --- a/erpnext/selling/onboarding_step/create_item/create_item.json +++ b/erpnext/selling/onboarding_step/create_item/create_item.json @@ -4,11 +4,11 @@ "creation": "2026-02-19 12:38:40.865013", "docstatus": 0, "doctype": "Onboarding Step", - "idx": 7, + "idx": 8, "is_complete": 0, "is_single": 0, "is_skipped": 0, - "modified": "2026-02-24 16:57:14.098288", + "modified": "2026-02-25 16:58:56.384284", "modified_by": "Administrator", "name": "Create Item", "owner": "Administrator", diff --git a/erpnext/selling/onboarding_step/setup_company/setup_company.json b/erpnext/selling/onboarding_step/setup_company/setup_company.json deleted file mode 100644 index 98c2d9fa693..00000000000 --- a/erpnext/selling/onboarding_step/setup_company/setup_company.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "action": "Go to Page", - "action_label": "Setup Company", - "creation": "2026-02-20 11:12:50.373049", - "docstatus": 0, - "doctype": "Onboarding Step", - "idx": 1, - "is_complete": 0, - "is_single": 0, - "is_skipped": 0, - "modified": "2026-02-20 11:37:46.922137", - "modified_by": "Administrator", - "name": "Setup Company", - "owner": "Administrator", - "path": "company", - "reference_document": "Company", - "show_form_tour": 0, - "show_full_form": 0, - "title": "Setup Company", - "validate_action": 1 -} diff --git a/erpnext/stock/module_onboarding/stock_onboarding/stock_onboarding.json b/erpnext/stock/module_onboarding/stock_onboarding/stock_onboarding.json index dbc838eb83c..a910f1a5c22 100644 --- a/erpnext/stock/module_onboarding/stock_onboarding/stock_onboarding.json +++ b/erpnext/stock/module_onboarding/stock_onboarding/stock_onboarding.json @@ -12,7 +12,7 @@ "doctype": "Module Onboarding", "idx": 0, "is_complete": 0, - "modified": "2026-02-23 22:51:17.460108", + "modified": "2026-02-25 16:59:45.630766", "modified_by": "Administrator", "module": "Stock", "name": "Stock Onboarding", @@ -40,5 +40,5 @@ "step": "Review Stock Settings" } ], - "title": "Stock Setup!" + "title": "Stock Setup" } diff --git a/erpnext/stock/onboarding_step/create_item/create_item.json b/erpnext/stock/onboarding_step/create_item/create_item.json index eb917d65b4f..8e1420e2add 100644 --- a/erpnext/stock/onboarding_step/create_item/create_item.json +++ b/erpnext/stock/onboarding_step/create_item/create_item.json @@ -4,11 +4,11 @@ "creation": "2026-02-19 12:38:40.865013", "docstatus": 0, "doctype": "Onboarding Step", - "idx": 7, + "idx": 8, "is_complete": 0, "is_single": 0, "is_skipped": 0, - "modified": "2026-02-23 20:30:37.698459", + "modified": "2026-02-25 16:58:56.384284", "modified_by": "Administrator", "name": "Create Item", "owner": "Administrator", diff --git a/erpnext/subcontracting/module_onboarding/subcontracting_onboarding/subcontracting_onboarding.json b/erpnext/subcontracting/module_onboarding/subcontracting_onboarding/subcontracting_onboarding.json index afd9160103b..867dca4a380 100644 --- a/erpnext/subcontracting/module_onboarding/subcontracting_onboarding/subcontracting_onboarding.json +++ b/erpnext/subcontracting/module_onboarding/subcontracting_onboarding/subcontracting_onboarding.json @@ -15,7 +15,7 @@ "doctype": "Module Onboarding", "idx": 1, "is_complete": 0, - "modified": "2026-02-23 22:51:04.595547", + "modified": "2026-02-25 16:59:55.409759", "modified_by": "Administrator", "module": "Subcontracting", "name": "Subcontracting Onboarding", @@ -43,5 +43,5 @@ "step": "Create Subcontracting Order" } ], - "title": "Subcontracting Setup!" + "title": "Subcontracting Setup" }