I vincoli e i test di validazione vengono specificati in Majic, utilizzando il metalinguaggio di definizione degli oggetti.
Nota: per ulteriori informazioni, consultare la Guida di riferimento tecnico.
I vincoli definiti in Majic sono molto simili alla clausola SQL WHERE ma con le eccezioni seguenti:
@root.nome_att
Ad esempio, se si specifica @root.location si fa riferimento all'ID dell'ubicazione del contatto corrente.
Le unioni vengono specificate nel formato seguente, in cui foreign-key è il nome Majic dell'attributo nella tabella per cui si sta creando il vincolo della partizione dati e attribute-in-referenced-table è il nome Majic dell'attributo nella tabella unita:
chiave-esterna.attributo-in-tabella-riferimento
Per fare ad esempio riferimento al fornitore addetto alla gestione dell'asset associato ad un report incidente, specificare:
resource.vendor_repair
Questo tipo di specifica è ricorsivo. È ad esempio possibile fare riferimento al nome del fornitore specificando:
resource.vendor_repair.name
La seguente tabella contiene esempi di vincoli validi da utilizzare per la tabella Change_Request utilizzata per memorizzare le informazioni sugli ordini di cambiamento:
|
Tipo vincolo |
Codice e descrizione |
|
Visualizza |
assignee.organization = @root.organization Indica che l'utente può solo visualizzare gli ordini di cambiamento in cui l'organizzazione dell'assegnatario corrisponde all'organizzazione dell'utente. |
|
Aggiornamento preliminare |
requestor = @root.id Indica che l'utente può solo aggiornare gli ordini di cambiamento in cui egli stesso è il chiamante o il richiedente. |
Non è tuttavia possibile scrivere vincoli che utilizzano unioni in entrambi i lati dell'espressione, come illustrato nell'esempio seguente:
assignee.org = requestor.org
| Copyright © 2012 CA. Tutti i diritti riservati. | Contatta CA Technologies |