• Foto profilo di Renato D'Aniello

      Renato D'Aniello ha pubblicato un aggiornamento

      4 giorni fa

      Ciao Giulio,

      sono Renato D’Aniello e desidero innanzitutto ringraziarti per questa splendida iniziativa.
      Mi scuso per il mio silenzio fino a oggi, ma ho seguito con grande interesse tutti i tuoi preziosi contributi.

      Ti condivido una breve presentazione del mio profilo:
      sono un grafico specializzato in prestampa, con una forte passione per FileMaker, che utilizzo principalmente in ambito personale. Negli anni, ho trovato nella programmazione un valido supporto anche a livello “terapeutico”: nei momenti di maggiore pressione lavorativa, ho spesso canalizzato lo stress sviluppando soluzioni FileMaker volte a informatizzare e ottimizzare i processi che mi creano difficoltà.
      Questa modalità mi ha portato a creare, nel tempo, strumenti su misura che semplificano e automatizzano molte delle richieste (talvolta paradossali) provenienti dal mio contesto lavorativo. In particolare, FileMaker è diventato il mio “collega digitale”, capace di ridurre gli errori e velocizzare le attività ripetitive.

      Le soluzioni che sviluppo si concentrano soprattutto sulla tracciabilità del processo produttivo, dalla ricezione dell’ordine fino alla stampa.
      Quella che ti presento oggi è la mia prima esperienza di condivisione tramite questo tipo di iniziativa, ed è legata alla CHALLENGE ChatGPT.

      Obiettivo della soluzione

      La soluzione si propone di gestire gli Ordini Clienti, ponendo l’attenzione sulla modalità di acquisizione degli ordini, che può avvenire:

      • in modo tradizionale, tramite inserimento manuale da parte dell’operatore;

      • in modo automatico, partendo da file PDF ricevuti via email o caricati direttamente.

      Nella mia realtà lavorativa, gli ordini (ODC) arrivano principalmente:

      • come testo nel corpo dell’email;

      • oppure come allegato PDF.

      Nel secondo caso, ho progettato un sistema basato su “modelli d’ordine personalizzati per cliente”, definiti tramite un Modulo Ordine Cliente.
      L’idea è di utilizzare un Web Viewer per la visualizzazione del PDF convertito in immagine, sul quale l’utente può definire visivamente le coordinate (X,Y) relative ai dati da estrarre (es. numero ordine, data, importo, prodotti, ecc.). Queste coordinate vengono registrate in un campo configurazione.

      Componenti principali del sistemaTabelle coinvolte

      • Clienti

      • Ordini

      • Righe Ordine

      • Moduli Ordine Cliente

      Relazioni:

      • 1:N → Cliente → Ordini

      • 1:N → Ordine → Righe Ordine

      • 1:1 → Cliente ↔ Modulo Ordine Cliente

      Layout previsti

      • UI_Clienti

      • UI_Ordini

      • UI_ModuliOrdine

      Script principali

      1. PDF_to_PNG_400DPI
        Converte il PDF dell’ordine (caricato nel campo pdf_input) in formato PNG a 400DPI, utilizzando uno script AppleScript che richiama ImageMagick. L’immagine risultante viene salvata nel campo png_output.

        Questa risoluzione è ottimale per la funzione RicavaTestoAttivoComeJSON, che richiede una qualità elevata per riconoscere accuratamente il testo.

      2. json_text (campo calcolato)
        Utilizza la funzione RicavaTestoAttivoComeJSON per generare un JSON strutturato, contenente per ogni stringa testuale le coordinate X,Y associate.

      3. RegistraXY
        Interagisce con il Web Viewer e permette di memorizzare, tramite clic, le coordinate dei punti chiave presenti sul layout del PDF convertito. Questi dati vengono salvati nel campo configurazione_json.

      4. ParseOrdineJson
        Confronta il JSON generato con il modello configurato per il cliente e, tramite parsing basato sulle coordinate, estrae automaticamente i dati strutturati e li inserisce nei campi dell’ordine.

      Stato attuale e prospettive

      Attualmente il progetto è ancora in fase di test, ma conto di ottenere presto una versione presentabile.
      Sarei molto felice di condividere i risultati con te e ricevere un tuo parere tecnico o suggerimenti per migliorarla ulteriormente.

      Un caro saluto,
      Renato D’Aniello