March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Early bird discount ends December 31.
Register NowBe one of the first to start using Fabric Databases. View on-demand sessions with database experts and the Microsoft product team to learn just how easy it is to get started. Watch now
Hola
Hemos detectado un problema desconocido.
He configurado 12 parámetros hipotéticas, uno para cada mes del año, que me permiten cambiar los valores de horas de facturación de una columna. Los parámetros utilizan la medida [Predicción - FTE - Valor de enero] dentro de la fórmula.
He creado una sentencia SWITCH, que funciona a nivel de mes. Pero en el nivel total, no importa lo que intente, el total no muestra ningún valor. Código DAX que se muestra a continuación.
FTE Change - External Hours (MSc) = // MSc - Monthly Scenarios. Year = 2020
VAR CurrentSelection = SELECTEDVALUE ( 'Date'[Fiscal Month Year] )
VAR _ForecastFTE = CALCULATE(
AVERAGE( 'Budget - BoY Forecast KPIs'[Value] ),
'Budget - BoY Forecast KPIs'[Sub-Category] = "Number of employees, FTE"
)
VAR _BudgetedWorkedHrsIncOvertime =
CALCULATE (
SUM ( 'Budget - BoY Forecast KPIs'[Value] ),
'Budget - BoY Forecast KPIs'[Sub-Category] = "Worked hours incl overtime"
)
VAR _BudgetedInternalHours =
CALCULATE (
SUM ( 'Budget - BoY Forecast KPIs'[Value] ),
'Budget - BoY Forecast KPIs'[Sub-Category] = "Internal hours"
)
VAR _Budgeted_HrsforOneFTEmployeeinPeriod = DIVIDE( _BudgetedWorkedHrsIncOvertime, _ForecastFTE )
VAR _SwitchLogic = SWITCH (
TRUE(),
CurrentSelection = "Jan 2020", (( _ForecastFTE + [Prediction - FTE - Jan Value] ) * _Budgeted_HrsforOneFTEmployeeinPeriod) - _BudgetedInternalHours,
CurrentSelection = "Feb 2020", (( _ForecastFTE + [Prediction - FTE - Feb Value] ) * _Budgeted_HrsforOneFTEmployeeinPeriod) - _BudgetedInternalHours ,
CurrentSelection = "Mar 2020", (( _ForecastFTE + [Prediction - FTE - Mar Value] ) * _Budgeted_HrsforOneFTEmployeeinPeriod) - _BudgetedInternalHours ,
CurrentSelection = "Apr 2020", (( _ForecastFTE + [Prediction - FTE - Apr Value] ) * _Budgeted_HrsforOneFTEmployeeinPeriod) - _BudgetedInternalHours ,
CurrentSelection = "May 2020", (( _ForecastFTE + [Prediction - FTE- May Value] ) * _Budgeted_HrsforOneFTEmployeeinPeriod) - _BudgetedInternalHours ,
CurrentSelection = "Jun 2020", (( _ForecastFTE + [Prediction - FTE - Jun Value] ) * _Budgeted_HrsforOneFTEmployeeinPeriod) - _BudgetedInternalHours ,
CurrentSelection = "Jul 2020", (( _ForecastFTE + [Prediction - FTE - Jul Value] ) * _Budgeted_HrsforOneFTEmployeeinPeriod) - _BudgetedInternalHours ,
CurrentSelection = "Aug 2020", (( _ForecastFTE + [Prediction - FTE - Aug Value] ) * _Budgeted_HrsforOneFTEmployeeinPeriod) - _BudgetedInternalHours ,
CurrentSelection = "Sep 2020", (( _ForecastFTE + [Prediction - FTE - Sep Value] ) * _Budgeted_HrsforOneFTEmployeeinPeriod) - _BudgetedInternalHours ,
CurrentSelection = "Oct 2020", (( _ForecastFTE + [Prediction - FTE - Oct Value] ) * _Budgeted_HrsforOneFTEmployeeinPeriod) - _BudgetedInternalHours ,
CurrentSelection = "Nov 2020", (( _ForecastFTE + [Prediction - FTE - Nov Value] ) * _Budgeted_HrsforOneFTEmployeeinPeriod) - _BudgetedInternalHours ,
CurrentSelection = "Dec 2020", (( _ForecastFTE + [Prediction - FTE - Dec Value] ) * _Budgeted_HrsforOneFTEmployeeinPeriod) - _BudgetedInternalHours
)
VAR _TotalLevel = ADDCOLUMNS( SUMMARIZE( 'Date', 'Date'[Fiscal Month Year] ), "Month Totals", _SwitchLogic )
RETURN IF(
HASONEVALUE( 'Date'[Fiscal Month Year] ),
_SwitchLogic,
SUMX( _TotalLevel, [Month Totals] )
)
En la superficie, creo que la fórmula en el nivel total debe estar haciendo algo "fácil" e iterando a través de cada mes de la tabla virtual RESUME y asociando el resultado mensual SWITCH, pero claramente eso no está sucediendo por cualquier razón 🙁
¿Puede alguien sugerir amablemente cuál podría ser el principio DAX que me falta y cómo podría ser capaz de arreglar esto?
Muy apreciado.
Esto parece un problema de totales de medida. Muy común. Vea mi post al respecto aquí: https://community.powerbi.com/t5/DAX-Commands-and-Tips/Dealing-with-Measure-Totals/td-p/63376
Además, esta medida rápida, medida totales, la palabra final debe obtener lo que necesita:
https://community.powerbi.com/t5/Quick-Measures-Gallery/Measure-Totals-The-Final-Word/m-p/547907
Normalmente, debe resumir en un nivel determinado. para tal cálculo
sumx(summarize(table, table[Month], "_sum",[measure]),[_sum])
Hola amitchandak
Creo que eso es lo que he tratado de lograr, pero la última parte ( [_sum] en su ejemplo) es lo que no está funcionando.
Esto parece demasiado complicado. ¿Es posible reestructurar el modelo de datos para que no tenga que crear 12 parámetros diferentes y tener tantas condiciones en la instrucción SWITCH? ¿Posiblemente incluyendo el número de horas facturables en la tabla de fechas por día? ¿O posiblemente otra tabla con horas facturables por mes con una relación con la tabla de fechas?
Hej littlemojopuppy
Gracias por la respuesta.
El objetivo de la tarea era permitir a los usuarios modificar la tasa FTE como deseen, antes de que se multiplique a las otras horas.
Este fue mi primer ejercicio de este tipo con Power BI, por lo que posiblemente podría haberse hecho de manera diferente. Hasta ahora no me he encontrado con una manera que permita a los usuarios hacer eso sin parámetros de qué pasaría sin ser individuales para cada mes.
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!
Your insights matter. That’s why we created a quick survey to learn about your experience finding answers to technical questions.
Arun Ulag shares exciting details about the Microsoft Fabric Conference 2025, which will be held in Las Vegas, NV.