Fórum de Power BI Uma Iniciativa da Datab

A primeira comunidade de Power BI em língua portuguesa.
Antes de participar Leia as Regras e depois Apresente-se

Dúvidas relacionadas a relacionamentos, fórmulas e funções DAX, power pivot, etc...
  • Avatar do usuário
#4178
Tenho um banco de dados estruturado conforme a imagem abaixo, onde a coluna de tempo mostra a diferença entre as datas (start e end time) e corresponde ao tempo que o equipamento está parado. Queria criar a partir dele uma nova tabela com uma única coluna de data, no entanto de hora em hora, pois como pode ser visto na imagem as datas podem ter dias de diferença...assim na coluna "tempo" dessa nova tabela mostraria o tempo que o equipamento está parado dentro dessa hora, alguma ideia de como poderia calcular isso?

Imagem

*PS: encontrei essa fórmula que me ajuda a criar uma coluna de datas de hora em hora, minha maior dúvida é como trazer as informações das outras colunas que estão em outras consultas para essa nova tabela (motivo, equipamento, area e tempo)

Calendar = ADDCOLUMNS(CROSSJOIN(CALENDAR(MIN(vwVinhedoEventsTempoEfetivo[StartDateTime]);MAX(vwVinhedoEventsTempoEfetivo[EndDateTime]));UNION(ROW("Time";TIME(0;0;0));ROW("Time";TIME(1;0;0));ROW("Time";TIME(2;0;0));ROW("Time";TIME(3;0;0));ROW("Time";TIME(4;0;0));ROW("Time";TIME(5;0;0));ROW("Time";TIME(6;0;0));ROW("Time";TIME(7;0;0));ROW("Time";TIME(8;0;0));ROW("Time";TIME(9;0;0));ROW("Time";TIME(10;0;0));ROW("Time";TIME(11;0;0));ROW("Time";TIME(12;0;0));ROW("Time";TIME(13;0;0));ROW("Time";TIME(14;0;0));ROW("Time";TIME(15;0;0));ROW("Time";TIME(16;0;0));ROW("Time";TIME(17;0;0));ROW("Time";TIME(18;0;0));ROW("Time";TIME(19;0;0));ROW("Time";TIME(20;0;0));ROW("Time";TIME(21;0;0));ROW("Time";TIME(22;0;0));ROW("Time";TIME(23;0;0));ROW("Time";TIME(24;0;0))));"Data";[Date]+[Time])
#4179
Olá boa noite,

Não sei se entendi corretamente sua necessidade, você consegue nos enviar um pequeno exemplo ( excel mesmo ) de como seria/ficaria o resultado que vc deseja obter?
De qualquer forma, se você possue uma tabela com as informações conforme seu print, acho que a melhor saída seria através do editor de consultas ( M ).

Por exemplo:

Em um cenário que vc tenta uma tabela com os campos exatamente como vc demonstrou em seu post, obtida através de importação de dados ( não sei se funciona com direct query )

Tente o seguinte e veja se é o que precisa:


Vá em Editar Consultas / Guia Adicionar Coluna / Coluna Personalizada.

Insira a fórmula abaixo:

=List.DateTimes(DateTime.From(DateTime.Date([Start Time])),(Number.From(Date.From([End Time])-Date.From([Start Time]))+1)*24,#duration(0,1,0,0))

Desta forma, você irá criar uma coluna com uma list de DataTime para cada linha de sua tabela. Depois é só expandir para novas linhas.

Veja se lhe ajuda,

PS: Veja também esta outra maneira de conseguir gerar uma tabela ( via DAX ) com as Datas de hora em hora.


Calendar =
VAR TabelaHoras = ADDCOLUMNS(GENERATESERIES(0;23;1);"Hora";TIME([Value];0;0))
VAR TabelaDatas = CALENDAR(MIN(Tabela1[Start Time]);MAX(Tabela1[End Time]))
VAR TabelaH_D = ADDCOLUMNS(CROSSJOIN(TabelaHoras;TabelaDatas);"DataHora";[Date]+[Hora])
RETURN
SUMMARIZE(TabelaH_D;[DataHora])
CBPB curtiu isso
#4202
Oi Virgilio, boa noite!

Estou enviando o modelo de como gostaria que ficassem os dados
(14.54 KiB) Baixado 10 vezes
O problema é que não consigo mexer no editor de consultas, pois a pessoa disponibilizou no webservice e eu não tenho acesso a base de dados, só tenho permissão para mexer no relatório.
Concatenar datas

Boa tarde, Esse visual de calendário, assi[…]

média custo

Boa tarde, O Averagex faz o cálculo linha […]

Resultado da média "infinity"

Jefferson boa tarde, 1) Para calcular a mé[…]

Vendas por hora

Bom dia Maurício, Veja se o anexo te ajuda[…]

Treinamentos Presenciais e Online de Power BI