oneill1
He estado tratando de agregar una declaración if sin éxito
Mis intentos iniciales han devuelto el valor, sin embargo, han perdido todos mis filtros de página y filtros de segmentación y se están devolviendo todos los proveedores y contratos.
En resumen, quiero aplicar un valor de calificación de estrellas de 1, 2 o 3 en función de la puntuación del tipo de contrato. He filtrado la página para mostrar solo el grupo de programas y el resto de las imágenes y puntajes dentro de la misma imagen solo se completan para aquellos filtrados. Sin embargo, la medida ‘Cambiar (Verdadero()’) trae todos los esquemas dentro del programa y asigna una puntuación a todos los proveedores en mi tabla de proveedores.
He probado lo siguiente:
Star rating (Switch) =
SWITCH(TRUE(),
[Imperative (average)]<0.1,"0",
[Imperative (average)]<6,"1",
[Imperative (average)]<8,"2",
"3"
)
Esto devuelve los resultados que quiero, sin embargo, todos los contratos activos de mi filtro de nivel de página se enumeran para todos los proveedores en mi tabla maestra de proveedores, con aquellos que no son relevantes en blanco.
usando la medida rápida ‘lista para usar’, parece que también me permite asignar los valores para 1,2 o 3 estrellas.
Cualquier ayuda sería muy apreciada.
Elementos adicionales que he probado
Star rating =
VAR Selection =
SELECTEDVALUE ( Supplier_Name_Bridge[Level 3])
RETURN
SWITCH(TRUE(),
[Imperative (average)]<0.1,"0",
[Imperative (average)]<6,"1",
[Imperative (average)]<8,"2",
"3"
)
Star rating =
KEEPFILTERS(SWITCH(TRUE(),
[Imperative (average)]<0.1,"0",
[Imperative (average)]<6,"1",
[Imperative (average)]<8,"2",
"3"
))
Vista de página completa, que muestra los filtros de nivel de página, con 2 de los proveedores sin generar una puntuación.
allisonkennedy
@ Oneill1 Gracias por las explicaciones. Ahora entiendo cuál es el problema. Su medida de estrellas utiliza la función REPT(), que convertirá los valores faltantes en espacios en blanco. https://docs.microsoft.com/en-us/dax/rept-function-dax
Puede intentar filtrar la medida de estrella o usar el formato condicional de icono incorporado en su tabla/matriz (usando la medida de trabajo 0, 1, 2, 3):
https://powerbi.microsoft.com/en-us/blog/power-bi-desktop-august-2019-feature-summary/#iconStyles
Una última opción podría ser crear la medida de estrella usando SWITCH, de la misma manera que hizo la medida numérica, y simplemente repetir UNICODE() tantas veces como desee para cada condición. ¿Tiene sentido?
Debido a que tiene algunas relaciones de muchos a muchos, este problema se complica aún más, por lo que necesitaría ver algunos datos de muestra o pasar algún tiempo con usted para entender por qué existen esas relaciones de muchos a muchos.
allisonkennedy
De nada, @Oneill1. Siéntase libre de etiquetarme en el futuro y espero que todo vaya bien resolviendo esto.
allisonkennedy
@ Oneill1 Gracias por las explicaciones. Ahora entiendo cuál es el problema. Su medida de estrellas utiliza la función REPT(), que convertirá los valores faltantes en espacios en blanco. https://docs.microsoft.com/en-us/dax/rept-function-dax
Puede intentar filtrar la medida de estrella o usar el formato condicional de icono incorporado en su tabla/matriz (usando la medida de trabajo 0, 1, 2, 3):
https://powerbi.microsoft.com/en-us/blog/power-bi-desktop-august-2019-feature-summary/#iconStyles
Una última opción podría ser crear la medida de estrella usando SWITCH, de la misma manera que hizo la medida numérica, y simplemente repetir UNICODE() tantas veces como desee para cada condición. ¿Tiene sentido?
Debido a que tiene algunas relaciones de muchos a muchos, este problema se complica aún más, por lo que necesitaría ver algunos datos de muestra o pasar algún tiempo con usted para entender por qué existen esas relaciones de muchos a muchos.
oneill1
En respuesta a allisonkennedy
Hola @AllisonKennedy
Gracias, la información fue realmente útil. Me tomaré un tiempo para revisar y probar con mayor detalle, sin embargo, al leer hasta ahora puedo ver mi error.
Lo aceptaré como la solución y, si me pierdo, puedo etiquetarte nuevamente si está bien, ya que esto ha sido muy útil.
Muchas gracias
Sotavento
oneill1
Hola, @AllisonKennedy. Intentaré usar la computadora portátil antes de llevar al pequeño a la gimnasia por la mañana y replicar el conjunto de datos sin los nombres de los proveedores.
En resumen tengo mesas para
Las puntuaciones del proveedor, que están vinculadas a
Contratos (tareas de trabajo)
Métricas (agrupadas por categoría para producir una medida imperativa)
Nombres de proveedores
Cuando produzco los puntajes por la medida imperativa, solo devolverá el puntaje para el proveedor según el filtro de tipo de contrato I. Solo mostrando el contrato en el que están activos.
Cuando presente la primera medida anterior, replicará las puntuaciones anteriores como valores 0,1, 2 o 3.
Cuando introduzca la clasificación por estrellas, mostrará todos los contratos, incluso aquellos en los que el proveedor no está activo. Aquellos en los que no están activos se devuelven en blanco. Además, muestra todos los proveedores de la tabla de proveedores, aquellos sin contratos activos o con el tipo de contrato filtrado. Por lo tanto, la introducción de la métrica de estrella muestra todos los contratos de todos los proveedores.
Siento que necesito introducir un filtro en la medida de estrella, arriba como medida 2.
Gracias de nuevo, siento que estoy muy cerca con toda su ayuda, pero me falta algo fundamental.
Sotavento
allisonkennedy
@oneill1
En su publicación original, ¿puede explicar con más detalle esas capturas de pantalla con los datos bloqueados? Disculpe las preguntas tontas, sé que tiene sentido para usted, pero sin conocer sus datos y también haber borrado algunos de ellos, no tengo claro cuál es el problema. Las cosas que tiene un cuadro alrededor y señala, ¿es eso correcto o no? ¿Por qué no si es incorrecto? ¿Debería el INTERRUPTOR tener un valor diferente? ¿No desea que se muestre esa fila?
oneill1
En respuesta a allisonkennedy
Hola @AllisonKennedy
Realmente aprecio la ayuda.
Cuando utilizo las medidas proporcionadas anteriormente
la medida inicial para mostrar los valores 0 – 3 funciona y se adhiere a los filtros de nivel de página, que son para ver la puntuación del proveedor para solo 1 tipo de contrato.
Al agregar la segunda parte de la medida para mostrar las estrellas. ignora el filtro de nivel de página y muestra todos los contratos contra los diferentes tipos de contrato para cada proveedor (incluso si no están dentro de ese contrato).
Medida 2
Medida 1
Estructura de la tabla
allisonkennedy
@ Oneill1 ¿Puede aclarar cuál debería ser el resultado esperado en comparación con lo que está obteniendo actualmente, por favor?
oneill1
En respuesta a allisonkennedy
Hola @AllisonKennedy
Gracias otra vez.
Estoy tratando de asignar un valor (0,1,2 o 3) basado en el cálculo de la medida. La puntuación calculada de la medida es un promedio de varias métricas devueltas en la medida [Imperative (average)] y será un rango de 0-10.
Intenté si y esto tampoco funcionó y los foros sugirieron que Swithc era una mejor opción, espero que esto demuestre lo que espero lograr:
Si [Imperative (average)] es 0 = 0
Si [Imperative (average)] es <6 = 1
Si [Imperative (average)] es =>6 <8 = 2
Si [Imperative (average)] es >8 = 3
Gracias de nuevo
Sotavento
oneill1
En respuesta a oneill1
Hola @AllisonKennedy
Debería haber dicho, cuando interpreto la partitura para la medida. solo muestra la puntuación de aquellos filtrados a ese grupo que tienen una puntuación.
Esta es la declaración If que intenté
(IF) Star Rating =
IF( [Imperative (average)] = 0, "0",
IF(
[Imperative (average)] < 6, "1",
IF(
[Imperative (average)] < 8, "2",
IF(
[Imperative (average)] <10.1,"3"
)
)))
allisonkennedy
Es posible que también deba verificar que el promedio sea mayor que cero.
Star rating (Switch) =
SWITCH(TRUE(),
[Imperative (average)]>0 && [Imperative (average)]<0.1,"0",
[Imperative (average)]<6,"1",
[Imperative (average)]<8,"2",
"3"
)
oneill1
En respuesta a allisonkennedy
Hola
Hola @AllisonKennedy
Gracias por el apoyo.
Desafortunadamente, esto no funcionó, esperaba que fuera algo simple que me había perdido, esto realmente me está frustrando.
También he tratado de trabajar con todas las relaciones posibles en la tabla a continuación que afectan el aspecto visual.