Criar um formulário adaptável usando um conjunto de formulários adaptáveis create-an-adaptive-form-using-a-set-of-adaptive-forms

O Adobe recomenda o uso da captura de dados moderna e extensível Componentes principaispara criação de um novo Forms adaptávelou adição de Forms adaptável às páginas do AEM Sites. Esses componentes representam um avanço significativo na criação do Forms adaptável, garantindo experiências de usuário impressionantes. Este artigo descreve a abordagem mais antiga para criar o Forms adaptável usando componentes de base.

Visão geral overview

Em um fluxo de trabalho, como um aplicativo para abrir uma conta bancária, os usuários preenchem vários formulários. Em vez de pedir que eles preencham um conjunto de formulários, você pode empilhá-los e criar um formulário grande (formulário pai). Ao adicionar um formulário adaptável ao formulário maior, ele é adicionado como um painel (formulário filho). Você adiciona um conjunto de formulários secundários para criar um formulário principal. Você pode mostrar ou ocultar painéis com base na entrada do usuário. Os botões do formulário pai, como enviar e redefinir, substituem os botões do formulário filho. Para adicionar um formulário adaptável no formulário pai, você pode arrastar e soltar o formulário adaptável do navegador de ativos (como fragmentos de formulário adaptáveis).

Os recursos disponíveis são:

  • Criação independente
  • Mostrar/ocultar formulários apropriados
  • Carregamento lento

Recursos como criação independente e carregamento lento fornecem melhorias de desempenho em relação ao uso de componentes individuais para criar o formulário pai.

NOTE
Não é possível usar formulários/fragmentos adaptáveis baseados em XFA como formulários secundários ou principais.

Nos bastidores behind-the-scenes

Você pode adicionar formulários e fragmentos adaptáveis baseados em XSD no formulário principal. A estrutura do formulário principal é igual à qualquer formulário adaptável. Quando você adiciona um formulário adaptável como um formulário filho, ele é adicionado como um painel no formulário pai. Os dados de um formulário filho vinculado são armazenados no dataraiz da afBoundData seção do esquema XML do formulário pai.

Por exemplo, seus clientes preenchem um formulário de inscrição. Os dois primeiros campos do formulário são nome e identidade. Seu XML é:

<afData>
    <afUnboundData>
        <data />
    </afUnboundData>
    <afBoundData>
        <data xmlns:xfa="https://www.xfa.org/schema/xfa-data/1.0/">
            <applicantName>Sarah Rose</applicantName>
            <applicantId>1234</applicantId>
        </data>
    </afBoundData>
</afData>

Você adiciona outro formulário no aplicativo que permite que os clientes preencham o endereço comercial. A raiz do esquema do formulário filho é officeAddress. Aplicar bindref /application/officeAddress ou /officeAddress. Se bindrefnão for fornecido, o formulário filho será adicionado como o officeAddress subárvore. Consulte o XML do formulário abaixo:

<afData>
    <afUnboundData>
        <data />
    </afUnboundData>
    <afBoundData>
        <data xmlns:xfa="https://www.xfa.org/schema/xfa-data/1.0/">
            <applicantName>Sarah Rose</applicantName>
            <applicantId>1234</applicantId>
            <officeAddress>
                <addressLine>1, Geometrixx City</addressLine>
                <zip>11111</zip>
            </officeAddress>
        </data>
    </afBoundData>
</afData>

Se você inserir outro formulário que permita que seus clientes forneçam o endereço residencial, aplique bindref /application/houseAddress or /houseAddress.O XML tem a seguinte aparência:

<afData>
    <afUnboundData>
        <data />
    </afUnboundData>
    <afBoundData>
        <data xmlns:xfa="https://www.xfa.org/schema/xfa-data/1.0/">
            <applicantName>Sarah Rose</applicantName>
            <applicantId>1234</applicantId>
            <officeAddress>
                <addressLine>1, Geometrixx City</addressLine>
                <zip>11111</zip>
            </officeAddress>
            <houseAddress>
                <addressLine>2, Geometrixx City</addressLine>
                <zip>11111</zip>
            </houseAddress>
        </data>
    </afBoundData>
</afData>

Se desejar manter o mesmo nome de subraiz que a raiz do esquema ( Addressneste exemplo), use bindrefs indexados.

Por exemplo, aplicar bindrefs /application/address[1] ou /address[1] e /application/address[2] ou /address[2]. O XML do formulário é:

<afData>
    <afUnboundData>
        <data />
    </afUnboundData>
    <afBoundData>
        <data xmlns:xfa="https://www.xfa.org/schema/xfa-data/1.0/">
            <applicantName>Sarah Rose</applicantName>
            <applicantId>1234</applicantId>
            <address>
                <addressLine>1, Geometrixx City</addressLine>
                <zip>11111</zip>
            </address>
            <address>
                <addressLine>2, Geometrixx City</addressLine>
                <zip>11111</zip>
            </address>
        </data>
    </afBoundData>
</afData>

É possível alterar a subárvore padrão do formulário/fragmento adaptável usando o bindRef propriedade. A variável bindRef permite especificar o caminho que aponta para um local na estrutura de árvore do esquema XML.

Se o formulário filho for desvinculado, seus dados serão armazenados no dataraiz da afUnboundData seção do esquema XML do formulário pai.

É possível adicionar um formulário adaptável como formulário filho várias vezes. Certifique-se de que o bindRef é modificado corretamente para que cada instância usada do formulário adaptável aponte para uma subraiz diferente na raiz de dados.

NOTE
Se diferentes formulários/fragmentos forem mapeados para a mesma subraiz, os dados serão substituídos.

Adicionar um formulário adaptável como um formulário filho usando o navegador de ativos adding-an-adaptive-form-as-a-child-form-using-asset-browser

Execute as seguintes etapas para adicionar um formulário adaptável como um formulário filho usando o navegador de ativos.

  1. Abra o formulário principal no modo de edição.

  2. Na barra lateral, clique em Assets assets-browser . Em Ativos, selecione Formulário adaptável no menu suspenso.
    Seleção de formulário adaptável em Ativos

  3. Arraste e solte o formulário adaptável que deseja adicionar como um formulário filho.
    Arraste e solte o formulário adaptável no site O formulário adaptável solto é adicionado como um formulário filho.

recommendation-more-help
19ffd973-7af2-44d0-84b5-d547b0dffee2