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

Filtrar medida en la fecha, creada por fecha de resumen

Queridos todos,

Mi nombre es Ruud y publiqué la semana pasada un tema en el que tuve un problema. Ese problema se resolvió hasta cierto punto y he resuelto el tema. No pude desresolver el tema, o no sabía cómo hacerlo. Sin embargo, me encontré con un problema cuando intenté filtrar la solución en la fecha. La medida no se filtraría en fechas. Por ejemplo, cuando pongo la medida en una Tarjeta y especto en fechas particulares, no cambiaría con la fecha. En otras palabras, la cantidad total seguía ahí. Funcionó cuando intenté filtrar a los usuarios.

El tema específico:

https://community.powerbi.com/t5/Desktop/Calculate-Sum-Total-filter-by-contract-start-and-end-date-p...

La solución:

Medida ?
VAR _tbl - RESUMIR(Dim_Contract; Dim_Contract[ContractId]; Dim_Users[UserId]; Dim_Contract[Start_Date]; Dim_Contract[End_Date]; "Horas de cantidad";
CALCULATE(SUM('Fact_Target Horas'[Horas objetivo]); FILTRO(ALL('Fact_Target Horas');
'Fact_Target Horas'[medewerker_id] - EARLIER(Dim_Users[UserId]) &&
'Fact_Target Horas'[Datum] > EARLIER(Dim_Contract[Start_Date]) &&
'Fact_Target Horas'[Datum] <-EARLIER(Dim_Contract[End_Date])
))
)
RETURN SUMX(_tbl; [Horas de cantidad])

El contexto

Mi nombre es Ruud y estoy preparando un tablero para una empresa externa. Debido a la privacidad, he preparado un conjunto de datos similar que muestra el problema que tengo en este momento.

Contexto: para esta empresa estoy tratando de calcular la suma total de horas trabajadas, y la suma total de horas objetivo que uno tiene que trabajar en un período específico.

El primero no es un problema, sin embargo el segundo con el que tengo problemas por la forma en que registran sus datos.

El problema: En las horas objetivo, incluyen horas para cada día para todo el año (excepto para los días de fin de semana). El problema se produce cuando una persona no trabaja todo el año, por la razón de que abandona la empresa o entra en la empresa en un momento específico durante el año.

Lo que me gustaría tener:

Quiero una medida que calcule la suma del total de horas objetivo por persona con su contrato específico- fecha de inicio y finalización. En otras palabras, si una persona comenzó después de la primera fecha en el calendertable, entonces las horas previstas presentes antes de esta fecha no deben incluirse.

Del mismo modo, si la fecha de finalización es anterior a la fecha de hoy, entonces las horas posteriores a la fecha de contract_end al momento de hoy ahora deben incluirse.

El archivo:

En los Datos centré mi problema en el usuario 'A1'. La fecha de su contrato comienza en 05-03-2020 y termina más allá de nuestra fecha de hoy. Sin embargo, las horas previstas comienzan a contar desde el 05-01-2020. Por lo tanto, hay dos meses incluidos en la suma de las horas objetivo que no deberían estar allí.


Gracias por su tiempo,

Salud


Ruud Scheijen

https://drive.google.com/file/d/1KfPdIVPzgqQr-YXyGGNz5kaRYn_4JrI3/view?usp=sharing

6 REPLIES 6
V-lianl-msft
Community Support
Community Support

Hola @StatStories_Lon ,

Intente crear una medida mediante la instrucción if y aplíquela al filtro de nivel visual.

Measure 2 = IF(MAX(Dim_Date[Date])>=MAX(Dim_Contract[Start_Date])&&MAX(Dim_Date[Date])<=TODAY(),1)

test_unknown.PNG

Saludos
Liang
Si este post ayuda, por favor considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

Gracias por su mensaje.

Intente crear una medida mediante la instrucción if y aplíquela al filtro de nivel visual.

Measure 2 = IF(MAX(Dim_Date[Date])>=MAX(Dim_Contract[Start_Date])&&MAX(Dim_Date[Date])<=TODAY(),1)

Intenté esto, sin embargo, cuando fino measure2 como un filtro visual no pude cambiar sus valores. Mientras que cuando se puede cambiar se vuelve gris, en el mío sigue siendo blanco. Vea la imagen de abajo

Selecting Measure 2.pngNo se puede cambiar el valor del filtro measure2.

Hola @StatStories_Lon ,

Lo siento, puede que te haya entendido mal.

Sustituya la condición de filtro "all" de la medida por "ALLSELECTED".

Measure = 
VAR _tbl = SUMMARIZE(Dim_Contract, Dim_Contract[ContractId], Dim_Users[UserId], Dim_Contract[Start_Date], Dim_Contract[End_Date], "Qtde Hours",
CALCULATE(SUM('Fact_Target Hours'[Target Hours]), FILTER(ALLSELECTED('Fact_Target Hours'),
'Fact_Target Hours'[medewerker_id] = EARLIER(Dim_Users[UserId]) &&
'Fact_Target Hours'[Datum] >= EARLIER(Dim_Contract[Start_Date]) &&
'Fact_Target Hours'[Datum] <= EARLIER(Dim_Contract[End_Date]) &&
'Fact_Target Hours'[Datum] <= TODAY()
))
)
RETURN SUMX(_tbl, [Qtde Hours])

test_0325.PNG

Lo que realmente me desconcierta está aquítest_0325_2.PNG

Saludos
Liang
Si este post ayuda, por favor considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

Querido Liang,

¡Muchas gracias! Tu sugerencia era la solución que estaba buscando.

En cuanto a la contractsituation para la persona A4: este es probablemente un error cometido que pasé por alto al querer cargar el conjunto de datos de ejemplo.

Mejor

Ruud

MFelix
Super User
Super User

Hola @StatStories_Lon ,

En primer lugar para anular la selección de una respuesta de ser correcta ir a la publicación que usted considera como correcto haga clic en los 3 puntos en el rigth y elegir la opción No la respuesta.

En cuanto a que publique en lo que puedo ver los cálculos son correctos tiene el usuario A1 desde 05/03/2020 hasta el 19/03/2020 la suma de las horas objetivo son 140 en función de las horas objetivo de hecho por lo que la víspera es igualado o lo que puedo ver.

¿Puede explicar un poco mejor lo que necesita y cuál es el resultado que está tratando de lograr?


Regards

Miguel Félix


Did I answer your question? Mark my post as a solution!

Proud to be a Super User!

Check out my blog: Power BI em Português



Gracias por su respuesta

¿Puede explicar un poco mejor lo que necesita y cuál es el resultado que está tratando de lograr?

>> En la tarjeta "Medida" hay la suma total de horas objetivo. Sin embargo, cuando quiero aplicar un filtro en este objeto visual que selecciona solo el 11 de marzo, esa medida no cambia en consecuencia. (ver imagen).

Lo que trato de lograr es que cuando selecciono una (rango de) fecha(s), esta medida está cambiando en consecuencia.

Sin embargo, cambia cuando lo filtro por user_id. La selección de una fecha única no cambia "Medida" Sin embargo, al seleccionar no A1 pero A2 sí. Annotation 2020-03-24 183340.png Userid.pngHowever, selecting not A1 but A2 does.

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.