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

Don't miss out! 2025 Microsoft Fabric Community Conference, March 31 - April 2, Las Vegas, Nevada. Use code MSCUST for a $150 discount. Prices go up February 11th. Register now.

Reply
Syndicate_Admin
Administrator
Administrator

Usar un valor de medida como atributo para otra medida

Tengo una medida...

Porcentaje de GM de la cartera de pedidos =
VAR CurrentMonth = MES(HOY())
VAR CurrentYear = AÑO(HOY())

-- Seleccione meses fiscales distintos para el año actual y el año anterior
VAR DistinctMonths =
DISTINTO(
SELECTCOLUMNS(
FILTRO(
TODOS('dm_dim_val_fiscal_calendar'),
('dm_dim_val_fiscal_calendar'[Fiscal_Year_No] = Año actual &&
'dm_dim_val_fiscal_calendar'[Fiscal_Month_No] <= MesActual)||
(dm_dim_Val_fiscal_calendar[Fiscal_Year_No] = Año actual - 1 &&
dm_dim_Val_fiscal_calendar[Fiscal_Month_No] > CurrentMonth)),
"Fiscal", dm_dim_Val_fiscal_calendar[Fiscal_Year_No],
"Mes Fiscal", dm_dim_Val_fiscal_calendar[Fiscal_Month_No]
)
)
-- Obtener los últimos 3 meses distintos
VAR duranteTres meses =
TOPN(
3,
distinctMonths,
[AñoFiscal] * 100 + [Mes Fiscal],
DESC
)
-- Calcular el promedio del GM% de los últimos tres meses
Promedio del VARGM =
PROMEDIOX(
ÚltimaTres Meses,
[% de GM en el flete STD W]
)
DEVOLUCIÓN
PromedioGM

Esto me da el valor promedio de GM % Backlog, que se basa en el promedio de los últimos 3 meses- [GM % en el flete STD W]. Tengo GM% en la carga estándar W solo para los meses actuales y pasados de un año.

Ahora quiero usar esta medida para extrapolar el GM $ para la cartera de pedidos para los próximos meses. La fórmula para eso es-

Cartera de pedidos GM $ =
SI(
HASONEVALUE(«dm_dim_val_fiscal_calendar»[fiscal_month_no]),
SI(
[Ventas de cartera de pedidos liberadas $] = 0,
ESPACIO EN BLANCO(),
[Ventas de cartera de pedidos liberadas $] * ('Medidas de cartera de pedidos' [Porcentaje de cartera de pedidos GM] / 100)
),
SUMX(
VALORES(«dm_dim_val_fiscal_calendar»[fiscal_month_no]),
[Ventas de cartera de pedidos liberadas $] * ('Medidas de cartera de pedidos' [Porcentaje de cartera de pedidos GM] / 100)
)
)
Si utilizo mi porcentaje de GM de backlog en la medida anterior, no veo los valores de GM $ para los meses futuros (cualquier mes en el futuro que no sea el mes actual para un año calendario). ¿Cómo puedo asegurarme de ver también los valores de GM $ para los próximos meses?

2 REPLIES 2
Syndicate_Admin
Administrator
Administrator

Hola @Tejas007 -modifique esta medida para que devuelva el valor calculado para los meses anteriores y amplíe el mismo valor para los meses futuros.

Porcentaje de GM de la cartera de pedidos =
VAR CurrentMonth = MES(HOY())
VAR CurrentYear = AÑO(HOY())

-- Seleccione meses fiscales distintos para el año actual y el año anterior
VAR DistinctMonths =
DISTINTO(
SELECTCOLUMNS(
FILTRO(
TODOS('dm_dim_val_fiscal_calendar'),
('dm_dim_val_fiscal_calendar'[Fiscal_Year_No] = Año actual &&
'dm_dim_val_fiscal_calendar'[Fiscal_Month_No] <= MesActual) ||
('dm_dim_val_fiscal_calendar'[Fiscal_Year_No] = Año actual - 1 &&
'dm_dim_val_fiscal_calendar'[Fiscal_Month_No] > CurrentMonth)
),
"FiscalAño", 'dm_dim_val_fiscal_calendar'[Fiscal_Year_No],
"FiscalMonth", 'dm_dim_val_fiscal_calendar'[Fiscal_Month_No]
)
)

-- Obtener los últimos 3 meses distintos
VAR DuranteTres Meses =
TOPN(
3,
DistinctMonths,
[AñoFiscal] * 100 + [Mes Fiscal],
DESC
)

-- Calcular el promedio del GM% de los últimos tres meses
Promedio del VARGM =
PROMEDIOX(
ÚltimaTres Meses,
[% de GM en el flete STD W]
)

-- Determine si la fecha actual es en un mes futuro y devuelva el GM% calculado para los meses futuros
DEVOLUCIÓN
SI (
«dm_dim_val_fiscal_calendar»[Fiscal_Year_No] > Año en curso ||
('dm_dim_val_fiscal_calendar'[Fiscal_Year_No] = Año actual &&
'dm_dim_val_fiscal_calendar'[Fiscal_Month_No] > CurrentMonth),
PromedioGM, -- Usar el mismo GM% para los meses futuros
AverageGM -- Utilice el valor calculado para los meses pasados (o ajústelo aquí si es necesario)
)

Ahora, utilizando la medida anterior, actualizaremos el cálculo del Backlog GM $. Esto asegurará que la fórmula también funcione para los meses futuros.

Cartera de pedidos GM $ =
SI(
HASONEVALUE('dm_dim_val_fiscal_calendar'[fiscal_month_no]),
SI(
[Ventas de cartera de pedidos liberadas $] = 0,
EN BLANCO(),
[Ventas de cartera de pedidos liberadas $] * ( 'Medidas de cartera de pedidos' [Porcentaje de cartera de pedidos GM] / 100 )
),
SUMX(
VALUES('dm_dim_val_fiscal_calendar'[fiscal_month_no]),
[Ventas de cartera de pedidos liberadas $] * ( 'Medidas de cartera de pedidos' [Porcentaje de cartera de pedidos GM] / 100 )
)
)

Espero que las dos medidas anteriores te ayuden en tu escenario.

No se puede determinar un valor único para la columna 'Fiscal_Year_No' de la tabla 'dm_dim_val_fiscal_calendar'. Esto puede suceder cuando una fórmula de medida hace referencia a una columna que contiene muchos valores sin especificar una agregación como min, max, count o sum para obtener un único resultado.

Gracias por responder, recibí el error anterior para fiscal_year_no y Fiscal_month_no. No es un error tipográfico. El nombre de la columna es Fiscal_year_no y Fiscal_Month_No. Recibí ese error en la instrucción IF.


EDITAR- Resolví el error anterior usando una función max. Aun así, no soy capaz de ver ningún valor para los próximos meses.

Helpful resources

Announcements
Las Vegas 2025

Join us at the Microsoft Fabric Community Conference

March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!

Jan25PBI_Carousel

Power BI Monthly Update - January 2025

Check out the January 2025 Power BI update to learn about new features in Reporting, Modeling, and Data Connectivity.

Jan NL Carousel

Fabric Community Update - January 2025

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

Top Solution Authors