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

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.

Reply
Syndicate_Admin
Administrator
Administrator

Cómo decodificar una enum - Operaciones bitwise usando enums de indicador para días laborables

Hola

He recibido un conjunto de datos que incluye indicaciones de banderas para decirme qué días de la semana trabaja un empleado.

Lo sé:

flag enum 62 significa que un empleado trabaja de lunes a viernes

flag enum 126 significa que un emploee trabaja de lunes a sábado y,

bandera enum 127 el empleado trabaja de lunes a domingo.

¿Cómo trabajo esto en power bi para decodificar el valor de indicador de enum?

¿Cómo agrego todas las combinaciones con los valores de los días de la semana? ¿Digamos que alguien solo trabaja lunes y martes?

He buscado y leído sobre operadores bitwise, pero no surge nada sobre cómo decodificar el valor enum en power bi

1 - Lunes - 1

2 - Martes - 2

3 - Miércoles - 4

4 - Jueves - 8

5 - Viernes - 16

6 - Sábado - 32

7 - Domingo - 64

¿Alguien es capaz de darme alguna guía? Esto es muy nuevo para mí.

¡Gracias!

4 REPLIES 4
Syndicate_Admin
Administrator
Administrator

Hay @yingyinr

Muchas gracias por su respuesta.

El DayID en la tabla a continuación es el enum que necesito decodificar para los días de la semana trabajados, siendo de lunes a domingo. Así que necesito averiguar qué días de la semana es el valor 62 (por ejemplo).
¿No estoy seguro de si hay un cálculo que se pueda hacer en power bi que decodifique estos valores?
Si no, supongo que la solución sería averiguar qué días representan estos valores y construir una tabla de búsqueda.

ClaireBear_0-1631258497611.png

No @ClaireBear,

Me temo que DAX no puede implementar tal característica, simplemente usando un valor numérico para invertir los días en que los empleados trabajan. Además de la tabla que proporcionó anteriormente, ¿hay otras tablas en su modelo asociadas con esta tabla? Me gustaría tratar de ver si hay alguna otra información que pueda ser utilizada como ayuda para obtener los días de la semana que trabajan los empleados.

Saludos

Syndicate_Admin
Administrator
Administrator

No @ClaireBear,

No entiendo muy bien su requerimiento. ¿Está tratando de invertir qué día de la semana trabaja cada empleado cada semana en función de la suma de la bandera enum para cada día de la semana? Pero una vez más, según la información que proporcionó, eso no parece del todo correcto. Por ejemplo, la bandera enum 62 significa que un empleado trabaja de lunes a viernes. En la siguiente tabla, los valores obtenidos de lunes a viernes son (1+2+4+8+16)=31 no 62...

1 - Lunes - 1

2 - Martes - 2

3 - Miércoles - 4

4 - Jueves - 8

5 - Viernes - 16

6 - Sábado - 32

7 - Domingo - 64

¿Podría compartir los datos de muestra en su modelo y los resultados que espera para proporcionarle una solución adecuada? También proporcione una captura de pantalla de la lógica de cálculo exacta y el ejemplo relevante. Gracias.

Saludos

Sospecho que el enum es en realidad:

1 - Domingo - 1

2 - Lunes - 2

3 - Martes - 4

4 - Miércoles - 8

5 - Jueves - 16

6 - Viernes - 32

7 - Sábado - 64

Dónde: De lunes a viernes es (2+4+8+16+32)=62.

@ClaireBear puede aclarar para que podamos ayudarlo? Gracias.

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

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