mirror of
https://github.com/frappe/erpnext.git
synced 2026-08-17 08:28:44 +00:00
boot_session used raw `frappe.db.sql`, including a MySQL-only `ifnull(account_type, '')` over Party Type that is invalid on Postgres. - customer_count: `SELECT count(*)` → `frappe.db.count` - setup_complete: `SELECT name ... LIMIT 1` → `frappe.db.get_all(limit=1)` - companies: raw select → `frappe.get_all`, preserving the `:Company` virtual-doc marker - party_account_types: `ifnull(account_type,'')` → `frappe.get_all` with a Python `account_type or ""`, which collapses NULL→'' and ''→'' identically on both engines (handles Postgres storing '' as NULL) Adds a test (no test file existed) that runs boot_session and asserts the company list and party_account_types are populated, on both engines. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>