I tipi di dati complessi in Appian

In questo articolo discutiamo le tipologie di dati complessi in Appian: un altro mattoncino basilare per sviluppare su piattaforma.

Appian permette una definizione di struttura dati rigida mediante i Custom Data Types mentre una definizione più flessibile mediante i dictionary o le map.

I Custom Data Types (CDT)

I CDT in Appian sono oggetti che permettono di definire strutture dati che rappresentano raggruppamenti logici di informazioni correlate.

Con i CDT in Appian possiamo:

  • Definizione di modelli dati complessi riutilizzabili in varie applicazioni e processi.
  • Facilitazione dell’integrazione con sistemi esterni attraverso il mapping automatico dei campi dati.
  • Supporto alla conservazione e recupero di dati strutturati.
  • Utilizzo nei moduli dinamici, per creare form che si adattano ai dati sottostanti.

I CDT sono una componente essenziale per costruire applicazioni robuste e scalabili in Appian, migliorando la gestione e l’integrazione dei dati per l’automazione dei processi di business.

Possiamo vedere i CDT come una forma “forte” di tipo per un oggetto, ma Appian prevede diverse forme di struttura che contengono informazioni, ovvero :

  • CDT
  • Dictionary
  • Map

Dictionary e Map

I dictionary e le map (come i CDT) sono oggetti che permettono di rappresentare un insieme di oggetti strutturati come chiave-valore che possono essere visti come una collezione di elementi dove ogni chiave è associata a un valore unico.

Ecco un esempio di codice per ottenere una mappa di oggetti:

load(
  local!mappa: a!map(
  chiave1: "Valore 1",
  chiave2: "Valore 2",
  chiave3: 123,
  chiave4: true
  /* a seguire è un dizionario*/
  {
     /*Accesso ai valori */
    local!mappa.chiave1,   /* restituisce il valore 1 */
    local!mappa.chiave3,   /* restituisce 123 */
   }
)

Il dizionario si ottiene direttamente da SAIL con la sintassi {…} (un esempio è /* a seguire è un dizionario*/) mentre per la map bisogna utilizzare la funzione a!map. Considera inoltre che i modelli di processo non supportano il tipo Dictionary.

Le differenze

La differenza principale tra un dictionary e le map è che all’interno di una map, ogni chiave è associata a un valore e il tipo di quel valore viene mantenuto. I valori memorizzati in una mappa non vengono incapsulati in varianti, mentre un dictionary incapsula ogni valore in un tipo AnyType (variant): di conseguenza con le map non bisogna preoccuparsi del type casting.

Il dizionario si ottiene direttamente da SAIL con la sintassi {…} mentre per la map bisogna utilizzare la funzione a!map. Considera inoltre che i modelli di processo non supportano il tipo Dictionary.

Riferimenti

Appian Community

Map Appian 25.03

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *