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

Earn the coveted Fabric Analytics Engineer certification. 100% off your exam for a limited time only!

Reply
Anonymous
Not applicable

Datos del cubo tabular SSAS del mes anterior

Hola equipo,

a continuación se muestran mis datos y el color amarillo es mi salida esperada. Quiero obtener datos del mes anterior.

en la columna "Total" es mi medida y quiero obtener datos de la medida de retraso/mes anterior "Total del mes anterior", y en mi tabla tenemos la columna de fecha duplicada. cuando extraijo una columna de fecha distinta en la nueva tabla "Dim Date" y se asigna en la columna de fecha con la tabla real y la medida de escritura no estoy obteniendo resultados exactos.

mi consulta DAX:

Año anterior: AÑO(HOY())-1 Mes Anterior:

total :- CALCULATE(SUM(DIM_FRM_REVENUE[Ingresos]),FILTRO(DIM_REVENUE,MES(HOY())-MES(DIM_REVENUE[Value_Date])))

Total Del Mes Anterior:- CALCULATE(SUM(DIM_REVENUE[Revenue]),FILTER(DIM_REVENUE,(MONTH(DIM_REVENUE[Value_Date]) á [PreviousMnth]) &&(año (DIM_REVENUE[Value_Date] á [PreviousYear]))))

por favor, ayúdame a corregir mi salida.

MonthData.JPG

saludos

snkm

1 ACCEPTED SOLUTION

Hola @Krishna_nm ,

Lo sentimos, por favor actualice la medida como se muestra a continuación.

Total Previous Month = 
VAR pre =
    EDATE ( MAX('DIM_REVENUE'[date]), -1 )
VAR preym =
    FORMAT ( pre, "mmm yyyy" )
RETURN
    CALCULATE (
        SUM ( DIM_REVENUE[Revenue] ),
        FILTER ( ALLSELECTED(DIM_REVENUE), DIM_REVENUE[Month Name] = preym )
    )

Capture.PNG

Pbix como adjunto.

Community Support Team _ Frank
If this post helps, then please consider Accept it as the solution to help the others find it more quickly.

View solution in original post

8 REPLIES 8
v-frfei-msft
Community Support
Community Support

Hola @Krishna_nm ,

Por favor, prueba éste, por favor.

Total Previous Month =
VAR pre =
    EDATE ( TODAY (), -1 )
VAR preym =
    FORMAT ( pre, "mmm yyyy" )
RETURN
    CALCULATE (
        SUM ( DIM_REVENUE[Revenue] ),
        FILTER ( DIM_REVENUE, DIM_REVENUE[Month Name] = preym )
    )

Community Support Team _ Frank
If this post helps, then please consider Accept it as the solution to help the others find it more quickly.
Anonymous
Not applicable

Hola @v-frfei-msft ,

He implementado la misma consulta dada por usted y a continuación es la salida. Estoy recibiendo sólo un mes de datos. por favor, sugiera más métodos para obtener todos los datos del mes.

PreviousTotal.JPG

saludos

snkm

Anonymous
Not applicable

Debe crear una tabla de fechas y marcarla como tabla de fechas. Esta tabla debe contener un conjunto contincioso de fechas (sin huecos). Véase: https://docs.microsoft.com/en-us/power-bi/desktop-date-tables. También puede crear la tabla de fechas mediante DAX, por ejemplo, con: https://docs.microsoft.com/en-us/dax/calendarauto-function-dax.

Este es un ejemplo que puede utilizar si crea una nueva tabla:

DateTable = CALENDARAUTO() 

Si ha creado esta tabla de fechas (y la ha vinculado a la tabla con totales), puede utilizar funciones de inteligencia de tiempo como YTD o PREVIOUSMONTH. En su caso, usted podría resolver su pregunta mediante el uso de PREVIOUSMONTH. Vea el ejemplo siguiente:

CALCULAR(SUM(InternetSales_USD[SalesAmount_USD]), PREVIOUSMONTH('DateTable'[Fecha]))

Hola @Krishna_nm ,

Lo sentimos, por favor actualice la medida como se muestra a continuación.

Total Previous Month = 
VAR pre =
    EDATE ( MAX('DIM_REVENUE'[date]), -1 )
VAR preym =
    FORMAT ( pre, "mmm yyyy" )
RETURN
    CALCULATE (
        SUM ( DIM_REVENUE[Revenue] ),
        FILTER ( ALLSELECTED(DIM_REVENUE), DIM_REVENUE[Month Name] = preym )
    )

Capture.PNG

Pbix como adjunto.

