Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
Syndicate_Admin
Administrator
Administrator

La forgula DAX necesita ayuda

Hola, chicos

Estoy luchando con el siguiente problema. Tengo por debajo del dórula DAX e Iel valor que estoy obteniendo en la fila es correcto, pero realmente no entiendo por qué obtengo otro valor por el total. Así que necesito ver el valor en la fila (369....) en la imagen de la tarjeta izquierda en lugar de 182....

¡Gracias de antemano!

_YTD Target_test = 
VAR GMID = ([_KPI Lower Limit] + [_KPI Upper Limit]) / 2
VAR B = DATEDIFF(DATE(YEAR([Business_date (current)]),1,1),ENDOFQUARTER('Dim Kpi'[dat_end]),DAY) 
VAR A = DATEDIFF(DATE(YEAR([Business_date (current)]),1,1),[Business_date (current)],DAY)
RETURN
GMID * (A/B)

YTD.png

1 ACCEPTED SOLUTION
Syndicate_Admin
Administrator
Administrator

Hola @RicoZhou y @Greg_Deckler ,

Tengo la solución definitiva. El problema era que no había una relación entre el KPI de la tabla y la tabla de fechas. Así que arreglé esto con la siguiente formule.

_YTD_Target_Gauge = 
VAR KWARTAAL =
SWITCH(
    TRUE(),
    [Business_date (current)] >= DATE(YEAR([Business_date (current)]),1,1) && [Business_date (current)] <= DATE(YEAR([Business_date (current)]),3,31), "Q1",
    [Business_date (current)] >= DATE(YEAR([Business_date (current)]),4,1) && [Business_date (current)] <= DATE(YEAR([Business_date (current)]),6,30), "Q2",
    [Business_date (current)] >= DATE(YEAR([Business_date (current)]),7,1) && [Business_date (current)] <= DATE(YEAR([Business_date (current)]),9,30), "Q3",
    [Business_date (current)] >= DATE(YEAR([Business_date (current)]),10,1) && [Business_date (current)] <= DATE(YEAR([Business_date (current)]),12,31), "Q4")
VAR GMID = CALCULATE((SUM('Fact Target'[amt_lower_limit]) + SUM('Fact Target'[amt_upper_limit])) / 2,LEFT('Dim Kpi'[kpi_name],2) = KWARTAAL) 
VAR EINDKWARTAAL = DATEDIFF(DATE(YEAR([Business_date (current)]),1,1),ENDOFQUARTER('Dim Kpi'[dat_end]),DAY) 
VAR YTDDAGEN = DATEDIFF(DATE(YEAR([Business_date (current)]),1,1),[Business_date (current)],DAY)
RETURN
GMID*(YTDDAGEN/EINDKWARTAAL)

Y luego otra formule que Rico me dio:

TGT_Gauge = SUMX('Dim Kpi',[_YTD_Target_Gauge])

¡Gracias chicos por pensar en este tema!



View solution in original post

6 REPLIES 6
Syndicate_Admin
Administrator
Administrator

Hola @RicoZhou y @Greg_Deckler ,

Tengo la solución definitiva. El problema era que no había una relación entre el KPI de la tabla y la tabla de fechas. Así que arreglé esto con la siguiente formule.

_YTD_Target_Gauge = 
VAR KWARTAAL =
SWITCH(
    TRUE(),
    [Business_date (current)] >= DATE(YEAR([Business_date (current)]),1,1) && [Business_date (current)] <= DATE(YEAR([Business_date (current)]),3,31), "Q1",
    [Business_date (current)] >= DATE(YEAR([Business_date (current)]),4,1) && [Business_date (current)] <= DATE(YEAR([Business_date (current)]),6,30), "Q2",
    [Business_date (current)] >= DATE(YEAR([Business_date (current)]),7,1) && [Business_date (current)] <= DATE(YEAR([Business_date (current)]),9,30), "Q3",
    [Business_date (current)] >= DATE(YEAR([Business_date (current)]),10,1) && [Business_date (current)] <= DATE(YEAR([Business_date (current)]),12,31), "Q4")
VAR GMID = CALCULATE((SUM('Fact Target'[amt_lower_limit]) + SUM('Fact Target'[amt_upper_limit])) / 2,LEFT('Dim Kpi'[kpi_name],2) = KWARTAAL) 
VAR EINDKWARTAAL = DATEDIFF(DATE(YEAR([Business_date (current)]),1,1),ENDOFQUARTER('Dim Kpi'[dat_end]),DAY) 
VAR YTDDAGEN = DATEDIFF(DATE(YEAR([Business_date (current)]),1,1),[Business_date (current)],DAY)
RETURN
GMID*(YTDDAGEN/EINDKWARTAAL)

Y luego otra formule que Rico me dio:

TGT_Gauge = SUMX('Dim Kpi',[_YTD_Target_Gauge])

