Mapeamento de dados da API

A integração de dados de serviços web com o MapForce é uma estratégia popular e comprovada para recolher informações relevantes e atualizadas, que podem ser utilizadas para análise ou para a criação de relatórios fáceis de usar. Numa publicação anterior, demonstramos como mapear dados de APIs em previsões meteorológicas de 5 dias para portos de transporte de carga movimentados, através da leitura.. Dados de serviços web em formato JSON e conversão para folhas de cálculo Excel com formatação avançada planilhas. A API meteorológica que utilizamos é fornecida por: OpenWeather, Um fornecedor de dados históricos, atuais e de previsões meteorológicas.

No entanto, integrar dados de qualquer API não é uma tarefa que se faz uma vez e pronto. Quando se desenvolve uma solução baseada em dados externos, é preciso reagir rapidamente sempre que a estrutura dos dados muda. No nosso projeto de integração original, a OpenWeather alterou os dados fornecidos pela sua API. A API agora inclui previsões de rajadas de vento numa propriedade JSON separada da velocidade do vento. Como se suspeita que as rajadas de vento foram uma das causas do recente bloqueio do Canal de Suez, estes novos dados são muito relevantes para a nossa aplicação! Felizmente, tanto o mapeamento de dados do MapForce como a folha de cálculo do Excel podem ser facilmente atualizados para incluir os novos dados.

Precisamos compreender as alterações no novo formato de saída do Excel antes de podermos modificar o mapeamento de dados da API. A nova secção da tabela principal da previsão de 5 dias é apresentada aqui:

O criador da folha de cálculo adicionou uma nova coluna, localizada entre a coluna "Velocidade do Vento" e a coluna "Direção do Vento", para mostrar as rajadas de vento previstas para cada previsão.

Várias alterações também foram introduzidas na secção de cabeçalho da folha de cálculo. Uma linha que indica a velocidade das rajadas foi adicionada ao gráfico do vento, as coordenadas geográficas do porto foram adicionadas, e a velocidade máxima das rajadas de vento durante o período de previsão de 5 dias é apresentada.

Um novo botão clicável na folha de cálculo, com a legenda "Visualizar atividade atual do porto", abre uma página web. Todas as embarcações comerciais possuem transponders para o sistema de identificação automática (AIS), que transmitem continuamente a posição do navio para evitar colisões e para a elaboração de cartas náuticas. MyShipTracking.com é um dos muitos sites e outras empresas que utilizam a tecnologia AIS para reportar dados AIS em tempo real e fornecer uma melhor compreensão de como as embarcações se movem pelo mundo.

Clicar no botão na folha de cálculo abre uma página em myshiptracking.com que mostra a atividade nas proximidades da localização geográfica:

Precisamos de apenas algumas alterações no mapeamento de dados para suportar estas melhorias na saída final: precisamos de inserir os dados de rajada no local correto na tabela e precisamos de mapear as coordenadas de geolocalização.

Primeiramente, executámos manualmente a API meteorológica numa janela do navegador para obter um novo exemplo de resposta, incluindo dados sobre rajadas de vento, e criámos um novo esquema JSON no XMLSpy para o resultado da API. Ao guardar o novo esquema JSON com o nome de ficheiro original, o termo "Rajada" é automaticamente adicionado à secção "Resposta" no mapeamento dos dados da API.

As etiquetas anexadas às coordenadas originais dos dados mapeados facilitam a identificação do local correto para inserir a nova coluna "Gust" na folha de cálculo do Excel:

Selecionar a opção "Adicionar célula antes" no menu de contexto abre uma janela para adicionar os detalhes:

O MapForce mantém convenientemente as ligações de mapeamento para as colunas K e L, pelo que só precisamos de estabelecer a ligação para a coluna J.

As novas coordenadas geográficas, referentes à latitude e longitude, na folha de cálculo encontram-se nas células G5 e I5. As coordenadas de cada porto já estão presentes na lista de origem dos portos, uma vez que as utilizamos para solicitar dados de previsão meteorológica à API. Adicionámos esses endereços de célula na parte inferior da lista de destino.

Aqui está uma visão da nova configuração de mapeamento no painel de mapeamento do MapForce, com a nova ligação para as previsões de rajadas de vento destacada:

Para uma última melhoria, adicionámos mais portos à lista de pedidos, incluindo o Canal de Suez e vários grandes portos marítimos na Europa. Adicionámos os novos portos editando o ficheiro JSON original, que continha a lista de pedidos, no programa XMLSpy. Aqui está o novo ficheiro JSON com os pedidos de portos, para ser utilizado como entrada para o mapeamento de dados da API, visualizado na vista de grade do XMLSpy:

Clicar no botão "Saída" na parte inferior do painel de mapeamento executa o processo de mapeamento e abre a vista "Saída", mostrando o primeiro ficheiro de saída. Se o Excel 2007 ou uma versão mais recente estiver instalado no sistema, o MapForce abre automaticamente o Excel para apresentar o resultado:

Foram gerados resultados para cada porta na lista de origem. Podemos selecionar qualquer ficheiro Excel para visualização:

Clicar no botão "Visualizar atividade da porta atual" na janela de visualização funciona exatamente da mesma forma que quando o ficheiro é aberto diretamente no Excel:

O resultado é calculado com base na latitude e longitude do porto:

Cada ponto no mapa representa uma embarcação com um transponder AIS que transmite informações em tempo real. Para validar ainda mais os nossos resultados, podemos visualizar qualquer outro ficheiro de saída e verificar o link para outro porto. Aqui está o mapa de Hamburgo, na Alemanha:

Os pontos vermelhos representam petroleiros, e os pontos verdes representam navios de carga. Podemos clicar em qualquer ponto para obter informações detalhadas sobre a embarcação:

Coloque-se a par do.. Publicação original sobre a integração de serviços web, ver rapidamente demonstração em vídeo do MapForce, ou Descarregue uma versão de avaliação gratuita incluindo tutoriais, ajuda e muitos exemplos para começar o seu próprio projeto de mapeamento de dados de APIs, ou para outras tarefas de integração, conversão e transformação de dados!