Workflow di preriempimento basato su origine di dati e invio consigliati per i moduli adattivi

Con i moduli adattivi convertiti utilizzando il servizio Automated forms conversion è possibile utilizzare una delle seguenti origini dati:

  • Modello dati modulo, OData o qualsiasi altro servizio di terze parti
  • Schema JSON
  • schema XSD

In base all'origine dati, è possibile scegliere di generare un modulo adattivo con o senza un modello dati.

Questo articolo descrive i flussi di lavoro consigliati per precompilare i valori dei campi e le opzioni di invio dopo aver selezionato un'origine dati e generato un modulo adattivo utilizzando il servizio di conversione.

Sorgente dati Flusso di lavoro consigliato

Modello dati modulo, OData o qualsiasi altro servizio di terze parti

Opzione 1: È possibile selezionare il modello dati del modulo, OData o qualsiasi altro servizio di terze parti come origine dati. è possibile generare un modulo adattivo senza binding dei dati utilizzando il servizio di Automated forms conversion. È possibile eseguire manualmente il binding dei campi modulo adattivo alle entità del modello dati del modulo e utilizzare l'opzione Servizio di precompilazione modello dati modulo per precompilare i valori dei campi. Per inviare il modulo adattivo è possibile utilizzare l'opzione Invia utilizzando il modello dati modulo.

Opzione 2: È possibile selezionare il modello dati del modulo, OData o qualsiasi altro servizio di terze parti come origine dati. è possibile generare un modulo adattivo senza binding dei dati utilizzando il servizio di Automated forms conversion. I campi modulo adattivo vengono associati utilizzando l'editor di regole per precompilare i valori dei campi. Se necessario, modificare i valori dei campi e inviare i dati al repository crx.

Per istruzioni dettagliate sull'esecuzione di questi flussi di lavoro, vedere Utilizzare database, OData o qualsiasi servizio di terze parti come origine dati.

Schema JSON

È possibile selezionare lo schema JSON come origine dati. In base all'origine dati selezionata:

Opzione 1: È possibile generare un modulo adattivo senza alcun binding dei dati utilizzando il servizio di Automated forms conversion e configurare lo schema JSON come origine dati. Eseguire il binding manuale dei campi modulo adattivo allo schema JSON e utilizzare uno dei protocolli supportati per precompilare i valori dei campi. Se necessario, modificare i valori dei campi e inviare i dati al repository crx.

Per istruzioni dettagliate sull'esecuzione dei flussi di lavoro, vedere Utilizzare lo schema JSON come origine dati.

Opzione 2: È possibile generare un modulo adattivo con binding dei dati JSON utilizzando il servizio Automated forms conversion. Il servizio di precompilazione e la funzione di invio del modulo risultano perfettamente visibili. Non sono necessari passaggi di configurazione.

Per istruzioni dettagliate sull'esecuzione dei flussi di lavoro, vedere Utilizzare lo schema JSON come origine dati.

schema XSD

Selezionare lo schema XSD come origine dati. In base all'origine dati selezionata, è possibile generare un modulo adattivo senza binding di dati utilizzando il servizio di Automated forms conversion e configurare lo schema XSD come origine dati. Eseguire il binding manuale dei campi modulo adattivo allo schema XSD e utilizzare uno dei protocolli supportati per precompilare i valori dei campi. Se necessario, modificare i valori dei campi e inviare i dati al repository crx.

Per istruzioni dettagliate sull'esecuzione dei flussi di lavoro, vedere Utilizzare lo schema XSD come origine dati.

Per ulteriori informazioni sul servizio di Automated forms conversion, consultate i seguenti articoli:

Le informazioni fornite in questo articolo si basano sul presupposto che chiunque le legga abbia conoscenze di base sui concetti dei moduli adattivi.

Prerequisiti

Esempio di modulo adattivo

Per eseguire i casi di utilizzo per precompilare i valori dei campi in un modulo adattivo e inviarli all'origine dati, scaricare il seguente file PDF di esempio.

Modulo di richiesta di prestito di esempio

Ottieni file

