# `search_pallets.py` ## Scopo Questo modulo consente di cercare pallet/UDC, lotti e codici prodotto su tutto il magazzino e di esportare i risultati. ## Flusso operativo ```{mermaid} flowchart TD A["open_search_window()"] --> B["SearchWindow.__init__()"] B --> C["_build_ui()"] C --> D["Utente compila filtri"] D --> E["_do_search()"] E --> F{"Filtri vuoti?"} F -- Si --> G["Richiesta conferma ricerca globale"] F -- No --> H["Prepara parametri SQL"] G --> H H --> I["AsyncRunner.run(query_json SQL_SEARCH)"] I --> J["_ok()"] J --> K["Popola Treeview"] K --> L["Eventuale reset campi"] ``` ## Ordinamento ed export ```{mermaid} flowchart TD A["Doppio click su header"] --> B["_on_heading_double_click()"] B --> C["_sort_by_column()"] C --> D["Riordina righe del Treeview"] E["Click Export XLSX"] --> F["_export_xlsx()"] F --> G["Legge righe visibili"] G --> H["Scrive workbook Excel"] ``` ## Note - Il modulo usa `Treeview` come backend principale. - Le ricerche possono essere molto ampie: per questo, senza filtri, viene chiesta conferma. - `IDCella = 9999` viene evidenziata con uno stile dedicato.