Don't miss your chance to take the Fabric Data Engineer (DP-700) exam on us!
Learn moreNext up in the FabCon + SQLCon recap series: The roadmap for Microsoft SQL and Maximizing Developer experiences in Fabric. All sessions are available on-demand after the live show. Register now
Hola
Tengo una tabla denominada Presupuesto y Empleado en Power BI. Los detalles de mi tabla de Empleados y Presupuesto son los siguientes. Cuando mi empleado inicia sesión en el inicio de sesión de Powerbi, quiero que compruebe su dirección de inicio de sesión con la dirección de correo electrónico de la tabla de empleados y compruebe los datos en el campo ID de departamento en la fila donde está su dirección de correo electrónico y en el campo ZZORG_D_ID de la tabla de presupuesto. Quiero que vea las líneas presupuestarias para las que está autorizado. Todo es perfecto hasta ahora. La dificultad comienza aquí. Puede haber uno o más ID de departamento en el campo ZZORG_D_ID separados por comas. Cuando el empleado C inicia sesión, debe estar autorizado a ver las partidas presupuestarias numeradas 2,3,4. Cuando el empleado D inicia sesión, debe estar autorizado a ver las partidas del presupuesto numeradas 3,4. Cuando el empleado E inicia sesión, debe estar autorizado a ver las partidas del presupuesto numeradas 2,3,4. Otro problema es que algunos empleados trabajan como gerentes de otros departamentos en nombre de ellos. Por ejemplo, el empleado A trabaja en el departamento número 10 y en el departamento número 20 en su nombre. Por lo tanto, al iniciar sesión con la misma dirección de correo electrónico, el empleado llamado A debe estar autorizado a ver las partidas del presupuesto con los números de identificación del presupuesto 1,2,3,4.
Las situaciones con las que me encontré y no funcionaron,
Creé un nuevo rol en la sección Seguridad y utilicé la fórmula DAX '[Email] = USERPRINCIPALNAME()' en la pestaña Empleado, y la fórmula DAX FILTER('Budget', CONTAINSSTRING('Bufget'[ZZORG_D_ID], SELECTEDVALUE('Staff'[Department ZORGID]))) en la página Presupuesto.
Gracias
| Staff Nam | Correo electrónico | Deber | Departamento ZORGID |
| A | a@a.com.tr | Ventas | 10 |
| B | b@b.com.tr | Director | 20 |
| C | c@c.com.tr | Gerente de FI | 30 |
| D | d@d.com.tr | BT Maneger | 20 |
| A | a@a.com.tr | Gerente de Presupuesto | 20 |
| ID de presupuesto | Sociedad | Detalle del código Budfet | Nombre del presupuesto | Monto del presupuesto | ZZORGID |
1 | F01 | 20.10.01.01 | Presupuesto A | 100 | 10 |
| 2 | F02 | 20.10.01.02 | Presupuesto B | 2000 | 10,20 |
| 3 | F01 | 20.10.01.03 | Presupuesto C | 30000 | 10,20,30 |
| 4 | F01 | 20.10.01.04 | Presupuesto D | 50000 | 20,20 |
Hola @fatihcankara ,
Puede crear un rol de seguridad y asignarlo a los usuarios para implementar RLS dinámico. He hecho una prueba para tu referencia:
[Email] == USERPRINCIPALNAME()
CONTAINSSTRING([ZZORG_D_ID],MAX(Staff[Department ZORGID]))
Saludos
Otro
Hola, probé esto antes. Pero no funcionó. Gracias.
Hola @fatihcankara ,
Esto funciona bien para mí. ¿Puedo preguntarle si ha asignado roles a sus usuarios en el modelo semántico del servicio de BI?
Saludos
Otro
There can be one or more department IDs in the ZZORG_D_ID field separated by commas.
Trate de evitar eso si es posible. En su lugar, tenga líneas separadas para estos empleados con un solo departamento por línea. Mucho más fácil de integrar en el modelo de datos.
Estoy trabajando en diferentes modelos, gracias.
If you have recently started exploring Fabric, we'd love to hear how it's going. Your feedback can help with product improvements.
A new Power BI DataViz World Championship is coming this June! Don't miss out on submitting your entry.
Share feedback directly with Fabric product managers, participate in targeted research studies and influence the Fabric roadmap.