Colunas calculadas no SharePoint | Uma visão geral
Descubra a importância das colunas calculadas no SharePoint e como elas podem realizar cálculos automáticos e obtenção de dados em suas listas.
Este tutorial tem como objetivo discutir como calcular distância e rumo no LuckyTemplates e como usá-los de forma eficiente para análise geoespacial .
Você pode encontrar muitos cálculos de distância na web. Para esta demonstração, usarei um exemplo simplificado de uma solução que precisei criar para um de meus projetos de rede de cadeia de suprimentos.
Também mostrarei o cálculo da distância em linha reta de um depósito de entrega até os locais de atendimento.
Aqui, tenho um slicer para selecionar uma distância usando uma medida DAX . Isso permite a análise dinâmica dos clientes, fluxos, peso, receita e qualquer outro valor dentro da distância selecionada.
O cálculo da distância do grande círculo, também conhecido como fórmula de Haversine , é a medida principal deste tutorial. Se você dominar esta técnica, poderá lidar com qualquer distância necessária e cálculo de orientação.
Embora eu prefira fazer a maioria dos cálculos no Power Query, é necessário usar uma medida DAX quando você precisa analisar os dados dinamicamente com base na distância selecionável.
Se disponível, a distância real pode ser a opção preferida. No entanto, você não precisará disso em muitos casos, pois a distância em linha reta será suficiente.
A API do Google ou do Bing pode ser usada para adicionar a distância no Power Query para a distância real e em linha reta. É uma boa prática ter mais ferramentas em sua caixa de ferramentas geoespaciais. No entanto, a aplicação da API ao LuckyTemplates não será discutida neste tutorial.
Índice
Compreendendo o Cenário
Pediram-me para ajudar com a alocação dos armários de encomendas business to business mais próximos aos endereços residenciais dos engenheiros de serviço.
Os engenheiros de serviço trabalhavam em áreas de trabalho predefinidas que podiam mudar com o tempo e começaram esse trabalho em casa.
Durante a noite, o reabastecimento de peças de reposição urgentes ocorreu nos armários de encomendas. Na manhã seguinte, o engenheiro recolheria as peças sobressalentes no armário de encomendas a caminho de sua área de trabalho.
Normalmente, utilizo um software GIS (Sistema de Informação Geográfica) para fazer esse tipo de análise. Mas agora vou tentar fazer com o LuckyTemplates para obter um modelo de alocação dinâmica. Também usei a distância em linha reta e os cálculos de orientação.
No GIS , o ângulo de direção é usado para navegação ou direção. Neste exemplo, adicionei o rolamento que é convertido em uma direção ( Orientação ) porque a Distância em si não oferece a solução completa.
O armário de encomendas mais próximo pode estar posicionado na direção oposta à área de trabalho. Então, eu queria mostrar a direção também.
Isso permite restringir a seleção para a atribuição de armários com base nas rubricas geográficas correspondentes à área de trabalho.
Por exemplo, a área de trabalho fica ao norte de sua casa. Portanto, o local preferencial do armário de encomendas deve estar na mesma direção.
Analisando o conjunto de dados de distância e direção
Neste exemplo simplificado, o conjunto de dados inclui endereços na Holanda e os locais de depósito de encomendas grátis.
Contém colunas para Latitude e Longitude (para e de ) , Depot , Name , Parts value e Demand .
Adjacentes à tabela inicial estão as colunas calculadas e os cálculos de distância no Excel. Primeiro, calculei os radianos.
Em seguida, criei os cálculos de distância reais para milhas e quilômetros usando os radianos e a fórmula de Haversine .
Cálculo de distância e direção: criando os dados de demonstração
Os cálculos para o rolamento inicialmente resultam em um número decimal em graus. Então, eu preciso converter isso em algo mais prático.
Criei uma coluna de tabela com os graus de 1-360. Também adicionei uma coluna para as direções de acordo com a bússola.
Além disso, adicionei uma coluna SORT para classificar as direções no sentido horário no LuckyTemplates.
Depois disso, carreguei o conjunto de dados sourceNL e a tabela Orientation no Power Query.
Vamos dar uma olhada na tabela sourceNL .
Adicionando as Colunas
Primeiro, adicionei uma coluna Index . Sempre que faço transformações no editor, adiciono uma coluna de índice para referência ou para classificação.
Em seguida, arredondei a latitude e a longitude para 4 dígitos , o que é importante em conjuntos de dados maiores. Ao fazer isso, ele retornará uma precisão de 11 metros , o que ainda é suficiente.
Por causa deste exemplo, adicionei cada etapa em uma coluna calculada separada para mostrar o mapa. Calculei os radianos dos valores de latitude e longitude, assim como fiz no Excel.
Em seguida, apliquei a fórmula de Haversine para calcular as distâncias tanto em milhas quanto em quilômetros.
Rumo e Orientação
Para o rolamento, o cálculo é outra fórmula que tirei da web. Eu apenas ajustei um pouco para atender aos meus propósitos para este cenário .
Inicialmente, esse cálculo é em radianos. É completamente inútil. Então, eu preciso convertê-lo.
Esta é a pré-etapa Rolamento . Isso é para converter os radianos na próxima etapa do meu cálculo.
Para a próxima etapa, alterei os números negativos e os corrigi aplicando esse cálculo.
Depois disso, arredondei o rolamento para obter um número inteiro.
Excluí as colunas Bearing (rad) , Bearing pre e Bearing . Em seguida, renomeei a coluna Naar boven afronden como Bearing Roundup .
Agora posso mesclar a coluna Bearing Roundup nesta tabela com a coluna BEARING da tabela Orientation .
Ao fazer isso, eu seria capaz de obter a direção.
Agora, tenho as colunas de direção ( Bearing Roundup ) e direção ( Orientation_Direction ) que usarei para o próximo modelo.
Aqui está o resultado no Power Query.
Script R para Cálculo de Distância e Rumo
Para este, usarei uma solução com um script R . Este é um conjunto de dados com as distâncias calculadas em milhas e quilômetros.
Estou executando este script R que é muito mais curto e limpo do que as fórmulas.
Depois de executar o script R , agora tenho 3 tabelas.
Aqui está a saída. Eu também arredondei.
Como você pode ver, os resultados do cálculo do script R e do cálculo do Excel são semelhantes.
Adicionando Visuais de Mapa
Por fim, adicionarei uma exibição visual ao resultado final.
Para fazer isso, repeti as etapas em um relatório do LuckyTemplates . Eu carreguei a tabela com os 3 locais. Também carreguei a tabela Orientation e o conjunto de dados ( selectionNL ) com a coluna Sort . Em seguida, juntei colunas para Orientation .
Isso completa o modelo final.
Análise geoespacial – Novo curso sobre
visualizações de dados LuckyTemplates LuckyTemplates – Mapas dinâmicos em dicas de ferramentas
Visualização de mapas de formas do LuckyTemplates para análise espacial
Conclusão
Neste relatório, optei por mostrar a direção vista pelo cliente. Você pode reverter isso ou mostrar ambos em seu relatório, dependendo de suas preferências. Basta trocar a latitude e longitude de e para o cálculo.
Esperançosamente, este tutorial contribuiu para uma melhor compreensão dos cálculos de distância e orientação em geral.
Confira os links abaixo para mais exemplos e conteúdo relacionado.
Saúde!
Paulo
Descubra a importância das colunas calculadas no SharePoint e como elas podem realizar cálculos automáticos e obtenção de dados em suas listas.
Descubra todos os atributos pré-atentivos e saiba como isso pode impactar significativamente seu relatório do LuckyTemplates
Aprenda a contar o número total de dias em que você não tinha estoque por meio dessa técnica eficaz de gerenciamento de inventário do LuckyTemplates.
Saiba mais sobre as exibições de gerenciamento dinâmico (DMV) no DAX Studio e como usá-las para carregar conjuntos de dados diretamente no LuckyTemplates.
Este tutorial irá discutir sobre Variáveis e Expressões dentro do Editor do Power Query, destacando a importância de variáveis M e sua sintaxe.
Aprenda a calcular a diferença em dias entre compras usando DAX no LuckyTemplates com este guia completo.
Calcular uma média no LuckyTemplates envolve técnicas DAX para obter dados precisos em relatórios de negócios.
O que é self em Python: exemplos do mundo real
Você aprenderá como salvar e carregar objetos de um arquivo .rds no R. Este blog também abordará como importar objetos do R para o LuckyTemplates.
Neste tutorial de linguagem de codificação DAX, aprenda como usar a função GENERATE e como alterar um título de medida dinamicamente.