Forum Discussion
Dax - relatives dates
Bonjour,
Je souhaite faire ressortir :
-le BF moyen du mois précédent
-le BF moyen du mois en cours
-le BF moyen du mois suivant
J'ai donc mis des filtres de dates relatives sur mes 3 visuels.
Mais je souhaite créer une formule DAX pour ne pas utiliser les filtres.
Y a t il une formule DAX qui existe ?
Merci par avance.
4 Replies
- amitchandak
Super User
@Sylvine_Wyz , No muy claro se puede utilizar la inteligencia de tiempo con la tabla de fechas
Ejemplo
Ventas MTD: CALCULATE(SUM(Sales[Sales Amount]),DATESMTD('Date'[Date]))
Last MTD Sales - CALCULATE(SUM(Sales[Sales Amount]),DATESMTD(dateadd('Date'[Date],-1,MONTH)))
Ventas del último mes: CALCULATE(SUM(Sales[Sales Amount]),previousmonth('Date'[Date]))
este mes , Ventas MTD , CALCULATE(SUM(Sales[Sales Amount]),DATESMTD(ENDOFMONTH('Date'[Date])))
Last MTD (completar) Ventas : CALCULATE(SUM(Sales[Sales Amount]),DATESMTD(ENDOFMONTH(dateadd('Date'[Date],-1,MONTH))))
Próximas ventas MTD: CALCULATE(SUM(Sales[Sales Amount]),DATESMTD(dateadd('Date'[Date],1,MONTH)))Ventas del mes siguiente: CALCULATE(SUM(Sales[Sales Amount]),nextmonth('Date'[Date]))
Para obtener lo mejor de la función de inteligencia del tiempo. Asegúrese de que tiene un calendario de fechas y que se ha marcado como la fecha en la vista de modelo. Además, únete a ella con la columna de fecha de tus hechos. Consulte :radacad sqlbi My Video Series Aprecia tus Felicitaciones.
- v-alq-msft
Community Support
Hola, @Sylvine_Wyz
Según su descripción, creé datos para reproducir su escenario. El archivo pbix se adjunta al final.
Mesa:
Puede crear medidas como se indica a continuación.
Current Month = CALCULATE( AVERAGE('Table'[Value]), FILTER( ALL('Table'), YEAR([Date])=YEAR(TODAY())&& MONTH([Date])=MONTH(TODAY()) ) )Previous Month = CALCULATE( AVERAGE('Table'[Value]), FILTER( ALL('Table'), YEAR([Date])=YEAR(EOMONTH(TODAY(),-1))&& MONTH([Date])=MONTH(EOMONTH(TODAY(),-1)) ) )Following Month = CALCULATE( AVERAGE('Table'[Value]), FILTER( ALL('Table'), YEAR([Date])=YEAR(EOMONTH(TODAY(),1))&& MONTH([Date])=MONTH(EOMONTH(TODAY(),1)) ) )Resultado:
Saludos
Allan
Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
- Sylvine_Wyz
Helper IV
Hello v-alq-msft
Thanks for your help.But i need to use filter in Iso_Pays (Fr, ES, Be...)
Currently, if i selecte the segment FR or Es, it's the same BF.Can you help me ?
Thanks
- v-alq-msft
Community Support
Hola, @Sylvine_Wyz
Puede crear una tabla de una sola columna 'Slicer' que contenga 'BF', 'Fr', 'ES' y así sucesivamente. A continuación, puede intentar modificar la medida como a continuación para ver si ayuda.
Current Month = IF ( HASONEVALUE ( 'Slicer'[Iso_pays] ), SWITCH ( SELECTEDVALUE ( 'Slicer'[Iso_pays] ), "BF", CALCULATE ( AVERAGE ( 'Table'[BF] ), FILTER ( ALL ( 'Table' ), YEAR ( [Date] ) = YEAR ( TODAY () ) && MONTH ( [Date] ) = MONTH ( TODAY () ) ) ), "Fr", CALCULATE ( AVERAGE ( 'Table'[Fr] ), FILTER ( ALL ( 'Table' ), YEAR ( [Date] ) = YEAR ( TODAY () ) && MONTH ( [Date] ) = MONTH ( TODAY () ) ) ), "ES", CALCULATE ( AVERAGE ( 'Table'[ES] ), FILTER ( ALL ( 'Table' ), YEAR ( [Date] ) = YEAR ( TODAY () ) && MONTH ( [Date] ) = MONTH ( TODAY () ) ) ) ) )Saludos
Allan
Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.