Preenchimento e fluxos de trabalho recomendados com base na fonte de dados para formulários adaptáveis recommended-data-source-btased-prefill-and-submit-workflows-for-adaptive-forms
Você pode usar qualquer uma das seguintes fontes de dados com formulários adaptáveis convertidos usando o serviço Automated forms conversion:
- Modelo de dados de formulário, OData ou qualquer outro serviço de terceiros
- Esquema JSON
- Esquema XSD
Com base na fonte de dados, você pode optar por gerar um formulário adaptável com ou sem um modelo de dados.
Este artigo descreve os fluxos de trabalho recomendados para preencher previamente os valores dos campos e as opções de envio após selecionar uma fonte de dados e gerar um formulário adaptável usando o serviço de conversão.
Para obter mais informações sobre o serviço Automated forms conversion, consulte os seguintes artigos:
As informações fornecidas neste artigo baseiam-se no pressuposto de que qualquer pessoa que as leia tem conhecimento básico dos conceitos de formulários adaptáveis.
Pré-requisitos pre-requisites
- Configurar um Instância de autor AEM
- Configurar Serviço Automated forms conversion na instância do autor AEM
Exemplo de formulário adaptável sample-adaptive-form
Para executar os casos de uso para preencher previamente os valores de campo em um formulário adaptável e enviá-los à fonte de dados, baixe o seguinte arquivo de PDF de amostra.
Exemplo de formulário de pedido de empréstimo
O arquivo PDF serve como entrada para o serviço do Automated forms conversion. O serviço converte esse arquivo em um formulário adaptável. A imagem a seguir mostra o aplicativo de empréstimo de exemplo em formato PDF.
Preparar dados para o modelo de formulário prepare-data-for-form-model
A Integração de dados do AEM Forms permite configurar e conectar-se a diferentes fontes de dados. Depois de gerar um formulário adaptável usando o processo de conversão, você pode definir o modelo de formulário com base em um modelo de dados de formulário, XSD ou um esquema JSON. Você pode usar um banco de dados, o Microsoft Dynamics ou qualquer outro serviço de terceiros para criar um modelo de dados de formulário.
Este tutorial usa o banco de dados MySQL como a fonte para criar um modelo de dados de formulário. Criar um aplicativo de empréstimo esquema no banco de dados e adicionar um candidato para o esquema com base nos campos disponíveis no formulário adaptável.
Você pode usar a seguinte instrução DDL para criar a candidato tabela no banco de dados.
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 você estiver usando um esquema XSD como o modelo de formulário para executar os casos de uso, crie um arquivo XSD com o seguinte texto:
<?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>
Ou baixe o esquema XSD para o sistema de arquivos local.
Exemplo de esquema XSD de aplicativo de empréstimo
Para obter mais informações sobre como usar o esquema XSD como modelo de formulário em formulários adaptáveis, consulte Criação de formulários adaptáveis usando o esquema XML.
Se estiver usando um esquema JSON como modelo de formulário para executar os casos de uso, crie um arquivo JSON com o seguinte texto:
{
"$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"
}
}
}
Ou baixe o esquema JSON no sistema de arquivos local.
Esquema JSON do aplicativo de empréstimo de exemplo
Para obter mais informações sobre como usar o esquema JSON como modelo de formulário em formulários adaptáveis, consulte Criação de formulários adaptáveis usando o esquema JSON.
Gerar formulários adaptáveis sem associação de dados generate-adaptive-forms-with-no-data-binding
Use o Serviço Automated forms conversion a ser convertido o exemplo de formulário de pedido de empréstimo para um formulário adaptável sem vínculo de dados. Certifique-se de selecionar a variável Generate adaptive form(s) without data bindings para gerar o formulário adaptável sem vínculo de dados.
Depois de gerar um formulário adaptável sem associação de dados, selecione uma fonte de dados para o formulário adaptável:
Usar banco de dados, OData ou qualquer serviço de terceiros como fonte de dados sqldatasource
Caso de uso: você gera um formulário adaptável sem associação de dados usando o serviço Automated forms conversion e configura o banco de dados MYSQL como a fonte de dados. Você vincula os campos de formulário adaptáveis a entidades de modelo de dados de formulário manualmente e usa o Form Data Model Prefill Service opção para preencher previamente os valores do campo. Você usa o Submit using Form Data Model opção para enviar o formulário adaptável.
Antes de executar o caso de uso:
Com base no caso de uso, crie o aplicativo de empréstimo modelo de dados de formulário e vincular o argumento do serviço de leitura a um Literal valor. O valor literal do número de telefone deve ser de um dos registros configurados no candidato esquema do banco de dados MySQL. Os serviços usam o valor como argumento para buscar detalhes da fonte de dados. Também é possível selecionar Atributo de Perfil de Usuário ou Atributo de Solicitação do Binding To lista suspensa
Execute as seguintes etapas:
-
Selecione o convertido exemplo de formulário de pedido de empréstimo disponível no output pasta e toque em Properties.
-
Toque no Form Model selecione Form Data Model do Select From e toque em Select Form Data Model para selecionar o aplicativo de empréstimo modelo de dados de formulário. Toque Save & Close para salvar o formulário.
-
Selecione o exemplo de formulário de pedido de empréstimo e toque em Edit.
-
No Content toque no ícone configurar:
-
No Basic , selecione Form Data Model Prefill service do Prefill Service lista suspensa.
-
No Submission , selecione Submit using Form Data Model do Submit Action lista suspensa.
-
Selecione o modelo de dados usando o Data Model to submit campo.
-
Toque para salvar as propriedades.
-
-
Toque na caixa de texto Nome do Candidato e selecione (Configurar).
- No campo Referência de vinculação, selecione Candidato > Nome e toque em para salvar as propriedades. Da mesma forma, crie uma vinculação de dados para o Endereço, Número de telefone, E-mail, Ocupação, Salário Anual (em dólares), e Não. de familiares dependentes campos com as entidades do modelo de dados de formulário.
-
Toque Preview para exibir os valores de campos de formulário adaptável preenchidos previamente.
-
Modifique os valores do campo, se necessário, e envie o formulário adaptável. Os valores de campo são enviados ao banco de dados MySQL. Você pode atualizar o candidato no banco de dados para exibir os valores atualizados na tabela.
Caso de uso: Você gera um formulário adaptável sem associação de dados usando o serviço Automated forms conversion e configura o banco de dados MYSQL como a fonte de dados. Você vincula os campos de formulário adaptáveis usando o editor de regras para preencher previamente os valores dos campos. Modifique os valores de campo, se necessário, e envie dados para o repositório crx.
Execute as seguintes etapas para usar editor de regras para chamar o serviço de modelo de dados de formulário para vincular campos e preencher previamente valores em um formulário adaptável:
-
Selecione o exemplo de formulário de pedido de empréstimo no output pasta e toque em Edit.
-
No Content toque no ícone configurar:
No Basic , selecione Form Data Model Prefill service do Prefill Service lista suspensa.
-
Toque no Applicant Name caixa de texto e toque Edit Rules.
-
Toque Create na página Editor de regras.
-
No Rule Editor página:
-
Selecione um estado para a caixa de texto Nome do Candidato. Por exemplo, is initialized, que resulta na execução da Then quando você renderiza o formulário em Preview modo.
-
No Then , selecione Invoke Service do Select Action lista suspensa. Todos os serviços na instância do Forms são exibidos na lista suspensa.
-
Selecione um Get serviço na seção que lista os modelos de dados de formulário. O campo Entrada é exibido phonenumber, que é a chave primária definida para o candidato modelo de dados. O sistema recupera e preenche os valores no formulário adaptável para campos na seção Saída com base nesse campo.
-
Crie uma associação para os campos de formulário adaptáveis com as entidades de modelo de dados de formulário usando a seção Saída. Por exemplo, vincular Applicant Name campo de formulário adaptável com a variável name entidade.
-
Tocar Done. Toque Done novamente na página Editor de regras.
-
-
Toque Preview para exibir os valores de campos de formulário adaptável preenchidos previamente.
note note NOTE Certifique-se de que o Return Array A propriedade está definida como OFF para o obter propriedade de serviço no modelo de dados de formulário associado ao formulário adaptável. -
Modifique os valores do campo, se necessário, e envie o formulário adaptável. Os dados enviados estão disponíveis no seguinte local no repositório crx:
http://host name:port/crx/de/index.jsp#/content/forms/fp/admin/submit/data/latest file available in the folder
Usar esquema JSON como fonte de dados jsondatasource
Caso de uso: Você gera um formulário adaptável sem associação de dados usando o serviço Automated forms conversion e configura o esquema JSON como a fonte de dados. Você vincula os campos de formulário adaptáveis ao esquema JSON manualmente e usa o Visualizar com dados opção para preencher previamente os valores do campo. Modifique os valores de campo, se necessário, e envie dados para o repositório crx.
Antes de executar o caso de uso, verifique se você:
Execute as seguintes etapas:
-
Selecione o convertido exemplo de formulário de pedido de empréstimo disponível no saída pasta e toque em Properties.
-
Toque no Form Model selecione Schema do Select From e toque em Select Schema para fazer upload do demo.schema JSON esquema salvo no sistema de arquivos local. Toque Save & Close para salvar o formulário.
-
Selecione o exemplo de formulário de pedido de empréstimo e toque em Edit.
-
Toque na caixa de texto Nome do Candidato e selecione (Configurar).
No campo Referência de vinculação, selecione Candidato > Nome e toque em para salvar as propriedades. Da mesma forma, crie uma vinculação de dados para o Endereço, Número de telefone, E-mail, Ocupação, Salário Anual (em dólares), e Não. de familiares dependentes campos com as entidades do esquema JSON.
-
Selecione o convertido exemplo de formulário de pedido de empréstimo disponível no output pasta novamente e selecione Preview > Preview with Data.
Baixar arquivo de dados de amostra
-
Modifique os valores do campo, se necessário, e envie o formulário adaptável. Os dados enviados estão disponíveis no seguinte local no repositório crx:
http://host name:port/crx/de/index.jsp#/content/forms/fp/admin/submit/data/latest file available in the folder
Usar esquema XSD como fonte de dados xsddatasource
Caso de uso: Você gera um formulário adaptável sem associação de dados usando o serviço Automated forms conversion e configura o esquema XSD como a fonte de dados. Você vincula os campos de formulário adaptáveis ao esquema XSD manualmente e usa o Visualizar com dados para preencher previamente os valores do campo. Modifique os valores de campo, se necessário, e envie dados para o repositório crx.
Antes de executar o caso de uso, verifique se você:
Execute as seguintes etapas:
-
Selecione o convertido exemplo de formulário de pedido de empréstimo disponível no output pasta e toque em Properties.
-
Toque no Form Model selecione Schema do Select From e toque em Select Schema para fazer upload do aplicativo de empréstimo Esquema XSD salvo no sistema de arquivos local. Selecione o elemento raiz para o esquema XSD e toque em Save & Close para salvar o formulário.
-
Selecione o exemplo de formulário de pedido de empréstimo e toque em Edit.
-
Toque na caixa de texto Nome do Candidato e selecione (Configurar).
No campo Referência de vinculação, selecione Candidato > Nome e toque em para salvar as propriedades. Da mesma forma, crie uma vinculação de dados para o Endereço, Número de telefone, E-mail, Ocupação, Salário Anual (em dólares), e Não. de familiares dependentes com as entidades do esquema XSD. -
Selecione o convertido exemplo de formulário de pedido de empréstimo disponível no saída pasta novamente e selecione Preview > Preview with Data.
Baixar arquivo de dados de amostra
-
Modifique os valores do campo, se necessário, e envie o formulário adaptável. Os dados enviados estão disponíveis no seguinte local no repositório crx:
http://host name:port/crx/de/index.jsp#/content/forms/fp/admin/submit/data/latest file available in the folder
Gerar formulários adaptáveis com vinculação JSON generate-adaptive-forms-with-json-binding
Use o Serviço Automated forms conversion a ser convertido o exemplo de formulário de pedido de empréstimo para um formulário adaptável com vinculação de dados. Certifique-se de não selecionar a opção Generate adaptive form(s) without data bindings ao gerar o formulário adaptável.
Usar esquema JSON como fonte de dados jsonwithdatabinding
Caso de uso: Você gera um formulário adaptável com vinculação de dados JSON usando o serviço Automated forms conversion. O serviço de preenchimento prévio e o envio de formulário funcionam perfeitamente. Você não precisa de nenhuma etapa de configuração.
Antes de executar o caso de uso, verifique se um formulário adaptável com vínculo de dados.
Execute as seguintes etapas:
-
Selecione o convertido exemplo de formulário de pedido de empréstimo disponível no output pasta novamente e selecione Preview > Preview with Data.
Baixar arquivo de dados de amostra
-
Modifique os valores do campo, se necessário, e envie o formulário adaptável. Os dados enviados estão disponíveis no seguinte local no repositório crx:
http://host name:port/crx/de/index.jsp#/content/forms/fp/admin/submit/data/latest file available in the folder
Converter dados JSON do formulário adaptável enviado para o formato XML convert-submitted-adaptive-form-data-to-xml
Quando você insere valores em campos de formulário adaptável e os envia, os dados são disponibilizados no formato JSON no repositório crx. É possível converter o formato dos dados JSON em XML usando org.apache.sling.commons.json.xml ou o seguinte código de exemplo:
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));
}
}