[AEM Forms]{class="badge positive" title="Si applica ad AEM Forms)."}
Miglioramenti e casi d’uso dell’editor di regole
Queste sono funzionalità non definitive disponibili tramite il nostro canale non definitivo. Questi miglioramenti sono applicabili anche a Edge Delivery Services Forms.
Questo articolo introduce gli ultimi miglioramenti all’editor di regole in Adaptive Forms. Questi aggiornamenti sono progettati per aiutarti a definire più facilmente il comportamento dei moduli, senza scrivere codice personalizzato, e per creare esperienze di modulo più dinamiche, reattive e personalizzate.
La tabella seguente elenca i recenti miglioramenti apportati all’editor di regole in Adaptive Forms, insieme a una breve descrizione e ai vantaggi chiave di ciascuna funzione:
- Migliore esperienza utente con messaggi di errore mirati
- Impedisce la progressione con dati incompleti
- Riduce gli errori di invio dei moduli
- Esperienza di download coerente tra i moduli
- Riduce la necessità di duplicare la logica
- Elimina la necessità di creare campi nascosti
- Maggiore controllo su quando e come vengono eseguite le regole
- Maggiore interattività
- Riduzione degli errori nelle sezioni dinamiche
- Miglioramento dell’esperienza utente con contenuti ripetuti
- Meno regole concatenate per gli scenari di caricamento
- Authoring più chiaro per i moduli che richiedono file e input convalidati insieme
- Utile per flussi specifici di marketing o tracciamento
- Non è necessario aggiungere script o personalizzazioni
Esaminiamo ora in dettaglio ogni metodo con casi d’uso specifici per aiutarti a capire come queste funzioni possono essere utilizzate per fornire un’esperienza personalizzata agli utenti
Metodo Validate nell’elenco funzioni
Funzionalità di convalida migliorate che consentono di utilizzare il metodo validate() nell’elenco delle funzioni per convalidare pannelli, campi o interi moduli. Ad esempio, in un modulo di richiesta di prestito in più passaggi, è necessario convalidare diverse sezioni prima di consentire agli utenti di procedere al passaggio successivo.
Scenario: un istituto finanziario offre un modulo di richiesta di prestito in più fasi in cui gli utenti devono completare diverse sezioni, ad esempio:
- Dati personali
- Dettagli impiego
- Dettagli del prestito
- Rivedi e invia
Prima che un utente si sposti da un passaggio all’altro, il modulo deve convalidare solo i campi all’interno della sezione corrente. Ad esempio, l’utente non deve essere autorizzato a passare a “Dettagli impiego” a meno che tutti i campi obbligatori in “Dati personali” non siano compilati correttamente.
Implementazione tramite validate() nell’editor di regole
Un pulsante Next in ciascun pannello attiva una regola utilizzando il metodo validate(). La regola controlla se tutti i campi del pannello corrente sono validi. Se la convalida viene superata, il modulo passa al pannello successivo. In caso contrario, vengono visualizzati messaggi di errore che consigliano all’utente di correggere l’input.
La schermata seguente mostra la regola applicata al pulsante Next:
Nella regola precedente, il pulsante Successivo controlla se i campi nella sezione Dettagli personali sono validi. Se i dettagli non sono validi, lo stato attivo viene spostato sul campo Name nel pannello Personal Details.
Scarica documento record
L’utilizzo della funzione DownloadDor() preconfigurata nell’editor di regole consente di scaricare il documento di record, se il modulo è configurato per generare il documento di record.
Scenario: un’agenzia governativa fornisce un modulo di richiesta digitale per il rilascio dei certificati. Dopo aver inviato il modulo, i candidati spesso richiedono una copia del modulo compilato per i loro registri o per condividere con un altro reparto. Per migliorare l’esperienza utente, l’agenzia vuole dare ai richiedenti la possibilità di scaricare un documento Record (DoR) immediatamente dopo la presentazione o in qualsiasi fase prima della presentazione finale.
Implementazione tramite DownloadDor() nell’editor di regole
Al modulo viene aggiunto un pulsante Download tramite l’editor di regole. Una regola è configurata per attivare la funzione DownloadDor() quando si fa clic sul pulsante.
La schermata seguente mostra la regola applicata al pulsante Scarica:
Se il modulo è configurato per la generazione DoR, questa funzione genera e scarica il PDF immediatamente, senza richiedere alcuna funzione personalizzata.
Supporto per le variabili dinamiche nelle regole
L’editor di regole avanzato supporta la creazione e l’utilizzo di variabili dinamiche (temporanee). Queste variabili possono essere impostate e recuperate durante il ciclo di vita del modulo utilizzando le funzioni integrate Imposta valore variabile e Ottieni valore variabile.
Queste variabili:
- Non vengono inviati con i dati del modulo.
- Può contenere valori intermedi o calcolati.
- Può essere utilizzato nella logica condizionale e nelle azioni.
Scenario: un modulo di acquisto online consente agli utenti di selezionare un prodotto, immettere la quantità e scegliere un paese per la spedizione. Il prezzo del prodotto è un valore fisso acquisito tramite un campo modulo, mentre le spese di spedizione variano in modo dinamico a seconda del paese selezionato.
Per evitare di riempire il modulo con campi nascosti, l’azienda decide di memorizzare le spese di spedizione in una variabile temporanea e di utilizzarlo per i calcoli in tempo reale.
Implementazione tramite le funzioni Imposta valore variabile e Ottieni valore variabile nell’editor di regole
Nel frammento Address è configurata una regola utilizzando la funzione Imposta valore variabile per assegnare una variabile temporanea denominata extracharge. Il valore di questa variabile cambia in modo dinamico in base al paese selezionato. Ad esempio:
- Se l’utente seleziona Stati Uniti, extracharge è impostato su 500.
- Per qualsiasi altro paese, extracharge è impostato su 100.
Successivamente, quando si calcola il costo totale spedizione, viene utilizzata la funzione Ottieni valore variabile per recuperare il valore di extracharge. Questo valore viene aggiunto al prezzo prodotto × quantità prodotto per calcolare l’importo finale da pagare al clic del pulsante.
Il campo Costo totale spedizione viene aggiornato in modo dinamico per riflettere sia il costo del prodotto che le spese di spedizione quando l’utente modifica il paese o la quantità.
Questo approccio consente di eseguire calcoli dinamici e in tempo reale senza aggiungere campi aggiuntivi al modulo, mantenendo la struttura pulita e intuitiva.
Supporto di regole personalizzate basate su eventi
L’editor di regole avanzato supporta la gestione degli eventi personalizzati utilizzando le funzioni Invio evento e Attivazione evento. Queste funzioni consentono a diverse parti del modulo di comunicare emettendo e ascoltando eventi personalizzati, abilitando una logica più pulita e modulare senza associare strettamente le azioni a campi specifici.
Scenario: un modulo di accesso viene creato utilizzando un frammento di accesso riutilizzabile contenente i campi Immettere il nome utente e Immettere la password. Quando un utente fornisce credenziali valide, il modulo convalida l’input e avvia il processo Get OTP. Dopo che l’utente immette un OTP valido, viene reindirizzato alla pagina appropriata.
Invece di associare la logica direttamente ai campi, il modulo utilizza un approccio basato su eventi con Dispatch Event e On Trigger Event per migliorare la modularità e la gestibilità.
Implementazione tramite evento di invio e evento all’attivazione
Il frammento di accesso viene aggiunto al modulo, contenente campi predefiniti per Nome utente e Password. Nel pulsante Ottieni OTP è configurata una regola per visualizzare il Pannello di convalida, che include il campo di input per l’immissione e la convalida dell’OTP.
Nel Pannello di convalida è configurata una regola sul pulsante Convalida. L’integrazione API viene utilizzata per convalidare l’OTP immesso nel campo Enter OTP. Se la convalida ha esito positivo, viene attivato un evento Dispatch denominato LoggedIn con il payload dell’evento contenente la risposta API.
A livello di modulo, una regola è configurata per l’ascolto dell’evento LoggedIn. Quando questo evento viene attivato, la regola visualizza il messaggio di reindirizzamento e porta l’utente alla pagina del dashboard.
Quando l’utente invia il modulo con le credenziali corrette e un OTP valido, l’accesso ha esito positivo e l’utente viene reindirizzato al proprio dashboard.
Supporto per eventi personalizzati che consentono agli sviluppatori di creare e attivare eventi personalizzati utilizzabili come condizioni nell’editor di regole.
Grammatica semplificata per eventi OOTB e personalizzati simplified-grammar-for-ootb-and-custom-events
L’editor di regole avanzato include una grammatica semplificata per le regole basate su eventi che utilizzano evento di invio e evento all’attivazione. In precedenza, questa grammatica si applicava solo a eventi personalizzati; gli eventi predefiniti (OOTB) non erano supportati e spesso richiedevano regole When per i trigger OOTB e regole On Trigger Event per gli eventi personalizzati. Gli eventi OOTB sono ora supportati con la stessa grammatica semplificata, consentendo un pattern di authoring coerente senza passare da When a On Trigger Event a seconda che il trigger sia OOTB o personalizzato.
Esecuzione di regole basate sul contesto per pannelli ripetibili
Forms adattivo supporta l’esecuzione di regole in base al contesto per i pannelli ripetibili. Questo consente di applicare le regole in modo specifico all’istanza del pannello in cui l’utente interagisce, anziché influenzare tutte le istanze o impostare come predefinita l’ultima.
Scenario: un modulo per l’ordine dei prodotti consente agli utenti di aggiungere più prodotti in pannelli separati. Ogni pannello include un campo Numero di prodotti e un campo Costo totale. Quando un utente aggiorna la quantità di un prodotto, il modulo deve ricalcolare il prezzo totale, ma solo per quel pannello specifico, non per tutti gli altri.
Implementazione tramite regole in base al contesto nell’editor di regole
Una regola è configurata nel campo Numero di prodotto all’interno del pannello di prodotto ripetibile.
Nella schermata seguente viene visualizzata la regola per il campo Numero di prodotto all’interno del pannello dei prodotti ripetibile:
Quando la quantità viene modificata, la regola recupera il prezzo unitario del prodotto selezionato e calcola il costo totale solo per quel pannello.
Condizioni When combinate con il componente File allegato combined-when-conditions-with-the-file-attachment-component
L’editor di regole avanzato supporta Quando regole che combinano il componente File allegato con altre condizioni utilizzando la logica AND o OR. Aggiungi condizione nella clausola When può includere lo stato dell’allegato del file insieme ai controlli sugli altri campi o alla convalida del pannello, pertanto un’azione viene eseguita solo quando viene soddisfatta ogni condizione selezionata.
Scenario: un modulo di registrazione per animali domestici raccoglie ID animale, Nome animale e Categoria animale e include un allegato di file Aggiungi foto. Il modulo esegue un’azione, ad esempio cancella o aggiorna Aggiungi foto, quando l’allegato modifica e le condizioni configurate negli altri campi (i relativi valori) sono soddisfatte.
Implementazione tramite le condizioni When con il componente File Attachment nell’editor di regole
Regola configurata nell’oggetto di destinazione, ad esempio Aggiungi foto. La sezione When utilizza Add Condition per combinare il trigger di file allegato con le condizioni di uno o più altri campi, pertanto l’azione dipende sia dall’allegato che dai valori dei campi.
Nella schermata seguente viene visualizzata la condizione When con più condizioni e opzioni Add Condition:
Quando la clausola When restituisce true per la logica AND o OR configurata, la regola esegue l’azione configurata.
Quando ID animale contiene 101, l’allegato Aggiungi foto viene cancellato; analogamente, quando Nome animale contiene a, l’allegato viene cancellato.
Regole basate su URL e parametri di browser in Adaptive Forms
Forms adattivo supporta l’esecuzione dinamica delle regole utilizzando parametri esterni trasmessi tramite l’URL del modulo o derivati dall’ambiente del browser dell’utente. Questo consente esperienze di modulo personalizzate e in base al contesto, in base alla provenienza del visitatore o al dispositivo che sta utilizzando.
Tipi di parametri consentiti
ref (solo valori stringa)??ref=partner123UTM Medium
UTM Campaign
UTM Termine
UTM Contenuto
?utm_source=google&utm_medium=emailPercorso
hostname=www.example.com, path=/signupLingua browser
Piattaforma browser
Browser Agent=Mozilla, Language=en-USScenario: un modulo di generazione di lead deve adattare il relativo messaggio di benvenuto in base all’origine del traffico. Quando un utente arriva al modulo tramite una campagna pubblicitaria di Google (utilizzando utm_source=google nell’URL), il modulo deve mostrare un saluto personalizzato.
Implementazione tramite il parametro UTM
Una regola è configurata in un campo di testo che visualizza un messaggio personalizzato agli utenti di Google e utilizza il parametro utm_source.
La schermata seguente mostra la regola configurata sul messaggio di testo:
Se il valore del parametro utm_source è uguale a “google”, un messaggio personalizzato sarà “Ciao utenti di Google, benvenuti nell’annuncio di Campaign!” viene visualizzato.
Questo consente agli esperti di marketing di fornire contenuti rilevanti agli utenti in base alla campagna che li ha inseriti nel modulo senza richiedere l’immissione manuale dei campi o script personalizzati.
Questi miglioramenti espandono in modo significativo le funzionalità dell’editor di regole di Forms adattivo, fornendo agli sviluppatori strumenti potenti per creare moduli più dinamici, interattivi e intelligenti. Ogni miglioramento soddisfa specifiche esigenze aziendali mantenendo la facilità d’uso che rende l’Editor di regole accessibile sia agli utenti tecnici che a quelli non tecnici.
Risorse aggiuntive
- Introduzione all’editor di regole per moduli adattivi basati su componenti core
- Tipi di operatori ed eventi nell’editor di regole di un modulo adattivo basato su componenti core
- Interfaccia utente dell’editor di regole per moduli adattivi basati su componenti core
- Diversi casi d’uso dell’editor di regole per un modulo adattivo basato su componenti core
- Differenza nelle varie edizioni dell’editor di regole
- Utilizzo di funzioni asincrone in un modulo adattivo
- Miglioramenti a Avvia servizio nell’editor di regole visive per i moduli basati su componenti core
- Introduzione alle funzioni personalizzate per moduli adattivi basati su componenti core
- Creare una funzione personalizzata per un modulo adattivo basato su componenti core
- Oggetto ambito nelle funzioni personalizzate
- Esempi di sviluppo e utilizzo di una funzione personalizzata