diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..1533159 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,35 @@ +# Changelog + +Tutte le modifiche rilevanti di questo progetto sono documentate in questo file. + +Il formato segue [Keep a Changelog](https://keepachangelog.com/it/1.1.0/), e il progetto +aderisce a [Semantic Versioning](https://semver.org/lang/it/). + +## [0.1.0] - 2026-09-22 + +### Aggiunto + +- Wizard a 5 fasi (Database → Importa Distinta Base → Crea cartella raw → Trova componenti + referenziati → Verifica completezza) per preparare i file `raw/` da passare a Creo + Distributed Batch per l'esportazione STEP. +- Indicizzazione dei file CAD Pro-ENGINEER/Creo di un disco/share di rete (radice di default + `X:\`) in un DB SQLite locale (`cad_index.db`), con aggiornamento incrementale e barra di + progresso. +- Import della distinta base dall'export del gestionale (`.xls`/`.xml`) in CSV + componente;descrizione, incluso il riconoscimento della convenzione `DBP__` + per aggiungere l'assieme generale come riga. +- Creazione della cartella `raw/` con copia parallela dei file CAD dei componenti trovati + nell'indice. +- Risoluzione ricorsiva dell'albero componenti dai file `.asm` (sotto-assiemi, parti, + componenti soppressi, riferimenti esterni), con parser esatto dei record binari + (`AsmRecordReader`) e fallback euristico testuale (`AssemblyComponentScanner`) per i file + fuori formato. +- Scelta automatica della copia corretta quando lo stesso codice esiste in più cartelle della + share, preferendo quella della cartella dell'assieme che la referenzia. +- Anteprima trascinabile (drag&drop) dei file `.asm` della distinta già in `raw/`, pronti per + Creo Distributed Batch. +- Menu "File → Nuova estrazione" (Ctrl+N) per ripartire con una nuova distinta senza ricaricare + database e cartella di lavoro, e "Aiuto → Guida" (F1) con una sintesi interattiva delle 5 fasi. +- Script standalone C# file-based (`scripts/`): `ExtractCreoStrings.cs`, `BomViaDb.cs`, + `CreoBom.cs`, per estrarre la distinta componenti da riga di comando. +- Pubblicazione come eseguibile standalone single-file self-contained (Windows x64).