Aggiungere regole a un modulo adattivo adaptive-forms-rule-editor

Adobe consiglia di utilizzare l'acquisizione dati moderna ed estensibile Componenti coreper la creazione di un nuovo Forms adattivoo l'aggiunta di Forms adattivo alle pagine AEM Sites. Questi componenti rappresentano un progresso significativo nella creazione di Forms adattivi, garantendo esperienze utente straordinarie. Questo articolo descrive un approccio precedente all’authoring di Forms adattivi utilizzando i componenti di base.

Versione
Collegamento articolo
AEM as a Cloud Service (Componenti di base)
Questo articolo
AEM as a Cloud Service (Componenti core)
Fai clic qui
AEM 6.5
Fai clic qui

Panoramica overview

La funzione dell’editor di regole consente agli utenti aziendali e agli sviluppatori di Forms di scrivere regole sugli oggetti Adaptive Form. Queste regole definiscono le azioni da attivare sugli oggetti modulo in base a condizioni preimpostate, input dell'utente e azioni dell'utente sul modulo. Consente di semplificare ulteriormente l’esperienza di compilazione dei moduli, garantendo precisione e velocità.

L’editor di regole fornisce un’interfaccia utente intuitiva e semplificata per scrivere regole. L’editor di regole offre un editor visivo per tutti gli utenti. Alcune delle azioni chiave che è possibile eseguire sugli oggetti modulo adattivo utilizzando le regole sono:

  • Mostra o nascondere un oggetto
  • Attivare o disattivare un oggetto
  • Impostare un valore per un oggetto
  • Convalidare il valore di un oggetto
  • Eseguire funzioni per calcolare il valore di un oggetto
  • Richiama un servizio del modello dati modulo ed esegui un’operazione
  • Impostare la proprietà di un oggetto

Gli utenti aggiunti al gruppo forms-power-users possono creare script e modificare quelli esistenti. Gli utenti del gruppo forms-users possono utilizzare gli script ma non crearli o modificarli.

Differenza tra l’editor di regole nei componenti core e nei componenti di base

Nella tabella seguente viene illustrata la differenza tra le funzioni disponibili nei Componenti core e i Componenti di base dell’editor di regole:

Funzioni
Componenti di base dei moduli adattivi
Componenti core dei moduli adattivi
Impostare le opzioni dell’elenco a discesa
Le opzioni dell’elenco a discesa vengono impostate utilizzando la proprietà Imposta le opzioni di dell’editor di regole.
Le opzioni dell’elenco a discesa vengono impostate utilizzando le funzioni personalizzate.
Eseguire operazioni matematiche in un campo del pannello ripetibile
Le funzioni matematiche integrate possono essere applicate ai campi del pannello ripetibile per eseguire funzioni come la somma e la media utilizzando l’editor di regole. È necessario fornire due argomenti: il primo specifica il pannello ripetibile contenente il campo, mentre il secondo specifica il campo all’interno del pannello ripetibile corrispondente.
Le operazioni matematiche nel campo del pannello ripetibile possono essere eseguite utilizzando le funzioni personalizzate. È inoltre possibile applicare le funzioni matematiche direttamente ai campi del pannello ripetibile utilizzando l’editor di regole.
Convalida/Reimposta campo/pannello/regola modulo in “Then”
Le funzioni di convalida e ripristino supportano solo l’oggetto modulo nell’editor di regole.
Le funzioni di convalida e ripristino supportano il modulo, il pannello o l’oggetto campo nell’editor di regole.
Supporto ES10
ES10 non è ancora supportato. Supporta solo le funzioni JavaScript ES5.
Supporto di funzioni JavaScript moderne, come le funzioni let e arrow (supporto ES10) all’interno delle funzioni personalizzate.
Proprietà di output del servizio
La Proprietà di output del servizio è supportata nell’opzione Imposta valore di dell’editor di regole.
L’opzione Imposta valore di non supporta l’Output del servizio per richiamare le API nell’editor di regole.

Informazioni su una regola understanding-a-rule

Un regola è una combinazione di azioni e condizioni. Nell’editor delle regole, le azioni includono attività quali nascondere, mostrare, abilitare, disabilitare o calcolare il valore di un oggetto in un modulo. Le condizioni sono espressioni booleane che vengono valutate eseguendo controlli e operazioni sullo stato, sul valore o sulla proprietà di un oggetto modulo. Le azioni vengono eseguite in base al valore ( True o False) restituito valutando una condizione.

L’editor di regole fornisce un set di tipi di regole predefiniti, ad esempio Quando, Mostra, Nascondi, Abilita, Disabilita, Imposta valore di e Convalida, per facilitare la scrittura delle regole. Ogni tipo di regola ti consente di definire condizioni e azioni in una regola. Il documento spiega ulteriormente ogni tipo di regola nei dettagli.

Una regola segue in genere uno dei seguenti costrutti:

Condizione-Azione In questo costrutto, un regola definisce prima una condizione seguita da un'azione di attivazione. Il costrutto è paragonabile all'istruzione if-then nei linguaggi di programmazione.

In regola editor, il tipo When regola impone il costrutto condizione-azione.

Azione-Condizione In questo costrutto, un regola definisce prima un'azione da attivare seguita dalle condizioni per la valutazione. Un'altra variante di questo costrutto è action-condition-alternate action, che definisce anche un'azione alternativa da attivare se la condizione restituisce False.

I tipi regola Mostra, Nascondi, Abilita, Disabilita, Imposta Valore e Convalida in regola editor applicano il costrutto regola condizione azione. Per impostazione predefinita, l'azione alternativa per Mostra è Nascondi e per Abilita è Disabilita e viceversa. Non è possibile modificare l'azione alternativa predefinita.

NOTE
I tipi di regole disponibili, incluse le condizioni e le azioni definite nell'editor di regole, dipendono anche dal tipo di oggetto modulo su cui si sta creando una regola. Nell'editor delle regole vengono visualizzati solo i tipi di regole e le opzioni validi per la scrittura di istruzioni di condizione e azione per un particolare tipo di oggetto modulo. Ad esempio, per un oggetto pannello non vengono visualizzati i tipi di regole Convalida, Imposta valore di, Abilita e Disabilita.

Per ulteriori informazioni sui tipi di regole disponibili nell'editor di regole, vedere Tipi di regole disponibili nell'editor di regole.

Linee guida per la scelta di un costrutto regola guidelines-for-choosing-a-rule-construct

