<< Fare clic per visualizzazione il sommario >> Percorso: Il linguaggio OEL > Funzioni > GetValueByKey |
Restituisce il valore corrispondente ad una chiave di una lista chiave-valore.
Funzione
GetValueByKey( ArrayValue keyValueList, Object key)
Input |
|||
Nome |
Descrizione |
Tipo |
Opzionale |
keyValueList |
Lista chiave-valore. |
ArrayValue |
|
key |
Oggetto che indica la chiave di cui si vuole conoscere il valore. |
Object |
|
Output |
|||
Nome |
Descrizione |
Tipo |
Opzionale |
returnValue |
Valore corrispondente alla chiave indicata nel parametro key. |
Object |
|
Commenti
Se la chiave ricercata non è presente nella lista chiave-valore di input, il metodo restituisce un valore nullo.
Esempio
Si desidera rendere graficamente lo stato di avanzamento di un flusso, ad esempio lo stato di avanzamento dell'approvazione di un documento che può assumere gli stati Bozza, In approvazione dal responsabile, Approvata, Rifiutata.
A tal fine, si definisce un campo numerico denominato StatoNumerico, tramite una regola di validazione che utilizza la funzione KeyValueList, si definisce una lista chiave-valore utilizzando i predicati 'appartiene alla lista' o 'appartiene alla lista o è nullo' e scrivere l'espressione in modalità destrutturata da inserire nell'oggetto:
KeyValueList(0,'Bozza',10,'In approvazione responsabile',20,'Approvata',30,'Rifiutata'). |
Si definisce poi un campo di tipo collegamento denominato IMG_Stato, in cui si desidera visualizzare un'immagine corrispondente allo stato di avanzamento del flusso, ad esempio, costruendo il name del collegamento con il valore della chiave, che rappresenta lo stato, e l'url della cartella in cui è salvata l'immagine, è necessario scrivere una regola di assegnazione in cui l'oggetto viene definito in modalità destrutturata, utilizzando la funzione OEL Reference come di seguito:
Reference(GetValueByKey(#data.Fields['StatoNumerico']),'http://download.openworkbpm.com/CARTELLA_IMAGES_FTP/'+GetValueByKey(#data.Fields['StatoNumerico']+'png') |