Adicionar controles de dados repetidos
Aplica-se a
Adicionar controlos que recolhem uma informação de um utilizador ou que apresentam uma informação a um utilizador é fácil, mas por vezes não é suficiente. Por vezes, poderá ter de recolher vários pontos de dados, como uma lista de itens para um relatório de despesas ou apresentar vários pontos de dados, como uma lista de utilizadores. Embora possa adicionar vários controlos ou até mesmo uma lista de controlos ao formulário e esperar que tenha adicionado o suficiente, esta não é a forma mais eficiente de estruturar um formulário. Para acomodar situações como esta, Microsoft InfoPath 2010 tem vários controlos que lhe permitem capturar ou apresentar dados repetidos, como tabelas de bases de dados ou listas de comprimentos variados.
Neste artigo
Acerca da Repetição de Controlos de Dados
Secção de Repetição
Os controlos de secção de repetição contêm outros controlos, como um controlo de secção normal, mas permitem-lhe inserir o número de secções necessário. Por exemplo, imagine um formulário de aplicação de seguro em que os utilizadores têm de listar os nomes e as idades dos seus dependentes. Pode estruturar este tipo de formulário como um formulário de papel, com três campos de marcador de posição, que pressupõe que a maioria das pessoas não tem mais do que três dependentes. No entanto, se alguém tiver mais de três, não terá espaço para adicionar dependentes adicionais. Ao utilizar um controlo de secção de repetição, os utilizadores podem adicionar o número de campos necessários para listar os dependentes.
Apenas um contentor vazio será inserido depois de inserir um controlo de secção de repetição num modelo de formulário. Para que o controlo de secção de repetição seja útil, tem de inserir controlos adicionais dentro do controlo de secção de repetição, como campos de tabela ou texto.
Quando os utilizadores movem o ponteiro sobre a secção de repetição, é apresentado um botão azul com uma seta no canto superior esquerdo. Este é o botão de menu de atalho. Os utilizadores podem clicar neste botão para ver as opções para inserir ou remover a secção de repetição.
Utilize uma secção de repetição quando quiser:
- Recolha várias instâncias do mesmo tipo de dados, como no caso de adicionar dependentes a uma aplicação de seguro.
- Apresentar quantidades variáveis de dados num formulário, como apresentar registos de funcionários de uma base de dados e apresentar 1 registo se apenas 1 for devolvido ou 10 se forem devolvidos 10.
- Evite áreas de marcador de posição vazias que ocupam espaço crítico no modelo de formulário.
Tabela de Repetição
Embora as secções de repetição lhe permitam adicionar e esquematize controlos como faria numa secção normal, por vezes é necessário um formato tabular. Adicione uma tabela de repetição para apresentar dados numa tabela, como a partir de uma base de dados, ou para permitir que os utilizadores adicionem linhas e introduzam dados tabulares adicionais.
Uma tabela de repetição consiste em três partes, a linha de cabeçalho, uma ou mais linhas de dados e a linha do rodapé. Normalmente, a linha de cabeçalho é utilizada para cabeçalhos de coluna e a linha de rodapé pode ser utilizada para inserir caixas de texto ou caixas de expressão que somam valores das linhas de dados. As linhas de dados repetem-se, quantas vezes forem necessárias, para acomodar os dados que são preenchidos na tabela, quer dinamicamente quer como resultado da introdução de dados na tabela por parte de um utilizador. Existe apenas uma linha de cabeçalho e rodapé e, por predefinição, apenas a linha de cabeçalho e uma linha de dados estão visíveis.
Utilize uma tabela de repetição quando quiser:
- Permitir que os utilizadores introduzam dados num formato estruturado e tabular.
- Recolha itens de linha, dados numéricos e outros tipos de dados que são apresentados melhor numa tabela.
- Conserve espaço no modelo de formulário ao apresentar apenas tantas linhas como contêm dados reais.
- Apresentar ou trabalhar com registos de uma base de dados, serviço Web ou outra origem de dados numa tabela no modelo de formulário.
Secção Recursiva de Repetição
Uma secção recursiva repetida contém outros controlos, pode ser inserida dentro de si e está vinculada (enlace: para ligar um controlo a um campo ou grupo na origem de dados para que os dados introduzidos no controlo sejam guardados. Quando um controlo é desvinculado, não está ligado a um campo ou grupo, pelo que os dados introduzidos no controlo não serão guardados.) a grupos de referência aninhados (grupo de referência: um grupo associado a outro grupo para que as respetivas propriedades e propriedades dos grupos e campos que contêm correspondam sempre. Se as propriedades de um grupo forem alteradas, o outro grupo é atualizado automaticamente.). Pode utilizar secções recursivas repetidas para criar conteúdo hierárquico, como um destaque.
Tabela de Repetição Horizontal
Uma tabela de repetição horizontal é uma secção de repetição com uma tabela no interior que contém o número indicado de linhas que se repete horizontalmente e uma tabela que contém cabeçalhos de linha para o lado. Estes componentes individuais foram agrupados numa coleção pré-configurada que pode conter ou recolher dados tabulares que, à medida que são adicionados mais dados, se expandem ao adicionar colunas em vez de linhas. Por exemplo, pode utilizar uma tabela de repetição horizontal para recolher dados de vendas para cada trimestre. Se o modelo de formulário estiver ligado a uma base de dados, também pode utilizar uma tabela de repetição horizontal para apresentar ou trabalhar com registos dessa base de dados.
Uma tabela de repetição horizontal consiste em duas partes, a coluna de cabeçalho que aparece por predefinição e uma coluna de dados que se repete, conforme necessário para acomodar os dados que são preenchidos na tabela, quer dinamicamente quer como resultado da introdução de dados na tabela por parte de um utilizador.
Utilize uma tabela de repetição horizontal quando quiser:
- Permitir que os utilizadores introduzam dados num formato estruturado e tabular.
- Recolher dados de um utilizador que é melhor apresentado numa tabela.
- Conserve espaço no seu modelo de formulário ao apresentar apenas tantas colunas como contêm dados reais.
- Apresentar ou trabalhar com registos de uma base de dados, serviço Web ou outra origem de dados numa tabela no modelo de formulário.
Forma Mestre/Detalhe
Se espera que os utilizadores trabalhem com grandes quantidades de dados no seu formulário( por exemplo, com múltiplos registos numa base de dados), pode utilizar um controlo de master/detalhe para facilitar a gestão desses dados. Quando um utilizador seleciona um item num controlo de master, as informações relacionadas sobre esse item são apresentadas num controlo de detalhes.
Por exemplo, pode utilizar um controlo de master/detalhe ao estruturar um formulário de recursos humanos que está ligado a uma base de dados de registos de funcionários. O controlo master pode apresentar o nome do funcionário e o cargo, e o controlo de detalhes pode apresentar a localização dos funcionários, a data de contratação, a data de nascimento, etc. Em termos de base de dados, este é o equivalente a uma relação um-para-um.
Da mesma forma, pode utilizar o controlo master para apresentar um conjunto de registos (por exemplo, nomes de clientes) e o controlo de detalhes para apresentar registos relacionados (por exemplo, encomendas de clientes). Em termos de base de dados, este é o equivalente a uma relação um-para-muitos.
A relação master/detalhe
Um controlo de master/detalhe é, na verdade, um conjunto de dois controlos relacionados. Um destes controlos é o controlo de master designado; o outro é o controlo de detalhes designado. O controlo master é sempre uma tabela de repetição. O controlo de detalhes pode ser uma tabela de repetição ou uma secção de repetição. Pode criar a relação master/detalhe ao inserir os controlos de repetição adequados no formulário e, em seguida, alterar as propriedades de cada controlo. Em alternativa, pode inserir um controlo de master/detalhe predefinido a partir da secção Contentores no painel de tarefas Controlos.
Quando insere um controlo de master/detalhe a partir do painel de tarefas Controlos, o Microsoft Office InfoPath 2010 estabelece uma relação um-para-um entre o controlo master e o controlo de detalhes. Isto significa que cada linha selecionada no controlo master tem apenas um único resultado correspondente no controlo de detalhes. Numa relação um-para-um típica, os controlos de master e detalhes estão vinculados ao mesmo grupo de repetição na origem de dados.
Se preferir, pode especificar campos chave na origem de dados que contêm dados relacionados para estabelecer uma relação um-para-muitos para um controlo de master/detalhe. Neste tipo de relação, cada seleção no controlo master pode resultar em múltiplas correspondências no controlo de detalhes. Por exemplo, se os utilizadores selecionarem um registo de fornecedor num controlo de master, podem ver os produtos associados a esse fornecedor no controlo detalhado. Numa relação um-para-muitos típica, os controlos de master e detalhes estão vinculados a grupos de repetição separados na origem de dados
Para estabelecer uma relação um-para-muitos, tem de utilizar opções no separador Mestre/Detalhe na caixa de diálogo Propriedades de cada controlo para especificar os campos de chave adequados.
Um controlo de master/detalhe é, na verdade, um conjunto de dois controlos relacionados. Um controlo é o controlo de master designado e o outro é o controlo de detalhes. O controlo master é sempre uma tabela de repetição. O controlo de detalhes pode ser uma tabela de repetição ou uma secção de repetição.
Utilize um controlo de master/detalhe quando quiser:
- Permita que os utilizadores que estão a preencher formulários baseados no seu modelo de formulário funcionem de forma mais eficiente com grandes quantidades de dados.
- Apresentar o equivalente a uma relação um-para-um. Por exemplo, pode utilizar um controlo de master/detalhe quando estrutura um modelo de formulário de recursos humanos que está ligado a uma base de dados de registos de funcionários. O controlo master pode apresentar o nome e o cargo de um funcionário e o controlo de detalhes pode apresentar a localização, a data de contratação e a data de nascimento de um funcionário.
- Apresentar o equivalente a uma relação um-para-muitos. Por exemplo, pode utilizar o controlo master para apresentar um conjunto de registos (por exemplo, nomes de clientes) e o controlo de detalhes para apresentar registos relacionados (por exemplo, encomendas de clientes).
O InfoPath fornece um controlo de master/detalhe predefinido que pode inserir com o painel de tarefas Controlos. Também pode criar um controlo de master/detalhe ao inserir uma tabela de repetição e uma secção de repetição (ou duas tabelas de repetição) e, em seguida, alterar as propriedades de cada controlo.
Se o modelo de formulário se destinar principalmente à visualização no ecrã, considere colocar o controlo de detalhes dentro de um controlo Região de Deslocamento no modelo de formulário. Dessa forma, se houver uma grande quantidade de dados apresentados no controlo, os seus utilizadores podem percorrer os dados. Tenha em atenção que esta não é a melhor opção se achar que os utilizadores vão querer imprimir os respetivos formulários, uma vez que quaisquer dados que estejam ocultos na região de deslocamento no ecrã também não serão visíveis no formulário impresso.
Grupo de Escolha de Repetição
Pode inserir um grupo de escolha de repetição no seu formulário para que os utilizadores possam adicionar vários grupos de escolha (grupo de escolha: um controlo que é utilizado para apresentar um conjunto de escolhas mutuamente exclusivas. Por predefinição, um grupo de escolha contém duas secções de escolha, uma das quais aparece para o utilizador como a escolha predefinida no formulário.) ao preenchê-lo.
Quando os utilizadores movem o ponteiro do rato sobre a opção predefinida no formulário, é apresentado um botão de menu de atalho no canto superior esquerdo do grupo de escolha de repetição. Os utilizadores podem clicar neste botão para ver opções para inserir, remover ou substituir opções.
Por exemplo, num formulário de viagem, pode utilizar um grupo de escolha de repetição para permitir que os utilizadores introduzam informações sobre as suas viagens de negócios. Para cada segmento de transporte, os utilizadores podem selecionar uma de três opções: voo, carro ou comboio. Cada escolha apresenta um conjunto diferente de campos.
Inserir Controlos de Dados Repetidos
Inserir uma secção recursiva repetida
Observação
Só pode inserir um controlo Secção Recursiva de Repetição num formulário criado com o modelo de formulário Formulário em Branco (Preenchimento do InfoPath) ou que tenha a Compatibilidade definida como Formulário de Preenchimento do InfoPath na caixa de diálogo Opções de Formulário .
Inserir uma secção recursiva repetida (criar automaticamente a origem de dados)
Se optar por fazer com que o Microsoft Office InfoPath 2010 crie a origem de dados quando insere uma secção recursiva repetida, o InfoPath cria um grupo de repetição que contém uma referência para si próprio.
Coloque o ponto de inserção onde pretende inserir a secção recursiva de repetição.
Se o painel de tarefas Controlos não estiver visível, clique no botão Painel de Controlos no canto inferior direito da secção Controlos no separador Base.
No painel de tarefas Controlos, selecione a caixa de marcar Criar automaticamente a origem de dados.
Observação
Se a caixa de marcar não estiver disponível, a estrutura do formulário não permite que a origem de dados seja criada automaticamente. Tem de inserir uma secção recursiva repetida que esteja vinculada a um grupo de repetição existente ou a um grupo que criar.
Em Controlos de contentores , clique em Repetir Secção Recursiva.
Para adicionar um controlo à secção, arraste um controlo do painel de tarefas Controlos para a secção.
Observação
Não deve mover um controlo que já se encontra no formulário para esta secção, a menos que o campo do controlo já faça parte do grupo da secção.
Inserir uma secção recursiva repetida (vincular a um grupo de repetição existente)
Coloque o ponto de inserção onde pretende inserir a secção recursiva de repetição.
Se o painel de tarefas Campos não estiver visível, clique em Mostrar Campos na secção Dados do Formulário no separador Dados .
No painel de tarefas Campos , clique com o botão direito do rato no grupo ao qual pretende vincular a secção recursiva repetida.
Clique em Repetir Secção Recursiva.
Observação
O grupo tem de se repetir e tem de conter uma referência a si próprio. Para criar um grupo deste tipo, clique com o botão direito do rato num grupo de repetição no painel de tarefas Campos , clique em Referência e, em seguida, referencie o próprio grupo (o grupo em que clicou com o botão direito do rato).
Dica
Também pode inserir uma secção recursiva repetida que esteja vinculada a um grupo existente através do painel de tarefas Controlos, desde que a caixa criar automaticamente a origem de dados marcar esteja desmarcada.
Inserir um Grupo de Escolha de Repetição
Inserir um grupo de escolha de repetição (criar automaticamente a origem de dados)
Pode fazer com que o Microsoft Office InfoPath 2010 crie automaticamente a origem de dados quando insere grupos de escolha repetidos (bem como outros controlos). Se o fizer, o InfoPath cria grupos vinculados às secções de escolha dentro do grupo de escolha de repetição. Além disso, o InfoPath cria um grupo "virtual" vinculado ao grupo de escolha de repetição. O nome de um grupo virtual é seguido por (escolha) no painel de tarefas Campos.
Observação
Só pode inserir um controlo Grupo de Escolha de Repetição num formulário criado com o modelo de formulário Formulário em Branco (InfoPath Filler) ou que tenha Compatibilidade definida como Formulário de Preenchimento do InfoPath na caixa de diálogo Opções de Formulário.
Coloque o ponto de inserção onde pretende inserir o grupo de escolha de repetição.
Se o painel de tarefas Controlos não estiver visível, clique no botão Painel de Controlos no canto inferior direito da secção Controlos no separador Base .
No painel de tarefas Controlos, selecione a caixa de marcar Criar automaticamente a origem de dados.
Em Contentores, clique em Grupo de Escolha de Repetição.
É apresentado um grupo de escolha de repetição que contém duas secções de escolha no formulário.Para adicionar controlos às secções de escolha dentro do grupo de escolha de repetição, efetue um dos seguintes procedimentos:
- Para adicionar controlos à secção de escolha predefinida, arraste o controlo que pretende do painel de tarefas Controlos para a secção de escolha com o nome Secção Escolha (predefinição).
- Para adicionar controlos à secção de escolha alternativa, arraste o controlo que pretende do painel de tarefas Controlos para a secção de escolha com o nome Secção Escolha.
Para testar a secção, no separador Base , clique em Pré-visualizar.
Para oferecer mais do que duas opções aos utilizadores, pode inserir secções de escolha adicionais dentro do grupo de escolha de repetição. Para tal, coloque o ponto de inserção dentro do grupo de escolha de repetição e, em seguida, clique em Secção Escolha em Contentores no painel de tarefas Controlos .
Inserir um grupo de escolha de repetição (vincular a um grupo existente)
Coloque o ponto de inserção onde pretende inserir o grupo de escolha de repetição.
Se o painel de tarefas Campos não estiver visível, clique em Mostrar Campos na secção Dados do Formulário no separador Dados .
No painel de tarefas Campos , clique com o botão direito do rato no grupo ao qual pretende vincular o grupo de escolha de repetição e, em seguida, clique em Grupo de Escolha de Repetição.
Observação
Se o Grupo de Escolha repetida não estiver disponível, o grupo ao qual está a tentar vincular poderá não suportar este tipo de controlo. Os grupos de escolha de repetição só podem ser vinculados a grupos virtuais repetidos. Na origem de dados, os grupos virtuais são apresentados como (escolha).
Para testar a secção, no separador Base , clique em Pré-visualizar.
Dica
Também pode inserir um grupo de escolha de repetição vinculado a um grupo existente através do painel de tarefas Controlos, desde que a caixa de marcar Criar automaticamente a origem de dados esteja desmarcada.
Inserir uma tabela de repetição
Coloque o cursor onde pretende inserir o controlo.
Se o painel de tarefas Controlos não estiver visível, clique no botão Painel de Controlos no canto inferior direito da secção Controlos no separador Base .
Em Contentores, clique em Tabela de Repetição.
Se estiver a inserir a tabela de repetição num novo modelo de formulário em branco, então:
- Na caixa Número de colunas , introduza o número de colunas que a tabela deve ter e, em seguida, clique em OK.
- A tabela de repetição é criada com uma caixa de texto em cada coluna. Para converter uma caixa de texto num tipo de controlo diferente, clique com o botão direito do rato na caixa de texto, aponte para Alterar Controlo e, em seguida, clique no controlo pretendido.
Se estiver a inserir a tabela de repetição num modelo de formulário baseado numa origem de dados existente:
- Na primeira página do Assistente de Enlace de Tabelas Repetidas, clique na origem de dados que pretende utilizar na lista Origem de dados e, em seguida, clique no grupo de repetição
ao qual pretende vincular as linhas da tabela.
Para criar um novo grupo de repetição, clique com o botão direito do rato no grupo ao qual pretende adicionar o grupo de repetição, clique em Adicionar no menu de atalho e, em seguida, na caixa de diálogo Adicionar Campo ou Grupo , especifique as propriedades do grupo de repetição. - Clique em Avançar.
- Na segunda página do Assistente de Enlace de Tabela de Repetição , faça duplo clique nos campos na lista Enlace de dados que pretende adicionar como colunas à tabela.
Para criar um novo campo na lista Enlace de dados, clique com o botão direito do rato no grupo ao qual a tabela de repetição está vinculada, clique em Adicionar e, em seguida, na caixa de diálogo Adicionar Campo ou Grupo , especifique as propriedades do campo. - Para reordenar as colunas, selecione uma coluna na lista Colunas na tabela e, em seguida, clique em Mover Para Cima ou Mover Para Baixo.
- Na primeira página do Assistente de Enlace de Tabelas Repetidas, clique na origem de dados que pretende utilizar na lista Origem de dados e, em seguida, clique no grupo de repetição
Inserir uma secção de repetição
No modelo de formulário, coloque o cursor onde você deseja inserir o controle.
Se o painel de tarefas Controlos não estiver visível, clique no botão Painel de Controlos no canto inferior direito da secção Controlos no separador Base .
Em Contentores, clique em Secção de Repetição.
Se estiver a inserir uma secção de repetição num novo modelo de formulário em branco:
Para adicionar controlos à secção de repetição, arraste os controlos que pretende do painel de tarefas Controlos para a secção de repetição no modelo de formulário.
Observação
Não deve mover um controlo que já se encontra no modelo de formulário para a secção, a menos que o campo do controlo já faça parte do grupo da secção na origem de dados. Caso contrário, o enlace do controlo poderá quebrar.
Para adicionar uma etiqueta ao controlo, escreva texto acima do mesmo.
Se estiver a inserir uma secção de repetição num modelo de formulário baseado numa origem de dados existente:
- Na caixa de diálogo Enlace de Secção de Repetição , selecione o grupo de repetição no qual pretende armazenar os dados da secção de repetição e, em seguida, clique em OK.
- Adicione controlos à secção de repetição e, em seguida, vinculte-os aos campos adequados na origem de dados.
- O InfoPath usa o nome do campo ou do grupo como o rótulo do controle. Se necessário, altere o texto do rótulo.
Também pode utilizar o painel de tarefas Campos para inserir controlos. No painel de tarefas Campos , clique com o botão direito do rato no grupo de repetição ao qual pretende vincular a secção de repetição e, em seguida, clique em Secção de Repetição.
Inserir um controlo Mestre/Detalhe
Observação
Só pode inserir um controlo Master/Detail num formulário que tenha sido criado com o modelo de formulário Formulário em Branco (InfoPath Filler) ou que tenha a Compatibilidade definida como Formulário de Preenchimento do InfoPath na caixa de diálogo Opções do Formulário .
Inserir um controlo de master/detalhe num novo modelo de formulário em branco
O InfoPath fornece um controlo de master/detalhe predefinido que pode inserir com o painel de tarefas Controlos. Também pode criar um controlo de master/detalhe ao inserir uma tabela de repetição e uma secção de repetição (ou duas tabelas de repetição) e, em seguida, alterar as propriedades de cada controlo.
Quando você cria um modelo de formulário novo e em branco, a caixa de seleção Criar fonte de dados automaticamente, no painel de tarefas Controles, é selecionada por padrão. Isso permite que o InfoPath crie campos e grupos automaticamente na fonte de dados conforme você adiciona controles ao modelo de formulário. Esses campos e grupos são representados por ícones de pasta e arquivo no painel de tarefas Fonte de Dados.
- No modelo de formulário, coloque o cursor onde você deseja inserir o controle.
- Se o painel de tarefas Controlos não estiver visível, clique no botão Painel de Controlos no canto inferior direito da secção Controlos no separador Base .
- Em Contentores, clique em Mestre/Detalhe.
- Na caixa Número de colunas no master na caixa de diálogo Inserir Mestre/Detalhe, introduza o número de colunas para o controlo master.
- Na caixa Número de campos em detalhe , introduza o número de campos para o controlo de detalhes e, em seguida, clique em OK.
São inseridos dois controlos no modelo de formulário : Tabela de Repetição (master) e Secção de Repetição (detalhe). - Para testar a relação master/detalhe, no separador Base, clique em Pré-visualizar e, em seguida, introduza dados no controlo master. Os dados relacionados devem aparecer no controlo de detalhes. Além disso, clique em linhas diferentes no controlo master para confirmar que os dados correspondentes são apresentados no controlo de detalhes.
Inserir um controlo de master/detalhe num modelo de formulário baseado numa origem de dados existente
Se você basear o design do seu modelo de formulário em um serviço da Web, banco de dados ou arquivo em linguagem XML existente, o InfoPath deriva os campos e grupos no painel de tarefas Fonte de Dados utilizando essa fonte de dados existente. Neste cenário, pode inserir um controlo de master/detalhe a partir do painel de tarefas Controlos, conforme descrito no procedimento seguinte.
Os controlos principais e detalhados podem ser vinculados ao mesmo grupo de repetição ou a diferentes grupos de repetição, consoante as suas necessidades. Os controlos que aparecem dentro de um controlo de master/detalhe estão vinculados a campos que fazem parte de um grupo de repetição.
- No modelo de formulário, coloque o cursor onde você deseja inserir o controle.
- Se o painel de tarefas Controlos não estiver visível, clique no botão Painel de Controlos no canto inferior direito da secção Controlos no separador Base .
- Em Contentores, clique em Tabela de Repetição.
- Na primeira página do Assistente de Enlace de Tabela de Repetição , clique no grupo de repetição ao qual pretende vincular as linhas da tabela e, em seguida, clique em Seguinte. Se a sua tabela tiver apenas uma coluna, pode selecionar um campo de repetição em vez de um grupo de repetição.
Para criar um novo grupo de repetição para vincular a tabela, clique com o botão direito do rato no grupo ao qual pretende adicionar o grupo de repetição, clique em Adicionar e, em seguida, na caixa de diálogo Adicionar Campo ou Grupo , introduza as propriedades do grupo de repetição. - Para adicionar as colunas que pretende incluir na tabela, faça duplo clique nos campos na lista Enlace de dados .
Para criar um novo campo para adicionar como uma coluna, clique com o botão direito do rato no grupo ao qual a tabela está vinculada, clique em Adicionar no menu de atalho e, em seguida, na caixa de diálogo Adicionar Campo ou Grupo, introduza as propriedades do campo. - Para reorganizar as colunas, clique numa coluna na lista Colunas na tabela, clique em Mover Para Cima ou Mover Para Baixo e, em seguida, clique em Concluir.
- Faça duplo clique na etiqueta Tabela de Repetição por baixo da tabela no modelo de formulário.
- No separador Propriedades das Ferramentas de Controlo do friso, clique no Modelo Global/Detalhe.
- Clique em Definir como master, escreva o identificador ViewContext do controlo master na caixa ID Principal e, em seguida, clique em OK.
Para ver o identificador ViewContext de um controlo, clique com o botão direito do rato no controlo, clique em <Propriedades do Tipo> de Controlo e, em seguida, clique no separador Avançadas . O identificador ViewContext está visível na secção Código do separador. Pode realçar o valor junto à etiqueta ViewContext: e, em seguida, premir CTRL+C para copiar o valor para a área de transferência. Normalmente, ao configurar um controlo de master/detalhe, o controlo master é a própria tabela de repetição, pelo que utilizaria o identificador ViewContext da tabela de repetição que está a configurar neste passo. - Coloque o cursor no modelo de formulário onde pretende inserir a secção de repetição (o controlo de detalhes).
- Em Contentores , no painel de tarefas Controlos , clique em Secção de Repetição.
Em alternativa, pode utilizar outra tabela de repetição como controlo de detalhes. - Na primeira página do assistente Enlace de Secção de Repetição , clique no grupo de repetição ao qual pretende vincular a secção e, em seguida, clique em OK.
- Faça duplo clique na etiqueta Secção de Repetição que aparece abaixo da secção no modelo de formulário.
- No separador Propriedades das Ferramentas de Controlo do friso, clique em Mestre/Detalhe.
- Clique em Definir como detalhe e, em seguida, clique no nome do controlo master na lista Ligar a master ID. O nome que selecionar deve corresponder ao identificador ViewContext do controlo que especificou no passo 9.
- Para alterar a relação um-para-um predefinida do controlo de master/detalhe para uma relação um-para-muitos, clique em Por campo chave em Relação mestre/detalhe e, em seguida, clique em Selecionar XPath
junto ao campo Chave (master) e Campo de chave (detalhe) para especificar os campos de chave da origem de dados que contêm os dados relacionados adequados para criar uma relação um-para-muitos. - Para testar a relação master/detalhe, no separador Base, clique em Pré-visualizar e, em seguida, introduza dados no controlo master. Os dados relacionados devem aparecer no controlo de detalhes. Além disso, clique em linhas diferentes no controlo master para confirmar que os dados correspondentes são apresentados no controlo de detalhes.
Também pode utilizar o painel de tarefas Campos para inserir controlos de master/detalhe. Para criar o controlo master, no painel de tarefas Campos, clique com o botão direito do rato no grupo de repetição ao qual pretende vincular o controlo de master e, em seguida, clique em Tabela de Repetição. Siga os mesmos passos gerais para criar o controlo de detalhes.
Alterar a relação de master/detalhe predefinida
Quando insere um controlo de master/detalhe no modelo de formulário através do painel de tarefas Controlos, o InfoPath estabelece uma relação um-para-um entre o controlo de master e o controlo de detalhes. Uma relação um-para-um significa que, para cada seleção no controlo master, é apresentado um único resultado correspondente no controlo de detalhes.
Pode alterar a relação master/detalhe da relação um-para-um predefinida para uma relação um-para-muitos. Uma relação um-para-muitos significa que, para cada seleção no controlo master, podem aparecer vários resultados correspondentes no controlo de detalhes.
Quando insere um controlo de master/detalhe no modelo de formulário, o InfoPath insere uma tabela de repetição e uma secção de repetição por predefinição. Ambos os controlos estão vinculados ao mesmo grupo de repetição na origem de dados. Por predefinição, ambos os controlos contêm outros controlos vinculados a campos nesse grupo de repetição. No entanto, numa relação um-para-muitos, master e os controlos de detalhe estão normalmente vinculados a grupos de repetição separados.
Se inseriu um controlo de master/detalhe no seu modelo de formulário a partir do painel de tarefas Controlos e pretender estabelecer uma relação um-para-muitos em vez de uma relação um-para-um, pode eliminar o controlo de detalhes que o InfoPath cria. Em seguida, pode criar um novo controlo de detalhes que melhor se adeque às suas necessidades, conforme descrito no seguinte procedimento:
Selecione a secção de repetição designada como controlo de detalhes e, em seguida, prima DELETE.
Insira uma nova secção de repetição no modelo de formulário:
- No modelo de formulário, coloque o cursor onde você deseja inserir o controle.
- Se o painel de tarefas Controlos não estiver visível, clique no botão Painel de Controlos no canto inferior direito da secção Controlos no separador Base .
- No painel de tarefas Controlos, selecione a caixa de marcar Criar automaticamente a origem de dados.
- Em Inserir controlos, clique em Secção de Repetição.
Insira os controlos que pretende na secção de repetição:
- No modelo de formulário, coloque o cursor onde você deseja inserir o controle.
- Se o painel de tarefas Controlos não estiver visível, clique no botão Painel de Controlos no canto inferior direito da secção Controlos no separador Base .
- No painel de tarefas Controlos, selecione a caixa de marcar Criar automaticamente a origem de dados.
- Em Inserir controlos, clique no controlo que pretende inserir.
- Repita os passos 1 a 4 para cada controlo que pretende inserir.
Faça duplo clique no separador da secção de repetição no modelo de formulário.
Clique no Modelo Global/Detalhe no separador Propriedades das Ferramentas de Controlo do friso.
Em Definições de mestre/detalhe, clique em Definir como detalhe.
Na lista Ligar a master ID, clique no identificador ViewContext do controlo master.
Para ver o identificador ViewContext de um controlo, clique com o botão direito do rato no controlo, clique em <Propriedades do Tipo> de Controlo e, em seguida, clique no separador Avançadas . O identificador ViewContext está visível na secção Código do separador. Pode realçar o valor junto à etiqueta ViewContext: e, em seguida, premir CTRL+C para copiar o valor para a área de transferência.Em Relação mestre/detalhe, clique em Por campo de chave.
Clique em Selecionar XPath
junto à caixa Campo de chave (master) e, em seguida, na caixa de diálogo Selecionar um Campo ou Grupo, clique no campo de chave do controlo master e, em seguida, clique em OK.Clique em Selecionar XPath
junto à caixa Campo de chave (detalhe) e, em seguida, na caixa de diálogo Selecionar um Campo ou Grupo , clique no campo de chave do controlo de detalhes e, em seguida, clique em OK.
Se quiser criar uma relação um-para-muitos quando criar inicialmente um controlo de master/detalhe, considere criar manualmente o seu próprio controlo de master/detalhe em vez de utilizar o controlo de detalhes/master predefinido que está disponível no painel de tarefas Controlos. Pode criar o seu próprio controlo ao estabelecer uma relação de master/detalhe entre uma tabela de repetição e uma secção de repetição ou entre duas tabelas de repetição num modelo de formulário. Para tal, abra a caixa de diálogo Propriedades para cada controlo e, em seguida, designe um controlo como o controlo master e o outro como o controlo de detalhes. Ao modificar as propriedades do controlo de detalhes, pode configurar uma relação um-para-muitos através da utilização de campos de chave.
Insira uma tabela de repetição horizontal
Observação
Só pode inserir um controlo Tabela de Repetição Horizontal num formulário criado com o modelo de formulário Formulário em Branco (InfoPath Filler) ou que tenha Compatibilidade definida como Formulário de Preenchimento do InfoPath na caixa de diálogo Opções de Formulário .
No modelo de formulário, coloque o cursor onde você deseja inserir o controle.
Se o painel de tarefas Controlos não estiver visível, clique no botão Painel de Controlos no canto inferior direito da secção Controlos no separador Base .
Em Contentores, clique em Tabela de Repetição Horizontal.
Se estiver a inserir uma tabela de repetição horizontal num novo modelo de formulário em branco:
- Na caixa Número de linhas , introduza o número de linhas que pretende que a tabela tenha por predefinição.
- A tabela de repetição horizontal é criada com uma caixa de texto em cada linha na coluna de dados. Para converter uma caixa de texto num tipo de controlo diferente, clique com o botão direito do rato na caixa de texto que pretende converter, aponte para Alterar Controlo e, em seguida, clique no controlo pretendido.
Se estiver a inserir uma tabela de repetição horizontal num modelo de formulário baseado numa origem de dados existente:
- Na primeira página do assistente associação de tabela repetida , clique na fonte de dados que você deseja usar na lista Fonte de dados e clique no grupo repetido
ao qual deseja associar as linhas de tabela.
Para criar um novo grupo repetido, clique com o botão direito do mouse no grupo ao qual você deseja adicionar o grupo repetido, clique em Adicionar e, em seguida, na caixa de diálogo Adicionar Campo ou Grupo , especifique as propriedades para o grupo repetido. - Clique em Avançar.
- Na segunda página do assistente associação de tabela repetida , clique duas vezes nos campos na lista associação de dados que você deseja adicionar como colunas à tabela.
Para criar um novo campo, na lista Associação de dados , clique com o botão direito do mouse no grupo ao qual a tabela de repetição horizontal está vinculada, clique em Adicionar e especifique as propriedades do campo na caixa de diálogo Adicionar Campo ou Grupo . - Para reordenar as colunas, selecione uma coluna na lista Linhas na tabela e clique em Mover Antes ou Mover Depois.
- Clique em Concluir.
- Na primeira página do assistente associação de tabela repetida , clique na fonte de dados que você deseja usar na lista Fonte de dados e clique no grupo repetido
Dicas de layout para controles de dados repetidos
Use as seguintes dicas para ajudá-lo a refinar a aparência, o tamanho e outros aspectos dos controles dentro de um controle de dados repetido:
- Para alterar o tamanho de vários controles dentro de um controle de dados repetido ao mesmo tempo, segure a tecla CTRL, selecione as caixas de texto cujo tamanho você deseja alterar e faça os ajustes necessários na seção Tamanho do Controle na guia Propriedades das Ferramentas de Controle da faixa de opções.
- Para alterar a borda ou a cor dos controles dentro de um controle de dados repetido ao mesmo tempo, mantenha pressionada a tecla CTRL e selecione as caixas de texto que você deseja alterar. Clique na guia Propriedades das Ferramentas de Controle na faixa de opções, clique em Bordas ou Sombreamento na seção Cor da guia e faça os ajustes necessários.
- Para personalizar o texto que aparece em uma caixa de texto dentro de um controle de dados repetido, use as caixas Fonte e Tamanho da Fonte na seção Formatar Texto na guia Página Inicial da faixa de opções. Como alternativa, você pode usar a seção Estilos de Fonte na guia Página Inicial da faixa de opções
Dicas de layout de seção repetidas
Use as seguintes dicas para ajudá-lo a refinar a aparência, o tamanho e outros aspectos dos controles dentro de um controle de Seção Repetida :
- Na ocasião, o texto dentro dos controles em uma seção repetida e os rótulos à esquerda desses controles podem parecer estar ligeiramente fora de alinhamento. Para realinhar rapidamente, clique com o botão direito do mouse no controle, clique <em Propriedades de Tipo> de Controle, clique em Alinhar na guia Tamanho e clique em Aplicar. Se o rótulo e o controle estiverem em células diferentes em uma tabela de layout, clique com o botão direito do mouse na célula que contém o rótulo, clique em Propriedades da Tabela no menu de atalho e clique em Central em Alinhamento vertical na guia Célula.
- A opção Repetir verticalmente na guia Exibir da caixa de diálogo Propriedades de Seção Repetida é selecionada por padrão. Isso significa que, à medida que os usuários adicionam seções repetidas, essas seções aparecem em uma formação vertical no comprimento do formulário. Você pode optar por fazer com que a seção repetida se expanda horizontalmente selecionando a opção Repetir horizontalmente . Isso permite que você crie layouts completamente diferentes. Por exemplo, você pode criar um modelo de formulário que se assemelha a um calendário. A opção Repetir horizontalmente não tem suporte em modelos de formulário compatíveis com o navegador.
Dicas de layout de tabela de repetição horizontal
Use as seguintes dicas para ajudá-lo a refinar a aparência, o tamanho e outros aspectos de um controle horizontal de tabela repetitiva e os controles dentro dele:
- Uma tabela de repetição horizontal consiste em uma seção repetida dentro de uma tabela de layout. A borda direita da tabela de layout define o ponto em que as colunas na tabela se envolvem para a próxima linha quando os usuários inserem colunas adicionais. Para controlar o encapsulamento de coluna, você pode arrastar a borda direita da célula da tabela de layout que inclui o controle de seção repetitivo à direita ou à esquerda.
- Uma tabela de repetição horizontal pode ser útil para fins de impressão. Colunas no wrap de controle para a próxima linha no modelo de formulário, de modo que todas as informações na tabela sejam impressas. No entanto, se o modelo de formulário for destinado principalmente à exibição na tela, considere colocar a tabela de repetição horizontal dentro de um controle de Região de Rolagem em seu modelo de formulário. Dessa forma, se os usuários inserirem uma grande quantidade de dados na tabela de repetição horizontal, eles poderão rolar para exibi-los em vez de ver tudo no formulário. No entanto, observe que, ao usar uma região de rolagem, se um usuário imprimir o formulário, somente os dados visíveis na tela na região de rolagem serão impressos.
Maneiras de personalizar uma seção de repetição
Depois de inserir uma seção repetida em um modelo de formulário, você pode personalizá-la alterando suas propriedades e configurações na caixa de diálogo Propriedades de Seção Repetida . Para abrir a caixa de diálogo, no modelo de formulário, clique com o botão direito do mouse na seção repetitiva cujas propriedades você deseja alterar e clique em Repetir Propriedades da Seção.
A tabela a seguir descreve algumas das maneiras pelas quais você pode personalizar uma seção repetida e oferece razões pelas quais você pode fazê-lo. Embora a tabela não forneça informações processuais detalhadas sobre as opções na caixa de diálogo Propriedades de Seção Repetida , ela fornece uma ideia do intervalo de opções que estão disponíveis.
Observação
- Se você estiver projetando um modelo de formulário compatível com o navegador, determinados recursos na caixa de diálogo Propriedades de Seção Repetida não estarão disponíveis. Por exemplo, você não pode habilitar a configuração que permite que os usuários insiram seções horizontalmente, em uma formação lado a lado.
- Se o modelo de formulário for baseado em um banco de dados, esquema ou outra fonte de dados existente, talvez você não seja capaz de personalizar todos os aspectos de um controle. Por exemplo, você pode ser capaz de alterar o tamanho do controle, mas não seu campo ou nome de grupo, que são derivados da fonte de dados existente.
| Tab | Tarefa | Detalhes |
|---|---|---|
| Dados | Alterar nome do grupo | Ao criar um modelo de formulário em branco, você pode alterar o campo padrão ou o nome do grupo para um controle para algo mais fácil de identificar quando você trabalha com a fonte de dados. Por exemplo, em um modelo de formulário de seguro, um grupo chamado "Dependente" é mais fácil de entender do que um grupo chamado "group1". Nota: Alterar o nome do grupo não altera a associação entre uma seção repetida no modelo de formulário e um grupo repetido na fonte de dados. Se você precisar associar uma seção repetida a um grupo repetido diferente, clique com o botão direito do mouse na seção repetida e clique em Alterar Associação. |
| Dados | Impedir que os usuários insiram e excluam as seções | Por padrão, a caixa Permitir que os usuários insiram e excluam as seções marcar está selecionada. Se você limpar essa caixa marcar, os usuários não poderão inserir ou excluir as seções em uma seção repetida. Isso é útil em cenários de relatório em que você deseja exibir dados repetidos, mas não deseja que os usuários alterem esses dados ou adicionem mais seções. |
| Dados | Personalizar comandos de menu | Clique em Modificar para modificar ainda mais as propriedades da seção. Por exemplo, você pode abrir a caixa de diálogo Personalizar Comandos , na qual você pode personalizar os nomes e os locais dos comandos de menu usados para inserir ou remover seções no formulário do usuário. Esse tipo de personalização facilita o uso do modelo de formulário. Por exemplo, você pode adicionar comandos personalizados ao menu Editar que permite que os usuários removam seções repetidas de seu formulário. |
| Dados | Mostrar ou personalizar texto de dica | A caixa Mostrar inserir e sugerir texto marcar é selecionada por padrão. Você pode limpar essa caixa de marcar se não quiser que os usuários vejam texto instrucional no formulário ou personalizem o texto instrucional. Por exemplo, se você tiver um modelo de formulário de seguro em que os usuários são obrigados a inserir dependentes em uma seção repetida, você poderá alterar o texto "Inserir item" que aparece abaixo da seção repetida para "Inserir dependente adicional". |
| Exibição | Permitir que os usuários insiram seções em uma formação lado a lado em vez de uma após a outra | A opção Repetir verticalmente é selecionada por padrão. Isso significa que, à medida que os usuários adicionam seções repetidas, essas seções aparecem em uma formação vertical no comprimento do formulário. Em vez disso, você pode optar por fazer com que a seção repetida se expanda horizontalmente. Isso permite que você crie layouts completamente diferentes. Por exemplo, você pode criar um modelo de formulário que se assemelha a um calendário. A opção Repetir horizontalmente não tem suporte em modelos de formulário compatíveis com o navegador. |
| Exibição | Filtrar dados | Clique em Filtrar Dados para abrir a caixa de diálogo Filtrar Dados , onde você pode permitir que os usuários filtrem dados em uma seção repetida com base nos valores que o usuário insere ou seleciona em outro lugar no formulário. Por exemplo, se você usar uma seção repetida para coletar informações sobre projetos atuais, poderá criar uma caixa de listagem que permita que os usuários filtrem seus projetos por status. |
| Mestre/Detalhe | Configurar uma relação de master/detalhes | Na guia Mestre/Detalhe, você pode estabelecer uma relação master/detalhe entre uma tabela repetida (o controle master) e uma seção repetida (o controle de detalhes). Se você configurar esse tipo de relação, os dados relacionados serão exibidos na seção repetida com base no item selecionado por um usuário na tabela repetida. Controles mestre/detalhe não têm suporte em modelos de formulário compatíveis com o navegador. |
| Tamanho | Ajustar tamanho, preenchimento e margens | Você pode especificar manualmente o tamanho de um controle inserindo valores nas caixas Altura e Largura . Você também pode refinar o espaçamento dentro e fora do controle alterando o preenchimento, que é a quantidade de espaço de buffer em torno do conteúdo do controle ou as margens, que é a quantidade de espaço entre a borda do controle e qualquer texto ou controles ao redor no modelo de formulário. |
| Avançado | Alterar a ordem de índice da guia | Você pode alterar a posição de um controle na ordem geral da guia do modelo de formulário. A ordem de guia é a ordem na qual o foco se move em um formulário de um campo ou objeto para o próximo à medida que os usuários pressionam TAB ou SHIFT+TAB. A configuração de índice de guia padrão para todos os controles em um modelo de formulário é 0, mas a ordem da guia começa com 1. Ou seja, qualquer controlo com 1 na caixa Índice de tabulação será visitado primeiro quando os utilizadores premirem a Tecla de Tabulação. Qualquer controlo com 2 na caixa Índice de tabulação será visitado em segundo lugar e assim sucessivamente. Todos os controlos com 0 na caixa Índice de tabulação serão os últimos na ordem de tabulação. Se quiser ignorar os controlos na ordem de tabulação, introduza -1 na caixa Índice de tabulação . |
| Avançado | Especificar uma Descrição | Para apresentar uma nota explicativa quando os utilizadores moverem o ponteiro sobre o controlo, introduza o texto pretendido na caixa Descrição . Os auxiliares de acessibilidade, como utilitários de revisão de ecrã que disponibilizam informações no ecrã como voz sintetizada ou um ecrã Braille atualizável, dependem frequentemente destas Descrições para interpretar informações para os seus utilizadores. |
| Avançado | Especificar e personalizar as definições de intercalação | Clique em Definições de Intercalação para especificar a forma como os dados que os utilizadores introduzem no controlo devem ser apresentados quando são combinados vários formulários. Por exemplo, pode alterar a ordem pela qual as secções de repetição são inseridas no formulário de destino. |
| Avançado | Obter os identificadores ViewContext ou XmlToEdit para a secção de repetição | Pode utilizar o valor ViewContext ou XmlToEdit para identificar o controlo no código. Por exemplo, se souber o valor ViewContext , pode utilizar esse valor com os métodos SelectText ou SelectNodes da classe View para executar programaticamente uma ação de edição nos dados XML vinculados ao controlo. Da mesma forma, se souber o valor XmlToEdit , pode utilizar esse valor com o método ExecuteAction do objeto View para inserir ou remover programaticamente instâncias de um controlo de repetição. Por exemplo, pode especificar um valor de enumeração ActionType , como XCollectionInsert ou XCollectionRemoveAll e o nome XmlToEdit , que identifica o grupo específico com o qual trabalhar. |
| Formulários do browser | Personalizar as definições para publicar dados novamente no servidor | O separador Formulários do browser só é apresentado quando estiver a estruturar um modelo de formulário compatível com o browser. Permite-lhe controlar se os dados são enviados para o servidor quando os utilizadores inserem ou removem secções no formulário. |
| Outras Ações | Aplicar regras | Faça duplo clique no separador na secção de repetição e, em seguida, clique em Gerir Regras na secção Regras no separador Propriedades das Ferramentas de Controlo do friso . O painel de tarefas Regras é apresentado, onde pode utilizar regras para aplicar ações quando os utilizadores inserem ou trabalham com controlos dentro da secção de repetição. |
| Outras Ações | Adicionar formatação condicional | Faça duplo clique no separador na secção de repetição e clique em Gerir Regras na secção Regras no separador Propriedades das Ferramentas de Controlo do friso, clique em Novo e, em seguida, clique em Formatação. Isto permite-lhe criar uma regra de formatação condicional para alterar o aspeto de um controlo, incluindo a sua visibilidade, com base nos valores que os utilizadores introduzem no formulário. Por exemplo, pode optar por ocultar uma secção de repetição sempre que um utilizador desmarcar uma caixa de marcar específica no formulário. |