Sobre subformulários

Subformulário corresponde a uma seção do design de formulário que fornece gerenciamento de ancoragem, layout e geometria para os objetos. Os objetos em um subformulário podem ser organizados em linhas, colunas ou em algum outro tipo de distribuição equilibrada.

É possível usar mais de um subformulário em um design de formulário. É possível colocar subformulários dentro de outros subformulários. Esse relacionamento é exibido na paleta Hierarquia.

Os subformulários são usados para organizar um formulário em seções diferentes. Os subformulários também podem ser usados para criar formulários que contenham seções que ampliam e se encolhem automaticamente para acomodar os dados. Se um subformulário for definido para crescer, o layout do formulário será alterado em resposta à quantidade de dados mesclados durante a renderização. Quando os dados são unidos, os subformulários garantem que os objetos e seus dados sejam posicionados de forma consistente entre si. Os subformulários podem ser usados para coincidir com a hierarquia de dados nos dados XML.

Se um formulário com layout fixo estiver sendo projetado, não será necessário trabalhar com mais de um subformulário, pois o subformulário padrão posiciona os objetos automaticamente.

É possível manipular as propriedades de um subformulário nas guias Subformulário e Vínculo da paleta Objeto. As seguintes propriedades podem ser definidas:

  • Fornecer um nome significativo ao subformulário (recomendado).

  • Permitir que o subformulário avance por quebras de páginas ou forçar a sua renderização na página seguinte quando os dados forem unidos.

  • Especificar se o subformulário deve ser posicionado após o subformulário anterior, na área de conteúdo especificada, ou em uma página formatada de acordo com a página mestra especificada.

  • Especificar se o subformulário deve ser posicionado na mesma área de conteúdo do subformulário anterior ou do subformulário seguinte.

  • Especificar a ordem de fluxo dos dados unidos após o posicionamento do subformulário.

  • Definir o subformulário como visível, invisível ou oculto.

  • Especificar uma localidade para o subformulário.

  • Especificar se o subformulário repetirá seus objetos sempre que um único item de dados for fornecido para um de seus objetos.

  • Se necessário, criar um sobrefluxo anterior ou posterior para um subformulário capaz de repetir a renderização de seus objetos.

  • Especificar um método de vínculo para controle de como os objetos do subformulário são mapeados para os dados.

Todos os formulários contêm um subformulário raiz (pai). Na paleta Hierarquia, o subformulário raiz (formulário1) é exibido como o nó do nível superior com o subformulário padrão de página (Subformulário sem título) indicado como filho abaixo do subformulário raiz.

O Designer adiciona automaticamente a cada página um subformulário padrão que abrange toda a página e corresponde em tamanho e posição à área de conteúdo padrão na página mestra. Todos os subformulários adicionados subsequentemente às páginas serão aninhados e aparecerão abaixo do subformulário padrão de página na paleta Hierarquia.

A.
Subformulário raiz (pai)

B.
Subformulário padrão

C.
Novo subformulário

Na paleta Hierarquia, cada subformulário é representado por um nó, e os objetos vinculados em um subformulário são exibidos abaixo do nó do subformulário. Os filhos do subformulário não herdam as alterações feitas no nível desse subformulário, ou seja, as propriedades de cada objeto devem ser definidas individualmente.

A.
Subformulário renomeado

B.
Objetos no subformulário

Na amostra de Pedido de compra, o subformulário raiz, formulário1, é exibido como o nó do nível superior, com o subformulário padrão de página, Pedidocompra, indicado abaixo como filho desse subformulário raiz. Os outros subformulários usados para vincular objetos na página (cabeçalho, detalhecabeçalho, detalhe e total) estão aninhados abaixo do subformulário de página. Na paleta Hierarquia, cada subformulário é representado por um nó, e os objetos vinculados em um subformulário são exibidos abaixo de cada um desses nós.