davideandClaude Sonnet 5.5 6d1e36a2ae Aggiungi la lista personalizzata di codici nella fase 2
In alternativa al file del gestionale si possono digitare i codici uno alla
volta (Invio/Aggiungi, Canc per togliere). Tutto a valle legge solo
_righeCorrenti, quindi basta una nuova sorgente; la selezione della griglia
mantiene il colore verde/rosso della verifica.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 08:52:05 +02:00

PrepStep - Cevolani

App Windows Forms (.NET 10, progetto PrepStep) per indicizzare, cercare e recuperare i file CAD Pro-ENGINEER/Creo di un disco/share di rete, e per trasformare l'estrazione "Distinta Base" del gestionale (file .xls/.xml) in un CSV con il percorso CAD di ogni componente, fino a raccogliere in raw/ tutto il necessario per l'esportazione STEP con Creo Distributed Batch: è un pre-processo per quel passaggio, non lo sostituisce.

Funzionalità

  1. Indice CAD — all'avvio carica automaticamente cad_index.db dalla cartella di installazione (%LOCALAPPDATA%\Programs\PrepStep). Se manca, lo si crea con Aggiorna indice, oppure si apre un altro DB per la sola sessione con Apri DB.... Aggiorna indice scansiona il disco (di default X:\, tutte le cartelle di primo livello che trova) e indicizza tutti i file. La cartella di lavoro (dove finiscono il CSV e la cartella raw/; gli STEP esportati con Creo vanno in step/, dentro la stessa cartella) è di default la cartella di installazione, modificabile in qualunque momento da File → Scegli cartella di lavoro... (la scelta viene ricordata). Dal menu File si ripuliscono anche raw//step/ e i CSV accumulati.
  2. Importa Distinta Base — trascina (o scegli da file) l'estrazione .xls/.xml del gestionale (foglio "Distinta Base", colonne Componente/Descrizione): viene generato un CSV nella cartella di lavoro, con anteprima in griglia. Se il file segue la convenzione di nome DBP_<codice>_<timestamp> del gestionale, l'assieme generale dell'estrazione viene aggiunto come riga in più nel CSV (il foglio elenca solo i componenti sotto l'assieme, non l'assieme stesso). Il bottone Verifica presenza (compare solo dopo un import riuscito) cerca i componenti nel database — è questo passo, non il solo import, a sbloccare la fase successiva.
  3. Crea cartella raw — cerca nell'indice il percorso CAD di ogni componente importato (assieme generale incluso) e copia i file trovati in una cartella raw/ dentro la cartella di lavoro.
  4. Trova componenti referenziati — legge i metadati dei file .asm in raw/ per trovare ricorsivamente i sotto-assiemi/parti che li compongono, copiandoli a loro volta in raw/ (passo opzionale se la distinta contiene solo parti singole).
  5. Verifica completezza — mostra i file .asm della distinta già in raw/, trascinabili su Creo Distributed Batch per l'esportazione STEP (passo manuale, fuori da quest'app): scrive in step/, dentro la cartella di lavoro.

Primo uso: docs/tutorial-primo-giro.md. Guida utente completa in docs/guida-utente.md (stessa sintesi anche in-app da Aiuto → Guida, F1).

Requisiti

  • Windows
  • .NET 10 SDK (per build/run da sorgente)
  • Accesso alla share di rete con i file CAD (X:\ di default) per l'indicizzazione

Build, test e rilascio

Build, avvio e test: docs/sviluppo.md. Pubblicazione dell'eseguibile e generazione del setup di installazione: docs/rilascio.md.

Il setup installa solo per l'utente corrente, in %LOCALAPPDATA%\Programs\PrepStep, senza diritti di amministratore; si disinstalla da "Impostazioni → App installate".

Struttura del progetto

Il codice dell'app è tutto in PrepStep/ (GUI e indicizzazione integrate); accanto ci sono il progetto di test PrepStep.Tests/, gli script standalone scripts/ e lo script del setup installer/. Mappa file-per-file completa in docs/architettura.md; indice di tutti i doc in docs/README.md.

  • Program.cs — entry point.
  • Form1.cs — finestra principale, wizard a 5 fasi e menu; UI costruita interamente in codice (Form1.Designer.cs è solo lo scheletro del template).
  • Indexer.cs — scansione del disco e scrittura/aggiornamento del DB SQLite.
  • DistintaBaseImporter.cs — parsing del file Distinta Base (SpreadsheetML XML o Excel binario/OpenXML tramite ExcelDataReader) e generazione CSV.
  • AsmRecordReader.cs — lettura esatta dei record dei .asm (fase 4).
  • AssemblyComponentScanner.cs — euristica testuale di fallback per i .asm fuori formato.
  • ProgressForm.cs, ProgressoComponentiForm.cs — avanzamento di scansione e fase 4.
  • PrtMancantiForm.cs — esito di "Trova componenti referenziati".
  • GuidaForm.cs — guida in-app (Aiuto → Guida, F1).
  • UiStile.cs — stile condiviso di bottoni, card e barre.

Il database generato (cad_index.db), i file Excel/CSV della distinta trascinati nella root e le cartelle raw//step/ sono rigenerabili e non sono tracciati in git (vedi .gitignore).

Per i test vedi docs/sviluppo.md.

Licenza

Software proprietario, © 2026 Davide Grilli, tutti i diritti riservati: vedi LICENSE.

S
Description
Tool per preparazione cartella compatibile con Creo Distribuited Batch per automazioni
Readme
1.3 MiB
0 Stars 1 Watchers 0 Forks
2026-09-23 08:53:36 +02:00
Languages
C# 98.5%
Inno Setup 1.5%