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.
¡¡Hola!!
Estoy luchando con algunos cálculos en Power BI, y me encantaría que pudiera darme algunos consejos sobre cómo seguir.
Estoy trabajando en un proyecto para detectar incompatibilidades entre roles en nuestro sistema. Tenemos algunos roles (como poder pagar, poder generar una factura...) que un usuario no puede tener al mismo tiempo. Si detectamos que un usuario tiene estos dos roles al mismo tiempo, marcaríamos un riesgo.
Para esto, tengo dos tablas:
1) Usuarios y roles: Donde tenemos una lista de usuarios y los roles asignados.
ID de usuario | Id. de rol |
B0001 | ZS45TS00 |
B0001 | ZS48TS00 |
B0001 | ZS39TS00 |
B0001 | ZS40TS00 |
B0001 | ZS36TS00 |
B0001 | ZS38TS00 |
B0001 | ZS46TS00 |
B0002 | ZS48TS00 |
B0002 | ZS36TS00 |
B0002 | ZS38TS00 |
B0002 | ZS39TS00 |
B0002 | ZS40TS00 |
B0002 | ZS46TS00 |
2) Incompatibilidad y riesgo de roles: donde tenemos una lista de roles en la primera columna, los roles que no son compatibles con el rol en la columna 1, y el código de riesgo que debemos alertar si detectamos un usuario con ambos roles al mismo tiempo.
Id. de rol | Incompatibilidad | Riesgo |
ZS45TS00 | ZS46TS00 | ZT01 |
ZS45TS00 | ZS48TS00 | ZT02 |
ZS45TS00 | ZS37TS00 | ZT03 |
ZS45TS00 | ZS38TS00 | ZT04 |
ZS46TS00 | ZS39TS00 | ZT05 |
ZS48TS00 | ZS47TS00 | ZT06 |
ZS48TS00 | ZS36TS00 | ZT07 |
ZS47TS00 | ZS37TS00 | ZT08 |
ZS47TS00 | ZS38TS00 | ZT09 |
ZS39TS00 | ZS41TS00 | ZT10 |
ZS39TS00 | ZS40TS00 | ZT11 |
ZS46TS00 | ZS36TS00 | ZT12 |
ZS46TS00 | ZS45TS00 | ZT01 |
ZS48TS00 | ZS45TS00 | ZT02 |
ZS37TS00 | ZS45TS00 | ZT03 |
ZS38TS00 | ZS45TS00 | ZT04 |
ZS39TS00 | ZS46TS00 | ZT05 |
ZS47TS00 | ZS48TS00 | ZT06 |
ZS36TS00 | ZS48TS00 | ZT07 |
ZS37TS00 | ZS47TS00 | ZT08 |
ZS38TS00 | ZS47TS00 | ZT09 |
ZS41TS00 | ZS39TS00 | ZT10 |
ZS40TS00 | ZS39TS00 | ZT11 |
ZS36TS00 | ZS46TS00 | ZT12 |
Lo que me gustaría tener como salida es una tabla donde puedo detectar qué riesgos tenemos para cada rol. Para obtener esta información, tengo que buscar un rol determinado, buscar en la tabla de incompatibilidad para ver si alguno de los roles incompatibles es uno de los otros roles que el usuario tiene activos. Te muestro a continuación un ejemplo para el usuario no 1, donde tenemos una línea para cada riesgo detectado, en función de los roles asignados a ese usuario.
ID de usuario | Id. de rol | Incompatibilidad | Riesgo |
B0001 | ZS45TS00 | ZS46TS00 | ZT01 |
B0001 | ZS45TS00 | ZS48TS00 | ZT02 |
B0001 | ZS45TS00 | ZS38TS00 | ZT04 |
B0001 | ZS48TS00 | ZS45TS00 | ZT02 |
B0001 | ZS48TS00 | ZS36TS00 | ZT07 |
B0001 | ZS39TS00 | ZS40TS00 | ZT11 |
B0001 | ZS39TS00 | ZS46TS00 | ZT05 |
B0001 | ZS40TS00 | ZS39TS00 | ZT11 |
B0001 | ZS36TS00 | ZS48TS00 | ZT07 |
B0001 | ZS36TS00 | ZS46TS00 | ZT12 |
B0001 | ZS38TS00 | ZS45TS00 | ZT04 |
B0001 | ZS46TS00 | ZS39TS00 | ZT05 |
B0001 | ZS46TS00 | ZS36TS00 | ZT12 |
B0001 | ZS46TS00 | ZS45TS00 | ZT01 |
Por favor, si usted tiene algún tipo de pista en cuanto a cómo podría obtener esta salida, o cualquier otra manera que se le ocurra para llegar a una solución similar, por favor hágamelo saber! ¡Estoy bastante atascado!
Muchas gracias de antemano!
@Rate, la lógica no es muy clara
Como ZS45TS00 , existe en table2 para 4 valores para Role ID e Incompatibility. Pero¿cómo es que sólo 3 veces en la mesa final
Hola @amitchandak ,
ZS45TS00 sólo existe 3 veces en la tabla final porque, de las 4 veces que existe en la incompatibilidad de tabla (ZS46TS00, ZS48TS00, ZS37TS00 y ZS38TS00), el usuario B0001 sólo tiene acceso a los roles ZS48TS00, ZS46TS00 y ZS38TS00 (por lo tanto, no ZS37TS00).
Además, he agregado una nueva columna a la tabla de salida con la incompatibilidad que resulta en el riesgo, en caso de que podría ayudar a entender mejor la lógica.
¡Por favor, avísame si hay sus aclaraciones! Y te aque mucho por tu tiempo.
PD: Vi cómo las tablas aparecen en el mensaje, bastante divertidas, pero no puedo hacer que se muestren correctamente. Sólo estoy pegando desde Excel, en caso de que pueda saber una mejor manera de hacerlo.
Hola @Rate ,
Consulte el archivo pbix: https://qiuyunus-my.sharepoint.com/:u:/g/personal/pbipro_qiuyunus_onmicrosoft_com/EceWCriHaV9Etivzn3...
Si no cumple con sus requisitos, por favor muéstrenos más detalles sobre su lógica para la salida.
Si este post ayuda, entonces considera Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
Saludos
Dedmon Dai
Hola mi querida @v-deddai1-msft ,
Esa solución funcionó perfectamente. ¡Muchas gracias por su tiempo y esfuerzo! Hablaré con gracia de usted a mis nietos cuando llegue el momento.
Que tengas un gran día.
Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City
Check out the April 2024 Power BI update to learn about new features.
User | Count |
---|---|
2 | |
2 | |
2 | |
2 | |
1 |