Calcolo e memorizzazione del nome di un nodo

È possibile definire un'espressione per calcolare il nome di un nodo durante una richiesta e quindi memorizzare tale valore quando la richiesta viene completata e chiusa.

Il nome calcolato può basarsi sulle proprietà del nodo o sulla posizione del nodo in una gerarchia.

Casi d'uso di esempio

  • È possibile calcolare un nome di nodo in base a un numero di sequenza. Ad esempio, è possibile concatenare un prefisso come "CC_" con una sequenza in modo che i nodi che vengono aggiunti vengano automaticamente denominati CC_0034, CC_0035 e così via.
  • È possibile calcolare un nome di nodo in base alle proprietà. Ad esempio, è possibile concatenare insieme proprietà di tipi di dati nodo customizzate. In questo modo, quando si definiscono le proprietà, il nome di nodo viene calcolato automaticamente. Pertanto, nel caso delle proprietà customizzate 1 = 120, 2 = 200 e 3 = 340, viene calcolato automaticamente un nome di nodo 120-200-340.

    Tip:

    È inoltre possibile impostare espressioni nella proprietà del tipo di dati nodo in modo che i valori vengano ricavati. Se pertanto si aggiunge un nome di nodo 120-200-340, verrà ricavato automaticamente il valore di ciascuna proprietà rispettivamente come 120, 200 e 340. Fare riferimento a Proprietà derivate e memorizzate.

  • È possibile calcolare un nome di nodo in base a informazioni strutturali gerarchiche quali elementi padre, predecessore e pari livello. È ad esempio possibile concatenare un nome padre con la descrizione del nodo.
  • È inoltre possibile utilizzare i nomi di nodi calcolati per customizzare il nome predefinito quando si aggiunge un nuovo nodo. Ad esempio, quando un utente aggiunge un nodo nel tipo di nodo Entità, invece di utilizzare come nome predefinito "Nuovo nome entità", è possibile restituire un nome calcolato "CC_####" e fare in modo che gli utenti completino manualmente i valori appropriati per ####.

