ExtractDataSet

<< Fare clic per visualizzazione il sommario >>

Percorso:  Il linguaggio OEL > Funzioni >

ExtractDataSet

Crea e restituisce un Dataset estraendo uno o più elementi dal Dataset di partenza, eventualmente rinominandoli.

 

Funzione

IDataSet ExtractDataSet(IDataSet dataSet, IDataSet oldNewKeys)

 

Input

Nome

Descrizione

Tipo

Opzionale

dataSet

Dataset di partenza.

IDataSet

 

oldNewKeys

Vecchi e nuovi nomi dei campi da aggiungere al nuovo Dataset (chiave = vecchio nome, valore = nuovo nome). Se il valore è nullo o vuoto la funzione restituisce un Dataset con i campi presenti nel parametro dataSet.

IDataSet

 

Output

Nome

Descrizione

Tipo

 

returnValue

Dato strutturato estratto da dataSet.

IDataSet

 

 

 

Commenti

La funzione è utile, data una risorsa come valore del parametro dataSet , ad ottenere il Dataset che contiene i sui campi personalizzati (Fields).

Il Dataset oldNewKeys riporta, per ogni elemento, nella chiave il nome originale del campo in dataSet e nel valore il nuovo nome da assegnare al campo nel Dataset risultato.

La funzione si comporta come segue:

Restituisce

Condizione

errore

se più elementi del parametro oldNewKeys hanno lo stesso valore.

errore

se dataSet non contiene una chiave specificata in oldNewKeys.

 

Esempio1

A partire da una struttura dati disponibile nella soluzione, è necessario creare una nuova struttura dati con alcuni dei campi della struttura di partenza rinominati al fine ottenere una struttura idonea ad essere specificata come input per il metodo Write del Jamioplug SpreadsheetAutomation. Il nuovo nome dei campi deve essere pari al nome di alcune celle di excel.

ExtractDataSet(#activityInput.Fields['ElencoDettagli'],DataSet('importo','A3','data fattura','B7','budget','G16'))

 

Esempio2

Se il parametro dataSet è il dato strutturato così composto:

 

DataSet('A', 'abc', 'B', Reference('Google', 'www.google.com'), 'C', 123)

 

si vuole ottenere un nuovo dato strutturato in con i campi A e B, rinominati in new_A e new_B. La funzione

 

ExtractDataSet(DataSet('A', 'abc', 'B', Reference('Google', 'www.google.com'), 'C', 123), DataSet('A', 'new_A', 'B', 'new_B'))

 

restituisce:

<DataSetValue xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.openworkbpm.com/schema">

 <Fields>

         <Item>

                 <Key>new_A</Key>

                 <Val xmlns:d4p1="http://www.w3.org/2001/XMLSchema" i:type="d4p1:string">abc</Val>

         </Item>

         <Item>

                 <Key>new_B</Key>

                 <Val i:type="NamedReference">

                         <Type>Undefined</Type>

                         <Url>www.google.com</Url>

                         <Name>Google</Name>

                 </Val>

         </Item>

 </Fields>

 <ModelReference i:nil="true" />

</DataSetValue>

 

la funzione

ExtractDataSet(DataSet('A', 'abc', 'B', Reference('Google', 'www.google.com'), 'C', 123), null)

 

restituisce:

<DataSetValue xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.openworkbpm.com/schema">

 <Fields>

         <Item>

                 <Key>A</Key>

                 <Val xmlns:d4p1="http://www.w3.org/2001/XMLSchema" i:type="d4p1:string">abc</Val>

         </Item>

         <Item>

                 <Key>B</Key>

                 <Val i:type="NamedReference">

                         <Type>Undefined</Type>

                         <Url>www.google.com</Url>

                         <Name>Google</Name>

                 </Val>

         </Item>

         <Item>

                 <Key>C</Key>

                 <Val xmlns:d4p1="http://www.w3.org/2001/XMLSchema" i:type="d4p1:int">123</Val>

         </Item>

 </Fields>

 <ModelReference i:nil="true" />

</DataSetValue>

 

Esempio3

Se il parametro dataSet è una risorsa con i campi personalizzati CampoA, CampoB, CampoC la funzione restituisce:

<DataSetValue xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.openworkbpm.com/schema">

 <Fields>

         <Item>

                 <Key>CampoA</Key>

                 <Val xmlns:d4p1="http://www.w3.org/2001/XMLSchema" i:type="d4p1:string">testo campo A</Val>

         </Item>

         <Item>

                 <Key>CampoB</Key>

                 <Val xmlns:d4p1="http://www.w3.org/2001/XMLSchema" i:type="d4p1:long">50</Val>

         </Item>

         <Item>

                 <Key>CampoC</Key>

                 <Val i:type="NamedReference">

                         <Type>Undefined</Type>

                         <Url>www.google.com</Url>

                         <Name>www.google.com</Name>

                 </Val>

         </Item>

 </Fields>

 <ModelReference i:nil="true" />

</DataSetValue>