MergeById

<< Fare clic per visualizzazione il sommario >>

Percorso:  API di piattaforma > JamioPlug > JamioPlug Elastic Storage >

MergeById

Aggiorna un Dataset di un indice del plug Elastic Storage individuato tramite il suo identificativo o i campi utilizzati per calcolarlo.

Aggiunge nuovi campi, se non presenti, e aggiorna i campi esistenti.

 

Metodo

PlugElasticStorage/MergeById

 

Input

Nome

Descrizione

Tipo

Opzionale

token

Token di sessione (per la sessione corrente nel dominio corrente potrebbe essere null o vuoto).

String

Y

configurationReference

Collegamento alla risorsa di tipo configurazione del Plug Elastic Storage da utilizzare.

E' possibile specificare un collegamento in cui è valorizzata solo la proprietà Name con il Nickname di una configurazione esistente.

Reference

 

inputDataset

Dato strutturato o collegamento esteso contenente i valori da aggiornare o aggiungere nel Dataset di un indice del Plug Elastic Storage. I campi presenti in questo dato strutturato vengono aggiornati o inseriti sempre al primo livello.

Una descrizione generale della gestione dei diversi tipi di dati in un indice del plug Elastic Storage è consultabile qui

Oltre ai valori da aggiornare/inserire nel Dataset, in inputDataset deve essere specificato anche il valore del campo identificativo utile a ricercare il Dataset da aggiornare. Esso può essere espresso tramite un campo denominato "_id" o "Id" o in alternativa specificando i valori dei campi di idFields utili a calcolare l'identificativo dei Dataset dell'indice.

Dataset or Extended reference

 

idFields

Lista di stringhe contenente i nomi dei campi utili a calcolare l'identificativo del Dataset.

I nomi devono riferirsi a campi di primo livello.

Il parametro è obbligatorio, ma viene ignorato se tra i campi del dato strutturato o collegamento esteso esiste un campo denominato "_id" o "Id", secondo le logiche qui riportate.

Se inputDataset è di tipo collegamento esteso ed idFields è valorizzato con {id} l'identificativo del Dataset dell'indice del Plug Elastic Storage è valorizzato con l'id della risorsa a cui fa riferimento il collegamento esteso.

List of string

 

referenceField

Se inputDataset è di tipo lista di collegamento esteso, specifica in quale campo dell'indice del plug Elastic Storage deve essere riportato il collegamento alla risorsa a cui fa riferimento il collegamento esteso. Il campo deve essere di primo livello, non annidato.

Se inputDataset è una lista di dati strutturati, il parametro viene ignorato.

String

Y

 

Commenti

Il metodo si comporta come segue:

 

Restituisce

Condizione

Errore

Se inputDataSet contiene un campo che si chiama "_id" e un campo che si chiama "Id"

Errore

Se inputDataSet contiene un campo che si chiama "_id" o "Id", ma di tipo diverso da testo breve o numerico intero.

Errore

Se inputDataSet non contiene un campo che si chiama "_id" o "Id" e idFields non è valorizzato.

Errore

Se i campi di idFields non esistono in inputDataSet.

Errore

Se i campi di idFields sono diversi da testo breve e numerico intero o si riferiscono a campi non di primo livello.

Errore

Se i campi di inputDataSet non sono del tipo ammesso (testo breve, testo lungo, numerico intero, numerico a virgola mobile, numerico decimale, data e data/ora, booleano, collegamento).

Errore

Se il Dataset da aggiornare non è presente nell'indice.

Errore

Se il campo indice generato con la concatenazione dei campi della lista di idFields supera il limite di 150 caratteri.

Errore

Se il nome del campo referenceField è uguale al nome di un campo del dato strutturato o collegamento esteso riportato in InputDataset.

 

I campi esistenti e non passati con inputDataSet non vengono alterati.

 

Autorizzazioni

Per eseguire il metodo è necessario possedere il permesso di Utilizzo sull'indice del Plug Elastic Storage.