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

Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.

Reply
Syndicate_Admin
Administrator
Administrator

Buscando calcular una tirada de 3 meses basada en múltiples filtros

Tengo un conjunto de datos que se ve algo como esto...

UbicaciónFechaNombredeproveedorUnitsSoldTotalUnitsVendorShare
11/1/2021VendorA200100020%
21/1/2021VendorB300100030%
31/1/2021VendorC500100050%
12/1/2021VendorA25090027.78%
22/1/2021VendorB30090033.33%
32/1/2021VendorC45090050%
13/1/2021VendorA300120025%
23/1/2021VendorB600120050%
33/1/2021VendorC300120025%
14/1/2021VendorA400100040%

Lo que quiero poder hacer... es por ubicación y por proveedor, calcular un promedio móvil de 3 meses para el VendorShare.... para que si estoy mirando la ubicación 1 > proveedor A>enero el promedio móvil de 3 meses para la cuota de proveedor sería 20%... pero para febrero sería del 23,89% (PROMEDIO (20%, 27,78%)) .. para marzo sería del 24,26% (PROMEDIO (20%, 27,78%, 25%))... para abril sería del 30,93% (PROMEDIO (27,78%, 25%, 40%))... Etc...

si PIVOTO en VendorName puedo hacer que funcione creando una medida mediante la función AverageX con un filtro DATESINPERIOD... sin embargo, me gustaría hacer esto sin tener que hacer el PIVOT... porque me gustaría crear una segmentación de datos que me permita filtrar fácilmente en VendorName...

¿Algún pensamiento o sugerencia sería muy apreciado?

1 ACCEPTED SOLUTION
Syndicate_Admin
Administrator
Administrator

Hola @bmturney ,

tratar de medir

rolling = CALCULATE(AVERAGE(Vendor[VendorShare]),ALLEXCEPT(Vendor,Vendor[VendorName],Vendor[Location]),
DATESINPERIOD(Proveedor[Fecha],
LASTDATE(Proveedor[Fecha]),-3, MES
))

Krutigawale33_0-1616473695647.png

View solution in original post

4 REPLIES 4
Syndicate_Admin
Administrator
Administrator

Hola @bmturney ,

tratar de medir

rolling = CALCULATE(AVERAGE(Vendor[VendorShare]),ALLEXCEPT(Vendor,Vendor[VendorName],Vendor[Location]),
DATESINPERIOD(Proveedor[Fecha],
LASTDATE(Proveedor[Fecha]),-3, MES
))

Krutigawale33_0-1616473695647.png

Impresionante... esto funcionó perfectamente para lo que necesitaba... si estuviéramos en la misma habitación pondría mi brazo alrededor de tus hombros y me frotaría los nudillos en la parte superior de tu cabeza (acto de cariño aquí en los EE.UU. ;^) )

Gracias @bmturney estoy feliz de que resuelva su problema.

Syndicate_Admin
Administrator
Administrator

@bmturney , Pruebe una medida como con la ayuda de la tabla de fechas

Rolling 3 = divide(CALCULATE(sum(Table[Unit Sold]),DATESINPERIOD('Date'[Date],MAX('Date'[Date]),-3,MONTH)) ,
CALCULATE(sum(Table[Unit Sold]),DATESINPERIOD('Date'[Date],MAX('Date'[Date]),-3,MONTH), filter(allselected(Table),Table[Location] = max(Table[Location]))))

Para obtener lo mejor de la función de inteligencia del tiempo. Asegúrese de que tiene un calendario de fechas y se ha marcado como la fecha en la vista de modelo. Además, únete a ella con la columna de fecha de tus hechos/s. Refer :radacad sqlbi Mi serie de vídeos Apreciar sus Felicitaciones.

Helpful resources

Announcements
RTI Forums Carousel3

New forum boards available in Real-Time Intelligence.

Ask questions in Eventhouse and KQL, Eventstream, and Reflex.

LearnSurvey

Fabric certifications survey

Certification feedback opportunity for the community.