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

Traduções de Artigos Traduções de Artigos
Artigo: 827008 - Ver produtos para os quais este artigo se aplica.
Expandir tudo | Reduzir tudo

Nesta página

Sumário

Este artigo descreve como utilizar um script para uma expressão de formatação condicional e como utilizar um campo numa origem de dados secundária para uma expressão de formatação condicional. Utilizar o script ou do campo na origem de dados secundária num formulário do Microsoft Office InfoPath 2007 ou num formulário do Microsoft Office InfoPath 2003.

Para utilizar uma função de script com formatação condicional ou um campo de origem de dados secundária com formatação condicional, seleccione a expressão para o tipo de condição.

Uma expressão que referencia um campo numa origem de dados secundária tem sintaxe semelhante à seguinte:

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

Esta sintaxe, os marcadores de posição são:
  • DataSourceNamerefere o nome que atribui à origem de dados secundária.
  • docRooté a raiz de documentos XML.
  • Node1e Node2 são nós que estão contidos no XML. Nó2 é um subordinado de Nó1.
  • my:myField1refere-se a um campo na origem de dados principal do formulário.
Neste exemplo específico, a instrução de formatação condicional verifica o valor de texto de Node2 na origem de dados secundária contra my:myField1 na origem de dados principal e, em seguida, aplica o formato que seleccionou se corresponderem os dois valores.

Do mesmo modo, chamar uma função de script a partir da expressão de formatação condicional, é possível utilizar o prefixo xdExtension vinculada a no espaço de nomes de http://schemas.microsoft.com/office/infopath/2003/xslt/extension.

Criar um novo formulário

Este exemplo descreve como criar um formato condicional que utiliza ambos os tipos de expressão.

Para o InfoPath 2003

  1. Inicie o InfoPath 2003. Cria um novo formulário em branco.
  2. Seleccione o painel de tarefas origem de dados. Para adicionar campos ao formulário, siga estes passos:
    1. No painel de tarefas origem de dados, clique com o botão direito do rato meusCampos e, em seguida, clique em Adicionar .
    2. Na caixa de diálogo Adicionar campo ou grupo , escreva myExpenses . Na lista pendente tipo , seleccione o grupo . Seleccione a opção de repetição e, em seguida, clique em OK .
    3. No painel de tarefas origem de dados, clique com o botão direito do rato myExpenses e, em seguida, clique em Adicionar .
    4. Na caixa de diálogo Adicionar campo ou grupo , escreva ExpenseName e, em seguida, clique em OK .
    5. No painel de tarefas origem de dados, clique com o botão direito do rato myExpenses e, em seguida, clique em Adicionar .
    6. Na caixa de diálogo Adicionar campo ou grupo , escreva ExpenseValue . Na lista de tipos de dados, seleccione decimal (duplo) e, em seguida, clique em OK .
  3. Mover o grupo myExpenses no painel de tarefas origem de dados ao 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 estrutura de um modelo de formulário .
  3. Na estrutura uma janela modelo de formulário, clique em branco e, em seguida, clique em OK .
  4. No painel de tarefas tarefas de estrutura, clique em Origem de dados e, em seguida, adicionar campos ao formulário. Para adicionar campos ao formulário, siga estes passos:
    1. No painel de tarefas origem de dados, clique com o botão direito do rato meusCampos e, em seguida, clique em Adicionar .
    2. Na caixa de diálogo Adicionar campo ou grupo , escreva myExpenses .
    3. No tipo , clique em grupo .
    4. Clique em repetição e, em seguida, clique em OK .
    5. No painel de tarefas origem de dados, clique com o botão direito do rato myExpenses e, em seguida, clique em Adicionar .
    6. Na caixa de diálogo Adicionar campo ou grupo , escreva ExpenseName e, em seguida, clique em OK .
    7. No painel de tarefas origem de dados, clique com o botão direito do rato myExpenses e, em seguida, clique em Adicionar .
    8. Na caixa de diálogo Adicionar campo ou grupo , escreva ExpenseValue .
    9. Na lista de tipos de dados, clique em decimal (duplo) e, em seguida, clique em OK .

Utilizar um script para formatação condicional

