FlattenDataSet

<< Fare clic per visualizzazione il sommario >>

Percorso:  Il linguaggio OEL > Funzioni >

FlattenDataSet

Restituisce un Dataset contenente i campi del Dataset passato in input, riportati ad un unico livello.

 

Funzione

Dataset FlattenDataset(IDataSet inputDataSet, String separator, List of Strings fieldsToExclude)

 

La funzione può essere utilizzata nelle seguenti modalità:

1) FlattenDataset(IDataSet inputDataSet)

2) FlattenDataset(IDataSet inputDataSet, String separator)

3) FlattenDataset(IDataSet inputDataSet, String separator, ArrayValue fieldsToExclude)

 

Output

Nome

Descrizione

Tipo

returnValue

Dato strutturato contenente i campi di InputDataset, con struttura appiattita.

Il nome dei campi è ottenuto come concatenazione dei nomi dei campi dei dati strutturati annidati.

Dataset

 

Commenti

Se in inputDataSet è presente un collegamento esteso, il dato strutturato restituito sarà composto da tutti gli altri campi del collegamento esteso, tranne quello di tipo collegamento.

I campi lista non vengono elaborati e sono ignorati.

 

 

Modalità 1)

FlattenDataset(IDataset inputDataSet)

 

Input

Nome

Descrizione

Tipo

Opzionale

inputDataSet

Dato strutturato di cui si vuole appiattire la struttura.

IDataSet

 

Output

Nome

Descrizione

Tipo

 

returnValue

Dato strutturato contenente i campi di InputDataset, con struttura appiattita.

Il nome dei campi è ottenuto come concatenazione dei nomi dei campi dei dati strutturati annidati, separato dal carattere "_".

 

Dataset

 

 

 

Modalità 2)

FlattenDataset(IDataset inputDataSet, String separator)

 

Input

Nome

Descrizione

Tipo

Opzionale

inputDataSet

Dato strutturato di cui si vuole appiattire la struttura.

IDataSet

 

separator

Carattere di separazione utilizzato nella definizione dei nomi dei campi del returnValue.

Se null o stringa vuota, assume il valore di default "_".

String

 

Output

Nome

Descrizione

Tipo

 

returnValue

Dato strutturato contenente i campi di InputDataset, con struttura appiattita.

Il nome dei campi è ottenuto come concatenazione dei nomi dei campi dei dati strutturati annidati.

 

Dataset

 

 

Commenti

Nel caso in cui il dato strutturato restituito deve essere utilizzato per chiamate ad API esterne, si consiglia di tener conto di eventuali limitazioni del sistema di destinazione nella scelta del separatore da utilizzare nella composizione del nome dei campi del ReturnValue. Ad esempio, nel caso del Plug Elastic Storage, alcuni caratteri sono sconsigliati, come consultabile in Definizioni e logiche.

 

Modalità 3)

FlattenDataset(IDataset inputDataSet, String separator, List of Strings fieldsToExclude)

 

Input

Nome

Descrizione

Tipo

Opzionale

inputDataSet

Dato strutturato di cui si vuole appiattire la struttura.

IDataSet

 

separator

Carattere di separazione utilizzato nella definizione dei nomi dei campi del returnValue.

Se null o stringa vuota, assume il valore di default "_".

String

 

fieldsToExclude

Lista dei nomi dei campi che devono essere esclusi dall'operazione, a qualsiasi livello di annidamento.

ArrayValue

 

Output

Nome

Descrizione

Tipo

 

returnValue

Dato strutturato contenente i campi di InputDataset, con struttura appiattita.

Il nome dei campi è ottenuto come concatenazione dei nomi dei campi dei dati strutturati annidati.

 

Dataset

 

 

Esempio

Si consideri la struttura "Candidato" così composta:

Dataset Candidato, che contiene le chiavi {nome (testo), cognome (testo), indirizzo (Indirizzo), esperienzaPrincipale (Esperienza)};

Dataset Indirizzo che contiene le chiavi {via (testo), CAP (testo), Città (testo), Provincia (testo)};

Dataset Esperienza che contiene le chiavi {inizio (Data), inCorso (booleano), fine (Data), contraente (Contraente)};

Dataset Contraente che contiene le chiavi {nome (Testo), tipologiaOrganizzazione (Testo), luogoLavoro (Indirizzo)},

 

il Dataset restituito avrà la seguente struttura:

nome

cognome

indirizzo_via

indirizzo_CAP

indirizzo_Città

indirizzo_Provincia

esperienzaPrincipale_inizio

esperienzaPrincipale_inCorso

esperienzaPrincipale_fine

esperienzaPrincipale_contraente_nome

esperienzaPrincipale_contraente_tipologiaOrganizzazione

esperienzaPrincipale_contraente_luogoLavoro_via

esperienzaPrincipale_contraente_luogoLavoro_CAP

esperienzaPrincipale_contraente_luogoLavoro_Città

esperienzaPrincipale_contraente_luogoLavoro_Provincia