mirror of
https://github.com/frappe/erpnext.git
synced 2026-08-17 16:38:41 +00:00
Parity sweep findings in queries already merged in develop: - pos_invoice.py: serial_no return-match matched case-sensitively on Postgres (case-insensitive on MariaDB). Replaced the get_all or_filters lookup with a qb query that case-folds both sides via Lower() (no-op on MariaDB). - controllers/queries.py + pick_list.py: the Locate()-based relevance ranking in link-query ORDER BY is case-sensitive on Postgres (Strpos) vs case-insensitive on MariaDB (Locate), so autocomplete order differed. Lower() both arguments so the ranking matches on both engines. - crm/lead_conversion_time.py: "first contact" used ORDER BY communication_date LIMIT 1 read by index; a NULL date sorts first on MariaDB but last on Postgres, changing the result. Added `communication_date IS NOT NULL` so both engines return the earliest real contact date. Verified on MariaDB and Postgres: test_pick_list 40/40, test_pos_invoice 26/26 on both engines. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>