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.
Tengo productos que entran y salen de la promoción durante todo el año. Tengo 2 tablas, Ventas y Fechas de Vigencia.
Crearía una columna para marcar si un elemento estaba dentro o fuera de la promoción durante un período de tiempo específico.
A continuación, cree una medida para hacer mis cálculos. Mi resultado deseado es la tabla de abajo.
Creé manualmente la columna"Was_Promoted"de la extrema derecha, ¿se puede hacer en DAX?
Tabla de ventas:
producto | fecha | Total_Sales | Total_NotSold | Was_Promoted |
Prod1 | 01/01/21 | 100 | 25 | 1 |
Prod1 | 01/02/21 | 200 | 10 | 1 |
Prod1 | 01/03/21 | 100 | 0 | |
Prod1 | 01/04/21 | 400 | 0 | 1 |
Prod1 | 01/05/21 | 500 | 20 | 1 |
Prod1 | 01/06/21 | 100 | 30 | 1 |
Prod2 | 01/01/21 | 400 | 50 | |
Prod2 | 01/02/21 | 500 | 25 | |
Prod2 | 01/03/21 | 200 | 10 | 1 |
Prod2 | 01/04/21 | 100 | 20 | 1 |
Prod2 | 01/05/21 | 700 | 30 | |
Prod2 | 01/06/21 | 100 | 10 |
Fecha de entrada en vigor de la promoción
producto | Start_Date | End_Date |
Prod1 | 01/01/21 | 01/02/21 |
Prod1 | 01/04/21 | 01/06/21 |
Prod2 | 01/03/21 | 01/04/21 |
Solved! Go to Solution.
Hay @briguin
Pensé que quería una columna calculada para este "Was_Promoted" creado manualmente, una tabla de promoción desconectada
Was_Promoted =
VAR CurProduct = SalesTable[Product]
VAR CurDate = SalesTable[Date]
VAR T1=FILTER(PromotionTable,PromotionTable[Product]=CurProduct&&PromotionTable[Start_Date]<=CurDate&&PromotionTable[End_Date]>=CurDate)
RETURN
COUNTROWS(T1)
Hay @briguin
Pensé que quería una columna calculada para este "Was_Promoted" creado manualmente, una tabla de promoción desconectada
Was_Promoted =
VAR CurProduct = SalesTable[Product]
VAR CurDate = SalesTable[Date]
VAR T1=FILTER(PromotionTable,PromotionTable[Product]=CurProduct&&PromotionTable[Start_Date]<=CurDate&&PromotionTable[End_Date]>=CurDate)
RETURN
COUNTROWS(T1)
@briguin sí que prod_dim no necesita mucho, excepto que esta tabla tendrá valores de producto únicos para establecer la relación entre la promoción y la tabla de ventas.
@briguin tendrá más sentido tener una dimensión Product que tenga un producto único y tener una relación con ambas tablas, una a muchas.
y, a continuación, agregue esta columna personalizada en La tabla de ventas.
Promoted =
VAR __table = CALCULATETABLE ( Promotion )
VAR __sales = CALCULATETABLE ( Sales )
VAR __promotionCount = COUNTX ( CROSSJOIN ( __sales, __table ), IF ( Sales[Date] >= [Start_Date] && Sales[Date] <= [End_Date], 1 ) )
RETURN IF ( ISBLANK ( __promotionCount ), "No", "Yes" )
Consulte mi última entrada de blog comparando el cliente seleccionado con otros clientes N principales | PeryTUS Me gustaría ❤ Felicitaciones si mi solución ayudó. 👉 Si puede pasar tiempo publicando la pregunta, también puede hacer esfuerzos para dar Felicitaciones a quien ayudó a resolver su problema. ¡Es una muestra de agradecimiento!
⚡Visítenos en https://perytus.com, su ventanilla única para proyectos, formación y consultoría relacionados con Power BI.⚡
Creo que estás diciendo que necesito una 3ª mesa, una Prod_Dim.
¿Qué información adicional pondría en una tabla de Prod_Dim?
Prod1 es una clave única. Vendemos el mismo producto durante todo el año, simplemente lo promovemos de manera diferente detrás de las escenas.
Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City
Check out the April 2024 Power BI update to learn about new features.
User | Count |
---|---|
2 | |
1 | |
1 | |
1 | |
1 |
User | Count |
---|---|
2 | |
2 | |
2 | |
2 | |
1 |