Workflow di preriempimento basato su origine di dati e invio consigliati per i moduli adattivi recommended-data-source-btased-prefill-and-submit-workflows-for-adaptive-forms

Con i moduli adattivi convertiti tramite il servizio di Automated forms conversion (AFCS) è 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, puoi scegliere di generare un modulo adattivo con o senza un modello di 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.

Origine dati
Workflow consigliato
Modello dati modulo, OData o qualsiasi altro servizio di terze parti
Opzione 1: è possibile selezionare come origine dati modello dati modulo, OData o qualsiasi altro servizio di terze parti. generare un modulo adattivo senza associazione dati utilizzando il servizio di Automated forms conversion (AFCS). I campi del modulo adattivo vengono associati manualmente alle entità del modello dati del modulo e per precompilare i valori dei campi viene utilizzata l’opzione Servizio di precompilazione modello dati modulo. Per inviare il modulo adattivo, utilizza l’opzione Invia utilizzando il modello dati del modulo.
Opzione 2: è possibile selezionare come origine dati modello dati modulo, OData o qualsiasi altro servizio di terze parti. generare un modulo adattivo senza associazione dati utilizzando il servizio di Automated forms conversion (AFCS). Per precompilare i valori dei campi, associa i campi del modulo adattivo utilizzando l’editor di regole. Se necessario, modifica i valori dei campi e invia i dati all’archivio 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
Seleziona lo schema JSON come origine di dati. In base all'origine dati selezionata:
Opzione 1: generare un modulo adattivo senza associazione dati utilizzando il servizio di Automated forms conversion (AFCS) e configurare lo schema JSON come origine dati. Associa manualmente i campi del modulo adattivo allo schema JSON e utilizza uno dei protocolli supportati per precompilare i valori dei campi. Se necessario, modifica i valori dei campi e invia i dati all’archivio crx.
Per istruzioni dettagliate sull'esecuzione dei flussi di lavoro, vedere Utilizzare lo schema JSON come origine dati.
Opzione 2: generare un modulo adattivo con associazione dati JSON utilizzando il servizio di Automated forms conversion (AFCS). Il servizio di precompilazione e l’invio dei moduli funzionano senza problemi. Non è necessario alcun passaggio di configurazione.
Per istruzioni dettagliate sull'esecuzione dei flussi di lavoro, vedere Utilizzare lo schema JSON come origine dati.
Schema XSD
Seleziona lo schema XSD come origine dati. In base all'origine dati selezionata, si genera un modulo adattivo senza associazione dati utilizzando il servizio di Automated forms conversion (AFCS) e si configura lo schema XSD come origine dati. I campi del modulo adattivo vengono associati manualmente allo schema XSD e utilizza uno dei protocolli supportati per precompilare i valori dei campi. Se necessario, modifica i valori dei campi e invia i dati all’archivio 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 (AFCS), vedere i seguenti articoli:

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

Prerequisiti pre-requisites

Modulo adattivo di esempio sample-adaptive-form

Per eseguire i casi d’uso per precompilare i valori dei campi in un modulo adattivo e inviarli all’origine dati, scarica il seguente file PDF di esempio.

Modulo di richiesta di prestito di esempio

Ottieni file

Il file PDF funge da input per il servizio di Automated forms conversion (AFCS). Il servizio converte questo file in un modulo adattivo. L’immagine seguente illustra l’esempio di richiesta di prestito in formato PDF.

modulo di richiesta di prestito di esempio

Prepara dati per modello modulo prepare-data-for-form-model

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

Questa esercitazione utilizza il database MySQL come origine per la creazione di un modello di dati modulo. Crea uno schema loanapplication nel database e aggiungi una tabella candidate allo schema in base ai campi disponibili nel modulo adattivo.

Dati di esempio mysql

È possibile utilizzare l'istruzione DDL seguente per creare la tabella candidato 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 utilizzi uno schema XSD come modello del modulo per eseguire i casi d’uso, crea 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>

