Show Menu
ARGOMENTI×

Miglioramento delle prestazioni dei moduli di grandi dimensioni con caricamento lento

Introduzione al caricamento pigro

Quando un modulo diventa grande e complesso con centinaia e migliaia di campi, gli utenti finali riscontrano un lungo tempo di risposta durante il rendering dei moduli in fase di esecuzione. Per ridurre al minimo il tempo di risposta, i moduli adattivi consentono di suddividere i moduli in frammenti logici e di configurare in modo da posticipare l'inizializzazione o il caricamento dei frammenti fino a quando il frammento non sia visibile. Si chiama caricamento pigro. Inoltre, i frammenti configurati per il caricamento pigro vengono scaricati non appena l'utente passa ad altre sezioni del modulo e i frammenti non sono più visibili.
Comprendiamo innanzitutto i requisiti e i passaggi preparatori prima di configurare il caricamento pigro.

Preparazione alla configurazione del caricamento pigro

Prima di configurare il caricamento pigro dei frammenti nel modulo adattivo, è importante definire strategie per la creazione di frammenti, identificare i valori utilizzati negli script o citati in altri frammenti e definire regole per controllare la visibilità dei campi nei frammenti caricati lentamente.
  • Identificazione e creazione di frammenti ​È possibile configurare solo frammenti di modulo adattivi per il caricamento pigro. Un frammento è un segmento autonomo che si trova al di fuori di un modulo adattivo e può essere riutilizzato nei diversi moduli. Pertanto, il primo passo verso l'implementazione del caricamento pigro è identificare le sezioni logiche di un modulo e convertirle in frammenti. È possibile creare un frammento da zero o salvare come frammento un pannello di moduli esistente.
    Per ulteriori informazioni sulla creazione di frammenti, vedere Frammenti di moduli adattivi.
  • Identificare e contrassegnare valori globali Le transazioni basate suForms comportano elementi dinamici per acquisire dati rilevanti dagli utenti ed elaborarli per semplificare la compilazione dei moduli. Ad esempio, nel modulo è presente il campo A nel frammento X il cui valore determina la validità del campo B in un altro frammento. In questo caso, se il frammento X è contrassegnato per il caricamento pigro, il valore del campo A deve essere disponibile per convalidare il campo B anche se il frammento X non è caricato. A tal fine, è possibile contrassegnare il campo A come globale, in modo che il relativo valore sia disponibile per la convalida del campo B quando il frammento X non è caricato.
    Per informazioni su come rendere il valore di un campo globale, consultate Configurazione del caricamento pigro.
  • Regole di scrittura per controllare la visibilità dei campi Forms includono alcuni campi e sezioni che non sono applicabili a tutti gli utenti e in tutte le condizioni. Gli autori e gli sviluppatori di Forms utilizzano regole di visibilità o di visualizzazione per controllarne la visibilità in base agli input degli utenti. Ad esempio, il campo Indirizzo ufficio non viene visualizzato agli utenti che scelgono Disoccupato nel campo Stato occupazione di un modulo. Per ulteriori informazioni sulla scrittura delle regole, vedere Utilizzo dell'editor delle regole.
    È possibile utilizzare le regole di visibilità nei frammenti caricati in modo da visualizzare i campi condizionali solo quando sono obbligatori. Inoltre, contrassegnare il campo condizionale come globale per farvi riferimento nell'espressione di visibilità del frammento caricato in modo graduale.

Configurazione del caricamento lento

Per abilitare il caricamento lento su un frammento di modulo adattivo, effettuare le operazioni seguenti:
  1. Aprire il modulo adattivo in modalità di creazione che contiene il frammento da abilitare per il caricamento pigro.
  2. Selezionare il frammento di modulo adattivo e toccare .
  3. Nella barra laterale, abilita Carica frammento in modo graduale e tocca Fine .
    Il frammento è ora abilitato per il caricamento pigro.
È possibile contrassegnare i valori degli oggetti nel frammento caricato in modo che siano disponibili per l'uso negli script quando il frammento contenitore non è caricato. Effettua le seguenti operazioni:
  1. Aprire il frammento di modulo adattivo in modalità di creazione.
  2. Toccate il campo di cui desiderate contrassegnare il valore come globale, quindi toccate .
  3. Nella barra laterale, abilitate il valore Use (Usa) durante il caricamento pigro.
    Il valore è ora contrassegnato come globale e sarà disponibile per l'uso negli script anche quando il frammento contenitore viene scaricato.

Considerazioni e procedure ottimali per la configurazione del caricamento pigro

Alcune limitazioni, raccomandazioni e punti importanti da tenere a mente quando si lavora con il caricamento pigro sono i seguenti:
  • È consigliabile utilizzare moduli adattivi basati sullo schema XSD su moduli adattivi basati su XFA per configurare il caricamento pigro sui moduli di grandi dimensioni. Il guadagno di prestazioni dovuto all'implementazione pigra del caricamento nei moduli adattivi basati su XFA è relativamente inferiore al guadagno nei moduli adattivi basati su XSD.
  • Non configurare il caricamento pigro sui frammenti di un modulo adattivo che utilizza la funzione Reattiva, ovvero tutto il contenuto di una pagina senza layout di navigazione per il pannello principale. A seguito della configurazione di layout reattivo, tutti i frammenti vengono caricati contemporaneamente in un modulo adattivo. Può anche causare un peggioramento delle prestazioni.
  • Si consiglia di non configurare il caricamento pigro sui frammenti nel primo pannello visualizzato al caricamento del modulo adattivo.
  • Il caricamento dei layout è supportato fino a due livelli nella gerarchia dei frammenti.
  • Assicurarsi che i campi contrassegnati come globali siano univoci all'interno di un modulo adattivo.
  • Valutare la possibilità di scrivere regole di visibilità per i frammenti da mostrare o nascondere in base a una condizione. Ad esempio, è possibile mostrare o nascondere il frammento Dettagli coniuge in base allo stato civile specificato da un utente.
  • I componenti Allegati e Termini e Condizioni del file non sono supportati nei frammenti caricati lentamente.

Best practice di scripting per configurare il caricamento pigro

I punti importanti da tenere a mente durante lo sviluppo di script per i pannelli di caricamento pigri sono i seguenti:
  • Verificare che gli script di inizializzazione e di calcolo utilizzati nei campi di un frammento caricato pigro siano di natura ottimale. Gli script impotenti sono quelli che hanno lo stesso effetto anche dopo più esecuzioni.
  • Utilizzare la proprietà globalmente disponibile dei campi per rendere disponibile il valore dei campi che si trovano in un pannello di caricamento pigro a tutti gli altri pannelli di un modulo.
  • Non inoltrare il valore di riferimento di un campo all’interno di un pannello pigro, indipendentemente dal fatto che il campo sia contrassegnato o meno a livello globale tra i frammenti.
  • Utilizzate la funzione di ripristino del pannello per ripristinare tutti gli elementi visibili nel pannello utilizzando la seguente espressione di clic. guideBridge.resolveNode(guideBridge.getFocus({"focusOption": "navigablePanel"})).resetData()