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

Medida para mostrar todos los valores inferiores al mes seleccionado (2 tablas de hechos)

Hola

Realmente agradecería su ayuda para obtener mi medida correcta.

Estoy tratando de mostrar todos los valores menos que el mes seleccionado, y mi modelo de datos tiene 2 tablas de hechos y una tabla de fechas,

He escrito mi medida así: pero solo muestra datos para el mes seleccionado aunque tenga una declaración "all" y una fecha <= max en el dax

Aquí está mi medida

ETC mensual =
Dónde last_visible_date = ..MAX('Fecha'[Fecha])
devolución
CALCULAR(suma(EJC[EJC]),
todo('Fecha')
,'Fecha'[Fecha] <= last_visible_date
)
Aquí está mi modelo de datos (he resaltado las uniones). No puedo cambiar mi modelo de datos por otros motivos
TrevLc_0-1667083498043.png

Aquí están mis datos (maqueta)

TrevLc_1-1667083614089.png

Esto es lo que muestra actualmente. Lo que me gustaría en este escenario es mostrar una fila de datos para julio Y agosto

TrevLc_2-1667083757535.png

10 REPLIES 10
Syndicate_Admin
Administrator
Administrator

Hi, @TrevLc ;

¿Está resuelto su problema? Si es así, marque la respuesta adecuada como una solución para ayudar a otros que tienen el problema similar y cierre el caso. Si no, házmelo saber y trataré de ayudarte más.


Saludos
Equipo de Apoyo a la Comunidad _ Yalan Wu
Si esta publicación ayuda, considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

Syndicate_Admin
Administrator
Administrator

Hi, @TrevLc ;

Puede conectar la conexión entre Date y otras tablas, mi método tiene un solo propósito, la tabla Date y la tabla FTE no deben tener relación, porque si hay una relación, al filtrar, definitivamente hará que la tabla FTE solo deje el valor filtrado;
Entonces, para no romper su tabla de relaciones, mi sugerencia es crear una nueva tabla FTE2 para romper la relación. Como sigue.

New FTE = SUMMARIZE('FTE',[Month],[FTE],[Cost Centre])

A continuación, cree una medida.

Monthly FTE = 
IF(ISINSCOPE('New FTE'[Month]),
IF(MAX('New FTE'[Month])<=MAX('Date'[Date]),
CALCULATE(SUM('New FTE'[FTE]),FILTER('New FTE', [Cost Centre] in VALUES(Amount[Cost Centr])))),
CALCULATE(SUM('New FTE'[FTE]),FILTER('New FTE',[Month]<=MAX('Date'[Date])&&[Cost Centre] in VALUES(Amount[Cost Centr]))))

El espectáculo final:

vyalanwumsft_0-1667196681031.pngvyalanwumsft_1-1667196693249.png

O puede elegir otras formas, en resumen, la fecha de la cortadora no tiene nada que ver con la fecha de la tabla
Saludos
Equipo de Apoyo a la Comunidad _ Yalan Wu
Si esta publicación ayuda, considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

Syndicate_Admin
Administrator
Administrator

Hola

¿Desea ver todos los meses desde enero del año en curso hasta el mes seleccionado? Entonces, si selecciona agosto, entonces desea ver 8 filas de enero a agosto. ¿Es correcto mi entendimiento? Comparta datos en un formato que se puede pegar en un archivo de MS Excel.

Gracias @Ashish_Mathur Sí, esencialmente quiero ver todos los meses hasta e incluyendo el mes seleccionado. (basado en un año de julio a junio, pero la idea es la misma)

La principal complicación (como mencioné inicialmente) es que mis datos existen en 2 tablas de hechos, que se unen.

Aquí están los datos para la tabla FTE

Centro de CostosMesFteLlave
J53121/07/20225844743J5312
J53121/08/20225744774J5312
J53121/09/20226244805J5312
J53121/10/20226044835J5312
N50011/07/20221244743N5001
N50011/08/20221344774N5001
N50011/09/20221544805N5001
N50011/10/20221644835N5001

Aquí hay datos para la tabla de fechas

FechaAñoMes
1/07/20222022Julio
1/08/20222022Agosto
1/09/20222022Septiembre
1/10/20222022Octubre

Aquí hay datos para la tabla Cantidad

Centro de CostosFecha de la versiónImporteLlave
J53121/07/202215044743J5312
J53121/08/20229944774J5312
J53121/09/20228044805J5312
J53121/10/20226044835J5312
N50011/07/20227044743N5001
N50011/08/20229044774N5001
N50011/09/202210044805N5001
N50011/10/20225044835N5001

Hola

Creo que una solución simple es;

  1. seleccionar meses individuales; en lugar de
  2. seleccione un solo mes y, a continuación, escriba una función DAX compleja (junto con el uso de una tabla desconectada) para que aparezcan los meses anteriores

¿Estaría de acuerdo con mi enfoque sugerido en 1 arriba?

@Ashish_Mathur

Quiero seleccionar un solo mes, pero el requisito es ver los datos de todos los meses anteriores (menor o igual al mes seleccionado)

Syndicate_Admin
Administrator
Administrator

Hi, @TrevLc ;

Puede eliminar la relación de tabla de fechas y tabla de importes, o agregar otra tabla de fechas sin relación a la tabla FTE.

1.Eliminar relación.

vyalanwumsft_0-1667182451824.png

2.Crear una medida.

Monthly FTE = 
IF(ISINSCOPE('FTE'[Month]),
IF(MAX('FTE'[Month])<=MAX('Date'[Date]),
SUM('FTE'[FTE])),CALCULATE(SUM('FTE'[FTE]),FILTER('FTE',[Month]<=MAX('Date'[Date]))))

El espectáculo final:

vyalanwumsft_1-1667182493765.png


Saludos
Equipo de Apoyo a la Comunidad _ Yalan Wu
Si esta publicación ayuda, considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

Gracias @v-yalanwu-msft

Sin embargo, necesito que la tabla de fechas esté conectada, ya que la uso como una segmentación de datos en todas mis páginas para que el usuario pueda seleccionar un período de informe.

¿Hay alguna manera de usar esa tabla desconectada y filtrarla en función del valor original seleccionado en la tabla de fechas original?

Syndicate_Admin
Administrator
Administrator

Gracias por la respuesta @Greg pero desafortunadamente ninguno de ellos funcionó.

El primero acumula el FTE pero solo muestra 1 fila de datos, por lo que si elijo septiembre, me da la suma de julio, agosto y septiembre, sin embargo, necesito que muestre los valores de cada mes individualmente.

El segundo también solo muestra una fila para la fecha seleccionada en lugar de todas las fechas anteriores (la fila total es una suma de todos los meses anteriores), pero quiero mostrar una fila para cada mes

Syndicate_Admin
Administrator
Administrator

@TrevLc Probar:

Monthly FTE =
Var last_visible_date = MAX('Date'[Date])
return
SUMX(FILTER(ALL(FTE),[Month]<= last_visible_date),[FTE])

or

Monthly FTE =
Var last_visible_date = MAX('Date'[Date])
return
CALCULATE(sum(FTE[FTE]),
FILTER(all('Date'),'Date'[Date] <= last_visible_date)
)

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.