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

Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.

Reply
Dunner2020
Post Prodigy
Post Prodigy

Relación entre dos tablas

Hola

Tengo dos tablas: una con un valor medio de cinco años y la otra es la tabla de fechas. El valor medio de cinco años tiene entre una y muchas relaciones con la tabla de fechas. La columna "Mes RY" de promedio de cinco años está conectada con la columna Número de mes de la tabla de fechas, como se muestra en la instantánea:

myasir_0-1600295163147.png

Ambas columnas tienen el mismo tipo de datos, es decir, número entero.

He creado el gráfico de líneas en el que el eje Y contiene el valor medio de la columna SAIDI acumulativa y el eje X contiene columnas "Mes RY" de la tabla promedio de cinco años como se muestra en la imagen:

myasir_3-1600295521213.png

Sin embargo, cuando cambié el campo de valor del eje X de 'Mes RY' (de la tabla promedio de cinco años) a 'Número de mes' (de la tabla de fechas), muestra una línea plana (como se muestra en la figura) que no debería ser el caso.

myasir_2-1600295482808.png

Mi expectativa era que la relación entre las dos tablas se estableciera, por lo que debería hacer cualquier cambio en el gráfico cuando cambio los valores del eje X de una tabla a otra. ¿Alguien podría explicar dónde está el problema potencial?

Aquí está el link de los datos de ambas tablas:

https://1drv.ms/x/s!AucycxZHFe9TjT0-EM1mOD6OFkmo?e=kCm2jE

1 ACCEPTED SOLUTION

La dirección de la línea muestra la dirección del filtro. Por lo tanto, la tabla de datos está filtrando la tabla de fechas. Eso es al revés. La tabla Date es una tabla DIM (Dimension) y siempre debe filtrar la tabla FACT (o datos).
Haga lo siguiente:

Agregue esta fórmula a la tabla de datos y llámela Fecha. Esto está en Power Query. Agregue una nueva columna personalizada. Esta es la fórmula.

if Date.EndOfMonth(Date.FromText([month] & "1, " & Text.From(Date.Year(DateTime.LocalNow())))) > DateTime.Date(DateTime.LocalNow())
then Date.AddYears(Date.EndOfMonth(Date.FromText([month] & "1, " & Text.From(Date.Year(DateTime.LocalNow())))), -1) 
else Date.EndOfMonth(Date.FromText([month] & "1, " & Text.From(Date.Year(DateTime.LocalNow()))))

Puede que no esté bien. Lo que devuelve es esto (escondí columnas por el bien del espacio)

edhans_0-1600298755117.png

Ahora conecte esa columna de fecha a la columna Fecha de la tabla Fecha. Debe ser uno a muchos de la tabla Date que apunte a la tabla de hechos.

Ahora los campos de tabla de fechas deben usarse en los objetos visuales y funcionarán.

Si esa no es la fecha calculada correctamente, muéstrame lo que debería ser. Básicamente dije obtener el nombre del mes (jan, feb, mar) y hacerlo el último día del mes para este año, a menos que sea el futuro, luego hacerlo el año pasado.



Did I answer your question? Mark my post as a solution!
Did my answers help arrive at a solution? Give it a kudos by clicking the Thumbs Up!

DAX is for Analysis. Power Query is for Data Modeling


Proud to be a Super User!

MCSA: BI Reporting

View solution in original post

5 REPLIES 5
edhans
Super User
Super User

Sí. su relación es al revés @myasir. Debe ser de la tabla Date (uno) a la tabla FACT (muchos). Necesita una fecha real en la tabla FACT y, a continuación, vincularla a la fecha de la tabla Date. Esta es la razón por la que es una línea plana, la tabla de fechas no está filtrando la otra tabla. ¿Ves la dirección de la flecha?

Y no habilite bidireccional. Eso no siempre lo arregla y es el enfoque equivocado aquí.

Sin poder ver qué tipo de datos hay en la columna Mes RY, no puedo ayudar a que sea una fecha válida. Necesitaría datos, por abajo.

Cómo obtener una buena ayuda rápidamente. Ayúdanos a ayudarte.
Cómo obtener respuestas a su pregunta rápidamente
Cómo proporcionar datos de ejemplo en el foro de Power BI



Did I answer your question? Mark my post as a solution!
Did my answers help arrive at a solution? Give it a kudos by clicking the Thumbs Up!

DAX is for Analysis. Power Query is for Data Modeling


Proud to be a Super User!

MCSA: BI Reporting

@edhans, no entendía la dirección de la línea. Los datos eran demasiado grandes y el portal no me dejaba pegar. Así que he subido en una unidad y pegado el enlace en la publicación real.

La dirección de la línea muestra la dirección del filtro. Por lo tanto, la tabla de datos está filtrando la tabla de fechas. Eso es al revés. La tabla Date es una tabla DIM (Dimension) y siempre debe filtrar la tabla FACT (o datos).
Haga lo siguiente:

Agregue esta fórmula a la tabla de datos y llámela Fecha. Esto está en Power Query. Agregue una nueva columna personalizada. Esta es la fórmula.

if Date.EndOfMonth(Date.FromText([month] & "1, " & Text.From(Date.Year(DateTime.LocalNow())))) > DateTime.Date(DateTime.LocalNow())
then Date.AddYears(Date.EndOfMonth(Date.FromText([month] & "1, " & Text.From(Date.Year(DateTime.LocalNow())))), -1) 
else Date.EndOfMonth(Date.FromText([month] & "1, " & Text.From(Date.Year(DateTime.LocalNow()))))

Puede que no esté bien. Lo que devuelve es esto (escondí columnas por el bien del espacio)

edhans_0-1600298755117.png

Ahora conecte esa columna de fecha a la columna Fecha de la tabla Fecha. Debe ser uno a muchos de la tabla Date que apunte a la tabla de hechos.

Ahora los campos de tabla de fechas deben usarse en los objetos visuales y funcionarán.

Si esa no es la fecha calculada correctamente, muéstrame lo que debería ser. Básicamente dije obtener el nombre del mes (jan, feb, mar) y hacerlo el último día del mes para este año, a menos que sea el futuro, luego hacerlo el año pasado.



Did I answer your question? Mark my post as a solution!
Did my answers help arrive at a solution? Give it a kudos by clicking the Thumbs Up!

DAX is for Analysis. Power Query is for Data Modeling


Proud to be a Super User!

MCSA: BI Reporting

Gracias @edhans por explicar el problema del filtro. Entré en la columna de fecha en la tabla de hechos y me conecté con la tabla tenue y funcionó según lo esperado. Eres mi salvador.

Gran @myasir - me alegro de que ayudó. Esta es la teoría inicial del esquema de estrella, que es fundamental para la mayoría de los modelos de Power BI correctos. MS tiene una página, y hay algunos buenos artículos y libros en ella también.


Orientación de Microsoft sobre la importancia del esquema star



Did I answer your question? Mark my post as a solution!
Did my answers help arrive at a solution? Give it a kudos by clicking the Thumbs Up!

DAX is for Analysis. Power Query is for Data Modeling


Proud to be a Super User!

MCSA: BI Reporting

Helpful resources

Announcements
PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.