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

Get Fabric Certified for FREE during Fabric Data Days. Don't miss your chance! Learn more

Reply
Syndicate_Admin
Administrator
Administrator

Tabla Taget distorsionando lo visual

Hola amigos,

Necesito crear un objeto visual en el que el eje x en el gráfico de barras represente el mes-año, mientras que el eje y muestre la medida de % op (creé el archivo GitHub adjunto).

Además, el modelo se ha cargado con una tabla de objetivos que muestra el porcentaje objetivo al final de cada mes.

Problema: el objeto visual no muestra la imagen correcta al agregar el % objetivo al gráfico de líneas.

El archivo de trabajo con datos de muestra como referencia https://github.com/priyam2790/PBI/blob/main/target.pbix

18 REPLIES 18
Syndicate_Admin
Administrator
Administrator

Hola @ - verifique que la relación entre la tabla de hechos y la tabla de destino esté configurada correctamente.
La relación debe basarse en la columna Mes-Año o en la dimensión de tiempo equivalente, lo que garantiza una relación de uno a varios o de varios a uno en función del modelo.

Compruebe también la granularidad de los datos. Los valores de % objetivo deben alinearse con la granularidad de la columna Mes-año.
Si la tabla de hechos tiene datos diarios, pero la tabla de destino es de nivel mensual, es posible que deba agregar las medidas (por ejemplo, usar AVERAGE o SUM según corresponda). Gestione los valores que faltan en la tabla de destino rellenando los huecos con 0 o BLANK().

Verifique los casos anteriores, si el problema persiste, buscará en el archivo PBIX compartido.

Hola @rajendraongole1 Esas sugerencias me ayudaron a resolver el problema. Se debió a la relación entre la dimensión de fecha y la tabla de destino. Ahora lo he actualizado en función del mes-año.

Como parte del requisito, podría ayudarme a actualizar el archivo pbix compartido anteriormente para resolver los siguientes dos puntos:

Requisitos:

1. En la vista predeterminada, el período de 12 meses se centró en el mes actual

es decir, necesitamos completar los valores del gráfico de barras de los 6 meses anteriores y los valores del gráfico de barras vacíos para los próximos 6 meses, aunque la línea objetivo aún debería aparecer para los valores de barras vacías

2. Codificación de colores: si la línea objetivo está por encima de la barra, entonces rojo, si el objetivo está por debajo de la barra, entonces verde y si el objetivo y la barra en la misma línea, entonces azul.

Muchas gracias por el apoyo.

Hola

No hay ningún archivo allí. Comparte de nuevo el enlace con la relación que has realizado. Si es posible, muestre el resultado esperado (en formato de tabla).

Hola @Ashish_Mathur - Por favor, compruébelo ahora, debería ver el archivo en el enlace. Subí el archivo con la relación corregida allí.

1. En la vista predeterminada, el período de 12 meses se centró en el mes actual

es decir, necesitamos completar los valores del gráfico de barras de los 6 meses anteriores y los valores del gráfico de barras vacíos para los próximos 6 meses, aunque la línea objetivo aún debería aparecer para los valores de barras vacías

Marico_0-1735029709168.png

Cuando comience enero de 2025, las barras y la línea objetivo deben ser para los meses 2024-07, 2024-08, 2024-09, 2024-10, 2024-11, 2024-12, 2025-01, y los próximos 6 meses sin barras, solo línea objetivo. Esto debería cambiar dinámicamente para todos los meses en adelante.

2. Codificación de colores: si la línea objetivo está por encima de la barra, entonces rojo, si el objetivo está por debajo de la barra, entonces verde y si el objetivo y la barra en la misma línea, entonces azul.

Avíseme si necesito compartir más detalles sobre el requisito.

Hola

¿Podría revisar el archivo adjunto?

Espero que esto ayude.

@Ashish_Mathur @rajendraongole1 Lo sentimos, la solución en el archivo adjunto no es según el requisito.

En la vista predeterminada, el período de 12 meses se centra en el mes actual

es decir, necesitamos completar los valores del gráfico de barras de los 6 meses anteriores y los valores del gráfico de barras vacíos para los próximos 6 meses, aunque la línea objetivo aún debería aparecer para los valores de barras vacías

Marico_0-1735202813582.png

Cuando comience enero de 2025, las barras y la línea objetivo deben ser para los meses 2024-07, 2024-08, 2024-09, 2024-10, 2024-11, 2024-12 y 2025-01. Durante los próximos seis meses, no habrá barras, solo una línea objetivo. Esto debería cambiar dinámicamente para todos los meses en adelante.

Hola @

¿El método que proporcioné resuelve su problema? Si es así, ¿podría aceptarlo como una solución? Esto ayudará a más usuarios que se enfrentan a dificultades iguales o similares. ¡Gracias!

Por favor, no dude en informarme si todavía hay problemas.

Saludos
Yulia Xu

Hola @

Gracias por la respuesta de rajendraongole1 y Ashish_Mathur.

Si he entendido correctamente, ¿su requisito es mostrar las barras y la línea de destino de los seis meses anteriores y la línea de destino de los próximos seis meses en el objeto de visualización en función del valor de la segmentación? Luego muestra colores en función de diferentes condiciones, pero necesito consultar con usted, ¿necesita cambiar el color de la barra o la línea? Según mis pruebas, me temo que si necesita cambiar el color de la línea en función de diferentes condiciones, ahora no es posible.

Por favor, refiérase a la siguiente prueba.

1. Cree una tabla calculada como segmentación

Slicer = VALUES('Date'[Month-Year])

2. Cree dos medidas de la siguiente manera

Measure = 
VAR _selected = SELECTEDVALUE(Slicer[Month-Year])
VAR _pre6 = EOMONTH(_selected, -7) + 1
VAR _next6 = EOMONTH(_selected, 6)
RETURN
IF(MAX('Date'[Date]) >= _pre6 && MAX('Date'[Date]) <= _next6, 1, 0)

formatting = SWITCH(TRUE(),
[% op] > [fully op %], "green",
[% op] = [fully op %], "blue",
[% op] < [fully op %], "red")

3. Coloque la medida en los filtros de nivel visual, configure mostrar elementos cuando el valor sea 1.

vxuxinyimsft_1-1735287945907.png

Según tengo entendido, esto tiene que aparecer hasta 2025/7. He mirado sus datos brutos y, dado que los datos brutos solo tienen datos hasta 2025/6, no es posible mostrar datos hasta julio en este lado. Si se agregan nuevos datos en el futuro, deberían aparecer hasta julio.

Lo siguiente es sobre la configuración de color.

vxuxinyimsft_2-1735288060681.png

vxuxinyimsft_3-1735288098387.png

Salida:

vxuxinyimsft_4-1735288173369.png

Saludos
Yulia Xu

Si esta publicación ayuda, considere Acéptalo como la solución para ayudar a los demás miembros a encontrarlo más rápidamente.

Hola @v-xuxinyi-msft - Muchas gracias. Esto cumple con el requisito. ¿Podría decirme por qué creamos una tabla de segmentación independiente para mes-año y no tomamos la columna mes-año de la tabla de fechas?

Sin embargo, ¿también puedes decirme

1) ¿Cómo configurar la cortadora en el mes actual de forma predeterminada?

2) ¿Cómo ordenar el año de la cortadora en orden alfabético? Estoy usando el formato de fecha "YYYY-MMM" en la segmentación.

Por lo tanto, el requisito es que el filtro debe tener todos los meses-años ordenados en orden alfabético. La selección debe estar en el mes y año actuales cada vez que se abre el informe.

¡Gracias!

Hola @v-xuxinyi-msft , ¿tienes una solución a los puntos anteriores?

Hola @

Según las pruebas, dado que el eje x utiliza la columna mes-año de la tabla Fecha, y dado que existe una relación entre la tabla Fecha y las demás tablas, el filtrado solo filtrará los datos que correspondan a la opción, por lo que necesitamos una tabla independiente. De lo contrario, se vería de la siguiente manera:

vxuxinyimsft_2-1735637490714.png

Puede crear una columna calculada en la tabla de segmentación.

Column = IF(YEAR('Slicer'[Month-Year]) = YEAR(TODAY()) && MONTH('Slicer'[Month-Year]) = MONTH(TODAY()), "Current", FORMAT('Slicer'[Month-Year], "YYYY-MMM"))

A continuación, la columna se utiliza como campo para la segmentación.

A continuación, modifique la medida de la siguiente manera:

Measure = 
VAR _selected = CALCULATE(MAX('Slicer'[Month-Year]), FILTER('Slicer', [Column] = SELECTEDVALUE('Slicer'[Column])))
VAR _pre6 = EOMONTH(_selected, -7) + 1
VAR _next6 = EOMONTH(_selected, 6)
RETURN
IF(MAX('Date'[Date]) >= _pre6 && MAX('Date'[Date]) <= _next6, 1, 0)

Salida:

vxuxinyimsft_3-1735637720505.png

Debe marcar la opción del mes actual una vez, y luego, cuando abra el archivo en el futuro, la opción del mes actual se marcará de forma predeterminada.

