Forum Discussion
Syndicate_Admin
Administrator
2 years agoDax
p1m =
CALCULAR(
DISTINCTCOUNT(PSR[customer_code]),
FILTRO(
VALORES(PSR[customer_code]),
[suma de ret] > 0
)
)
Se trata de una medida que calcula el número de clientes distintos de los clientes cuya suma de ventas al por menor es >0.
Quiero calcular otra medida que muestre un recuento distinto de clientes de este mes + los últimos 2 meses del mes actual.
Por ejemplo, el recuento de noviembre sería noviembre + octubre + septiembre. Del mismo modo, el recuento de diciembre sería dec+nov+oct.
Se trata de una medida que calcula el número de clientes distintos de los clientes cuya suma de ventas al por menor es >0.
Quiero calcular otra medida que muestre un recuento distinto de clientes de este mes + los últimos 2 meses del mes actual.
Por ejemplo, el recuento de noviembre sería noviembre + octubre + septiembre. Del mismo modo, el recuento de diciembre sería dec+nov+oct.
5 Replies
- Syndicate_Admin
Administrator
Hola @Parag_Gawate ,
En primer lugar, crea una tabla de calendario y crea una relación con tu tabla de hechos.
A continuación, utilice el siguiente cálculo modificando los nombres de las tablas según sus datos.
Cal_Measure = Var CM = CALCULATE(DISTINCTCOUNT(PSR[customer_code]), Filter(Calendar_Table, 'Calendar_Table'[Month] = Month(Today()))) Var PM = CALCULATE(DISTINCTCOUNT(PSR[customer_code]), Filter(Calendar_Table, 'Calendar_Table'[Month] = Month(Today())-1)) Var PPM = CALCULATE(DISTINCTCOUNT(PSR[customer_code]), Filter(Calendar_Table, 'Calendar_Table'[Month] = Month(Today())-2)) Return CM+PM+PPMSi esta publicación ayuda, considere aceptarla como la solución para ayudar a otros miembros a encontrarla más rápidamente. ¡¡Gracias!!
- Syndicate_Admin
Administrator
no mostrar nada
- Syndicate_Admin
Administrator
- Syndicate_Admin
Administrator
Por favor, pruebe esto
CURRENT MONTH = VAR _Start = EOMONTH(TODAY(),-1)+1 VAR _End = EOMONTH(TODAY(),0) RETURN CALCULATE([p1m], DATESBETWEEN('Calendar'[Date],_Start,_End) ------------- Last 1 MONTH = VAR _Start = EOMONTH(TODAY(),-2)+1 VAR _End = EOMONTH(TODAY(),-1) RETURN CALCULATE([p1m], DATESBETWEEN('Calendar'[Date],_Start,_End) ------------ Last 2 MONTH = VAR _Start = EOMONTH(TODAY(),-3)+1 VAR _End = EOMONTH(TODAY(),-2) RETURN CALCULATE([p1m], DATESBETWEEN('Calendar'[Date],_Start,_End) - Syndicate_Admin
Administrator
Hola @Parag_Gawate ,
Te sugiero que crees una tabla "DimDate" para ayudar al cálculo.
DimDate = VAR _CALENDAR = CALENDARAUTO() RETURN ADDCOLUMNS ( _CALENDAR, "Year", YEAR ( [Date] ), "Month", MONTH ( [Date] ), "MonthName", FORMAT ( [Date], "MMMM" ), "RANKX", RANKX ( _CALENDAR, YEAR ( [Date] ) * 100 + MONTH ( [Date] ),, ASC, DENSE ) )Medir:
Sum 3 month count = VAR _SUMMARIZE = SUMMARIZE ( ALL ( DimDate ), DimDate[Year], DimDate[MonthName], DimDate[RANKX], "P1M", [p1m] ) RETURN SUMX ( FILTER ( _SUMMARIZE, [RANKX] > MAX ( DimDate[RANKX] ) - 3 && [RANKX] <= MAX ( DimDate[RANKX] ) ), [P1M] )El resultado es el siguiente.
Saludos
Rico ZhouSi esta publicación ayuda, considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.