¡Gracias chicos por pensar en este tema!



Syndicate_Admin
Administrator
Administrator

Hay @CR72021

Total en la imagen de la tabla le mostrará el resultado resumido. Su medida se ve como se muestra a continuación.

_YTD Target_test = 
VAR GMID = ([_KPI Lower Limit] + [_KPI Upper Limit]) / 2
VAR B = DATEDIFF(DATE(YEAR([Business_date (current)]),1,1),ENDOFQUARTER('Dim Kpi'[dat_end]),DAY) 
VAR A = DATEDIFF(DATE(YEAR([Business_date (current)]),1,1),[Business_date (current)],DAY)
RETURN
GMID * (A/B)

Su medida se basa en muchas partes diferentes.

Tales como [límite inferior de KPI], [límite superior de _KPI], B y A. Todos ellos mostrarán el resultado resumido en Total.

Aquí creo una muestra para explicárselo más.

Mi muestra.

1.png

Mi Medida tiene la misma lógica que la tuya.

Measure = 
VAR _GMID = DIVIDE(SUM('Table'[KPI lower limit])+SUM('Table'[KPI upper limit]),2)
VAR _A = SUM('Table'[Day1])
VAR _B = SUM('Table'[Day2])
RETURN
_GMID*(_A/_B)

Resultado:

1.png

Vemos que Q2 tiene resultado 4, este resultado se basa en (3+1)/2 *(2/1)

El total se basa en el resultado resumido, (8+8)/2 *(2/6) = 2,67

Aquí le sugiero que cree una nueva medida basada en [_YTD Target_test] medida por función Sumx.

New Measure = SUMX('Table',[Measure])

El resultado es el siguiente.

2.png

Saludos
Rico Zhou

Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.

No @RicoZhou,

Probé su solución, pero desafortunadamente tengo el mismo resultado. Así que mabye a continuación información le da más explicación sobre mi situación.


Así que en la primera tabla quiero ver Q2 porque en el filtro seleccioné 31-5-2021.

En la segunda tabla se ve el PK de las 3 tablas, KPI, Target y Date(snapshot).

Entonces, lo que necesito es cuando selecciono una fecha comercial del filtro que mi medida solo seleccione el trimestre correcto y el valor de mi medida para ese trimestre.

Probé su última medida SUMX (tabla,...) Probé las 3 mesas que ninguna de ellas funciona. En tu caso solo tienes 1 mesa.

Por favor, ayuda ¡Gracias!

CR72021_0-1636449866539.png

CR72021_1-1636449959055.png

Syndicate_Admin
Administrator
Administrator

@CR72021 Esto parece un problema de medida total. Muy común. Vea mi publicación al respecto aquí: https://community.powerbi.com/t5/DAX-Commands-and-Tips/Dealing-with-Measure-Totals/td-p/63376

Además, esta Medida Rápida, Medir Totales, La Palabra Final debería darle lo que necesita:
https://community.powerbi.com/t5/Quick-Measures-Gallery/Measure-Totals-The-Final-Word/m-p/547907

No @Greg_Deckler,

¡Gracias por la rápida respuesta! Desafortunadamente, mi situación es un poco compleja y todavía no puedo obtener el valor que quiero.

En mi situación utilizo 3 tablas diferentes ver formule abajo. Realmente no sé cómo arreglar esto.

_YTD Target_test1 = 
VAR GMID = ([_KPI Lower Limit] + [_KPI Upper Limit]) / 2 //From FACT_Target table
VAR EINDKWARTAAL = DATEDIFF(DATE(YEAR([Business_date (current)]),1,1),ENDOFQUARTER('Dim Kpi'[dat_end]),DAY) //BusinessDate is from Snapshot table and Dim KPI is another table
VAR YTDDAGEN = DATEDIFF(DATE(YEAR([Business_date (current)]),1,1),[Business_date (current)],DAY)
RETURN
GMID * YTDDAGEN/EINDKWARTAAL

@CR72021 Va a necesitar más información como datos de muestra, relaciones, etc.

Lo sentimos, si tiene problemas para seguir, ¿puede publicar datos de muestra como texto y salida esperada?
No hay realmente suficiente información para continuar, primero verifique si su problema es un problema común que se enumera aquí: https://community.powerbi.com/t5/Community-Blog/Before-You-Post-Read-This/ba-p/1116882

Además, consulte esta publicación sobre Cómo obtener respuestas rápidas a su pregunta: https://community.powerbi.com/t5/Community-Blog/How-to-Get-Your-Question-Answered-Quickly/ba-p/38490

Las partes más importantes son:
1. Datos de muestra como texto, use la herramienta de tabla en la barra de edición
2. Resultado esperado de los datos de la muestra
3. Explicación en palabras de cómo llegar desde 1. a 2.

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.