Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.
Tengo columnas personalizadas para calcular el saldo del tiempo libre de un empleado restando su tiempo utilizado en lo que va del año de su tiempo asignado.
Todos los tipos de tiempo son directos excepto el tiempo FMLA que funciona en un año calendario rodante. No puede mirar todos los datos de 2020, tiene que mirar los datos de hoy y de nuevo 365 días; por lo que algunos de los datos de 2019 también.
¿Hay de todos modos usar un SUMX, filtro o algún tipo de fórmula en una columna personalizada para sumar la cantidad de horas utilizadas para cada empleado de hoy y de vuelta 365 días? Tendrá que cambiar dinámicamente cada día para en última instancia darme su saldo, porque voy a restar el número de tiempo utilizado generado por esta medida personalizada del tiempo asignado dado a cada empleado?
Solved! Go to Solution.
Hola, @AMR80
Perdón por mi respuesta tardía.
No se recomienda calcular el valor agregado en Power Query. Power Query usa el lenguaje M para escribir fórmulas y el uso de una columna personalizada cambiará el modelo de datos original.
Puede crear una medida en el modelo. La medida se utiliza principalmente para el cálculo de agregación y los cálculos se ejecutan durante la consulta.
Así:
Measure = SUMX (
FILTER (
'Table_query__5',
AND (
[Date]
> TODAY () - 365
&& [Date] <= TODAY (),
[Type of Time] = "Family Leave"
)
),
[Hours Requested]
)
Si todavía tiene preguntas, no dude en ponerse en contacto conmigo.
Saludos
Janey Guo
Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
Hola, @AMR80
Según su descripción, creo que puede modificar la medida. Así:
FMLA Measure =
SUMX (
FILTER (
ALL ( tablename ),
AND (
[Date]
> TODAY () - 365
&& [Date] <= TODAY (),
[Type of Time] = "Family Leave"
)
),
[Hours Requested]
)
FMLA Measure =
CALCULATE (
SUM ( [Qty] ),
FILTER (
ALL ( tablename ),
AND (
[Date]
> TODAY () - 365
&& [Date] <= TODAY (),
[Type of Time] = "Family Leave"
)
)
)
Si no cumple con sus requisitos, por favor comparta algunos datos falsos con onedrive para la empresa o fotos.
Enmascarar los datos confidenciales antes de cargarlos.
Saludos
Janey Guo
Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
Gracias @v-janeyg-msft
Intenté esto:
• Table.AddColumn('Filas filtradas', "Custom", cada SUMX(FILTER(ALL('"Employee Time Used - FMLA" ),AND ([Date] > TODAY () - 365 & [Date] <' TODAY (),[Type of Time] á "Family Leave")),[Horas solicitadas]))
Y tengo un error:
También probó esto:
• Table.AddColumn('Filas filtradas', "Custom", cada CALCULATE (SUM ( SUMA ( [Horas Solicitadas] ),FILTER (ALL ( "Tiempo de empleado utilizado - FMLA" ),AND ([Fecha] > HOY () - 365 & [Fecha] < ? HOY (), [Tipo de tiempo utilizado] - "Family Leave"))))
Y obtuve un error differnet:
He adjuntado un documento de Excel con datos ficticios. Necesito encontrar la SUMA de las HORAS SOLICITADAS para EL EMPLEADO John Doe sólo para el TIPO de TIEMPO "Permiso familiar". Ya tengo un paso de filtro para Tipo de tiempo en PBI, por lo que no hay necesidad real de incluir esa expresión/condición en la fórmula. Lo importante es la fecha. Sólo queremos SUMAR las HORAS SOLICITADAS entre Today()-365 y Today para cada empleado. La respuesta para John Doe sería 200 horas fueron solicitadas (es decir. Se utiliza durante el año calendario móvil actual). La respuesta cambiará el 15 de octubre, aunque en función de las fechas en los datos ficticios.
ENLACE DE ARCHIVO
Hola, @AMR80
Perdón por mi respuesta tardía.
No se recomienda calcular el valor agregado en Power Query. Power Query usa el lenguaje M para escribir fórmulas y el uso de una columna personalizada cambiará el modelo de datos original.
Puede crear una medida en el modelo. La medida se utiliza principalmente para el cálculo de agregación y los cálculos se ejecutan durante la consulta.
Así:
Measure = SUMX (
FILTER (
'Table_query__5',
AND (
[Date]
> TODAY () - 365
&& [Date] <= TODAY (),
[Type of Time] = "Family Leave"
)
),
[Hours Requested]
)
Si todavía tiene preguntas, no dude en ponerse en contacto conmigo.
Saludos
Janey Guo
Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
Este es un gran @v-janeyg-msft. La medida funcionó perfectamente para calcular el tiempo FMLA utilizado 🙂 Ahora mi reto es llevar esta medida al siguiente nivel. Lo que sería realmente genial es si pudiera obtener una medida que calculó esto:
Si el tipo de tiempo es "permiso familiar", haga lo siguiente:
Si el tipo de tiempo es "horas personales", haga lo siguiente:
Para todos los demás tipos de tiempo, haga lo siguiente: Suma de todas las horas utilizadas en el año en curso.
Hola, @AMR80
Según su descripción, creo que puede utilizar la función switch para combinar estas tres fórmulas en una sola medida.
Así:
Measure =
SWITCH (
SELECTEDVALUE ( Table_query__5[Type of Time] ),
"Family Leave",
SUMX (
FILTER ( Table_query__5, [Date] > TODAY () - 365 && [Date] <= TODAY () ),
[Hours Requested]
),
"personal hours",
SUMX (
FILTER (
Table_query__5,
[Date] > [Personal Hours Reset Date] - 365
&& [Date] <= TODAY ()
),
[Hours Requested]
),
SUMX (
FILTER ( Table_query__5, YEAR ( [Date] ) = YEAR ( TODAY () ) ),
[Hours Requested]
)
)
Debido a la complejidad de la medida, el total no puede obtener el resultado correcto en el contexto, puede consultar este artículo:
https://community.powerbi.com/t5/DAX-Commands-and-Tips/Dealing-with-Measure-Totals/td-p/63376
SI tiene otras preguntas, no dude en ponerse en contacto conmigo.
Saludos
Janey Guo
Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
Hola Tal vez algunos datos de muestra y resultado esperado ayudará a resolver esto pronto. ¡Gracias!
Hola @alex00321
Esto es lo que tengo en este momento, pero no me gusta usar el control deslizante de fecha para filtrar el gráfico porque FMLA es el único tipo de tiempo que se calcula en un año calendario móvil, así que prefiero calcularlo en la consulta.
Estaba pensando que algo como una de las fórmulas a continuación sería suficiente como una columna o medida personalizada? No estoy seguro. Tampoco tengo demasiada experiencia. Además, mi origen es una lista en línea de SharePoint, no una tabla. No sé si estas fórmulas funcionarán con ese tipo de origen de datos.
Medida DE FMLA á SUMX(FILTER(ALL(tablename),AND([Date]>Today()-365,[Date]<-Today(),[Type of Time] á "Family Leave"))),[Horas solicitadas])
Medida DE FMLA: CALCULATE(SUM([Qty]),FILTER(ALL(tablename),AND([Date]>Today()-365,[Date]<-Today(),[Type of Time] á "Family Leave"))) )