Check your eligibility for this 50% exam voucher offer and join us for free live learning sessions to get prepared for Exam DP-700.
Get StartedDon't miss out! 2025 Microsoft Fabric Community Conference, March 31 - April 2, Las Vegas, Nevada. Use code MSCUST for a $150 discount. Prices go up February 11th. Register now.
Hola
Tengo una tabla que se ve como abajo.
DataType de valor de fecha
01.01.2022 10 A
02/01/2022 15 A
03/01/2022 10 A
01.02.2022 11 A
02/02/2022 23 A
03/02/2022 10 A
01.01.2022 22 B
02/01/2022 55 B
03/01/2022 12 B
01.02.2022 73 B
02/02/2022 23 B
03.02.2022 14 B
01.03.2022 15 B
02/03/2022 23 B
03.03.2022 22 B
Necesito devolver una SUMA MENSUAL de los valores, donde si existe el tipo de datos A, usamos ese número, sin embargo, si A no existe para el mes, usamos el total para el tipo de datos B.
Los resultados esperados del ejemplo anterior son:
Valor MES
ene-22 35
feb-22 44
ene-22 60
Como puede ver, hay datos para el tipo A para los primeros 2 meses, pero para el 3er, solo hay tipo B, por lo que usamos el tipo B.
He creado 2 medidas, 1 para recuperar los datos para el tipo A (MedidaA) y una para recuperar el tipo B (MedidaB).
A los efectos de mi informe, estos están utilizando filtros para que cada uno obtenga su respectivo tipo de datos.
He intentado lo siguiente:
MedidaC =
Valor MES
ene-22 35
feb-22 44
ene-22 60
TOTAL 79
¿Alguien tiene alguna sugerencia sobre otra forma de hacer esto correctamente?
@amitchandak has podido responder a casi todas mis preguntas. ¡Espero que puedas ayudar con este! 🙂
Hola @Bifinity_75 , @amitchandak , @Mikelytics
He intentado agregar una combinación de sus soluciones propuestas, sin embargo, todavía estoy recibiendo el total incorrecto.
Aquí está mi medida (me encantaría dar un PBIX limpio, pero es un gran proyecto con el que estoy trabajando y tiene algunos datos confidenciales). He intentado esto tanto con datos que están en la misma tabla con diferentes tipos de datos como columnas, como con datos provenientes de 2 tablas de hechos separadas.
Aquí hay algunas capturas de pantalla de mis 2 soluciones de tabla de hechos separadas.
@MCassady Gracias por compartir el problema.
Tengo una pregunta sobre sus datos de muestra. ¿Cuál sería la lógica si los datos para el tipo de datos A y B están disponibles para el mismo mes, como en la siguiente instantánea?
Si ambos están disponibles, priorizamos el tipo A e ignoramos que B existe.
En sql sería como tener un ISNULL(A,B)
Intente lo siguiente:
Datos base
en mi ejemplo, supongo que tienes una tabla de fechas conectada a tu tabla
Primero la versión con filas correctas y total incorrecto,. Entonces, si no necesita un total, puede tomar este, pero también apague el total.
AB_SUM =
var var_SumA =
CALCULATE(
SUM(SampleAB[Value]),
SampleAB[DataType] = "A"
)
var var_SumB =
CALCULATE(
SUM(SampleAB[Value]),
SampleAB[DataType] = "B"
)
RETURN
if(
NOT ISBLANK(var_SumA)
,var_SumA
,var_SumB
)
Si también necesita el total, tome esta fórmula
AB_SUM =
SUMX(
VALUES(DimDate[Year-Month]),
var var_SumA =
CALCULATE(
SUM(SampleAB[Value]),
SampleAB[DataType] = "A"
)
var var_SumB =
CALCULATE(
SUM(SampleAB[Value]),
SampleAB[DataType] = "B"
)
RETURN
if(
NOT ISBLANK(var_SumA)
,var_SumA
,var_SumB
)
)
Saludos
Miguel
-----------------------------------------------------
Si esta publicación ayuda, considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente. ¡Aprecio su pulgar hacia arriba!
@me en las respuestas o perderé tu hilo.
@Mikelytics @amitchandak @Bifinity_75
Esta parece ser la solución, tenía el sumx en el lugar equivocado y revisé dos veces esta publicación.
Gracias por las rápidas respuestas, ¡ustedes son los mejores!
@MCassady , consulte primero la respuesta de @Bifinity_75 , si eso no funciona, intente
sumx(Valores('Fecha'[Mes Año]), calcular(IF (ISBLANK([MedidaA]),[MedidaB],[MedidaA])) )
Hola @MCassady , prueba esta medida:
Value = var A_= CALCULATE(sum('Table'[ Value ]),'Table'[DataType]="A")
var B_=CALCULATE(sum('Table'[ Value ]),'Table'[DataType]="B")
return
if (A_=BLANK(),B_,A_)
Saludos