Como vincular uma fonte de dados XML para campos do InfoPath no Office InfoPath

O suporte para o Office 2003 terminou

A Microsoft terminou o suporte para o Office 2003 em 8 de abril de 2014. Esta alteração afetou as suas atualizações de software e opções de segurança. Saiba o que isto significa para você e como permanecer protegido.

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: 827005
INTRODUÇÃO
Este artigo descreve como transformar programaticamente os dados na fonte de dados secundária. Em seguida, os dados transformados podem ser transferidos para campos na fonte de dados primária em tempo de execução. Você pode fazer isso no Microsoft Office InfoPath.

O InfoPath permite que você vincular campos a fontes de dados XML usando a interface do usuário. Este artigo também explica como usar a interface do usuário para ligar campos a fontes de dados secundárias no Microsoft Office InfoPath.

back to the top
Mais Informações

Criar seu formulário

  1. Inicie um novo formulário em branco no InfoPath.

    Para abrir um formulário em branco no Office InfoPath 2007, siga estas etapas:
    1. Inicie o InfoPath 2007.
    2. No painel esquerdo da caixa de diálogo Preencher um formulário , clique em design a Form Template .
    3. Na caixa de diálogo design a Form Template , clique em branco e, em seguida, clique em OK .
  2. Alterne para o painel de tarefas Fonte de dados e adicionar campos ao formulário.

    Para adicionar campos ao formulário no InfoPath 2003, execute as seguintes etapas:
    1. Clique com o botão direito do mouse o grupo myFields e, em seguida, clique em Propriedades .

      A caixa de diálogo Propriedades de grupo do campo ou é exibida.
    2. Altere o nome do grupo para myBookstore e, em seguida, clique em OK .
    3. Clique com o botão direito do mouse no grupo myBookstore e, em seguida, clique em Adicionar .

      A caixa de diálogo Adicionar campo ou grupo é exibida.
    4. Digite o nome myBooks , clique em grupo da lista de tipos e, em seguida, clique em OK .
    5. Clique com o botão direito do mouse no grupo myBooks e, em seguida, clique em Adicionar .

      A caixa de diálogo Adicionar campo ou grupo é exibida.
    6. Digite o nome myBook , clique em grupo da lista de tipos, clique em repetição e, em seguida, clique em OK .
    7. Clique com o botão direito do mouse no grupo myBook e, em seguida, clique em Adicionar .

      A caixa de diálogo Adicionar campo ou grupo é exibida.
    8. Digite o nome myTitle e, em seguida, clique em OK .
    9. Repetir a etapa g e h etapa para criar um campo que é chamado myISBN e para criar um campo é denominado myGenre .
    Para adicionar campos ao formulário no InfoPath 2007, siga estas etapas:
    1. No painel de tarefas Tarefas de design , clique em Fonte de dados .
    2. No painel de tarefas Fonte de dados , clique com o botão direito do mouse myFields e, em seguida, clique em Propriedades .
    3. Altere o nome do grupo para myBookstore e, em seguida, clique em OK .
    4. No painel de tarefas Fonte de dados , clique com o botão direito do mouse myBookstore e clique em Adicionar .
    5. Na caixa de diálogo Adicionar campo ou grupo , digite o nome myBooks .
    6. Na lista drop-down tipo , selecione grupo e, em seguida, clique em OK .
    7. No painel de tarefas Fonte de dados , clique com o botão direito do mouse myBooks e clique em Adicionar .
    8. Na caixa de diálogo Adicionar campo ou grupo , digite o nome myBook .
    9. Na lista drop-down tipo , selecione grupo .
    10. Clique para selecionar a caixa de seleção repetição e, em seguida, clique em OK .
    11. No painel de tarefas Fonte de dados , clique com o botão direito do mouse myBook e clique em Adicionar .
    12. Na caixa de diálogo Adicionar campo ou grupo , digite o nome myTitle .
    13. Na lista drop-down tipo , selecione grupo e, em seguida, clique em OK .
    14. No painel de tarefas Fonte de dados , clique com o botão direito do mouse myTitle e clique em Adicionar .
    15. Na caixa de diálogo Adicionar campo ou grupo , digite o nome myISBN .
    16. Na lista drop-down tipo , selecione grupo e, em seguida, clique em OK .
    17. No painel de tarefas Fonte de dados , clique com o botão direito do mouse myTitle e clique em Adicionar .
    18. Na caixa de diálogo Adicionar campo ou grupo , digite o nome myGenre .
      Na lista drop-down tipo , selecione grupo e, em seguida, clique em OK .
  3. Mova o grupo myBook do painel de tarefas Fonte de dados ao seu formulário e, em seguida, clique em Tabela de repetição .
  4. No painel de tarefas Fonte de dados , clique com o botão direito do mouse no grupo myBookstore e, em seguida, clique em Propriedades .

    A caixa de diálogo Propriedades de grupo do campo ou é exibida.
  5. Clique na guia detalhes e, em seguida, anote o namespace.

    O namespace é da seguinte forma:

    http://schemas.Microsoft.com/Office/InfoPath/2003/myXSD/2003-09-30T04:46:51

    Clique em Cancelar para descartar a caixa de diálogo.
  6. Salve o formulário como Bookstore.xsn .
