Alura Challenge BI

This challenge consists in develop skills in Business Intelligence and put in practice all obtained knowledge in Power BI. The challenge will take 4 weeks divided in 3 different projects with different  levels of complexity:

 

 

The Alura Log manager is facing some work changes due to the high demand of logistics services during the pandemic time. She wants to keep the quality of her service and she needs constantly follow up the KPI’s to take correct decisions.  To help her in this analysis a logistics dashboard was created with the following information provided by the customer dataset.

image

✔ How many customers purchases was delivered on time?

A Card was created to represent this number including a tooltip that shows which kind of vehicle has more on time deliveries.

image

image

✔ How many customers purchase was not delivered on time ?

Also a card was created and tooltip to show which vehicle is having more problems to delivery products on time, this can be a good analysis to understand if late deliveries have any relationship with the kind of transport.

image

 

image

✔ Number of available vehicles

A card was created to show the total of available cars and a tooltip showing which type of cars are available in a pie chart.

image

image

✔ Calculate S2D (Ship to Door) median by month

Using a DATEDIFF and analysing the days from when the purchase was done by the Customer and when it was delivered I could find the S2D values.

image

image

A tooltip was create to show the details by year

image

✔ Show how many occurrences by state

A Map was created using the longitude and latitude information

image

Bellow you can see some of the measures I have created to develop the Power BI dashboard.

image

 

MEASURE FORMULA
% Acum Categorias % Acum Categorias = [Soma Acum Categorias] / CALCULATE([Soma de Vendas], ALL('Tabela - Produtos'))
Atrasados Atrasados = CALCULATE([Total de Pedidos], FILTER('Tabela - Pedidos', 'Tabela - Pedidos'[Data de Entrega] > 'Tabela - Pedidos'[Data Previsão]))
Em Transito Em Transito = CALCULATE([Total de Pedidos], FILTER('Tabela - Pedidos', 'Tabela - Pedidos'[Status do Pedido] = "Em Transito"))
Entregues Entregues = CALCULATE([Total de Pedidos], FILTER('Tabela - Pedidos', 'Tabela - Pedidos'[Status do Pedido] = "Entregue"))
No Prazo No Prazo = CALCULATE([Total de Pedidos], FILTER('Tabela - Pedidos', 'Tabela - Pedidos'[Data de Entrega] <= 'Tabela - Pedidos'[Data Previsão]))
Qtd Produtos Vendidos Qtd Produtos Vendidos = SUM('Tabela - Pedidos'[Quantidade])
Rank de Categoria Rank de Categoria = RANKX(ALLSELECTED('Tabela - Produtos'), [Soma de Vendas])
Soma Acum Categorias Soma Acum Categorias = CALCULATE([Soma de Vendas], TOPN([Rank de Categoria], ALL('Tabela - Produtos'),[Soma de Vendas],DESC))
Soma de Vendas Soma de Vendas = SUMX('Tabela - Pedidos', 'Tabela - Pedidos'[Quantidade] * RELATED('Tabela - Produtos'[Preço]))
Total de Pedidos Total de Pedidos = COUNT('Tabela - Pedidos'[ID Pedido])
Veiculos Disponiveis Veiculos Disponiveis = CALCULATE(COUNT('Tabela - Veículos'[ID Vei­culos]), FILTER('Tabela - Veículos', 'Tabela - Veículos'[Status] = "Disponi­vel"))
Veiculos Ocupados Veiculos Ocupados = CALCULATE(COUNT('Tabela - Veículos'[ID Vei­culos]), FILTER('Tabela - Veículos', 'Tabela - Veículos'[Status] = "Ocupado"))

 

An extra dashboard was created showing a Pareto table used to show accumulative gains by a rank of the most sold product to the less one. In the same page a bar chart showing the category with more sold items based on quantity.

A Card also shows the total sales and total of itens sold with a filter by year and month that the user can select when necessary.

image

All the ETL process was done in Power Query using the main functions such as : replace values, divide columns by delimiter, change columns type, rename columns, remove empty cells with no relevant information, cleaning spaces, deleting no relevant information. In this process 4 CSV tables was refined as shows bellow:

image

Some relashionships was done between tables, such as the image bellow:

image