Sebbene sia possibile ottenere la maggior parte dei casi d’uso utilizzando qualsiasi costrutto di regola, di seguito sono riportate alcune linee guida per scegliere un costrutto rispetto a un altro. Per ulteriori informazioni sulle regole disponibili nell'editor di regole, vedere Tipi di regole disponibili nell'editor di regole.

  • Una regola tipica del pollice durante la creazione di una regola è pensarla nel contesto dell'oggetto su cui si sta scrivendo una regola. Si supponga di voler nascondere o visualizzare il campo B in base al valore specificato dall'utente nel campo A. In questo caso, si sta valutando una condizione nel campo A e, in base al valore restituito, si sta attivando un'azione nel campo B.

    Pertanto, se si sta scrivendo una regola nel campo B (l'oggetto su cui si sta valutando una condizione), utilizzare il costrutto condizione-azione o il tipo di regola When. Allo stesso modo, utilizza il costrutto action-condition o il tipo di regola Show o Hide sul campo A.

  • A volte, è necessario eseguire più azioni in base a una condizione. In questi casi, si consiglia di utilizzare il costrutto condizione-azione. In questo costrutto, puoi valutare una condizione una sola volta e specificare più istruzioni di azione.

    Ad esempio, per nascondere i campi B, C e D in base alla condizione che verifica il valore specificato dall'utente nel campo A, scrivere una regola con il costrutto condizione-azione o il tipo di regola When nel campo A e specificare azioni per controllare la visibilità dei campi B, C e D. In caso contrario, sono necessarie tre regole separate per i campi B, C e D, in cui ogni regola controlla la condizione e mostra o nasconde il rispettivo campo. In questo esempio, è più efficiente scrivere il tipo di regola When su un oggetto anziché Show o Hide su tre oggetti.

  • Per attivare un’azione in base a più condizioni, si consiglia di utilizzare il costrutto azione-condizione. Ad esempio, per mostrare e nascondere il campo A valutando le condizioni nei campi B, C e D, utilizzare Mostra o Nascondi tipo di regola nel campo A.

  • Utilizza il costrutto condizione-azione o condizione azione se la regola contiene un’azione per una condizione.

  • Se una regola verifica la presenza di una condizione ed esegue immediatamente un'azione quando fornisce un valore in un campo o esce da un campo, si consiglia di scrivere una regola con il costrutto condizione-azione o il tipo di regola When nel campo in cui viene valutata la condizione.

  • La condizione nella regola When viene valutata quando un utente modifica il valore dell'oggetto su cui viene applicata la regola When. Tuttavia, se desideri che l’azione si attivi quando il valore cambia sul lato server, come per il prepopolamento del valore, è consigliabile scrivere una regola When che attivi l’azione quando il campo viene inizializzato.

  • Quando si scrivono regole per gli oggetti menu a discesa, pulsanti di scelta o caselle di controllo, le opzioni o i valori di tali oggetti modulo nel modulo vengono precompilati nell’editor di regole.

Tipi di operatori ed eventi disponibili nell’editor di regole available-operator-types-and-events-in-rule-editor

L’editor di regole fornisce i seguenti operatori logici ed eventi utilizzando i quali è possibile creare regole.

  • È Uguale A
  • È Diverso Da
  • Inizia con
  • Termina Con
  • Contiene
  • È Vuoto
  • Non È Vuoto
  • Ha selezionato: Restituisce true quando l'utente seleziona un'opzione particolare per una casella di controllo, un elenco a discesa o un pulsante di scelta.
  • È inizializzato (evento): Restituisce true quando viene eseguito il rendering di un oggetto modulo nel browser.
  • È stato modificato (evento): Restituisce true quando l'utente modifica il valore immesso o l'opzione selezionata per un oggetto modulo.
  • Navigazione(evento): Restituisce true quando l'utente fa clic su un oggetto di navigazione. Gli oggetti di navigazione vengono utilizzati per spostarsi tra i pannelli.
  • Completamento passaggio(evento): Restituisce true al completamento di un passaggio di una regola.
  • Invio riuscito(evento): Restituisce true in caso di invio corretto di dati a un modello dati del modulo.
  • Errore in Submission(event): Restituisce true in caso di invio non riuscito di dati a un modello dati del modulo.

Tipi di regole disponibili nell’editor di regole available-rule-types-in-rule-editor

L’editor di regole fornisce un set di tipi di regole predefiniti che è possibile utilizzare per scrivere regole. Esaminiamo in dettaglio ogni tipo di regola. Per ulteriori informazioni sulla scrittura di regole nell'editor di regole, vedere Scrivi regole.

Quando whenruletype

Il tipo Quando regola segue il costrutto condizione-azione-azione alternativa regola o, talvolta, solo il costrutto condizione-azione . In questo tipo di regola, specificare innanzitutto una condizione per la valutazione seguita da un'azione da attivare se la condizione è soddisfatta ( True). Quando si utilizza il tipo When regola, è possibile utilizzare più operatori AND e OR per creare espressioni nidificate.

Utilizzando il tipo regola Quando è possibile valutare una condizione in un oggetto modulo ed eseguire azioni su uno o più oggetti.

In parole povere, un tipico Quando regola è strutturato come segue:

When on Object A:

(Condition 1 AND Condition 2 OR Condition 3) is TRUE;

Then, do the following:

Azione 2 sull'oggetto B;
E
Azione 3 sull'oggetto C;

_

Quando si dispone di un componente con più valori, ad esempio pulsanti di scelta o elenco, durante la creazione di una regola per tale componente le opzioni vengono recuperate e rese disponibili automaticamente al creatore della regola. Non è necessario digitare nuovamente i valori delle opzioni.

Ad esempio, un elenco include quattro opzioni: Rosso, Blu, Verde e Giallo. Durante la creazione della regola, le opzioni (pulsanti di scelta) vengono recuperate automaticamente e rese disponibili al creatore della regola come segue:

Opzioni di visualizzazione con più valori

Durante la scrittura di una regola When, puoi attivare l'azione Cancella valore di. Cancella valore dell'azione cancella il valore dell'oggetto specificato. L'opzione Clear Value (Cancella valore) nell'istruzione When consente di creare condizioni complesse con più campi.

Cancella valore di

Nascondi Nasconde l'oggetto specificato.

Mostra mostra l'oggetto specificato.

Abilita Abilita l'oggetto specificato.

Disabilita Disabilita l'oggetto specificato.

Richiama servizio Richiama un servizio configurato in un modello dati modulo (FDM). Quando scegli l’operazione Richiama servizio, viene visualizzato un campo. Quando tocca il campo, vengono visualizzati tutti i servizi configurati in tutti i modelli di dati del modulo (FDM) nell'istanza Experience Manager. Quando si sceglie un servizio FDM (Form Data Model), vengono visualizzati più campi in cui è possibile mappare gli oggetti modulo con i parametri di input e output per il servizio specificato. Vedi regola di esempio per richiamare i servizi del modello dati modulo.

Oltre al servizio Modello dati modulo, è possibile specificare un URL WSDL diretto per richiamare un servizio Web. Tuttavia, un servizio di modello dati modulo presenta molti vantaggi e l’approccio consigliato per richiamare un servizio.

Per ulteriori informazioni sulla configurazione dei servizi nel modello dati modulo, vedere Experience Manager Forms Integrazione dati.

Imposta il valore di Calcola e imposta il valore dell'oggetto specificato. È possibile impostare il valore dell'oggetto su una stringa, il valore di un altro oggetto, il valore calcolato utilizzando un'espressione matematica o una funzione, il valore di una proprietà di un oggetto o il valore di output di un servizio Form Data Model configurato. Quando si sceglie l'opzione Servizio Web, vengono visualizzati tutti i servizi configurati in tutti i modelli di dati del modulo (FDM) nell'istanza Experience Manager. Quando si sceglie un servizio Modello dati modulo, vengono visualizzati più campi in cui è possibile mappare gli oggetti modulo con i parametri di input e output per il servizio specificato.

Per ulteriori informazioni sulla configurazione dei servizi nel modello dati modulo, vedere Experience Manager Forms Integrazione dati.

Il tipo di regola Imposta proprietà consente di impostare il valore di una proprietà dell'oggetto specificato in base a un'azione condizione. È possibile impostare la proprietà su una delle seguenti opzioni:

  • visibile (booleano)
  • dorExclusion (booleano)
  • chartType (String)
  • title (Stringa)
  • abilitato (booleano)
  • obbligatorio (booleano)
  • validationsDisabled (booleano)
  • validateExpMessage (Stringa)
  • valore (Numero, Stringa, Data)
  • items (List)
  • valido (booleano)
  • errorMessage (stringa)

Ad esempio, consente di definire regole per aggiungere caselle di controllo in modo dinamico al modulo adattivo. È possibile utilizzare una funzione personalizzata, un oggetto modulo o una proprietà oggetto per definire una regola.

Imposta proprietà

Per definire una regola basata su una funzione personalizzata, selezionare Output funzione dall'elenco a discesa e trascinare una funzione personalizzata dalla scheda Funzioni. Se l’azione della condizione viene soddisfatta, il numero di caselle di controllo definite nella funzione personalizzata viene aggiunto al modulo adattivo.

Per definire una regola basata su un oggetto modulo, selezionare Oggetto modulo dall'elenco a discesa e trascinare un oggetto modulo dalla scheda Oggetti modulo. Se l’azione della condizione viene soddisfatta, il numero di caselle di controllo definite nell’oggetto modulo viene aggiunto al modulo adattivo.

Una regola Imposta proprietà basata su una proprietà oggetto consente di aggiungere il numero di caselle di controllo in un modulo adattivo basato su un’altra proprietà oggetto inclusa nel modulo adattivo.

La figura seguente illustra un esempio di aggiunta dinamica di caselle di controllo in base al numero di elenchi a discesa nel modulo adattivo:

Proprietà oggetto

Cancella valore di Cancella il valore dell'oggetto specificato.

Imposta stato attivo Imposta lo stato attivo sull'oggetto specificato.

Salva modulo salva il modulo.

Invia Forms invia il modulo.

Reimposta modulo Reimposta il modulo.

Convalida modulo convalida il modulo.

Aggiungi istanza Aggiunge un'istanza del pannello o della riga di tabella ripetibile specificata.

Rimuovi istanza Rimuove un'istanza del pannello o della riga di tabella ripetibile specificata.

Accedi a Consente di passare ad altri Forms adattivi, ad altre risorse quali immagini o frammenti di documenti o a un URL esterno.

Imposta valore di set-value-of

Il tipo di regola Imposta valore di consente di impostare il valore di un oggetto modulo a seconda che la condizione specificata sia soddisfatta o meno. Il valore può essere impostato sul valore di un altro oggetto, una stringa letterale, un valore derivato da un'espressione matematica o una funzione, un valore di una proprietà di un altro oggetto o l'output di un servizio del modello di dati modulo. Analogamente, è possibile verificare la presenza di una condizione su un componente, una stringa, una proprietà o valori derivati da una funzione o un'espressione matematica.

L'opzione Imposta Valore di regola tipo non è disponibile per tutti gli oggetti modulo, quali i pulsanti dei pannelli e delle barre degli strumenti. Un insieme standard Valore di regola ha la seguente struttura:

Impostare il valore dell'oggetto A su:

(stringa ABC) O
(proprietà oggetto X dell'oggetto C) O
(valore da una funzione) O
(valore da un'espressione matematica) O
(valore di output di un servizio modello di dati o di un servizio Web);

Quando (facoltativo):

(Condizione 1 E Condizione 2 E Condizione 3) è VERO;

Nell'esempio seguente il valore nel campo dependentid viene utilizzato come input e il valore del campo Relation viene impostato sull'output dell'argomento Relation del servizio Modello dati modulo getDependent.

Set-value-web-service

Esempio di regola Imposta valore tramite il servizio Modello dati modulo

NOTE
Inoltre, è possibile utilizzare Imposta valore della regola per compilare tutti i valori in un componente elenco a discesa dall’output di un servizio Modello dati modulo o di un servizio web. Verificare tuttavia che l'argomento di output scelto sia di tipo matrice. Tutti i valori restituiti in un array diventano disponibili nell’elenco a discesa specificato.

Mostra show

Utilizzando il tipo di regola Mostra, è possibile scrivere una regola per mostrare o nascondere un oggetto modulo in base al soddisfacimento o meno di una condizione. Il tipo di regola Show attiva anche l'azione Nascondi nel caso in cui la condizione non sia soddisfatta o restituisca False.

Una regola Show tipica è strutturata come segue:

Show Object A;

When:

(Condition 1 OR Condition 2 OR Condition 3) is TRUE;

Else:

Hide Object A;

Nascondi hide

Analogamente al tipo di regola Mostra, è possibile utilizzare il tipo di regola Nascondi per mostrare o nascondere un oggetto modulo in base al soddisfacimento o meno di una condizione. Il tipo di regola Nascondi attiva anche l'azione Mostra se la condizione non è soddisfatta o restituisce False.

Una tipica regola Nascondi è strutturata come segue:

Hide Object A;

When:

(Condition 1 AND Condition 2 AND Condition 3) is TRUE;

Else:

Show Object A;

Abilita enable

Il tipo di regola Enable consente di abilitare o disabilitare un oggetto modulo in base al soddisfacimento o meno di una condizione. Il tipo di regola Enable attiva anche l'azione Disable nel caso in cui la condizione non sia soddisfatta o restituisca False.

Una regola di abilitazione tipica è strutturata come segue:

Enable Object A;

When:

(Condition 1 AND Condition 2 AND Condition 3) is TRUE;

Else:

Disable Object A;

Disattiva disable

Analogamente al tipo di regola Abilita, il tipo di regola Disabilita consente di abilitare o disabilitare un oggetto modulo a seconda che una condizione sia soddisfatta o meno. Il tipo di regola Disable attiva anche l'azione Enable nel caso in cui la condizione non sia soddisfatta o restituisca False.

Una regola di Disattivazione tipica è strutturata come segue:

Disable Object A;

When:

(Condition 1 OR Condition 2 OR Condition 3) is TRUE;

Else:

Enable Object A;

Convalida validate

Il tipo di regola Convalida convalida il valore in un campo utilizzando un'espressione. È ad esempio possibile scrivere un'espressione per verificare che la casella di testo per specificare il nome non contenga caratteri o numeri speciali.

Una regola di convalida tipica è strutturata come segue:

Validate Object A;

Using:

(Expression 1 AND Expression 2 AND Expression 3) is TRUE;

NOTE
Se il valore specificato non è conforme alla regola di convalida, è possibile visualizzare un messaggio di convalida per l'utente. È possibile specificare il messaggio nel campo Messaggio di convalida dello script nelle proprietà del componente nella barra laterale.

Convalida script

Imposta Opzioni Di setoptionsof

Il tipo di regola Imposta opzioni di consente di definire regole per aggiungere caselle di controllo in modo dinamico al modulo adattivo. Per definire la regola è possibile utilizzare un modello dati modulo (FDM) o una funzione personalizzata.

Per definire una regola basata su una funzione personalizzata, selezionare Output funzione dall'elenco a discesa e trascinare una funzione personalizzata dalla scheda Funzioni. Al modulo adattivo viene aggiunto il numero di caselle di controllo definite nella funzione personalizzata.

Funzioni personalizzate

Per creare una funzione personalizzata, vedere funzioni personalizzate nell'editor di regole.

Per definire una regola basata su un modello dati modulo (FDM):

  1. Selezionare Output servizio dall'elenco a discesa.
  2. Seleziona l’oggetto modello dati.
  3. Selezionare una proprietà oggetto modello dati dall'elenco a discesa Valore visualizzato. Il numero di caselle di controllo nel modulo adattivo è derivato dal numero di istanze definite per tale proprietà nel database.
  4. Selezionare una proprietà dell'oggetto modello dati dall'elenco a discesa Salva valore.

Opzioni set FDM

Interfaccia utente dell’editor di regole understanding-the-rule-editor-user-interface

L’editor di regole fornisce un’interfaccia utente completa ma semplice per scrivere e gestire le regole. Puoi avviare l’interfaccia utente dell’editor di regole da un modulo adattivo in modalità di authoring.

Per avviare l’interfaccia utente dell’editor di regole:

  1. Apri un modulo adattivo in modalità di authoring.

  2. Selezionare l'oggetto modulo per il quale si desidera scrivere una regola e nella barra degli strumenti del componente selezionare edit-rules . Viene visualizzata l’interfaccia utente dell’editor di regole.

    create-rules

    Tutte le regole esistenti sugli oggetti modulo selezionati sono elencate in questa visualizzazione. Per informazioni sulla gestione delle regole esistenti, vedere Gestire le regole.

  3. Seleziona Crea per scrivere una nuova regola. L’editor visivo dell’interfaccia utente dell’editor di regole si apre per impostazione predefinita quando si avvia l’editor di regole la prima volta.

    Interfaccia utente editor regole

Esaminiamo in dettaglio ogni componente dell’interfaccia utente dell’editor di regole.

A. Visualizzazione delle regole dei componenti a-component-rule-display

Visualizza il titolo dell'oggetto modulo adattivo tramite il quale è stato avviato l'editor di regole e il tipo di regola attualmente selezionato. Nell’esempio precedente, l’editor di regole viene avviato da un oggetto Modulo adattivo denominato Stipendio e il tipo di regola selezionato è Quando.

B. Oggetti e funzioni del modulo b-form-objects-and-functions-br

Il riquadro a sinistra nell'interfaccia utente dell'editor di regole include due schede: Oggetti Forms e Funzioni.

La scheda Oggetti modulo mostra una vista gerarchica di tutti gli oggetti contenuti nel modulo adattivo. Visualizza il titolo e il tipo degli oggetti. Durante la scrittura di una regola, è possibile trascinare gli oggetti modulo nell’editor di regole. Quando si trascina un oggetto o una funzione in un segnaposto durante la creazione o la modifica di una regola, il segnaposto assume automaticamente il tipo di valore appropriato.

Gli oggetti modulo a cui sono applicate una o più regole valide sono contrassegnati da un punto verde. Se una delle regole applicate a un oggetto modulo non è valida, l'oggetto modulo viene contrassegnato con un punto giallo.

La scheda Funzioni include un set di funzioni incorporate, ad esempio Somma di, Min di, Max di, Media di, Numero di e Convalida modulo. È possibile utilizzare queste funzioni per calcolare i valori nei pannelli e nelle righe di tabella ripetibili e utilizzarli nelle istruzioni di azione e condizione durante la scrittura delle regole. Tuttavia, puoi anche creare funzioni personalizzate.

Scheda Funzioni

NOTE
È possibile eseguire la ricerca di testo su oggetti e funzioni, nomi e titoli nelle schede Oggetti e funzioni di Forms.

Nell'albero sinistro degli oggetti modulo è possibile selezionare gli oggetti modulo per visualizzare le regole applicate a ciascuno degli oggetti. Non solo è possibile spostarsi tra le regole dei vari oggetti modulo, ma è anche possibile copiare e incollare le regole tra gli oggetti modulo. Per ulteriori informazioni, vedere Copiare e incollare le regole.

C. Attivazione/disattivazione di funzioni e oggetti modulo c-form-objects-and-functions-toggle-br

Quando viene toccato, questo pulsante attiva o disattiva il riquadro delle funzioni e degli oggetti del modulo.

D. Editor di regole visive visual-rule-editor

L’editor di regole visive è l’area in cui si scrivono le regole nella modalità editor visivo dell’interfaccia utente dell’editor di regole. Ti consente di selezionare un tipo di regola e di definire di conseguenza condizioni e azioni. Quando si definiscono condizioni e azioni in una regola, è possibile trascinare gli oggetti modulo e le funzioni dal riquadro Oggetti modulo e funzioni.

Per ulteriori informazioni sull'utilizzo dell'editor di regole visive, vedere Scrivere regole.

E. Tasti Done e cancel done-and-cancel-buttons

Il pulsante Fine viene utilizzato per salvare una regola. È possibile salvare una regola incompleta. Tuttavia, i dati incompleti non sono validi e non vengono eseguiti. Le regole salvate su un oggetto modulo vengono elencate quando si avvia l’editor di regole la prossima volta dallo stesso oggetto modulo. Puoi gestire le regole esistenti in tale vista. Per ulteriori informazioni, vedere Gestione regole.

Il pulsante Annulla elimina le modifiche apportate a una regola e chiude l'editor di regole.

Scrivi regole write-rules

È possibile scrivere regole utilizzando l’editor di regole visive <!— o l'editor di codice>. Quando avvii l’editor di regole la prima volta, si apre in modalità editor visivo. Puoi passare alla modalità editor di codice e scrivere regole. Tuttavia, se scrivi o modifichi una regola nell’editor di codice, non puoi passare all’editor visivo per tale regola a meno che non annulli l’editor di codice. La prossima volta che avvii l’editor di regole, questo si apre nella modalità utilizzata per ultima per creare la regola.

Vediamo innanzitutto come scrivere regole utilizzando l’editor visivo.

Utilizzo dell’editor visivo using-visual-editor

Comprendiamo come creare una regola nell’editor visivo utilizzando il seguente modulo di esempio.

Crea-regola-esempio

La sezione Requisiti del prestito nell'esempio di modulo di domanda di prestito richiede ai richiedenti di specificare il loro stato civile, lo stipendio e, in caso di matrimonio, lo stipendio del coniuge. In base agli input dell’utente, la regola calcola l’importo di idoneità al prestito e viene visualizzata nel campo Idoneità al prestito. Per implementare lo scenario, applica le seguenti regole:

  • Il campo Stipendio coniuge viene visualizzato solo quando lo stato civile è sposato.
  • L’importo di ammissibilità al prestito è pari al 50% dello stipendio totale.

Per scrivere le regole, effettua le seguenti operazioni:

  1. Innanzitutto, scrivi la regola per controllare la visibilità del campo Stipendio coniuge in base all’opzione selezionata dall’utente per il pulsante di opzione Stato civile.

    Apri il modulo di richiesta di prestito in modalità di creazione. Selezionare il componente Stato civile e selezionare edit-rules . Quindi, seleziona Crea per avviare l'editor di regole.

    write-rules-visual-editor-1

    Quando si avvia l'editor di regole, la regola When è selezionata per impostazione predefinita. Inoltre, l'oggetto modulo (in questo caso, Stato civile) da cui è stato avviato l'editor di regole è specificato nell'istruzione When.

    Sebbene non sia possibile modificare l'oggetto selezionato, è possibile utilizzare l'elenco a discesa delle regole, come illustrato di seguito, per selezionare un altro tipo di regola. Se desideri creare una regola su un altro oggetto, seleziona Annulla per uscire dall’editor di regole e riavviarlo dall’oggetto modulo desiderato.

  2. Seleziona l'elenco a discesa Seleziona stato e seleziona è uguale a. Viene visualizzato il campo Enter a String.

    write-rules-visual-editor-2

    Nel pulsante di opzione Stato civile, alle opzioni Sposato e Singolo sono assegnati rispettivamente i valori 0 e 1. È possibile verificare i valori assegnati nella scheda Titolo della finestra di dialogo Modifica pulsante di opzione, come illustrato di seguito.

    Valori pulsante di opzione dalleditor regole

  3. Nel campo Immettere una stringa nella regola, specificare 0.

    write-rules-visual-editor-4

    La condizione è stata definita come When Marital Status is equal to Married. Quindi, definisci l’azione da eseguire se questa condizione è True.

  4. Nell'istruzione Then, selezionare Show dal menu a discesa Select Action.

    write-rules-visual-editor-5

  5. Trascina il campo Stipendio coniuge dalla scheda Oggetti modulo del campo Rilascia oggetto o seleziona qui. In alternativa, selezionare il campo Rilascia l'oggetto o seleziona qui e selezionare il campo Stipendio coniuge dal menu a comparsa, che elenca tutti gli oggetti modulo nel modulo.

    write-rules-visual-editor-6

    La regola viene visualizzata come segue nell’editor di regole.

    write-rules-visual-editor-7

  6. Seleziona Fine per salvare la regola.

  7. Ripetere i passaggi da 1 a 5 per definire un'altra regola per nascondere il campo Stipendio coniuge se lo stato civile è Singolo. La regola viene visualizzata come segue nell’editor di regole.

    write-rules-visual-editor-8

    note note
    NOTE
    In alternativa, è possibile scrivere una regola Mostra nel campo Stipendio coniuge, anziché due regole Quando nel campo Stato civile, per implementare lo stesso comportamento.

    write-rules-visual-editor-9

  8. Scrivere quindi una regola per calcolare l'importo dell'idoneità al prestito, che corrisponde al 50% dello stipendio totale, e visualizzarlo nel campo Idoneità al prestito. Per ottenere questo risultato, crea Imposta il valore di regole nel campo Idoneità al prestito.

    In modalità creazione, seleziona il campo Idoneità prestito e seleziona modifica-regole . Quindi, seleziona Crea per avviare l'editor di regole.

  9. Selezionare Imposta valore di regola dal menu a discesa delle regole.

    write-rules-visual-editor-10

  10. Seleziona Seleziona opzione e seleziona Espressione matematica. Viene aperto un campo per scrivere espressioni matematiche.

    write-rules-visual-editor-11

  11. Nel campo espressione:

    • Seleziona o trascina dalla scheda Oggetto Forms il campo Stipendio nel primo campo Rilascia oggetto o seleziona qui.

    • Seleziona Plus dal campo Seleziona operatore.

    • Seleziona o trascina dalla scheda Oggetto Forms il campo Stipendio coniuge nell'altro campo Rilascia oggetto o seleziona qui.

    write-rules-visual-editor-12

  12. Quindi, seleziona nell'area evidenziata intorno al campo espressione e seleziona Estendi espressione.

    write-rules-visual-editor-13

    Nel campo espressione estesa, selezionare diviso per dal campo Seleziona operatore e Numero dal campo Seleziona opzione. Specificare quindi 2 nel campo numerico.

    write-rules-visual-editor-14

    note note
    NOTE
    È possibile creare espressioni complesse utilizzando componenti, funzioni, espressioni matematiche e valori di proprietà dal campo Seleziona opzione.

    Quindi, crea una condizione, che quando restituisce True, l’espressione viene eseguita.

  13. Selezionare Aggiungi condizione per aggiungere un'istruzione When.

    write-rules-visual-editor-15

    Nell'istruzione When:

    • Seleziona o trascina dalla scheda Oggetto Forms il campo Stato civile nel primo campo Rilascia oggetto o seleziona qui.

    • Selezionare è uguale a dal campo Seleziona operatore.

    • Seleziona Stringa nell'altro Rilascia l'oggetto o seleziona qui campo e specifica Sposato nel campo Immetti una stringa.

    La regola viene infine visualizzata come segue nell’editor di regole. write-rules-visual-editor-16

  14. Seleziona Fine. Salva la regola.

  15. Ripetere i passaggi da 7 a 14 per definire un'altra regola per calcolare l'idoneità al prestito se lo stato civile è Single. La regola viene visualizzata come segue nell’editor di regole.

    write-rules-visual-editor-17

NOTE
In alternativa, è possibile utilizzare la regola Imposta valore di per calcolare l'idoneità al prestito nella regola Quando creata per mostrare-nascondere il campo Stipendio coniuge. La regola combinata risultante quando Stato civile è Singolo viene visualizzata come segue nell’editor delle regole.
Analogamente, è possibile scrivere una regola combinata per controllare la visibilità del campo Stipendio coniuge e calcolare l'idoneità al prestito quando lo stato civile è Coniugato.

write-rules-visual-editor-18

Funzioni personalizzate nell’editor di regole custom-functions

Oltre alle funzioni predefinite, come Somma di, elencate in Output funzioni, è possibile scrivere funzioni personalizzate di cui si ha spesso bisogno. Assicurarsi che la funzione scritta sia accompagnata dal jsdoc sopra di essa.

jsdoc di accompagnamento è obbligatorio:

  • Se desideri una configurazione e una descrizione personalizzate
  • Poiché esistono diversi modi per dichiarare una funzione in JavaScript, e i commenti consentono di tenere traccia delle funzioni.

L’editor di regole supporta la sintassi JavaScript ES5 per gli script e le funzioni personalizzate.
Per ulteriori informazioni, vedere jsdoc.app.

jsdoc tag supportati:

  • Privato
    Sintassi: @private
    Una funzione privata non è inclusa come funzione personalizzata.

  • Nome
    Sintassi: @name funcName <Function Name>
    In alternativa , puoi utilizzare: @function funcName <Function Name> or @func funcName <Function Name>.
    funcName è il nome della funzione (non sono consentiti spazi).
    <Function Name> è il nome visualizzato della funzione.

  • Membro
    Sintassi: @memberof namespace
    Associa uno spazio dei nomi alla funzione.

  • Parametro
    Sintassi: @param {type} name <Parameter Description>
    In alternativa, è possibile utilizzare: @argument {type} name <Parameter Description> or @arg {type} name <Parameter Description>.
    Mostra i parametri utilizzati dalla funzione. Una funzione può avere più tag di parametri, uno per ogni parametro in ordine di occorrenza.
    {type} rappresenta il tipo di parametro. I tipi di parametri consentiti sono:

    1. stringa
    2. numero
    3. booleano
    4. ambito

    L’ambito fa riferimento ai campi di un modulo adattivo. Quando un modulo utilizza il caricamento lento, è possibile utilizzare scope per accedere ai relativi campi. È possibile accedere ai campi quando sono caricati o se sono contrassegnati come globali.

    Tutti i tipi di parametri sono classificati in una delle categorie precedenti. Nessuno non è supportato. Accertati di selezionare uno dei tipi riportati sopra. I tipi non fanno distinzione tra maiuscole e minuscole. Spazi non consentiti nel parametro name. <Parameter Descrption> <parameter> can have multiple words. </parameter>

  • Tipo restituito
    Sintassi: @return {type}
    In alternativa, è possibile utilizzare @returns {type}.
    Aggiunge informazioni sulla funzione, ad esempio l'obiettivo.
    {type} rappresenta il tipo restituito della funzione. I tipi restituiti consentiti sono:

    1. stringa
    2. numero
    3. booleano

    Tutti gli altri tipi di reso sono classificati in una delle categorie precedenti. Nessuno non è supportato. Accertati di selezionare uno dei tipi riportati sopra. I tipi restituiti non fanno distinzione tra maiuscole e minuscole.

    • Questo
      Sintassi: @this currentComponent

    Utilizza @this per fare riferimento al componente Modulo adattivo su cui è scritta la regola.

    L’esempio seguente è basato sul valore del campo. Nell'esempio seguente, la regola nasconde un campo nel modulo. La parte this di this.value fa riferimento al componente del modulo adattivo sottostante, sul quale viene scritta la regola.

    code language-none
       /**
       * @function myTestFunction
       * @this currentComponent
       * @param {scope} scope in which code inside function is run.
       */
       myTestFunction = function (scope) {
          if(this.value == "O"){
                scope.age.visible = true;
          } else {
             scope.age.visible = false;
          }
       }
    
    note note
    NOTE
    I commenti prima della funzione personalizzata vengono utilizzati per il riepilogo. Il riepilogo può estendersi su più righe fino a quando non viene rilevato un tag. Limita le dimensioni a un singolo per una descrizione concisa nel generatore di regole.

Aggiunta di una funzione personalizzata

Ad esempio, si desidera aggiungere una funzione personalizzata che calcola l'area di un quadrato. La lunghezza laterale è l’input dell’utente per la funzione personalizzata, che viene accettata utilizzando una casella numerica nel modulo. L'output calcolato viene visualizzato in un'altra casella numerica del modulo. Per aggiungere una funzione personalizzata, devi innanzitutto creare una libreria client e quindi aggiungerla all’archivio CRX.

Per creare una libreria client e aggiungerla all’archivio CRX, effettua le seguenti operazioni:

  1. Crea una libreria client. Per ulteriori informazioni, vedere Utilizzo di librerie lato client.

  2. In CRXDE, aggiungere una proprietà categories con il valore del tipo di stringa customfunction alla cartella clientlib.

    note note
    NOTE
    customfunction è una categoria di esempio. È possibile scegliere qualsiasi nome per la categoria creata nella cartella clientlib.

Dopo aver aggiunto la libreria client nell’archivio CRX, utilizzala nel modulo adattivo. Ti consente di utilizzare la funzione personalizzata come regola nel modulo. Per aggiungere la libreria client nel modulo adattivo, effettua le seguenti operazioni:

  1. Apri il modulo in modalità di modifica.
    Per aprire un modulo in modalità di modifica, selezionare un modulo e selezionare Apri.

  2. In modalità di modifica, seleziona un componente, quindi seleziona livello campo > Contenitore modulo adattivo, quindi seleziona cmppr .

  3. Nella barra laterale, in Nome della libreria client, aggiungi la libreria client. ( customfunction nell'esempio.)

    Aggiunta della libreria client della funzione personalizzata

  4. Selezionare la casella numerica di input e selezionare edit-rules per aprire l'editor di regole.

  5. Seleziona Crea regola. Utilizzando le opzioni illustrate di seguito, creare una regola per salvare il valore al quadrato dell'input nel campo Output del modulo.

    Utilizzo di funzioni personalizzate per creare una regola

  6. Seleziona Fine. Viene aggiunta la funzione personalizzata.

    note note
    NOTE
    Per richiamare un modello di dati modulo dall'editor di regole utilizzando funzioni personalizzate, consulta qui.

Tipi supportati da dichiarazione di funzione function-declaration-supported-types

Istruzione Function

function area(len) {
    return len*len;
}

Questa funzione è inclusa senza jsdoc commenti.

Espressione funzione

var area;
//Some codes later
/** */
area = function(len) {
    return len*len;
};

Espressione funzione e istruzione

var b={};
/** */
b.area = function(len) {
    return len*len;
}

Dichiarazione di funzione come variabile

/** */
var x1,
    area = function(len) {
        return len*len;
    },
    x2 =5, x3 =true;

Limitazione: la funzione personalizzata seleziona solo la prima dichiarazione di funzione dall’elenco delle variabili, se presente insieme. È possibile utilizzare l'espressione di funzione per ogni funzione dichiarata.

Dichiarazione di funzione come oggetto

var c = {
    b : {
        /** */
        area : function(len) {
            return len*len;
        }
    }
};
NOTE
Assicurarsi di utilizzare jsdoc per ogni funzione personalizzata. Anche se jsdoc commenti sono incoraggiati, includi un jsdoc commento vuoto per contrassegnare la tua funzione come funzione personalizzata. Consente la gestione predefinita della funzione personalizzata.

Gestisci regole manage-rules

Tutte le regole esistenti in un oggetto modulo vengono elencate quando si seleziona l'oggetto e si seleziona edit-rules1 . Puoi visualizzare il titolo e un’anteprima del riepilogo delle regole. Inoltre, l’interfaccia utente consente di espandere e visualizzare il riepilogo completo delle regole, modificarne l’ordine, modificarne le regole ed eliminarle.

Regole elenco

Puoi eseguire le seguenti azioni sulle regole:

  • Espandi/comprimi: la colonna Contenuto nell'elenco delle regole visualizza il contenuto della regola. Se l'intero contenuto della regola non è visibile nella visualizzazione predefinita, selezionare expand-rule-content per espanderlo.

  • Riordina: tutte le nuove regole create sono sovrapposte nella parte inferiore dell'elenco di regole. Le regole vengono eseguite dall'alto verso il basso. La regola in alto viene eseguita per prima, seguita da altre regole dello stesso tipo. Ad esempio, se disponi di regole When, Show, Enable e When rispettivamente in prima, seconda, terza e quarta posizione dall'alto, la regola When nella parte superiore viene eseguita per prima seguita dalla regola When nella quarta posizione. Vengono quindi eseguite le regole Mostra e Abilita.
    È possibile modificare l'ordine di una regola toccando sort-rules o trascinandola nell'ordine desiderato nell'elenco.

  • Modifica: per modificare una regola, selezionare la casella di controllo accanto al titolo della regola. Vengono visualizzate le opzioni per modificare ed eliminare la regola. Seleziona Modifica per aprire la regola selezionata nell'editor regole .

  • Elimina: per eliminare una regola, selezionarla e selezionare Elimina.

  • Attiva/Disattiva: quando è necessario sospendere temporaneamente l'utilizzo di una regola, è possibile selezionare una o più regole e selezionare Disattiva nella barra degli strumenti Azioni per disattivarle. Se una regola è disabilitata, non viene eseguita in fase di esecuzione. Per abilitare una regola disabilitata, selezionala e seleziona Abilita nella barra degli strumenti delle azioni. La colonna di stato della regola indica se la regola è abilitata o disabilitata.

Disabilita regola

Regole di copia e incolla copy-paste-rules

Per risparmiare tempo, puoi copiare e incollare una regola da un campo ad altri campi simili.

Per copiare e incollare le regole, effettuare le seguenti operazioni:

  1. Selezionare l'oggetto modulo da cui si desidera copiare una regola e nella barra degli strumenti del componente selezionare modifica regola . Viene visualizzata l’interfaccia utente dell’editor di regole con l’oggetto modulo selezionato e le regole esistenti.

    copia regola

    Per informazioni sulla gestione delle regole esistenti, vedere Gestire le regole.

  2. Selezionare la casella di controllo accanto al titolo della regola per visualizzare le opzioni per la gestione della regola. Seleziona Copia.

    copyrule2

  3. Selezionare un altro oggetto modulo in cui incollare la regola e selezionare Incolla. Inoltre, puoi modificare la regola per apportarvi modifiche.

    note note
    NOTE
    È possibile incollare una regola in un altro oggetto modulo solo se tale oggetto supporta l'evento della regola copiata. Ad esempio, un pulsante supporta l’evento clic. È possibile incollare una regola con un evento clic su un pulsante ma non su una casella di controllo.
  4. Seleziona Fine per salvare la regola.

Espressioni nidificate nestedexpressions

L’editor di regole consente di utilizzare più operatori AND e OR per creare regole nidificate. È possibile combinare più operatori AND e OR nelle regole.

Di seguito è riportato un esempio di regola nidificata che visualizza un messaggio per l’utente sull’idoneità per la custodia di un bambino quando vengono soddisfatte le condizioni richieste.

Espressione complessa

Puoi anche trascinare le condizioni all’interno di una regola per modificarla. Seleziona e passa il puntatore del mouse sull'handle ( handle ) prima di una condizione. Una volta che il puntatore si trasforma nel simbolo della mano, come illustrato di seguito, trascinare e rilasciare la condizione in qualsiasi punto della regola. La struttura della regola cambia.

Trascinare

Condizioni di espressione data dateexpression

L’editor di regole consente di utilizzare i confronti tra date per creare condizioni.

Di seguito è riportata una condizione di esempio che visualizza un oggetto di testo statico se l’ipoteca sulla casa è già stata accettata, che l’utente indica compilando il campo data.

Quando la data del mutuo dell’immobile compilata dall’utente è nel passato, il modulo adattivo visualizza una nota relativa al calcolo del reddito. La regola seguente confronta la data compilata dall'utente con la data corrente. Se la data compilata dall'utente è precedente alla data corrente, nel modulo viene visualizzato il messaggio di testo Income.

Condizione espressione data

Quando la data di compilazione è precedente alla data corrente, nel modulo viene visualizzato il messaggio di testo (Entrate) nel modo seguente:

Condizione espressione data soddisfatta

Condizioni di confronto dei numeri number-comparison-conditions

L’editor di regole consente di creare condizioni che confrontano due numeri.

Di seguito è riportata una condizione di esempio che visualizza un oggetto di testo statico se il numero di mesi in cui un candidato rimane all'indirizzo corrente è inferiore a 36.

Condizione di confronto dei numeri

Quando l’utente indica di vivere all’attuale indirizzo residenziale per meno di 36 mesi, il modulo mostra una notifica che indica che è possibile richiedere più prove di residenza.

È stata richiesta unaltra bozza

Regole di esempio example

Richiama servizio modello dati modulo invoke

Si consideri un servizio Web GetInterestRates che accetta come input l'importo del prestito, la locazione e il punteggio di credito del richiedente e restituisce un piano di prestito che include l'importo dell'IME e il tasso di interesse. È possibile creare un modello dati modulo (FDM) utilizzando il servizio Web come origine dati. Gli oggetti modello dati e un servizio get vengono aggiunti al modello di modulo. Il servizio viene visualizzato nella scheda Servizi del modello dati del modulo (FDM). Quindi, crea un modulo adattivo che includa i campi dagli oggetti modello dati per acquisire gli input dell’utente per l’importo del prestito, la durata e il punteggio di credito. Aggiungi un pulsante che attiva il servizio web per recuperare i dettagli del piano. L’output viene compilato nei campi appropriati.

La regola seguente mostra come configurare l’azione Richiama servizio per eseguire lo scenario di esempio.

Esempio-invoke-services

NOTE
Se l’input è di tipo array, i campi che supportano gli array sono visibili nella sezione a discesa Output.

Attivazione di più azioni tramite la regola When triggering-multiple-actions-using-the-when-rule

In un modulo di richiesta di prestito, si desidera stabilire se il richiedente è un cliente esistente o meno. In base alle informazioni fornite dall'utente, il campo ID cliente deve essere visualizzato o nascosto. Inoltre, se l’utente è un cliente esistente, imposta il campo ID cliente come elemento attivo. Il modulo di richiesta di prestito presenta le seguenti componenti:

  • Un pulsante di scelta, Sei già un cliente del Geometrixx?, che fornisce Sì e No opzioni. Il valore per Sì è 0 e No è 1.

  • Un campo di testo, ID cliente Geometrixx, per specificare l'ID cliente.

Quando scrivi una regola When sul pulsante di scelta per implementare questo comportamento, la regola viene visualizzata come segue nell’editor di regole visive.

Esempio-regola-quando

Regola nell’editor visivo

Nella regola di esempio, l'istruzione nella sezione When è la condizione che, quando restituisce True, esegue le azioni specificate nella sezione Then.

Utilizzo di un output di funzione in una regola using-a-function-output-in-a-rule

In un modulo ordine fornitore è disponibile la tabella seguente, in cui gli utenti compilano i propri ordini. In questa tabella:

  • La prima riga è ripetibile, in modo che gli utenti possano ordinare più prodotti e specificare quantità diverse. Il nome elemento è Row1.
  • Il titolo della cella nella colonna Quantità prodotto della riga ripetibile è Quantità. Il nome elemento per questa cella è productquantity.
  • La seconda riga della tabella non è ripetibile e il titolo della cella nella colonna Quantità prodotto di questa riga è Quantità totale.

Esempio-tabella-funzione

A. Riga1 B. Quantità C. Quantità Totale

Ora si desidera aggiungere le quantità specificate nella colonna Quantità prodotto per tutti i prodotti e visualizzare la somma nella cella Quantità totale. È possibile ottenere tale somma scrivendo una regola Imposta valore di nella cella Quantità totale come illustrato di seguito.

Esempio-funzione-output

Regola nell’editor visivo

Convalida di un valore di campo tramite espressione validating-a-field-value-using-expression

Nel modulo dell'ordine di acquisto illustrato nell'esempio precedente, si desidera impedire agli utenti di ordinare più di una quantità di qualsiasi prodotto il cui prezzo sia superiore a 10000. Per eseguire questa convalida, è possibile scrivere una regola di convalida come illustrato di seguito.

Esempio-convalida

Regola nell’editor visivo

recommendation-more-help
fbcff2a9-b6fe-4574-b04a-21e75df764ab