back to the top

Criar o arquivo XML e a folha de estilos XML

Use um editor XML ou um editor de texto, como o bloco de notas para criar xmlfile.xml e criar Xsltfile.xslt da seguinte maneira:

Xmlfile.XML

<?xml version='1.0' ?><bookstore>	<book genre="autobiography" publicationdate="1981" ISBN="1-861003-11-0">		<title>The Autobiography of Benjamin Franklin</title>	</book>	<book genre="novel" publicationdate="1967" ISBN="0-201-63361-2">		<title>The Confidence Man</title>	</book>	<book genre="philosophy" publicationdate="1991" ISBN="1-861001-57-6">		<title>The Gorgias</title>	</book></bookstore>

Xsltfile.XSLT

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:my="http://schemas.microsoft.com/office/infopath/2003/myXSD/2003-09-30T04:46:51">	<xsl:template match="/">			<xsl:apply-templates />	</xsl:template>	<xsl:template match="bookstore">			<my:myBooks>				<xsl:apply-templates select="book" />			</my:myBooks>	</xsl:template>	<xsl:template match="book">		<my:myBook>			<my:myTitle>				<xsl:value-of select="title" />			</my:myTitle>			<my:myISBN>				<xsl:value-of select="@ISBN" />			</my:myISBN>			<my:myGenre>				<xsl:value-of select="@genre" />			</my:myGenre>		</my:myBook>	</xsl:template></xsl:stylesheet>
Observação Alterar o my espaço para nome em Xsltfile.xslt para coincidir com o namespace que você criou na etapa 5 na seção anterior.

back to the top

Vincular campos a fontes de dados secundárias

Usar um script com o formulário para transferir os dados para os campos de formulário no InfoPath

No Microsoft Office InfoPath, você não pode diretamente vincular campos em um formulário para dados XML em uma fonte de dados secundária. No entanto, você pode usar um script para transformar os dados na fonte de dados secundária. Para vincular campos a fontes de dados XML usando um script, execute estas etapas:
  1. Retorne ao InfoPath.

    Bookstore.xsn deve estar aberto no modo de design.
  2. Para adicionar xmlfile.xml como uma fonte de dados secundário para seu formulário, execute essas etapas.

    No InfoPath 2003, execute estas etapas:
    1. No menu Ferramentas , clique em Fontes de dados secundárias . A caixa de diálogo Fontes de dados secundárias será exibida.
    2. Clique em Adicionar .

      Inicia o Assistente .
    3. Clique em Arquivo de dados XML para o tipo de fonte de dados e, em seguida, clique em Avançar .
    4. Clique em Procurar . Na caixa de diálogo Abrir , localize xmlfile.xml e em seguida, clique em Abrir . Clique em Avançar .
    5. Clique em Concluir para concluir o Assistente . Quando você for solicitado para adicionar o arquivo ao seu formulário, clique em não .
    6. Clique em Fechar para fechar a caixa de diálogo Fontes de dados secundárias .
    No InfoPath 2007, siga estas etapas:
    1. No menu Ferramentas , clique em Converter fonte de dados principal . A caixa de diálogo Data Source Wizard aparece.
    2. Clique em Procurar . A caixa de diálogo Abrir será exibida.
    3. Mova a xmlfile.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. Para adicionar Xsltfile.xslt como uma fonte de dados secundário para seu formulário, execute essas etapas:
    1. No menu Ferramentas no InfoPath 2003, clique em Gerenciador de recursos .

      No InfoPath 2007, clique em Arquivos de recursos no menu Ferramentas .
    2. Clique em Adicionar e, em seguida, adicione Xsltfile.xslt.
    3. Clique em OK .
    4. Para o InfoPath 2003, execute estas etapas:
      1. No menu Ferramentas , clique em Fontes de dados secundárias .

        A caixa de diálogo Fontes de dados secundárias será exibida.
      2. Clique em Adicionar .

        Inicia o Assistente .
      3. Clique em Arquivo de dados XML para o tipo de fonte de dados e, em seguida, clique em Avançar .
      4. Clique em Gerenciador de recursos . Na caixa de diálogo Gerenciador de recursos , clique em Xsltfile.xslt e, em seguida, clique em OK . Clique em Avançar .
      5. Clique em Concluir para concluir o Assistente .
      6. Clique em Fechar para fechar a caixa de diálogo Fontes de dados secundárias .
      Para o InfoPath 2007, siga estas etapas:
      1. No menu Ferramentas , clique em Converter fonte de dados principal . A caixa de diálogo Data Source Wizard aparece.
      2. Clique em Procurar . A caixa de diálogo Abrir será exibida.
      3. Mova a Xsltfile.xslt 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.
  4. No InfoPath 2007, aponte para script no menu Ferramentas e, em seguida, clique em Evento OnLoad .

    No InfoPath 2007, aponte para programação no menu Ferramentas e, em seguida, clique em Evento OnLoad .

    O Editor de scripts Microsoft inicia.
  5. Adicione o código de exemplo a seguir ao XDocument::OnLoad evento handler.
    //Update the data in the secondary data source, and then//get a reference to the DOM of the secondary data source.XDocument.DataObjects.Item("XMLFile").Query();var XMLFileDOM = XDocument.GetDOM("XMLFile");//Get the transform that is stored as a secondary data source.var XSLTFileDOM = XDocument.GetDOM("XSLTFile");//Transform Xmlfile by using the style sheet that is named Xsltfile.var TransformedDOM = new ActiveXObject("MSXML2.DomDocument.5.0");TransformedDOM.async = false;TransformedDOM.validateOnParse = true;TransformedDOM.loadXML( XMLFileDOM.transformNode(XSLTFileDOM));//Get a reference to the node in the primary document where you want to insert//the secondary data.var oBookstore = XDocument.DOM.selectSingleNode( "/my:myBookstore" );var oBooks_Dest = oBookstore.selectSingleNode("my:myBooks");var oBooks_Src = TransformedDOM.documentElement;//Replace the node in the primary document with the data from the //secondary data source.oBookstore.replaceChild( oBooks_Src, oBooks_Dest );
  6. Salvar as alterações para o script e feche o Editor de scripts.
