Importação de dados XML

O FileMaker Pro pode importar dados XML para um arquivo existente do FileMaker Pro ou converter o XML em um novo arquivo do FileMaker Pro.

O XML pode ser um arquivo ou o resultado de uma solicitação HTTP enviada a um servidor Web. Por exemplo, é possível configurar um banco de dados Ordens para enviar números de acompanhamento a uma empresa de fornecimento de embalagens na forma de uma solicitação HTTP, e o seu servidor Web poderá retornar as informações de acompanhamento do pacote mais recentes no formato XML, prontas para serem importadas no banco de dados Ordens.

O XML importado deve estar em conformidade com a definição de tipo de documento (DTD) FMPXMLRESULT do FileMaker. Caso o XML esteja em um formato diferente, você poderá aplicar uma folha de estilo Extensible Stylesheet Language (XSLT) durante a importação para transformar o XML na gramática FMPXMLRESULT. Consulte Formato XML.

Para importar XML:

  1. O que você faz primeiro depende de estar importando XML para um arquivo existente do FileMaker Pro ou convertendo XML em um novo arquivo do FileMaker Pro.
  2. Para importar XML

    Faça isso

    Para um arquivo existente do FileMaker Pro

    Avance para a Etapa 2.

    Ao converter o XML em um novo arquivo do FileMaker Pro

    Vá para a Etapa 8.

  3. Se você estiver atualizando registros correspondentes ou atualizando registros existentes, faça uma cópia de backup do arquivo de destino.

    Importante  A atualização de registros correspondentes ou a substituição de registros existentes sobregrava os dados no arquivo de destino e não pode ser desfeita. Para proteger seus dados, escolha o menu Arquivo > Salvar cópia como para criar uma cópia em backup do arquivo de destino do FileMaker Pro. Você pode fazer isso apenas para um arquivo local (localizado no seu computador). Certifique-se de entender como a atualização ou substituição de registros funciona. Consulte Importação de dados no FileMaker Pro.

  4. No FileMaker Pro, abra o arquivo de destino.
  5. Se o arquivo de destino tiver várias tabelas, use o menu pop-up Layout para exibir um layout com os registros da tabela para a qual deseja importar os dados.
  6. Ao atualizar registros correspondentes ou substituir registros existentes, proceda da seguinte forma antes de importar. (Se estiver adicionando novos registros, pule para a próxima etapa.)
    • Se estiver atualizando registros correspondentes, verifique se o conjunto encontrado tem somente os registros que deseja atualizar. Os registros que estiverem fora do conjunto encontrado não serão atualizados, mesmo que os dados de campo sejam correspondentes.
    • Se estiver substituindo registros existentes no arquivo, verifique se o conjunto encontrado tem somente os registros que deseja alterar. Se necessário, classifique os registros de forma que os dados do registro correto no arquivo de origem substituam os dados de cada registro no arquivo de destino.
  7. Escolha o menu Arquivo > Importar registros > Fonte de dados XML.

    A caixa de diálogo Especificar opções de XML e XSL é exibida.

  8. Vá direto para a Etapa 10.

    Você deve seguir as Etapas 8 e 9 somente se estiver convertendo XML em um novo arquivo do FileMaker Pro.

  9. Escolha o menu Arquivo > Abrir.
  10. Na caixa de diálogo Abrir arquivo, para Arquivos do tipo (Windows) ou Mostrar (macOS), escolha Fonte de dados XML.

    A caixa de diálogo Especificar opções de XML e XSL é exibida.

  11. Para Especificar fonte de dados XML, escolha a fonte dos dados XML a ser importada.

    A fonte XML pode ser um arquivo ou o resultado de uma solicitação HTTP.

  12. Para aplicar uma folha de estilo XSLT ao XML antes da importação, selecione Usar folha de estilo XSL e especifique a fonte da folha de estilo XSLT.

    Quando o XML que está sendo importado não estiver em conformidade com a DTD FMPXMLRESULT, você deverá aplicar uma folha de estilo XSLT que transforme o XML na gramática correta. A fonte XSLT pode ser um arquivo ou o resultado de uma solicitação HTTP.

  13. Clique em Continuar.

    Usando um analisador XML baseado em Xerces e um processador XSLT baseado em Xalan, o FileMaker Pro aplica uma folha de estilo XSLT (caso uma seja especificada) para transformar os dados XML. Se uma mensagem de erro aparecer, corrija o erro e tente importar novamente.

  14. Escolha a ação de importação para execução e associe os campos no arquivo de destino aos dados que deseja importar do arquivo de origem. (Consulte Configuração da ação de importação e mapeamento de campos durante a importação.) Escolha as opções na caixa de diálogo e clique em Importar.

    Ao converter o XML em um novo arquivo do FileMaker Pro, digite um nome para o novo arquivo, escolha um local e clique em Salvar.

Notas 

  • Para obter detalhes sobre os requisitos para um XML bem formado, consulte a especificação XML, que está disponível em www.w3.org/XML/.
  • O FileMaker Pro usa o analisador XML Xerces-C++, que é compatível com dados XML nas seguintes codificações de caracteres:
    • ASCII
    • UTF-8
    • UTF-16 (Big/Small Endian)
    • UCS4 (Big/Small Endian)
    • EBCDIC nas codificações IBM037 e IBM1140
    • ISO-8859-1 (Latin1)
    • Windows-1252

    Embora Windows-1252 seja a codificação de caracteres padrão no Windows, ela não é amplamente reconhecida por outras ferramentas de processamento XML. Se estiver usando uma ferramenta de edição baseada em Windows para gerar XML, verifique a declaração encoding="..." para ver qual conjunto de caracteres ela gera. Consulte as perguntas frequentes sobre Xerces C++ no site da Apache: xerces.apache.org/xerces-c/.

  • Na Etapa de script Importar registros, ao especificar Dados XML como a fonte de dados, você pode especificar caminhos para os dados XML e a folha de estilo XLS de duas formas:
    • Para Arquivo, o caminho deve estar no formato do FileMaker (consulte Criação de caminhos de arquivo).
    • Para Cálculo, o caminho deve ser o caminho completo no formato do sistema operacional. Por exemplo:

      Windows: letradaunidade:\NomeDoDiretório\NomeDoArquivo

      macOS: /directoryName/fileName

      Se você estiver fornecendo um app personalizado entre plataformas, poderá usar a Função Get(SystemPlatform) para identificar a plataforma atual e usar o formato correto para cada uma delas.