Oppure scarica lo schema XSD nel file system locale.

Esempio di schema XSD per la richiesta di prestito

Ottieni file

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

Se utilizzi uno schema JSON come modello del modulo per eseguire i casi d’uso, crea 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, scarica lo schema JSON nel file system locale.

Esempio di schema JSON per richiesta di prestito

Ottieni file

Per ulteriori informazioni sull'utilizzo dello schema JSON come modello di modulo nei moduli adattivi, vedi Creazione di moduli adattivi utilizzando lo schema JSON.

Generare moduli adattivi senza associazione dati generate-adaptive-forms-with-no-data-binding

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

Modulo adattivo senza associazione dati

Dopo aver generato un modulo adattivo senza alcuna associazione di dati, seleziona un’origine dati per il modulo adattivo:

NOTE
Se il modulo adattivo convertito con il servizio di Automated forms conversion (AFCS) contiene più campi con lo stesso nome, assicurati 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 sqldatasource

Caso d’uso: viene generato un modulo adattivo senza associazione di dati utilizzando il servizio di Automated forms conversion (AFCS) e viene configurato il database MYSQL come origine di dati. Associare manualmente i campi del modulo adattivo alle entità del modello dati del modulo e utilizzare l’opzione Form Data Model Prefill Service per precompilare i valori dei campi. Utilizza l’opzione Submit using Form Data Model per inviare il modulo adattivo.

Prima di eseguire il caso d’uso:

In base al caso d'uso, creare il modello dati del modulo loanapplication e associare 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

Configura modello dati modulo

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

Esegui i passaggi seguenti:

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

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

  3. Seleziona il modulo di richiesta di prestito di esempio e tocca Edit.

  4. Nella scheda Content, toccare 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. Tocca icona completato per salvare le proprietà.

  5. Toccare la casella di testo Nome candidato e selezionare icona di configurazione (Configura).

    1. Nel campo Riferimento binding, selezionare Candidato > Nome, quindi toccare icona completato per salvare le proprietà. Allo stesso modo, crea un'associazione dati per Indirizzo, Numero di telefono, Posta elettronica, Occupazione, Stipendio annuale (in dollari) e No. di familiari dipendenti campi con entità modello dati modulo.

    Associa riferimenti

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

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

Caso d'uso: viene generato un modulo adattivo senza associazione dati utilizzando il servizio di Automated forms conversion (AFCS) e viene configurato il database MYSQL come origine dati. Per precompilare i valori dei campi, associa i campi del modulo adattivo utilizzando l’editor di regole. Se necessario, modifica i valori dei campi e invia i dati all’archivio crx.

Esegui la procedura seguente per utilizzare l'editor di regole per richiamare il servizio del modello di dati del modulo per associare campi e precompilare 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, toccare l'icona di configurazione:

    configura contenitore modulo

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

  3. Toccare la casella di testo Applicant Name e toccare Edit Rules.

    Modifica le regole per creare lassociazione dati

  4. Toccare Create nella pagina Editor regole.

  5. Nella pagina Rule Editor:

    1. Selezionare uno stato per la casella di testo Nome candidato. 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 nell’istanza Forms vengono visualizzati nell’elenco a discesa.

    3. Selezionare un servizio Get dalla sezione in cui sono elencati i modelli di dati del modulo. Nel campo Input viene visualizzato phonenumber, che è la chiave primaria definita per il modello dati candidate. Il sistema recupera e compila i valori nel modulo adattivo per i campi della sezione Output in base a questo campo.

    4. Crea un’associazione per i campi del modulo adattivo con le entità del modello dati del modulo utilizzando la sezione Output. Ad esempio, associa il campo del modulo adattivo Applicant Name all'entità name.

    5. Toccare Done. Tocca nuovamente Done nella pagina Editor regole.

    Editor regole per associare i riferimenti

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

    note note
    NOTE
    Verificare che la proprietà Return Array sia impostata su OFF per la proprietà del servizio get nel modello di dati del modulo associato al modulo adattivo.
  7. Se necessario, modifica i valori dei campi e invia il modulo adattivo. I dati inviati sono disponibili nella seguente posizione nell’archivio crx:

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

