Analizza file CSV e XLSX trasformandoli in dati strutturati, oppure genera file CSV/XLSX a partire da dati. Indipendente dalla sorgente — funziona con il contenuto di file proveniente da qualsiasi blocco a monte (Google Drive, Dropbox, HTTP, ecc.).
spreadsheet_fileIl nodo CSV / Excel opera in due modalità. In modalità parse legge il contenuto grezzo del file — passato da qualsiasi nodo a monte in grado di recuperare un file — e lo converte in un array strutturato di righe su cui i nodi successivi possono iterare o effettuare ispezioni. In modalità generate accetta un array bidimensionale di valori e produce un file scaricabile in formato CSV o XLSX.
Il rilevamento del formato è automatico per impostazione predefinita: il nodo ispeziona i magic byte
del file per distinguere CSV da XLSX senza affidarsi al nome o all'estensione del file. Quando si
legge una cartella di lavoro XLSX è possibile selezionare un foglio specifico per nome; se non viene
specificato alcun foglio viene utilizzato il primo. Il rilevamento delle intestazioni è configurabile
— quando abilitato, la prima riga viene trattata come nomi di colonna e ogni riga successiva viene
restituita come oggetto con chiavi; quando disabilitato, tutte le righe (inclusa la prima) vengono
restituite come array semplici e le colonne sono etichettate A, B,
C, ecc.
L'output CSV generato è testo UTF-8 semplice e può essere passato direttamente a un nodo di archiviazione file come Google Drive o Amazon S3. L'output XLSX generato è binario codificato in base64 e deve essere decodificato dal nodo di archiviazione ricevente prima della scrittura.
| Campo | Stato | Descrizione |
|---|---|---|
| Action | Obbligatorio |
parse — legge il contenuto del file e restituisce le righe.generate — costruisce un file da un array bidimensionale di valori.
|
| Content | Obbligatorio per parse | Contenuto grezzo del file proveniente da un nodo a monte. Usa {{ step_key.output.content }} per riferire un file scaricato da un nodo Google Drive, Dropbox, HTTP Request o Amazon S3. |
| Format | Opzionale |
auto — rileva il formato dai magic byte (predefinito).csv — tratta il contenuto come testo delimitato da virgole.xlsx — tratta il contenuto come una cartella di lavoro Excel.
|
| Sheet | Opzionale | Solo XLSX. Nome della scheda del foglio da leggere. Predefinito: il primo foglio se lasciato vuoto. Ignorato quando il formato è csv. |
| Has Headers | Opzionale |
Quando abilitato (predefinito: true), la prima riga viene interpretata come
intestazioni di colonna e ogni riga di dati viene restituita come oggetto con chiavi. Quando
disabilitato, tutte le righe vengono restituite come array semplici e le colonne sono
identificate come A, B, C, ecc.
|
| Rows | Obbligatorio per generate | Un array JSON bidimensionale di valori da scrivere nel file. Il primo array interno dovrebbe essere la riga di intestazione quando applicabile. Esempio: [["Name","Age"],["Alice","30"],["Bob","25"]]. Supporta espressioni {{ variable }}. |
I campi di output dipendono dall'azione selezionata.
| Campo | Tipo | Descrizione |
|---|---|---|
ok | boolean | true quando il nodo è completato con successo. |
rows | array | Solo modalità parse. Array di oggetti riga (quando Has Headers è abilitato) o array (quando disabilitato). Ogni elemento rappresenta una riga di dati. |
row_count | number | Solo modalità parse. Numero di righe di dati restituite, esclusa la riga di intestazione. |
columns | array | Solo modalità parse. Array di nomi di colonna ricavati dalla riga di intestazione, oppure ["A","B","C",…] quando Has Headers è disabilitato. |
content | string | Solo modalità generate. Il contenuto del file prodotto: testo UTF-8 semplice per CSV, binario codificato in base64 per XLSX. |
format | string | Il formato effettivamente utilizzato: csv o xlsx. Utile quando Format è impostato su auto. |
{{ google_drive_step.output.content }}.{{ spreadsheet_step.output.rows }}, elaborando ogni record individualmente nel corpo del loop.{{ spreadsheet_step.output.content }}, scrivendolo nella cartella di destinazione.