Para o InfoPath 2003

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

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

    A caixa de diálogo Formatação condicional é apresentada.
  7. Na caixa de diálogo Formatação condicional , seleccione a expressão da lista pendente e, em seguida, escreva 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 da caixa de texto .
  10. Clique em Pré-visualizar formulário . Para testar o formulário, siga estes passos:
    1. Introduza o nome de despesa alojamento . Introduza o valor 250 .
    2. Prima CTRL + ENTER para adicionar uma nova linha.
    3. Introduza o nome de despesas tarifa aérea . Introduza o valor 700 .

      Nota O nome de despesa na segunda linha está a negrito porque o nome de despesa é igual a tarifa aérea e tarifa aérea é o valor de texto que é devolvido da função CheckItem .

Para o InfoPath 2007

  1. No menu Ferramentas , aponte para programação e, em seguida, clique em Microsoft Script Editor .
  2. Adicionar a função seguinte para o código de janela
    function CheckItem()
    {
        return "Airfare";
    }
  3. No menu ficheiro , clique em Guardar .
  4. No menu ficheiro , clique em Sair .
  5. No formulário, clique com o botão direito do rato a caixa de texto para o campo ExpenseName e, em seguida, clique em Propriedades da caixa de texto .
  6. Na caixa de diálogo Propriedades da caixa de texto , clique no separador visualização e, em seguida, clique em Formatação condicional .

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

    A caixa de diálogo Formatação condicional é apresentada.
  8. Na caixa de diálogo Formatação condicional , faça clique sobre a expressão na lista e, em seguida, escreva 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 da caixa de texto , clique em OK .
  12. No menu ficheiro , clique em Pré-visualizar e, em seguida, clique em formulário .
  13. Para testar o formulário, siga estes passos:
    1. Introduza o nome de despesa alojamento .
    2. Introduza o valor 250 .
    3. Para adicionar uma nova linha, prima CTRL+ENTER.
    4. Introduza o nome de despesas tarifa aérea .
    5. Introduza o valor 700 .

      Nota O nome de despesa na segunda linha está a negrito porque o nome de despesa é igual a tarifa aérea e tarifa aérea é o valor de texto que é devolvido da função CheckItem .

Utilize um campo de uma origem de dados secundária para formatação condicional

  1. Utilize um editor XML ou um editor de texto, tal como o bloco de notas para criar um ficheiro XML com o seguinte conteúdo:
    <?xml version="1.0"?>
    <ExpenseRequirements>
    	<RequiresReceipt>75.00</RequiresReceipt>
    </ExpenseRequirements>
    atribua um nome ao ficheiro ExpenseRequirements.xml .
  2. Para adicionar ExpenseRequirements.xml como uma origem de dados secundária para o formulário, siga estes passos:
    1. No menu Ferramentas , clique em Converter origem de dados principal .

      O Assistente de origem de dados é apresentado.
    2. Clique em Procurar .

      A caixa de diálogo Abrir é apresentada.
    3. Mova para ExpenseRequirements.xml e, em seguida, clique em Abrir .
    4. Clique em seguinte e, em seguida, clique em Concluir para concluir o Assistente de configuração de origem de dados.
  3. Clique com o botão direito do rato a tabela de repetição no formulário e, em seguida, clique em Propriedades da tabela de repetição .
  4. Na caixa de diálogo Propriedades da tabela de repetição , seleccione o separador apresentação e, em seguida, clique em Formatação condicional .

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

    A caixa de diálogo Formatação condicional é apresentada.
  6. Na caixa de diálogo Formatação condicional , seleccione a expressão na lista pendente. Escreva a seguinte condição na caixa de texto:

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

    Na lista pendente Cor de fundo , seleccione 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 da tabela de repetição .
  9. Clique em Pré-visualizar formulário .
  10. Para testar o formulário, siga estes passos:
    1. Introduza o nome despesa para o almoço . Introduza o valor 25 .
    2. Prima CTRL+ENTER para adicionar uma nova linha.
    3. Introduza o nome de despesas jantar . Introduza o valor 80 .

      Nota Apenas a segunda linha é formatada com um fundo vermelho porque o valor de despesas excede 75.

Propriedades

Artigo: 827008 - Última revisão: 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 revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes 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