back to the top

Usar a interface do usuário para ligar campos a fontes de dados secundárias no InfoPath

O InfoPath permite que você vincular campos a uma fonte de dados XML usando a interface do usuário. Para fazer isso, execute as seguintes etapas:
  1. Retornar para o formulário do InfoPath.

    Bookstore.xsn deve estar aberto no modo de design.
  2. Para adicionar xmlfile.xml como uma fonte de dados secundário para seu formulário, execute essas etapas:
    1. No menu Ferramentas , clique em Data Connections .

      A caixa de diálogo Conexões de dados será exibida.
    2. Clique em Adicionar .

      O Assistente para conexão de dados é exibido.
    3. Selecione receber dados e em seguida, clique em Avançar .
    4. Selecione o documento XML para o tipo de fonte de dados e em seguida, clique em Avançar .
    5. Clique em Procurar . Na caixa de diálogo Abrir , localize xmlfile.xml e em seguida, clique em Abrir . Clique em Avançar .
    6. Clique em Concluir para concluir o Assistente .
  3. Para vincular os dados XML para os controles, siga estas etapas:
    1. No formulário, clique duas vezes em Tabela de repetição .

      A caixa de diálogo Propriedades de tabela de repetição será exibida.
    2. Na guia dados , clique em Alterar Vinculação .

      A caixa de diálogo Vinculação de tabela de repetição será exibida.
    3. Clique em XMLFile (secundário) na lista drop-down Fonte de dados .
    4. Clique no nó catálogo (grupo) na seção especificar qual grupo para vincular às linhas da e, em seguida, clique em Avançar .
    5. Clique no nó título da seção de vinculação de dados e clique em Adicionar .
    6. Repita a etapa e para adicionar a seção de colunas na tabela ISBN e gênero.
    7. Clique em Concluir .
  4. Salve seus formulários.
back to the top

Testar o formulário com a transformação de XML

No InfoPath 2003, aponte para Visualizar formulário no menu arquivo e, em seguida, clique em padrão . No InfoPath 2007, aponte para Visualizar no menu arquivo e, em seguida, clique em formulário .

Quando o formulário for aberto no modo de visualização, os dados no xmlfile.xml são transformados utilizando a folha de estilo. Em seguida, o conteúdo do formulário é substituído com os resultados de transformação. A saída na janela de visualização do InfoPath aparece da seguinte maneira:
Autobiography de Franklin Benjamin 1-861003-11-0autobiography
Homem confiança0-201-63361-2Romance
O Gorgias1-861001-57-6filosofia
back to the top
Referências
Para obter informações adicionais sobre como obter o service pack mais recente para o Microsoft Office, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
870924Como obter o service pack mais recente para o Office 2003
Para obter informações adicionais sobre scripts para o InfoPath, clique nos números abaixo para ler os artigos na Base de dados de Conhecimento da Microsoft:
827002Como depurar um script para um formulário do Microsoft Office InfoPath 2003
828853Como alterar a linguagem de script para o formulário do InfoPath
back to the top
IP2007

Aviso: este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 827005 - Última Revisão: 01/30/2007 23:10:40 - Revisão: 2.2

Microsoft Office InfoPath 2007, Microsoft Office InfoPath 2003, Service Pack 1 (SP1), Microsoft Office InfoPath 2003

  • kbmt kbxml kbhowto KB827005 KbMtpt
Comentários