Forum Discussion
How to Get Your Question Answered Quickly
Saudações,
seguindo o exemplo acima, como calcular no Power BI em DAX uma tabela onde considerar na mesma linha o mesmo Motorista + Veículo + Dados, separando em uma coluna o KM inicial e o KM final. Observe que existe 1 exemplo em que o motorista fez a viagem de ida e volta no mesmo dia e depois há um outro exemplo onde o motorista inicia a viagem em um dia e finaliza em outro dia.
Aproveitando, tem como fazer em Linguagem M e tratar através de 2 novas colunas com KM INICIAL e KM FINAL?
dia | hora |Motorista | Carro | km |
01/08/2023 | 07:02:01 | João | FiurinoAET1052 | 7.000 |
01/08/2023 | 07:12:20 | João | FiurinoAET1052 | 7.450 |
02/08/2023 | 07:11:01 | João | FiurinoAET1052 | 7.450 |
03/08/2023 | 07:00:07 | João | FiurinoAET1052 | 8.000 |
Eu fiz esse código em DAX e deu erro "Muitos argumentos foram passados para a função SUMX. Contagem superior de argumentos para a função: 2.":
OrdenacaoComDiferencaKM =
VAR TabelaAgrupada =
SUMMARIZE(
'dRespFormCheckList',
'dRespFormCheckList'[Motorista],
'dRespFormCheckList'[Data],
'dRespFormCheckList'[Carro],
"MenorHora", MIN('dRespFormCheckList'[Hora]),
"MaiorHora", MAX('dRespFormCheckList'[Hora])
)
RETURN
SUMX(
TabelaAgrupada,
IF(
RANKX(
FILTER(
'dRespFormCheckList',
'dRespFormCheckList'[Motorista] = EARLIER('dRespFormCheckList'[Motorista]) &&
'dRespFormCheckList'[Data] = EARLIER('dRespFormCheckList'[Data]) &&
'dRespFormCheckList'[Carro] = EARLIER('dRespFormCheckList'[Carro])
),
[MenorHora] + IF([MenorHora] = [MaiorHora], TIME(23, 59, 59), TIME(0, 0, 0)), , 1, Dense ) = 1, CALCULATE
(
SUMX
(
'
dRespFormCheckList
'
,
' dRespFormCheckList'[Km Final] - 'dRespFormCheckList'[Km Inicial],
'dRespFormCheckList'[Motorista] = EARLIER('dRespFormCheckList'[Motorista]),
'dRespFormCheckList'[Data] = EARLIER('dRespFormCheckList'[Data]),
' dRespFormCheckList'[Carro] = EARLIER('dRespFormCheckList'[Carro])
)
)
)
)