Considerazioni

  • È possibile calcolare un nome di nodo nel corso delle operazioni elencate di seguito.
    • Aggiunta di nodi in modo interattivo
    • Operazione Copia o Su modello di per un nodo
    • Caricamento di file di richiesta
    • Sincronizzazione dei nodi tramite una sottoscrizione
  • Durante un'azione Aggiungi di una richiesta, il nome di un nodo viene ricalcolato ogni volta che il nodo viene modificato.

    Note:

    Quando il nome di un nodo viene calcolato in base a un elenco di pari livello (ad esempio ricercando l'ultimo elemento di pari livello e aggiungendo 1 a tale elemento), tenere presente che il nome del nodo può cambiare se vengono aggiunti altri elementi di pari livello dopo di esso e che quindi il nodo originale verrebbe aggiornato.

    Inoltre, a seconda del contesto della richiesta, l'utilizzo dell'oggetto node.previousSibling in un'espressione per calcolare i nomi dei nodi può restituire risultati imprevisti. Per risultati ottimali, utilizzare invece node.siblings.max.

  • Quando si visualizza un nome di nodo calcolato in una richiesta, si verificano gli scenari descritti di seguito.
    • Se l'espressione per il nome di nodo restituisce un valore, tale valore viene visualizzato con un'origine con l'indicazione Calcolato.
    • Se l'espressione restituisce un valore null, la parola chiave per il nome calcolato <cn ####> (dove #### è un valore hash dell'indicatore orario creato dell'elemento richiesta) viene visualizzata con un'origine con l'indicazione Calcolato. Fare riferimento alla sezione Introduzione alle parole chiave per nomi calcolati.
  • È possibile sovrascrivere il nome del nodo immettendolo manualmente. Per l'origine viene visualizzata l'indicazione Definizione.
  • Per i nodi che vengono aggiunti in una richiesta, utilizzare l'azione Cancella per cancellare un nome immesso manualmente e ritornare al nome calcolato, quindi utilizzare l'azione Reimposta per impostare la posizione corrente come posizione principale (fare riferimento alla sezione Introduzione alle posizioni principali) e per ricalcolare il nome di nodo in base all'espressione. Fare riferimento alla sezione Cancellazione e reimpostazione di un valore calcolato.
  • Dopo che una richiesta è stata completata e chiusa, il nome di nodo calcolato viene memorizzato e per l'origine viene visualizzata l'indicazione Definizione. Diversamente dalle proprietà Derivato e memorizzato, il sistema non mantiene l'origine con l'indicazione Calcolato e memorizzato.
  • Le convalide eseguite nel contesto di una richiesta contenente nomi di nodi calcolati utilizzeranno il nome attualmente calcolato. Questo significa ad esempio che se l'espressione restituisce attualmente un valore null, il nome di nodo per la convalida sarà "<cn ####>".
  • Quando si cercano i nodi in una richiesta, per i nuovi nodi con nomi calcolati viene utilizzato il nome corrente presente nell'azione Aggiungi. Questo significa ad esempio che se l'espressione restituisce attualmente un valore null, è possibile effettuare la ricerca in base a "<cn ####>" nel nome di nodo.
  • Quando si caricano file di richiesta, utilizzare la parola chiave <cn> o <cn ####> nella colonna del nome di un file di caricamento richieste (dove è configurata un'espressione per la proprietà Core.Name) o lasciare la colonna del nome vuota per calcolare il valore del nome di nodo. Fare riferimento alla sezione Elaborazione del file di richiesta con nomi calcolati.

Note:

Definizione di una proprietà calcolata e memorizzata

  1. Ispezionare una definizione di proprietà Core.Name.
  2. Selezionare il tipo di applicazione o di nodo per cui si desidera calcolare il nome di nodo.
  3. In Tipo predefinito, selezionare Calcola e memorizza.
  4. In Valore predefinito, fare clic sul pulsante Espressione Definisci espressione.
  5. Definire un'espressione per calcolare il nome di nodo e fare clic su Applica. Fare riferimento alla sezione Uso delle espressioni per definire una business logic customizzata.

Introduzione alle posizioni principali

Se si aggiunge un nodo per poi inserirlo in molte altre posizioni, il sistema designa internamente come posizione principale la prima posizione presente in una gerarchia in cui viene aggiunto il nodo e quindi la utilizza per calcolare il nome di nodo. Tutte le posizioni successive in cui viene inserito il nodo utilizzeranno il nome calcolato a partire dalla prima posizione.

Note:

Se la prima posizione in cui viene aggiunto il nodo è inclusa in un elenco, la posizione principale viene impostata la prima volta in cui viene effettuato l'inserimento in una gerarchia.

Si supponga ad esempio di disporre di un'espressione che ha calcolato il nome di nodo concatenando il nome dell'elemento padre del nodo con una proprietà nel nodo (per questo esempio, tale proprietà ha un valore ABC). Quando si aggiunge il nodo al di sotto dell'elemento padre 111, il nome viene calcolato come 111-ABC. Se poi si inserisce il nodo al di sotto dell'elemento padre 222, il nome continua a essere 111-ABC, perché la posizione principale è 111.

Vengono illustrati di seguito i diversi modi in cui è possibile procedere per cambiare la posizione principale di un nodo.

  • Se si sposta un nodo dalla posizione principale nella richiesta, la nuova posizione diventa quella principale e il nome viene ricalcolato.

  • Se si rimuove il nodo dalla posizione principale durante la richiesta, la posizione successiva in cui viene inserito diventa la posizione principale.

  • Se un nodo è presente in più posizioni e si desidera cambiare manualmente la posizione principale, utilizzare l'azione Reimposta. Fare riferimento alla sezione Cancellazione e reimpostazione di un valore calcolato

Cancellazione e reimpostazione di un valore calcolato

Utilizzare l'azione Cancella per cancellare un nome definito manualmente e tornare al nome calcolato. Questa azione è disponibile solo per i nodi aggiunti nella richiesta con un tipo predefinito Calcola e memorizza con un nome immesso manualmente.

Utilizzare l'azione Reimposta per impostare la posizione principale per il nome calcolato sulla posizione corrente (fare riferimento alla sezione Introduzione alle posizioni principali) e per ricalcolare il nome di nodo in base alla posizione corrente. Questa azione è disponibile solo per i nodi aggiunti nella richiesta con un tipo predefinito Calcola e memorizza e il cui nome non è stato immesso manualmente.

È possibile utilizzare l'azione Reimposta anche per ricalcolare un nome di nodo se è stata eseguita all'esterno del nodo un'azione che deve avere effetto sul nome di nodo, ad esempio se è stata modificata una proprietà padre e si desidera ricalcolare il nome di nodo in base alla nuova proprietà.

Convalide e nomi di nodo calcolati

Quando una richiesta viene convalidata, per i nuovi nodi con nomi calcolati viene utilizzato il nome corrente presente nell'azione Aggiungi. Esiste però un'eccezione: se il nome corrente corrisponde a una delle parole chiave (<cn> o <cn ####>), le convalide della lunghezza minima e massima vengono saltate. Questo consente a un autore sottomissione di sottomettere una richiesta con una delle parole chiave nel nome in modo che un approvatore o un autore arricchimento possa aggiungere le informazioni richieste per calcolare il nome.

Le convalide della lunghezza minima e massima vengono eseguite quando viene effettuata l'approvazione o il commit delle richieste.

Nomi calcolati e sottoscrizioni

Quando si imposta una sottoscrizione utilizzando un nome calcolato, il nome viene calcolato nell'angolazione vista di origine e il nome risultante viene passato nelle richieste di sottoscrizione alle angolazioni vista target. Se si desidera che il nome di nodo venga calcolato nell'angolazione vista target, impostare una trasformazione delle proprietà nel convertitore del tipo di nodo per la sottoscrizione (fare riferimento alla sezione Utilizzo dei convertitori di tipi di nodo) in modo da trasformare il nome in un valore vuoto o in una delle parole chiave per nome calcolato (<cn> per le aggiunte o <cn ####>, dove #### è una stringa utilizzata come identificativo univoco, per le aggiunte con inserimenti). Fare riferimento alla sezione Introduzione alle parole chiave per nomi calcolati.

Note:

Se si desidera utilizzare un nome alternativo, se disponibile, trasformare il nome in un valore vuoto. Se invece nell'angolazione vista target si desidera utilizzare sempre il nome calcolato, trasformare il nome in una delle parole chiave.