Esempio di importazione di descrizioni estese multiriga da file CSV

Creato il: 01.06.2026
Durante l'importazione di dati tramite file CSV, potrebbe presentarsi la necessità di importare campi di testo che si sviluppano su più righe, come ad esempio una "descrizione estesa" di un articolo.

Facciamo un esempio pratico. Supponiamo di voler creare un filtro di importazione per un file CSV contenente i seguenti dati per ciascun articolo:

- Codice articolo
- Descrizione principale (un normale campo testuale su una singola riga)
- Descrizione estesa (un campo che contiene dei ritorni a capo al suo interno)

Il problema del terminatore di riga
Nei file CSV standard, il ritorno "a capo" viene interpretato dal sistema come terminatore di riga, ovvero il segnale che i dati di quell'articolo sono finiti e che la riga successiva conterrà un nuovo record.
Se la nostra descrizione estesa contiene degli "a capo" all'interno del testo, il filtro di importazione rischierebbe di interpretarli erroneamente come la fine della riga, sfasando completamente l'acquisizione dei dati successivi.

La soluzione: delimitare il testo con i doppi apici (")
Per ovviare a questo problema, la regola standard dei file CSV prevede che i valori dei campi multiriga debbano essere racchiusi tra doppi apici (").

Racchiudendo il testo tra doppi apici, si indica a Ready Pro che tutto il contenuto (compresi gli "a capo") fa parte di un unico blocco di testo e appartiene allo stesso campo, fino a quando non viene incontrato il doppio apice di chiusura.

All'interno della configurazione del filtro di importazione di Ready Pro, vi è un'apposita opzione in cui si può indicare che i valori dei campi nel file di origine sono racchiusi tra doppi apici.

Nota tecnica: Ready Pro è piuttosto flessibile da questo punto di vista. Non è strettamente obbligatorio che tutti i campi del file CSV siano racchiusi tra doppi apici. Ready Pro consente di elaborare file "ibridi" dove alcuni campi (es. codice o la quantità) non sono delimitati, mentre altri (es. la descrizione estesa multiriga) sono regolarmente racchiusi tra i doppi apici.
Gestire i doppi apici all'interno del testo (Regola del "raddoppio")
Cosa succede se all'interno della nostra "descrizione estesa" è presente un doppio apice che fa parte del testo stesso (ad esempio per indicare i pollici di uno schermo: Monitor 24")?

Poiché il doppio apice viene usato come delimitatore del campo, per far capire al sistema che quel particolare carattere fa parte della descrizione e non segna la fine del campo, è necessario applicare una regola specifica: i doppi apici interni al testo devono essere "raddoppiati" ("").
Esempio pratico di file CSV
Ecco un esempio di file CSV compilato in modo corretto con dei valori multiriga


COD001;Mouse ottico wireless;"Mouse ottico senza fili
Risoluzione 1000 dpi
Batterie incluse"
COD002;Monitor 24" LED;"Monitor LED da 24"" pollici
Risoluzione Full HD
Connessione HDMI e VGA"
Analizzando l'esempio possiamo notare che:

Per l'articolo COD001, la descrizione estesa si sviluppa su tre righe e per questo motivo l'intero blocco di testo è racchiuso tra doppi apici iniziali e finali.

Per l'articolo COD002, viene mostrata la tolleranza di Ready Pro: nella descrizione principale (Monitor 24" LED) l'apice singolo non crea problemi perché il campo non è delimitato da nulla. Nella descrizione estesa, che invece è racchiusa dai doppi apici, l'indicazione dei pollici è stata inserita raddoppiando l'apice (24"" pollici), in modo che venga importato correttamente come testo senza interrompere la lettura del campo.

Un'ulteriore utilità dei doppi apici: i delimitatori di colonna all'interno del testo
Oltre alla gestione dei ritorni a capo, l'utilizzo dei doppi apici si rivela fondamentale per risolvere un'altra problematica comune nei file CSV: la presenza del carattere separatore di colonna all'interno del testo stesso.

Nei file CSV i vari campi sono divisi tra loro da un delimitatore specifico, che nella maggior parte dei casi è il punto e virgola (;) o la virgola (,). Se questo stesso carattere viene utilizzato grammaticalmente all'interno di una descrizione (ad esempio, un punto e virgola usato per separare gli elementi in una frase), il filtro di importazione lo interpreterà erroneamente come la fine della colonna in corso e l'inizio di quella successiva. Questo provocherebbe uno slittamento di tutti i dati successivi, rovinando l'importazione dell'intero record.

Anche in questo caso la soluzione è la stessa: racchiudendo il valore testuale tra i doppi apici ("), si indica a Ready Pro che qualsiasi carattere separatore presente all'interno di quel blocco fa parte del testo vero e proprio e deve essere ignorato come comando di divisione delle colonne.
Esempio pratico con il delimitatore nel testo
Immaginiamo di voler importare un file CSV composto da tre colonne (Codice, Descrizione e Prezzo) dove il carattere separatore di colonna è il punto e virgola (;).

Supponiamo di avere un articolo la cui descrizione è:

Set di evidenziatori; colori assortiti.


Un file strutturato in questo modo:

COD003;Set di evidenziatori; colori assortiti;12,50


genererebbe un errore. Il sistema conterebbe infatti 4 colonne anziché 3, tentando di inserire la dicitura " colori assortiti" all'interno del campo destinato al prezzo.

Per risolvere il problema, il file CSV dovrà presentare il campo descrittivo racchiuso tra i doppi apici:

COD003;"Set di evidenziatori; colori assortiti";12,50


In questo modo, il punto e virgola contenuto all'interno dei doppi apici verrà letto come un normale carattere di punteggiatura della descrizione, e il prezzo (12,50) verrà allineato correttamente nella sua colonna.

Login