Como usar um script ou um campo de fonte de dados secundária para a formatação condicional no InfoPath

Traduções deste artigo Traduções deste artigo
ID do artigo: 827008 - Exibir os produtos aos quais esse artigo se aplica.
Expandir tudo | Recolher tudo

Neste artigo

Sumário

Este artigo descreve como usar um script para uma expressão de formatação condicional e como usar um campo em uma fonte de dados secundária para uma expressão de formatação condicional. Usar o script ou o campo na fonte de dados secundária em um formulário do Microsoft Office InfoPath 2007 ou em um formulário do Microsoft Office InfoPath 2003.

Para usar uma função de script com a formatação condicional ou um campo de fonte de dados secundária com formatação condicional, selecione a expressão no tipo de condição.

Uma expressão que faz referência a um campo em uma fonte de dados secundária possui sintaxe semelhante à seguinte:

xdXDocument:GetDOM('DataSourceName') / docRoot / Node1 / Node2 = my:myField1

Essa sintaxe, os espaços reservados são:
  • DataSourceNamerefere-se ao nome que você fornecer para a fonte de dados secundária.
  • docRooté a raiz do documento XML.
  • Node1e Node2 são nós que estão contidos no XML. Node2 é um filho de Nó1.
  • my:myField1refere-se um campo na fonte de dados principal do formulário.
Neste exemplo específico, a instrução de formatação condicional verifica o valor texto da Node2 na fonte de dados secundária contra my:myField1 na fonte de dados principal e em seguida, aplica o formato que você selecionou se os dois valores coincidirem.

Da mesma forma, para chamar uma função de script a partir da expressão de formatação condicional, você pode usar o prefixo xdExtension que está vinculado ao espaço para nome http://schemas.microsoft.com/office/infopath/2003/xslt/extension.

Criar um novo formulário

Este exemplo descreve como criar um formato condicional que usa dois tipos de expressão.

Para o InfoPath 2003

  1. Inicie o InfoPath 2003. Cria um formulário novo e em branco.
  2. Selecione o painel de tarefas Fonte de dados. Para adicionar campos ao formulário, siga estas etapas:
    1. No painel de tarefas Fonte de dados, clique com o botão direito do mouse myFields e clique em Adicionar .
    2. Na caixa de diálogo Adicionar campo ou grupo , digite myExpenses . Na lista drop-down tipo , selecione grupo . Selecione a opção de repetição e, em seguida, clique em OK .
    3. No painel de tarefas Fonte de dados, clique com o botão direito do mouse myExpenses e clique em Adicionar .
    4. Na caixa de diálogo Adicionar campo ou grupo , digite ExpenseName e, em seguida, clique em OK .
    5. No painel de tarefas Fonte de dados, clique com o botão direito do mouse myExpenses e clique em Adicionar .
    6. Na caixa de diálogo Adicionar campo ou grupo , digite ExpenseValue . Na lista de tipos de dados, selecione decimal (double) e, em seguida, clique em OK .
  3. Mova o grupo myExpenses no painel de tarefas Fonte de dados ao seu formulário e, em seguida, clique em Tabela de repetição .

Para o InfoPath 2007

  1. Inicie o InfoPath 2007.
  2. No painel esquerdo da caixa de diálogo Introdução , clique em design a Form Template .
  3. De criar uma janela de modelo de formulário, clique em branco e, em seguida, clique em OK .
  4. No painel de tarefas tarefas de design, clique em Fonte de dados e, em seguida, adicione campos ao formulário. Para adicionar campos ao formulário, siga estas etapas:
    1. No painel de tarefas Fonte de dados, clique com o botão direito do mouse myFields e clique em Adicionar .
    2. Na caixa de diálogo Adicionar campo ou grupo , digite myExpenses .
    3. No tipo de dados, clique em grupo .
    4. Clique em repetição e, em seguida, clique em OK .
    5. No painel de tarefas Fonte de dados, clique com o botão direito do mouse myExpenses e clique em Adicionar .
    6. Na caixa de diálogo Adicionar campo ou grupo , digite ExpenseName e, em seguida, clique em OK .
    7. No painel de tarefas Fonte de dados, clique com o botão direito do mouse myExpenses e clique em Adicionar .
    8. Na caixa de diálogo Adicionar campo ou grupo , digite ExpenseValue .
    9. Na lista de tipos de dados, clique em decimal (double) e, em seguida, clique em OK .

Usar um script para formatação condicional

Para o InfoPath 2003

  1. No menu Ferramentas , aponte para script e, em seguida, clique em Editor de scripts Microsoft .
  2. Adicione a seguinte função à janela de código:
    function CheckItem()
    {
        return "Airfare";
    }
  3. Salve o script e feche o Editor de scripts.
  4. No formulário, clique com o botão direito do mouse na caixa de texto para o campo ExpenseName e clique em Propriedades de caixa de texto .
  5. Na caixa de diálogo Propriedades de caixa de texto , clique na guia Exibir e, em seguida, clique em Formatação condicional .

    A caixa de diálogo Formatação condicional será exibida.
  6. Clique em Adicionar .

    A caixa de diálogo Formato condicional será exibida.
  7. Na caixa de diálogo Formato condicional , selecione a expressão na lista suspensa e digite a seguinte condição na caixa de texto:

    Meu: ExpenseName = xdExtension:CheckItem()

    Clique em negrito e em seguida, clique em OK .
  8. Clique em OK para fechar a caixa de diálogo Formatação condicional .
  9. Clique em OK para fechar a caixa de diálogo Propriedades de caixa de texto .
  10. Clique em visualizar formulário . Para testar o formulário, execute as seguintes etapas:
    1. Digite o nome despesas acomodações . Digite a quantidade 250 .
    2. Pressione CTRL + ENTER para adicionar uma nova linha.
    3. Digite o nome de despesas passagem aérea . Insira a quantidade de 700 .

      Observação Somente o nome de despesas na segunda linha fica em negrito porque o nome de despesas é igual a passagem aérea e passagem aérea é o valor de texto que é retornado da função CheckItem .