Utilizza lo schema JSON come origine di dati jsondatasource

Caso d'uso: è possibile generare un modulo adattivo senza associazione dati utilizzando il servizio di Automated forms conversion (AFCS) e configurare lo schema JSON come origine dati. Associa manualmente i campi del modulo adattivo allo schema JSON e utilizza l'opzione Anteprima con dati per precompilare i valori dei campi. Se necessario, modifica i valori dei campi e invia i dati all’archivio crx.

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

Esegui i passaggi seguenti:

  1. Seleziona il modulo di richiesta di prestito di esempio convertito disponibile nella cartella output e tocca Properties.

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

  3. Seleziona il modulo di richiesta di prestito di esempio e tocca Edit.

  4. Toccare la casella di testo Nome candidato e selezionare icona di configurazione (Configura).

    Nel campo Riferimento binding, selezionare Candidato > Nome, quindi toccare icona completato per salvare le proprietà. Allo stesso modo, crea un'associazione dati per Indirizzo, Numero di telefono, Posta elettronica, Occupazione, Stipendio annuale (in dollari) e No. di familiari dipendenti campi con entità schema JSON.

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

    Scarica il file di dati di esempio

    Ottieni file

  6. Se necessario, modifica i valori dei campi e invia il modulo adattivo. I dati inviati sono disponibili nella seguente posizione nell’archivio crx:

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

Utilizza lo schema XSD come origine di dati xsddatasource

Caso d'uso: è possibile generare un modulo adattivo senza associazione dati utilizzando il servizio di Automated forms conversion (AFCS) e configurare lo schema XSD come origine dati. Associare manualmente i campi del modulo adattivo allo schema XSD e utilizzare l'Anteprima con dati per precompilare i valori dei campi. Se necessario, modifica i valori dei campi e invia i dati all’archivio crx.

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

Esegui i passaggi seguenti:

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

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

  3. Seleziona il modulo di richiesta di prestito di esempio e tocca Edit.

  4. Toccare la casella di testo Nome candidato e selezionare icona di configurazione (Configura).
    Nel campo Riferimento binding, selezionare Candidato > Nome, quindi toccare Icona completato per salvare le proprietà. Allo stesso modo, crea un'associazione dati per Indirizzo, Numero di telefono, Posta elettronica, Occupazione, Stipendio annuale (in dollari) e No. di familiari dipendenti campi con entità dello schema XSD.

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

    Scarica il file di dati di esempio

    Ottieni file

  6. Se necessario, modifica i valori dei campi e invia il modulo adattivo. I dati inviati sono disponibili nella seguente posizione nell’archivio crx:

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

Generare moduli adattivi con binding JSON generate-adaptive-forms-with-json-binding

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

Modulo adattivo con associazione JSON

Utilizza lo schema JSON come origine di dati jsonwithdatabinding

Caso d'uso: viene generato un modulo adattivo con associazione dati JSON utilizzando il servizio di Automated forms conversion (AFCS). Il servizio di precompilazione e l’invio dei moduli funzionano senza problemi. Non è necessario alcun passaggio di configurazione.

Prima di eseguire il caso d'uso, assicurati di disporre di un modulo adattivo con associazione dati.

Esegui i passaggi seguenti:

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

    Scarica il file di dati di esempio

    Ottieni file

  2. Se necessario, modifica i valori dei campi e invia il modulo adattivo. I dati inviati sono disponibili nella seguente posizione 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 convert-submitted-adaptive-form-data-to-xml

Quando immetti i valori nei campi del modulo adattivo e li invii, i dati sono disponibili in formato JSON nell’archivio crx. Puoi convertire il formato dei dati JSON in XML utilizzando l'API org.apache.sling.commons.json.xml o 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));
    }
}
recommendation-more-help
c40c2ccf-3d1b-4b47-b158-c4646051b46c