Il file PDF funge da input per il servizio Automated forms conversion. Il servizio converte questo file in un modulo adattivo. Nell'immagine seguente viene illustrata l'applicazione di prestito di esempio in formato PDF.

modulo di richiesta di prestito di esempio

Preparare i dati per il modello di modulo

Integrazione dei dati AEM Forms consente di configurare e connettersi a origini dati diverse. Dopo aver generato un modulo adattivo utilizzando il processo di conversione, è possibile definire il modello di modulo in base a un modello dati del modulo, a uno schema XSD o JSON. È possibile utilizzare un database, Microsoft Dynamics o qualsiasi altro servizio di terze parti per creare un modello dati del modulo.

Questa esercitazione utilizza il database MySQL come origine per creare un modello dati del modulo. Creare uno schema applicazioni di prestito nel database e aggiungere una tabella richiedente allo schema in base ai campi disponibili nel modulo adattivo.

Dati di esempio mysql

È possibile utilizzare la seguente istruzione DDL per creare la tabella richiedente nel database.

CREATE TABLE `applicant` (
   `name` varchar(45) DEFAULT NULL,
   `address` varchar(45) DEFAULT NULL,
   `phonenumber` int(11) NOT NULL,
   `email` varchar(45) DEFAULT NULL,
   `occupation` varchar(45) DEFAULT NULL,
   `annualsalary` varchar(45) DEFAULT NULL,
   `familymembers` int(11) DEFAULT NULL,
   PRIMARY KEY (`phonenumber`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8

Se si utilizza uno schema XSD come modello di modulo per eseguire i casi di utilizzo, creare un file XSD con il testo seguente:

<?xml version="1.0" encoding="utf-8" ?>
    <xs:schema targetNamespace="http://adobe.com/sample.xsd"
                    xmlns="http://adobe.com/sample.xsd"
                    xmlns:xs="http://www.w3.org/2001/XMLSchema">

<xs:element name="sample" type="SampleType"/>

  <xs:complexType name="SampleType">
    <xs:sequence>
      <xs:element name="name" type="xs:string"/>
   <xs:element name="address" type="xs:string"/>
   <xs:element name="phonenumber" type="xs:int"/>
   <xs:element name="email" type="xs:string"/>
   <xs:element name="occupation" type="xs:string"/>
   <xs:element name="annualsalary" type="xs:string"/>
   <xs:element name="familymembers" type="xs:string"/>
 </xs:sequence>
  </xs:complexType>

  </xs:schema>

In alternativa, scaricate lo schema XSD nel file system locale.

Schema XSD dell'applicazione di prestito di esempio

Ottieni file

Per ulteriori informazioni sull'uso dello schema XSD come modello di modulo nei moduli adattivi, vedere Creazione di moduli adattivi con schema XML.

Se si utilizza uno schema JSON come modello di modulo per eseguire i casi di utilizzo, creare un file JSON con il testo seguente:

{
    "$schema": "http://json-schema.org/draft-04/schema#",
    "definitions": {
        "loanapplication": {
            "type": "object",
            "properties": {
                "name": {
                    "type": "string"
                },
                "address": {
                    "type": "string"
                },
    "phonenumber": {
                    "type": "number"
                },
    "email": {
                    "type": "string"
                },
    "occupation": {
                    "type": "string"
                },
    "annualsalary": {
                    "type": "string"
                },
    "familymembers": {
                    "type": "number"
                }
            }
        }
 },
 "type": "object",
    "properties": {
        "employee": {
            "$ref": "#/definitions/loanapplication"
        }
    }
}

In alternativa, scaricate lo schema JSON nel file system locale.

Schema JSON dell'applicazione di prestito di esempio

Ottieni file

Per ulteriori informazioni sull'uso dello schema JSON come modello di modulo nei moduli adattivi, vedere Creazione di moduli adattivi con lo schema JSON.

Generazione di moduli adattivi senza binding dei dati

Utilizzare il servizio Automated forms conversion per convertire il modulo di richiesta di prestito di esempio in un modulo adattivo senza binding dei dati. Assicurarsi di selezionare la casella di controllo Generate adaptive form(s) without data bindings per generare il modulo adattivo senza binding dei dati.

Modulo adattivo senza binding dei dati

Dopo aver generato un modulo adattivo senza binding dei dati, selezionare un'origine dati per il modulo adattivo:

NOTA

Se il modulo adattivo convertito con il servizio Automated forms conversion contiene più campi con lo stesso nome, assicurarsi che tali campi siano associati alle entità dell'origine dati per evitare una possibile perdita di dati durante l'invio.

Utilizza database, OData o qualsiasi servizio di terze parti come origine dati

Caso di utilizzo: È possibile generare un modulo adattivo senza alcun binding dei dati utilizzando il servizio di Automated forms conversion e configurare il database MYSQL come origine dati. È possibile eseguire manualmente il binding dei campi modulo adattivo alle entità del modello dati del modulo e utilizzare l'opzione Form Data Model Prefill Service per precompilare i valori dei campi. È possibile utilizzare l'opzione Submit using Form Data Model per inviare il modulo adattivo.

Prima di eseguire il caso di utilizzo:

In base al caso di utilizzo, creare il modello di dati del modulo applicazioni di prestito e collegare l'argomento del servizio di lettura a un valore Literal. Il valore letterale del numero di telefono deve essere di uno dei record configurati nello schema richiedente del database MySQL. I servizi utilizzano il valore come argomento per recuperare i dettagli dall'origine dati. È inoltre possibile selezionare Attributo profilo utente o Attributo richiesta dall'elenco a discesa Binding To

Configurare il modello dati del modulo

NOTA

Assicurarsi di aggiungere i servizi get e insert al modello dati del modulo, configurare e verificare i servizi prima di eseguire il caso d'uso.

Effettuate i seguenti passaggi:

  1. Selezionare il modulo di richiesta di prestito di esempio convertito disponibile nella cartella output e toccare Properties.

  2. Toccate la scheda Form Model, selezionate Form Data Model dall'elenco a discesa Select From, quindi toccate Select Form Data Model per selezionare il modello di dati del modulo loanapplication. Toccate Save & Close per salvare il modulo.

  3. Selezionare il modulo di richiesta di prestito di esempio e toccare Edit.

  4. Nella scheda Content, toccate l'icona di configurazione:

    configura contenitore modulo

    1. Nella sezione Basic, selezionare Form Data Model Prefill service dall'elenco a discesa Prefill Service.

    2. Nella sezione Submission, selezionare Submit using Form Data Model dall'elenco a discesa Submit Action.

    3. Selezionare il modello dati utilizzando il campo Data Model to submit.

    4. Toccate l'icona done per salvare le proprietà.

  5. Toccate la casella di testo Nome richiedente e selezionate Configura icona (Configura).

    1. Nel campo Riferimento binding, selezionare Ricorrente > Nome, quindi toccare l'icona Fine per salvare le proprietà. Analogamente, creare un binding dei dati per Address, Phone Number, E-mail, Occupation, Stipendio annuale (in dollari) e No. dei campi dei membri della famiglia dipendenti con le entità del modello dati del modulo.

    Riferimenti a binding

  6. Toccate Preview per visualizzare i valori dei campi modulo adattivo precompilati.

  7. Se necessario, modificare i valori dei campi e inviare il modulo adattivo. I valori dei campi vengono inviati al database MySQL. È possibile aggiornare la tabella richiedente nel database per visualizzare i valori aggiornati nella tabella.

Caso di utilizzo: è possibile generare un modulo adattivo senza binding dei dati utilizzando il servizio di Automated forms conversion e configurare il database MYSQL come origine dati. I campi modulo adattivo vengono associati utilizzando l'editor di regole per precompilare i valori dei campi. Se necessario, modificare i valori dei campi e inviare i dati al repository crx.

Per eseguire la procedura seguente, utilizzare l'editor di regole per richiamare il servizio del modello dati del modulo per eseguire il binding dei campi e precompilare i valori in un modulo adattivo:

  1. Selezionare il modulo di richiesta di prestito di esempio nella cartella output e toccare Edit.

  2. Nella scheda Content, toccate l'icona di configurazione:

    configura contenitore modulo

    Nella sezione Basic, selezionare Form Data Model Prefill service dall'elenco a discesa Prefill Service.

  3. Toccate la casella di testo Applicant Name e toccate Edit Rules.

    Modifica delle regole per creare il binding dei dati

  4. Toccate Create nella pagina Editor regole.

  5. Sulla pagina Rule Editor:

    1. Selezionate uno stato per la casella di testo Nome richiedente. Ad esempio, is initialized, che determina l'esecuzione della condizione Then quando si esegue il rendering del modulo in modalità Preview.

    2. Nella sezione Then, selezionare Invoke Service dall'elenco a discesa Select Action. Tutti i servizi dell'istanza Forms vengono visualizzati nell'elenco a discesa.

    3. Selezionare un servizio Get nella sezione in cui sono elencati i modelli di dati del modulo. Il campo Input visualizza numero di telefono, che è la chiave primaria definita per il modello di dati richiedente. Il sistema recupera e precompila i valori nel modulo adattivo per i campi nella sezione Output in base a questo campo.

    4. Creare un binding per i campi modulo adattivo con le entità modello dati modulo utilizzando la sezione Output. Ad esempio, eseguire un binding del campo modulo adattivo Applicant Name con l'entità name.

    5. Toccare Done. Toccate di nuovo Done nella pagina Editor regole.

    Editor di regole per eseguire il binding dei riferimenti

  6. Toccate Preview per visualizzare i valori dei campi modulo adattivo precompilati.

    NOTA

    Assicurarsi che la proprietà Return Array sia impostata su OFF per la proprietà del servizio get nel modello dati del modulo associato al modulo adattivo.

  7. Se necessario, modificare i valori dei campi e inviare il modulo adattivo. I dati inviati sono disponibili nel seguente percorso nell’archivio crx:

    http://host name:port/crx/de/index.jsp#/content/forms/fp/admin/submit/data/latest file available in the folder

Utilizzare lo schema JSON come origine dati

Caso di utilizzo: è possibile generare un modulo adattivo senza binding dei dati utilizzando il servizio di Automated forms conversion e configurare lo schema JSON come origine dati. È possibile eseguire il binding manuale dei campi modulo adattivi allo schema JSON e utilizzare l'opzione Anteprima con dati per precompilare i valori dei campi. Se necessario, modificare i valori dei campi e inviare i dati al repository crx.

Prima di eseguire il caso d’uso, accertatevi di disporre di:

Effettuate i seguenti passaggi:

  1. Selezionare il modulo di richiesta di prestito di esempio convertito disponibile nella cartella output e toccare Properties.

  2. Toccate la scheda Form Model, selezionate Schema dall'elenco a discesa Select From, quindi toccate Select Schema per caricare lo schema demo.schema JSON salvato nel file system locale. Toccate Save & Close per salvare il modulo.

  3. Selezionare il modulo di richiesta di prestito di esempio e toccare Edit.

  4. Toccate la casella di testo Nome richiedente e selezionate Configura icona (Configura).

    Nel campo Riferimento binding, selezionare Ricorrente > Nome, quindi toccare l'icona Fine per salvare le proprietà. Analogamente, creare un binding dei dati per Address, Phone Number, E-mail, Occupation, Stipendio annuale (in dollari) e No. dei campi dei membri della famiglia dipendenti con le entità dello schema JSON.

  5. Selezionare nuovamente il modulo di richiesta di prestito di esempio convertito disponibile nella cartella output e selezionare Preview > Preview with Data.

    Scarica file di dati di esempio

    Ottieni file

  6. Se necessario, modificare i valori dei campi e inviare il modulo adattivo. I dati inviati sono disponibili nel seguente percorso nell’archivio crx:

    http://host name:port/crx/de/index.jsp#/content/forms/fp/admin/submit/data/latest file available in the folder

Utilizzare lo schema XSD come origine dati

Caso di utilizzo: è possibile generare un modulo adattivo senza binding dei dati utilizzando il servizio di Automated forms conversion e configurare lo schema XSD come origine dati. È possibile eseguire il binding manuale dei campi modulo adattivi allo schema XSD e utilizzare l'opzione Anteprima con i dati per precompilare i valori dei campi. Se necessario, modificare i valori dei campi e inviare i dati al repository crx.

Prima di eseguire il caso d’uso, accertatevi di disporre di:

Effettuate i seguenti passaggi:

  1. Selezionare il modulo di richiesta di prestito di esempio convertito disponibile nella cartella output e toccare Properties.

  2. Toccate la scheda Form Model, selezionate Schema dall'elenco a discesa Select From, quindi toccate Select Schema per caricare lo schema loanapplication XSD salvato nel file system locale. Selezionare l'elemento principale per lo schema XSD e toccare Save & Close per salvare il modulo.

  3. Selezionare il modulo di richiesta di prestito di esempio e toccare Edit.

  4. Toccate la casella di testo Nome richiedente e selezionate Configura icona (Configura).
    Nel campo Riferimento binding, selezionare Ricorrente > Nome, quindi toccare Icona Fine per salvare le proprietà. Analogamente, creare un binding dei dati per Address, Phone Number, E-mail, Occupation, Stipendio annuale (in dollari) e No. dei campi dei membri della famiglia dipendenti con le entità dello schema XSD.

  5. Selezionare nuovamente il modulo di richiesta di prestito di esempio convertito disponibile nella cartella output e selezionare Preview > Preview with Data.

    Scarica file di dati di esempio

    Ottieni file

  6. Se necessario, modificare i valori dei campi e inviare il modulo adattivo. I dati inviati sono disponibili nel seguente percorso nell’archivio crx:

    http://host name:port/crx/de/index.jsp#/content/forms/fp/admin/submit/data/latest file available in the folder

Generazione di moduli adattivi con binding JSON

Utilizzare il servizio Automated forms conversion per convertire il modulo di richiesta di prestito di esempio in un modulo adattivo con binding dei dati. Assicurarsi di non selezionare la casella di controllo Generate adaptive form(s) without data bindings durante la generazione del modulo adattivo.

Modulo adattivo con binding JSON

Utilizzare lo schema JSON come origine dati

Caso di utilizzo: genera un modulo adattivo con il binding dei dati JSON utilizzando il servizio di Automated forms conversion. Il servizio di precompilazione e la funzione di invio del modulo risultano perfettamente visibili. Non sono necessari passaggi di configurazione.

Prima di eseguire il caso di utilizzo, assicurarsi di disporre di un modulo adattivo con binding dei dati.

Effettuate i seguenti passaggi:

  1. Selezionare nuovamente il modulo di richiesta di prestito di esempio convertito disponibile nella cartella output e selezionare Preview > Preview with Data.

    Scarica file di dati di esempio

    Ottieni file

  2. Se necessario, modificare i valori dei campi e inviare il modulo adattivo. I dati inviati sono disponibili nel seguente percorso nell’archivio crx:

    http://host name:port/crx/de/index.jsp#/content/forms/fp/admin/submit/data/latest file available in the folder

Conversione dei dati JSON del modulo adattivo inviati in formato XML

Quando immettete valori nei campi modulo adattivi e li inviate, i dati sono disponibili in formato JSON nell’archivio crx. Potete convertire il formato dei dati JSON in XML utilizzando l'API org.apache.sling.commons.json.xml oppure il seguente codice di esempio:

import org.apache.sling.commons.json.JSONException;
import org.apache.sling.commons.json.JSONObject;
import org.apache.sling.commons.json.xml.XML;
 
public class ConversionUtils {
 
    public static String jsonToXML(String jsonString) throws JSONException {
        //https://sling.apache.org/apidocs/sling5/org/apache/sling/commons/json/xml/XML.html#toString(java.lang.Object)
        //jar - http://maven.ibiblio.org/maven2/org/apache/sling/org.apache.sling.commons.json/2.0.18/
        //Note: Need to extract boundData part before converting to XML
        return XML.toString(new JSONObject(jsonString));
    }
}

In questa pagina