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

Dataset real/plan combinado de DAX mediante la segmentación de datos para seleccionar el mes actual

Tengo un conjunto de datos('SAP Line Items FY') con 2 medidas [Scaled Actual Amount ($AOPfx)] y [Monto del plan escalado ($AOPfx)]. Este conjunto de datos tiene una relación con otra tabla que contiene los nombres de los 12 meses ('Meses'). La combinación es:
'Meses'[Monthnum] 1:Muchas 'Partidas individuales SAP FY'[Período fiscal]

Tengo una segmentación de datos para 'Meses'[Mes] para que el usuario del informe pueda seleccionar el mes actual (usando el nombre en lugar del número de período fiscal). Luego, lo que quiero hacer es crear una nueva medida, para los meses hasta el seleccionado debe incluir los Reales [Monto Real Escalado ($AOPfx)] y para los meses futuros debe usar [Monto del Plan Escalado ($AOPfx)].

Se me ha venido con

Measure = VAR mthnum = SELECTEDVALUE(Months[Monthnum]) RETURN SUMX(FILTER('SAP Line Items FY','SAP Line Items FY'[Fiscal Period]<=mthnum),[Scaled Actual Amount ($AOPfx)])+SUMX(FILTER('SAP Line Items FY','SAP Line Items FY'[Fiscal Period]>mthnum),[Scaled Plan Amount ($AOPfx)])
Pero parece usar [Monto del plan escalado ($AOPfx)] para todos los períodos. Sin embargo si yo duro código el mthnum a 1 así:
Measure = VAR mthnum = SELECTEDVALUE(Months[Monthnum]) RETURN SUMX(FILTER('Sap Line Items FY','SAP Line Items FY'[Fiscal Period]<=1),[Scaled Actual Amount ($AOPfx)])+SUMX(FILTER('SAP Line Items FY','SAP Line Items FY'[Fiscal Period]>1),[Scaled Plan Amount ($AOPfx)])
Entonces funciona como se esperaba. Supuse que era un problema de tipo de datos, tal vez Monthnum o Fiscal Period siendo un campo de texto, pero ambos son "Número entero".

¿Alguna idea de por qué no funcionará o enfoques alternativos?
1 ACCEPTED SOLUTION

Hay @andybrace ,

Debido a que tiene una relación entre las dos tablas, es por eso que el resultado es lo que busca.

Cree una tabla de segmentación de datos como se indica a continuación:

Slicer table = SELECTCOLUMNS('Months',"Month",'Months'[Month],"Monthnum",'Months'[Monthnum])

A continuación, cree una medida:

Measure 3 = 
var _tab=SUMMARIZE('SAP Line Items FY','SAP Line Items FY'[Fiscal Period],"value",IF(MAX('SAP Line Items FY'[Fiscal Period])<='SAP Line Items FY'[Measure 2],[Scaled Actual Amount ($AOPfx) 1],[Scaled Plan Amount ($AOPfx)1]))
Return
SUMX(_tab,[value])

Y verás:

vkellymsft_0-1627034893528.png

vkellymsft_1-1627034909991.png

Para el archivo .pbix relacionado, pls ver adjunto.

Saludos
Kelly

¿Respondí a su pregunta? Marcar mi post como una solución!

View solution in original post

4 REPLIES 4
Syndicate_Admin
Administrator
Administrator

Hay @andybrace ,

Podría tú pls proporcionar algunos dummy dato con producción esperada para prueba?

Saludos
Kelly

¿Respondí a su pregunta? Marcar mi post como una solución!

Da las gracias por la respuesta @v-kelly-msft .

Por favor, vea el ejemplo en Google Drive:https://drive.google.com/file/d/1-X41c4UlLibKsZ5ppSNBv0zgrdqJVIOr/view?usp=sharing

La matriz en la parte inferior muestra la salida que quiero. Los primeros 2 meses están mostrando los datos "Reales", el resto de los meses están mostrando los datos del "Plan". Sin embargo, para obtener esto he codificado de forma dura

VAR mthnum = 2
Mientras que quiero que esto use el mes seleccionado en la segmentación de datos para determinar el mthnum.

Hay @andybrace ,

Debido a que tiene una relación entre las dos tablas, es por eso que el resultado es lo que busca.

Cree una tabla de segmentación de datos como se indica a continuación:

Slicer table = SELECTCOLUMNS('Months',"Month",'Months'[Month],"Monthnum",'Months'[Monthnum])

A continuación, cree una medida:

Measure 3 = 
var _tab=SUMMARIZE('SAP Line Items FY','SAP Line Items FY'[Fiscal Period],"value",IF(MAX('SAP Line Items FY'[Fiscal Period])<='SAP Line Items FY'[Measure 2],[Scaled Actual Amount ($AOPfx) 1],[Scaled Plan Amount ($AOPfx)1]))
Return
SUMX(_tab,[value])

Y verás:

vkellymsft_0-1627034893528.png

vkellymsft_1-1627034909991.png

Para el archivo .pbix relacionado, pls ver adjunto.

Saludos
Kelly

¿Respondí a su pregunta? Marcar mi post como una solución!

Gracias por la solución! ¡Esto funciona perfectamente! 😊

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.