Saludos
Yulia Xu

Si esta publicación ayuda, considere Acéptalo como la solución para ayudar a los demás miembros a encontrarlo más rápidamente.

@v-xuxinyi-msft Gracias por investigar esto rápidamente.

Lo sentimos, pero los valores de la segmentación no están ordenados en orden cronológico.

Por ejemplo, en la segmentación de datos y el eje x, debería:

Opción 1 -> Ene-2024, Feb-2024, Mar-2024,....,Dic-2024, Ene-2025, Feb-2025, etc

Opción 2 -> 2024-Enero, 2024-Febrero, 2024-Marzo,....,2024-Diciembre, 2025-Enero, 2025-Febrero, etc

La prioridad es la opción 1

Le agradezco que haya investigado este tema. ¡Gracias!

Hola @

Puedes probar lo siguiente.

"La prioridad es la opción 1", luego debe cambiar el formato de la columna Mes-Año en cada tabla a 'MMM-AAAAA'.

Primero está la tabla de segmentación, en la vista de tabla, seleccione la columna Columna y ordene por la columna Mes-año.

vxuxinyimsft_0-1735810595938.png

Para el eje x, actualmente se usa la columna Mes-Año de la tabla Fecha, pero dado que el mismo Mes-Año tiene diferentes valores de Fecha, no se puede ordenar en función de la columna Fecha. Por lo tanto, utilicé la columna Mes-año de la tabla de destino como eje x y la ordené en función de la Month_End_Date de la columna de destino de la tabla.

vxuxinyimsft_1-1735810680614.png

Salida:

vxuxinyimsft_2-1735810715391.png

Espero que esto te ayude.

Saludos
Yulia Xu

Si esta publicación ayuda, considere Acéptalo como la solución para ayudar a los demás miembros a encontrarlo más rápidamente.

@v-xuxinyi-msft Ok, gracias por esto.

Solo hay una pregunta final del cliente de que, en lugar de completar el mes y el año en el eje x, necesitamos la fecha de fin de mes, por ejemplo, 30/6/2024, 31/7/2024, etc. como base móvil como era antes.

¿Puedo tomar esto de la fecha o de la tabla de destino? ¿Requeriría esto también alguna actualización de la medida?

Hola @

Si he entendido bien, ¿es necesario presentar el eje x al final de cada mes?


Por favor, refiérase a la siguiente prueba.

Cree una columna calculada en la tabla Fecha y, a continuación, use esa columna como eje x.

EndOfMonth = EOMONTH('Date'[Date], 0)

Eliminar la estructura jerárquica

vxuxinyimsft_0-1735871691124.png

Salida:

vxuxinyimsft_1-1735871739941.png

Saludos
Yulia Xu

Si esta publicación ayuda, considere Acéptalo como la solución para ayudar a los demás miembros a encontrarlo más rápidamente.

Hola @v-xuxinyi-msft Según mi análisis, la columna EndOfMonth = EOMONTH('Date'[Date], 0)

no estaba dando los valores correctos para la barra, ya que quiero op % el último día del mes.

Por lo tanto, creé las siguientes dos columnas en la tabla de fechas para cumplir con el requisito.

endofmonth =

VAR maxsalesdate = ENDOFMONTH(ventas[fecha])

VAR lastdateofmonth = ENDOFMONTH(Date_Table[Date])

VAR MaxSalesDateOfMonth = MIN(maxsalesdate, lastdateofmonth)

DEVOLUCIÓN

SI (

Date_Table[Fecha] = MaxSalesDateOfMonth, Date_Table[Fecha], BLANK()

)

Fin de mes = SI

(

Date_Table[endofmonth] <> BLANK(), Date_Table[endofmonth],

si(

Date_Table[Fecha]> máx(ventas[fecha]) && MES(máx(ventas[fecha])) <> MES(Date_Table[Fecha]),

ENDOFMONTH(Date_Table[Fecha]),

BLANK()

)

)

Hola @

Me alegra saber que resolviste tu problema. ¿Podría marcar las respuestas útiles y su solución como "Aceptar como solución"? Esto ayudará a más usuarios que se enfrentan a dificultades iguales o similares. ¡Gracias!

Saludos
Yulia Xu

Hola

Eso es lo que hace mi solución. Vuelva a verificar y señale el defecto exacto.

Helpful resources

Announcements
Fabric Data Days Carousel

Fabric Data Days

Advance your Data & AI career with 50 days of live learning, contests, hands-on challenges, study groups & certifications and more!

October Power BI Update Carousel

Power BI Monthly Update - October 2025

Check out the October 2025 Power BI update to learn about new features.

FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.