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.
Neste tutorial, mostrarei como maximizei uma técnica chamada ramificação de medida para acelerar meu processo de desenvolvimento de relatório em meu envio para o 10º Desafio do LuckyTemplates .
O LuckyTemplates Challenge é uma série de cenários em que um conjunto de dados é fornecido e os participantes são solicitados a fornecer o conjunto de requisitos fornecidos em cada resumo do projeto. É uma ótima maneira de os usuários do LuckyTemplates encontrarem maneiras criativas de aplicar seus conhecimentos e habilidades em cenários da vida real.
Este envio vem com várias páginas, duas das quais já discuti em outro tutorial. Nesta postagem do blog, discutirei como criei mais três páginas um pouco mais complexas. Apesar da complexidade, consegui tornar o processo mais eficiente.
Índice
Criando a página de relatório de plantas
Vou começar com a página Plants . É assim que o resultado final se parece.
Se você passou pelo outro tutorial que mencionei anteriormente, verá que o plano de fundo é um pouco semelhante. Isso porque criei os planos de fundo de todo o meu relatório no PowerPoint usando um único modelo. Acabei de mudar o cabeçalho de cada página.
Em seguida, carreguei esse plano de fundo em todas as páginas. Como salvei o slide de plano de fundo desta página como Plants.png, você verá o mesmo nome de arquivo em Page Background no meu painel de visualização.
Também usei essas segmentações para Fornecedor, Categoria e Tipo de material, que também aparecem em outras páginas.
O botão home é uma constante em todas as minhas páginas. É uma ótima ferramenta de navegação que torna mais fácil para os usuários voltarem para a página inicial com um clique assim que terminarem de navegar nessa página.
O que há de único na página Plantas é o botão aqui que permite aos usuários visualizar as informações combinadas de plantas e fornecedores.
Os dados para fornecedores têm uma página inteira por conta própria, mas combinar os dados dessas duas páginas é útil, especialmente se o usuário deseja insights mais profundos.
Eu tenho mais um ícone aqui no topo que permite aos usuários visualizar as anomalias da planta.
As anomalias são relativamente novas e foram introduzidas na atualização de novembro de 2020 para o LuckyTemplates.
Na parte mais à esquerda desta página, usei o que chamamos de cortador de chiclet.
Eu criei esse cortador usando este ícone destacado no meu painel de visualização à direita.
Se você não vir o cortador de chiclet do seu lado, isso significa que você terá que obter o aplicativo primeiro. Basta clicar em Mais visuais em Ferramentas externas e, em seguida, escolher Do AppSource .
Isso abrirá uma janela que mostra uma lista de diferentes aplicativos que você pode usar para o seu relatório. Certifique-se de ter “All” destacado no painel esquerdo.
Usando a barra de pesquisa, basta digitar “chiclet” e clicar no botão de pesquisa. O cortador que você está procurando aparecerá nos resultados da pesquisa.
Depois de clicar em Adicionar , a segmentação de dados aparecerá no painel de visualizações da área de trabalho do LuckyTemplates. Essa segmentação é uma ótima maneira de adicionar variedade aos seus relatórios, especialmente se você quiser ir além das opções padrão fornecidas com o LuckyTemplates.
Criando Visuais e Usando Ramificação de Medidas em Minutos de Paralisação e Tendências de Defeitos
O visual no lado direito da minha página mostra as tendências de minutos de inatividade , os minutos de inatividade cumulativos por data , as tendências de defeitos e os defeitos cumulativos por data .
Para as tendências de minutos de inatividade, usei um gráfico de linha.
Eu criei isso usando este ícone no meu painel de visualizações.
Quanto à medida que usei, ela pode ser encontrada na pasta Key Measures em Moving Avg .
Esta medida é um cálculo da tendência média móvel de um mês de tempo de inatividade.
Para aqueles de vocês que leem muitos tutoriais LuckyTemplates ou assistem a qualquer um de nossos vídeos tutoriais, acharão essa abordagem familiar. Nosso CEO, Sam McKay, usa essa técnica de média móvel de um mês em muitos de seus vídeos.
É uma medida DAX direta que usa com de menos um mês. Tudo isso é feito durante os Minutos de Inatividade.
Esta medida já está formatada. Mas também sei que muitos de nós formatamos nossas medidas DAX de maneiras diferentes. Independentemente de como você formata suas medidas, eu uso uma ótima ferramenta que também pode ser útil para você.
Se você visitar o , perceberá que, se rolar até o final de qualquer postagem, verá várias ferramentas e recursos que podem ser úteis para o processo de desenvolvimento de relatórios. Para formatar minhas medidas DAX, uso a .
Sei que existem outros sites por aí, mas optei por usar essa ferramenta porque ela está vinculada a várias outras ferramentas LuckyTemplates no Analyst Hub. Também é muito direto e fácil de usar.
Para mostrar como funciona, vou colar a medida que mostrei anteriormente no espaço. Em seguida, clicarei no botão Formatar localizado na parte inferior da página.
Isso corrige automaticamente a medida, dando a ela o formato mais limpo possível, considerando suas preferências.
Você pode definir suas preferências nas Configurações no lado direito da página. Por exemplo, se você preferir linhas longas em vez de curtas, pode alternar a opção para isso em Linhas .
Pessoalmente, prefiro usar várias linhas curtas para minhas medidas.
Você também tem a opção de adicionar um espaço após cada função que usar na medida. Como você pode ver, o espaço facilita a compreensão da medida.
Quando estiver satisfeito com a aparência da sua medida, basta clicar em Copiar código na parte inferior.
Em seguida, volte para a área de trabalho do LuckyTemplates e cole a medida formatada.
Na minha opinião, é muito importante manter seus códigos DAX limpos e formatados corretamente. Portanto, certifique-se também de reservar um tempo para fazer isso quando estiver trabalhando com medidas comparativas.
Agora que você viu como criei os Minutos de Inatividade, vai ficar fácil trabalhar na página Defeitos. Sam sempre fala sobre ramificação de medida e esse é o conceito que apliquei aqui.
Ramificação de medida significa começar com uma medida básica simples e, em seguida, criar ou ramificar para outras medidas.
Nesse caso, simplesmente copiei a medida de Downtime Minutes e a converti em Defects.
Agora que as medidas estão em vigor, voltarei aos meus recursos visuais.
Quando estou trabalhando com gráficos de linha como este, gosto que as linhas sejam mais grossas do que o normal. Isso torna a tendência mais visível. O padrão geralmente é muito fino, o que significa que as tendências não são enfatizadas o suficiente.
Para ajustar o peso das linhas, vá para Formas em visualizações e aumente a Largura do traço . Quanto maior o número, mais grossa a linha fica. Para o visual acima, defini-o como 3.
Você verá que há muitas opções aqui sobre como melhorar ainda mais seus recursos visuais. Você pode escolher cores de dados ou adicionar rótulos de dados .
Quando se trata desse tipo de visual, normalmente não uso rótulos de dados. No entanto, gosto de usar dicas de ferramentas. É por isso que, ao destacar o ponteiro sobre qualquer ponto do visual, você verá a média móvel de um mês para essa data específica.
Criando visuais e usando a ramificação de medida em minutos e defeitos de tempo de inatividade cumulativo
Assim que passarmos para o visual de Minutos de inatividade cumulativos por data , você verá que é um gráfico de área básico. Novamente, acabei de usar o visual que vem com o LuckyTemplates por padrão.
Essas foram as medidas cumulativas que criei. Organizei-os agrupando-os na pasta Cumulativo.
Esta é a medida que usei para Cumulative Downtime Minutes .
Como você pode ver, a medida Cumulative Downtime Minutes foi calculada usando a função aplicada aos Downtime Minutes. Em seguida, usei sobre a tabela de dados com a data sendo menor ou igual à data . Este cálculo me dá um total cumulativo ao longo do tempo dentro deste gráfico.
Às vezes, incluo valores secundários nesses gráficos. Por exemplo, posso usar um elemento como Downtime Minutes.
Portanto, procurarei Minutos de tempo de inatividade no painel Campos.
Então, vou colocar isso como um valor secundário.
Mas quando olhamos para o visual agora, ele não nos dá uma imagem clara dos dados.
É por isso que optei por não usar um valor secundário aqui. Então, vou tirar esse valor secundário e trazê-lo de volta para como era antes.
O que eu usei neste visual são os controles deslizantes de zoom . Eu os usei nos eixos X e Y.
Os controles deslizantes de zoom foram introduzidos na atualização do LuckyTemplates de novembro de 2020. É um recurso interessante que permite aos usuários se concentrar em detalhes mais específicos.
Os controles deslizantes de zoom podem ser ativados no painel de formatação.
Você tem a opção de usar o controle deslizante de zoom para o eixo X ou o eixo Y, ou pode ativar ambos.
Você também tem a opção de adicionar rótulos e dicas de ferramentas, se desejar. Mas, no meu caso, não tenho tanto espaço quanto gostaria, então optei por não adicioná-los. Mas se eu estivesse trabalhando em um visual maior, provavelmente também os usaria.
Basicamente, você só precisa clicar no controle deslizante e puxá-lo para cima ou para baixo para aumentar e diminuir o zoom do visual. No eixo Y, por exemplo, veja como o zoom também expande os números.
Aumentar o zoom no eixo Z faz a mesma coisa. Quando diminuído anteriormente, mostrava apenas os anos. Mas quando eu amplio, ele começa a mostrar períodos de tempo mais estreitos, como meses.
É um recurso muito interessante, especialmente se você estiver trabalhando com tantos dados e quiser permitir que os usuários se concentrem nas especificidades do seu visual. Ao aumentar o zoom dessa forma, você também pode ver uma visualização maior clicando neste ícone para o modo de foco.
Isso expande essa visualização específica para toda a tela, facilitando a verificação de dados em pontos específicos.
Para os Defeitos Cumulativos, mais uma vez usei a ramificação de medida para tornar meu processo mais eficiente. Copiei a medida para meus Minutos de inatividade cumulativos, que mostrei anteriormente.
Em seguida, dupliquei e troquei os minutos de inatividade para defeitos.
Quanto ao visual, fiz a mesma coisa. Apenas dupliquei o visual para Minutos de indisponibilidade cumulativos por data, mudei um pouco o formato da cor escolhendo um tom mais claro, depois apliquei a medida para Defeitos cumulativos.
Usando a ramificação de medida ao classificar o desempenho
O último visual que discutirei nesta página é a tabela no meio. Foi aqui que realmente trabalhei muito, considerando o número de compassos que tive que fazer.
Você pode ver que esse visual mostra as localizações da fábrica, minutos de inatividade e defeitos, bem como algumas médias e classificações.
Vou começar com a medida para Average Downtime .
Aqui está a aparência dessa medida.
É uma medida básica que utiliza a MÉDIAX dos Data aplicados nos Minutos de Parada de cada usina. Esta é minha base primária ao classificar as plantas.
A seguir, mostrarei como fiz as medidas de classificação. Começarei com a classificação por minutos de inatividade .
Chamei a medida de Plantas de melhor desempenho por tempo de inatividade . Evidentemente, esse nome é muito longo para ser usado no visual. É por isso que nomeei a coluna Classificação por minutos de inatividade .
Basicamente, usei para Plant Location.
Usei essa combinação porque não precisava que um total aparecesse na parte inferior. Eu queria que as localizações das fábricas fossem filtradas para que nenhum total aparecesse. Afinal, não faz sentido ter um total quando a coluna está apenas classificando os dados. É por isso que você verá que os totais correspondentes estão em branco.
Alguns também podem usar IF aqui em vez de ISFILTERED . Você pode escolher qualquer técnica com a qual se sinta confortável, desde que tenha o mesmo resultado.
Em seguida, usei a função aplicada a os locais da fábrica.
Você também pode usar em vez de ALL , dependendo dos resultados que deseja ver. A diferença básica aqui é que ALL inclui todos os dados, independentemente de eu ter filtros instalados.
Aqui está um exemplo que mostra a diferença. Vou escolher um fornecedor específico do slicer aqui no topo.
Depois de fazer isso, os dados na tabela mostrarão apenas as linhas aplicáveis. Observe que em Rank By Downtime Minutes , ele mostra 2, 4, 5 e assim por diante. É assim que fica se você usar a função ALL. Ele mantém a mesma classificação porque a classificação não deve mudar se você filtrar alguns dos dados.
Se eu usar ALLSELECTED na mesma fórmula, essas colunas mostrarão 1, 2, 3 e assim por diante. Isso ocorre porque ele classificará apenas os resultados filtrados e excluirá os dados que não estão aparecendo quando os filtros estiverem em vigor.
Voltando à medida, esse RANKX também é aplicado aos Minutos de Downtime, com os dados na ordem ASC .
No final dessa instrução IF , usei a função .
Isso garante que, se a localização de uma planta estiver sendo filtrada, uma classificação aparecerá. Caso contrário, deixará o espaço em branco.
Em seguida, está a classificação por minutos médios de tempo de inatividade .
Mais uma vez, vou aplicar alguma ramificação de medida aqui. Vou usar a mesma fórmula que usei para a classificação por minutos de tempo de inatividade e, em vez disso, usar a medida de tempo de inatividade médio .
Eu fiz a mesma coisa para Rank By Defects .
Você pode ver que, ao usar a ramificação de medida, a criação de relatórios do LuckyTemplates é mais rápida e eficiente.
Agora que fiz as medidas para as classificações, trabalharei na classificação média geral .
Este foi um pouco mais complicado e envolveu a criação de variáveis. Comecei criando um para AddRank, que pega as três classificações — Plantas com melhor desempenho por tempo de inatividade , Plantas com melhor desempenho por defeitos e Plantas com melhor desempenho por tempo médio de inatividade — e as resume.
A próxima variável, que chamei de Result , usa apenas a função na variável AddRank por três.
Então, eu queria um RETURN que aplicasse novamente as funções ISF ISFILTERED . Claro, se o Result não for filtrado, quero que ele retorne um BLANK .
A próxima medida que criei foi a classificação geral .
Mais uma vez, usei as funções IF ISFILTERED novamente. Ele também usou o RANKX com base na última medida do Ranking médio geral que acabei de fazer. É muito semelhante às três primeiras fórmulas que criei.
Quando você olha para a classificação geral , pode ver que há empates.
Se eu quisesse criar uma medida que distinguisse uma classificação geral e não tivesse um empate, há maneiras de fazer isso com o DAX.
Observe que você pode classificar a classificação geral do último para o primeiro simplesmente clicando na seta no nome da coluna. Isso colocará o pior desempenho no topo.
Criando as páginas de fornecedores e tipo de material
A página Plants pode ter exigido muito trabalho, mas as páginas Vendors e Material Types contêm os mesmos elementos. Isso significa que copiei e colei as medidas dessas páginas.
Para o slide Fornecedores, apenas dupliquei o slide Plantas e subscrevi os detalhes específicos das plantas em detalhes específicos dos fornecedores.
O fatiador de chiclet na página de fornecedores tem apenas mais entradas do que a página de plantas, mas todo o resto é o mesmo.
Eu fiz a mesma coisa para a página Material Type .
Isso mostra que em relatórios de várias páginas como esses, você pode criar apenas um slide e transformá-lo em três slides em questão de minutos. Só é preciso um planejamento adequado.
Cálculos no LuckyTemplates usando ramificação de medida
Ramificação de medida: Estratégia de desenvolvimento do LuckyTemplates
Medidas DAX no LuckyTemplates usando ramificação de medida
Conclusão
O desenvolvimento de relatórios deve ser um processo completo porque você deseja que as pessoas obtenham o máximo de insights possível. Mas também é contraproducente se você torná-lo um processo excessivamente tedioso, porque nem todo mundo tem tempo para criar relatórios complexos.
Isso torna a ramificação de medida uma ótima técnica para tornar o processo o mais eficiente possível sem sacrificar os resultados.
Também ajuda ter um plano claro e alguns modelos de design para trabalhar. Como você viu neste tutorial, criar vários slides em um curto espaço de tempo é possível em um relatório bem pensado.
Espero que você tenha aprendido algumas das técnicas que usei para que também possa começar a tornar seu processo o mais eficiente possível.
Tudo de bom,
Jarrett
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.