Informazioni sugli attributi calcolati

Gli attributi calcolati sono di sola lettura. Gli amministratori possono aggiungere attributi alle sezioni degli attributi nelle finestre di dialogo Azioni, in modo che gli utenti del flusso di lavoro li possano visualizzare nelle finestre di dialogo delle azioni e nelle transazioni. Gli amministratori possono limitare l'accesso a determinati ruoli impostandolo su Non visualizzare. Ad esempio, per l'attributo calcolato XYZ un amministratore potrebbe aggiungere l'accesso Visualizzatore: Non visualizzare, in modo che l'attributo XYZ non sia mostrato ai visualizzatori.

Qualsiasi ruolo utente può aggiungere attributi calcolati come colonne nelle viste e nei portlet. Possono anche essere aggiunti come attributi filtrabili nel pannello di filtri.

Note:

Non è possibile creare attributi calcolati che determinano una dipendenza ciclica. Ad esempio, gli attributi calcolati seguenti, dove A e B dipendono l'uno dall'altro, non sono consentiti: A= {B}*(-1) e B= {A} + 100. Creano infatti una dipendenza ciclica, che non è consentita e causa errori.

Informazioni sui tipi di calcolo

  • Assegna valore a elenco: assegna un valore a un attributo di tipo Elenco.

  • Assegna elenco a valore: assegna un valore elenco al valore di un altro attributo. Disponibile solo per attributi di tipo Elenco

  • Condizionale: un calcolo condizionale (If - Then - Else).

  • Con script: un calcolo con script in formato libero. Il valore Con script è disponibile per attributi di tipo Testo, Numero o Numero intero.

La tabella seguente elenca i tipi di calcolo che ogni tipo di attributo può utilizzare se si sceglie l'opzione Calcolo.

Table 10-3 Tipi di calcolo utilizzabili da qualsiasi tipo di attributo quando viene selezionata l'opzione Calcolo

Tipo di attributo Assegna valore a elenco Condizione Con script Assegna elenco a valore
Data     X  
Numero intero X X X  
Elenco        
Numero X X X  
Testo X X X  
Sì/No   X    

Esempi di funzioni con script

Altri esempi di funzioni con script.

  • Differenza di data: restituisce la differenza in giorni, ore, minuti o secondi tra due date. Per Data 1 e Data 2 si possono utilizzare i valori 'TODAY' e 'NOW, a indicare rispettivamente la data (senza il componente orario) e la data/ora correnti.

    DATE_DIFF(<Data1>, <Data2>, <Tipo>)

    Esempio: DATE_DIFF('TODAY', {Preparer End Date}, 'DAYS') or DATE_DIFF({Preparer End Date}, 'NOW', 'HOURS')

  • Estrai testo: restituisce la sottostringa con il valore delle posizioni specificate.

    SUBSTRING(<Valore>, <Posizione>, <Lunghezza>)

    Esempio: SUBSTRING( {Name} , 5, 10)

  • If Then Else: consente all'utente di inserire un calcolo condizionale nel calcolo con script. I calcoli IF_THEN_ELSE possono essere anche nidificati in modo da supportare i calcoli di tipo "ELSE IF".

    IF_THEN_ELSE(<Condizione>, <Valore1>, <Valore2>)

    Esempio:

    IF_THEN_ELSE( {Risk Rating} = 'Low', 'Good',
    IF_THEN_ELSE( {Risk Rating} = 'Medium', 'Better',
    IF_THEN_ELSE({Risk Rating} = 'High', 'Best','Bad')))
    
  • Length accetta un valore di testo come parametro e restituisce un numero intero che indica il numero di caratteri nel testo.

    LENGTH('Value') restituisce 5, mentre LENGTH({Name}) restituisce il numero di caratteri nel nome dell'oggetto. Se il valore è vuoto/nullo, il calcolo restituirà 0.

    Utilizzare il calcolo con SUBSTRING per estrarre gli ultimi 4 caratteri di un valore di testo.

    Esempio: SUBSTRING( {MyString}, LENGTH ({MyString}) - 4

  • Minuscolo: restituisce il valore in minuscolo.

    LOWERCASE(<Valore>)

    Esempio: LOWERCASE( {Description} )

  • Massimo: restituisce il valore massimo da un elenco di attributi. Può esservi un numero qualsiasi di parametri.

    MAX(<Valore1>, <Valore2>,<ValoreN>)

    Esempio: MAX({Acccount1},{Account2},{Account3})

  • Minimo: restituisce il valore minimo da un elenco di attributi. Può esservi un numero qualsiasi di parametri.

    MIN(<Valore1>, <Valore2>,<ValoreN>)

    Esempio: MIN({Acccount1},{Account2},{Account3})

  • Arrotonda: restituisce il valore arrotondato al numero specificato di posizioni decimali.

    ROUND(<Valore>, <Posizioni decimali>)

    Esempio: ROUND( ({Scripted Translate} /7), 4)

  • Posizione testo: restituisce l'indice della sottostringa all'interno del valore, partendo da 1 come prima posizione.

    INSTRING(<Valore>, <Valore da cercare>)

    Esempio: INSTRING( UPPERCASE( {Name} ), 'TAX' )

  • Maiuscolo: restituisce il valore in maiuscolo.

    UPPERCASE(<Valore>)

    Esempio: UPPERCASE( {Name} )