Para o InfoPath 2007

  1. No menu Ferramentas , aponte para programação e, em seguida, clique em Editor de scripts Microsoft .
  2. Adicione a seguinte função para o código de janela.
    function CheckItem()
    {
        return "Airfare";
    }
  3. No menu arquivo , clique em Salvar .
  4. No menu arquivo , clique em Sair .
  5. No formulário, clique com o botão direito do mouse na caixa de texto para o campo ExpenseName e clique em Propriedades da caixa de texto .
  6. Na caixa de diálogo Propriedades de caixa de texto , clique na guia Exibir e, em seguida, clique em Formatação condicional .

    A caixa de diálogo Formatação condicional será exibida.
  7. Clique em Adicionar .

    A caixa de diálogo Formato condicional será exibida.
  8. Na caixa de diálogo Formato condicional , clique em expressão da lista e digite a seguinte condição na caixa:
    Meu: ExpenseName = xdExtension:CheckItem()
  9. Clique em negrito e em seguida, clique em OK .
  10. Para fechar a caixa de diálogo Formatação condicional , clique em OK .
  11. Para fechar a caixa de diálogo Propriedades de caixa de texto , clique em OK .
  12. No menu arquivo , clique em Visualizar e, em seguida, clique em formulário .
  13. Para testar o formulário, execute as seguintes etapas:
    1. Digite o nome despesas acomodações .
    2. Digite a quantidade 250 .
    3. Para adicionar uma nova linha, pressione CTRL+ENTER.
    4. Digite o nome de despesas passagem aérea .
    5. Insira a quantidade de 700 .

      Observação Somente o nome de despesas na segunda linha fica em negrito porque o nome de despesas é igual a passagem aérea e passagem aérea é o valor de texto que é retornado da função CheckItem .

Use um campo em uma fonte de dados secundário para formatação condicional

  1. Usar um editor XML ou um editor de texto, como o bloco de notas para criar um arquivo XML com o seguinte conteúdo:
    <?xml version="1.0"?>
    <ExpenseRequirements>
    	<RequiresReceipt>75.00</RequiresReceipt>
    </ExpenseRequirements>
    Nomeie o arquivo ExpenseRequirements.xml .
  2. Para adicionar ExpenseRequirements.xml como uma fonte de dados secundário para seu formulário, execute essas etapas:
    1. No menu Ferramentas , clique em Converter fonte de dados principal .

      Data Source Wizard aparece.
    2. Clique em Procurar .

      A caixa de diálogo Abrir será exibida.
    3. Mova a ExpenseRequirements.xml e em seguida, clique em Abrir .
    4. Clique em Avançar e, em seguida, clique em o término de mensagens para concluir o Assistente para configuração da fonte de dados.
  3. Clique a tabela de repetição no formulário com o botão direito do mouse e clique em Propriedades da tabela de repetição .
  4. Na caixa de diálogo Propriedades de tabela de repetição , selecione a guia Exibir e, em seguida, clique em Formatação condicional .

    A caixa de diálogo Formatação condicional será exibida.
  5. Clique em Adicionar .

    A caixa de diálogo Formato condicional será exibida.
  6. Na caixa de diálogo Formato condicional , selecione a expressão da lista drop-down. Digite a seguinte condição na caixa de texto:

    Meu: ExpenseValue > xdXDocument:GetDOM("ExpenseRequirements")/ExpenseRequirements/RequiresReceipt

    Na lista drop-down de Cor do plano de fundo , selecione a cor vermelha e, em seguida, clique em OK .
  7. Clique em OK para fechar a caixa de diálogo Formatação condicional .
  8. Clique em OK para fechar a caixa de diálogo Propriedades de tabela de repetição .
  9. Clique em visualizar formulário .
  10. Para testar o formulário, execute as seguintes etapas:
    1. Digite o nome despesas almoço . Insira a quantidade 25 .
    2. Pressione CTRL+ENTER para adicionar uma nova linha.
    3. Digite o nome de despesas jantar . Insira o valor 80 .

      Observação A segunda linha é formatada com um plano de fundo vermelho porque o valor de despesas excede 75.

Propriedades

ID do artigo: 827008 - Última revisão: terça-feira, 30 de janeiro de 2007 - Revisão: 2.2
A informação contida neste artigo aplica-se a:
  • Microsoft Office InfoPath 2007
  • Microsoft Office InfoPath 2003, Service Pack 1 (SP1)
  • Microsoft Office InfoPath 2003
Palavras-chave: 
kbmt kbhowtomaster KB827008 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 827008

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com