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.
Estimados todos,
Intentando resolver el siguiente problema.
1- En mi tabla de acceso de usuario tengo más o menos 2 cloumns "EMAIL" / "INTEREST"
2- En mi tabla de hechos tengo una concatenación de todas las columnas múltiples llamada "RLS" ( Ejemplo: una fila contendrá: "24532-France-Acessories-Products"
3- Lo que quiero intentar lograr es que RLS buscará esa columna "RLS" en mi tabla de hechos filtrando así los elementos de nessecery.
4- Cada usuario puede tener acceso a múltiples áreas (por ejemplo, países, grupos de productos, etc.)
Este fue uno de mis mejores intentos y funcionó hasta que un usuario tiene múltiples valores (dará un error)
VAR USER_Object =
calculatetable(
Values('55_Subscription'[Interest]),
'55_Subscription'[Email] = USERPRINCIPALNAME()
)
VAR RLS=
Switch(TRUE(),
USER_Object = "ALL", TRUE(),
[RLS] = USER_Object, True(),
False()
)
Return
RLS
Este simplemente no devolvió nada.
[RLS]
IN CALCULATETABLE (
VALUES ('55_Subscription'[Interest]),
FILTER (
ALL ('55_Subscription'),
[Email] = USERPRINCIPALNAME()
)
)
¿Alguien tiene alguna idea de cómo puedo resolverlo?
Gracias
Aquí es donde estoy, pero estoy un poco atascado. Cuando corro me da el error de:
"Se proporcionó una tabla de valores múltiples donde se esperaba un solo valor"
CONTAINSSTRING([RLS],
CALCULATETABLE (
VALUES ('55_Subscription'[Interest]),
FILTER (
ALL ('55_Subscription'),
CONTAINSSTRING( [Email], USERPRINCIPALNAME())
)
)
)
Actualizar:
CONTAINSSTRING([RLS],
CALCULATETABLE (
FIRSTNONBLANK ('55_Subscription'[Interest],1),
FILTER (
ALL ('55_Subscription'),
CONTAINSSTRING( [Email], USERPRINCIPALNAME())
)
)
)
Ok Aquí está mi progreso, pude hacer que funcionara usando CONTAINSSTRING usando FIRSTNONBLANK, pero debido a esto solo puedo ver el primer filtro en RLS solo así que, por ejemplo: Si debería ver 2 países eorth de datos, solo veo uno. ¿Alguien sabe cómo superar esto?
Gracias y Saludos
Si hay varias condciones en su modelo de datos, le sugiero que las combine en una columna como columna clave.
Por ejemplo, el formato debe verse como "Id de usuario - País - Acessories - Productos".
Mi muestra:
55_Subscription:
Datos:
Relación:
Código en Administrar roles:
[Email] = USERPRINCIPALNAME()
[Combine Key] =
SWITCH (
TRUE (),
[Combine Key]
IN CALCULATETABLE (
VALUES ( '55_Subscription'[INTEREST] ),
FILTER ( '55_Subscription', '55_Subscription'[Email] = USERPRINCIPALNAME () )
), [Combine Key],
BLANK ()
)
El resultado es el siguiente.
Ver como usuario A:
Ver como Usuario B:
Saludos
Rico Zhou
Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.
Hi Rico,
Millones de gracias por su tiempo y esfuerzo para investigar esto. Información muy útil. Appologize por el retraso. Semana de trabajo de toba. Esto realmente funciona. Pero, ¿qué pasa si quisiera hacer una búsqueda dentro de esa columna "Combinar clave" que ha creado para una cadena específica?
Imagine que esta es mi tabla de suscripción a continuación y simplemente liberaría los datos al encontrar esa palabra clave de interés dentro de "Combinar clave".
Te haces y saludos
Solo una actualización, el siguiente código en realidad está funcionando para eliminar el problema de "múltiples valores cuando se expetó un solo valor.
[Region] //I changed this to a region filter (Non-concatenated) and it worked.
IN CALCULATETABLE (
VALUES ('55_Subscription'[Interest]),
FILTER (
ALL ('55_Subscription'),
[Email] = USERPRINCIPALNAME()
)
)
Ahora necesito agregar una función de búsqueda y usar la columna [RLS] en la tabla de hechos (que contiene valores concatenados). ¿Tal vez pueda agregar una función Containsstring en algún lugar allí?
¿Alguna idea?
Kr
¿Alguna idea sobre lo que podría hacer para resolver?
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 |