Community Support Team _ Frank
If this post helps, then please consider Accept it as the solution to help the others find it more quickly.
Anonymous
Not applicable

Hola @v-frfei-msft

excelente soultion, Muchas gracias por su gran ayuda !!!

saludos

snkm

Anonymous
Not applicable

Hola Larssb,

Muchas gracias por que resuenas y te levantas. a continuación están mis hallazgos

He intentado con sugerencia proporcionar usando DIMTable Calenderauto(12) y marcar la tabla como Fecha.

la mayor parte de la función de inteligencia de tiempo y todas las medidas se muestran en blanco. por favor, ayude a sugerir otras maneras.TimeIntelligence.JPG

saludos

Snkm

amitchandak
Super User
Super User

@Krishna_nm

Si tienes fecha, puedes probar Time intelligence With date calendar

MTD Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESMTD('Date'[Date]))
last MTD Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESMTD(dateadd('Date'[Date],-1,MONTH)))
last MTD (complete) Sales =  CALCULATE(SUM(Sales[Sales Amount]),DATESMTD(ENDOFMONTH(dateadd('Date'[Date],-1,MONTH))))
last year MTD Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESMTD(dateadd('Date'[Date],-12,MONTH)))
last year MTD (complete) Sales =  CALCULATE(SUM(Sales[Sales Amount]),DATESMTD(ENDOFMONTH(dateadd('Date'[Date],-12,MONTH))))


last QTR same Month (complete) Sales =  CALCULATE(SUM(Sales[Sales Amount]),DATESMTD(ENDOFMONTH(dateadd('Date'[Date],-1,Qtr))))


MTD (Year End) Sales =  CALCULATE(SUM(Sales[Sales Amount]),DATESMTD(ENDOFYEAR('Date'[Date])))
MTD (Last Year End) Sales =  CALCULATE(SUM(Sales[Sales Amount]),DATESMTD(ENDOFYEAR(dateadd('Date'[Date],-12,MONTH),"8/31")))

 

QTD Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESQTD(('Date'[Date])))

Last QTD Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESQTD(dateadd('Date'[Date],-1,QUARTER)))
Last complete QTD Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESQTD( ENDOFQUARTER(dateadd('Date'[Date],-1,QUARTER))))

Last to last QTD Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESQTD(dateadd('Date'[Date],-2,QUARTER)))
Next QTD Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESQTD(dateadd('Date'[Date],1,QUARTER)))

Last year same QTD Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESQTD(dateadd('Date'[Date],-1,Year)))
Last year same QTD Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESQTD(ENDOFQUARTER(dateadd('Date'[Date],-1,Year))))

trailing QTR = CALCULATE(SUM(Sales[Sales Amount]),dateadd('Date'[Date],-1,QUARTER))
trailing  4 QTR = CALCULATE(SUM(Sales[Sales Amount]),dateadd('Date'[Date],-4,QUARTER))



YTD Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESYTD(('Date'[Date]),"12/31"))
This Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESYTD((ENDOFYEAR('Date'[Date])),"12/31"))

Last YTD Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESYTD(dateadd('Date'[Date],-1,Year),"12/31"))
Last YTD complete Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESYTD(ENDOFYEAR(dateadd('Date'[Date],-1,Year)),"12/31"))
Last to last YTD Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESYTD(dateadd('Date'[Date],-2,Year),"12/31"))

Year behind Sales = CALCULATE(SUM(Sales[Sales Amount]),dateadd('Date'[Date],-1,Year))

Para obtener lo mejor de la función de inteligencia de tiempo. Asegúrese de que tiene un calendario de fechas y se ha marcado como la fecha en la vista de modelo. Además, únase a él con la columna de fecha de su hecho/s. Consulte:
https://radacad.com/creating-calendar-table-in-power-bi-using-dax-functions
https://www.archerpoint.com/blog/Posts/creating-date-table-power-bi
https://www.sqlbi.com/articles/creating-a-simple-date-table-in-dax/

Mariusz
Community Champion
Community Champion

Hola @Krishna_nm

Pruebe la función PARALLELPERIOD DAX

https://docs.microsoft.com/en-us/dax/parallelperiod-function-dax

Saludos
Mariusz

Si este post ayuda,entonces por favor considere aceptarlo como la solución.

Por favor, siéntase libre de conectarse conmigo.
Linkedin

Helpful resources

Announcements
April AMA free

Microsoft Fabric AMA Livestream

Join us Tuesday, April 09, 9:00 – 10:00 AM PST for a live, expert-led Q&A session on all things Microsoft Fabric!

March Fabric Community Update

Fabric Community Update - March 2024

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

Top Solution Authors