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
Syndicate_Admin
Administrator
Administrator

Relación entre valores estáticos y valores de fecha (pueden ser necesarias relaciones entre tablas)

Hola

Tengo una mesa que se ve así:

NombreDisponibilidadUso objetivoTasa de costos
Chris10.90100
John0.50.90125
Peter0.80.7085

Que cuando se multiplican juntos puede darme una tasa objetivo diaria.

También tengo una tabla de calendario que calcula el número de días laborables en un mes. Sin embargo, no hay relación entre éstos y tampoco puede haber.

Quiero multiplicar la tasa objetivo diaria por el número de días laborables en un mes, pero escribir esto como una medida da la advertencia "Las relaciones entre tablas pueden ser necesarias". ¿Hay alguna manera de escribir la medida para que esto no suceda (que sería mi ruta preferida) o, si no, ¿hay alguna manera de suprimir esta advertencia?

Gracias

Chris

1 ACCEPTED SOLUTION
Syndicate_Admin
Administrator
Administrator

Hola @

De acuerdo con su descripción, creo que puede usar la medida y la segmentación de datos en Power BI para lograr su requisito, puede probar este método:

  1. Cree una tabla de calendarios para obtener los datos a lo largo de 5 años:
Date = CALENDAR(DATE(2021,1,1),DATE(2025,12,31))
  1. Cree estas columnas calculadas en la tabla de fechas:
Month = FORMAT([Date],"mmm")
Month-Year = [Month]&"-"&RIGHT(YEAR([Date]),2)
Month-Year1 = YEAR([Date])&FORMAT([Date],"mm")
Is Working Day =

IF(WEEKDAY([Date],2)>5,0,1)

A continuación, ordene la columna [Mes-Año] de esta manera para que se ordene en la segmentación de datos:

v-robertq-msft_0-1616467990061.png

  1. Cree una medida:
Sum of working days =

SUMX(ALLSELECTED('Date'),[Is Working Day])
  1. Cree una segmentación de datos para colocar [Mes-Año] y un gráfico de cartas para colocar la medida:

v-robertq-msft_1-1616467990074.png

Y puedes conseguir lo que quieras.

Puede descargar mi archivo pbix de prueba aquí

Saludos

Equipo de soporte comunitario _Robert Qin

Si este post ayuda, entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

View solution in original post

5 REPLIES 5
Syndicate_Admin
Administrator
Administrator

Hola @

De acuerdo con su descripción, creo que puede usar la medida y la segmentación de datos en Power BI para lograr su requisito, puede probar este método:

  1. Cree una tabla de calendarios para obtener los datos a lo largo de 5 años:
Date = CALENDAR(DATE(2021,1,1),DATE(2025,12,31))
  1. Cree estas columnas calculadas en la tabla de fechas:
Month = FORMAT([Date],"mmm")
Month-Year = [Month]&"-"&RIGHT(YEAR([Date]),2)
Month-Year1 = YEAR([Date])&FORMAT([Date],"mm")
Is Working Day =

IF(WEEKDAY([Date],2)>5,0,1)

A continuación, ordene la columna [Mes-Año] de esta manera para que se ordene en la segmentación de datos:

v-robertq-msft_0-1616467990061.png

  1. Cree una medida:
Sum of working days =

SUMX(ALLSELECTED('Date'),[Is Working Day])
  1. Cree una segmentación de datos para colocar [Mes-Año] y un gráfico de cartas para colocar la medida:

v-robertq-msft_1-1616467990074.png

Y puedes conseguir lo que quieras.

Puede descargar mi archivo pbix de prueba aquí

Saludos

Equipo de soporte comunitario _Robert Qin

Si este post ayuda, entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

Syndicate_Admin
Administrator
Administrator

Gracias por las respuestas de todos. Ahora veo que no estaba tan claro como debería haber estado en describir el problema.

Así que tengo la mesa que mostré anteriormente:

NombreDisponibilidadUso objetivoTasa de costos
Chris10.90100
John0.50.90125
Peter0.80.7085

Y también tengo una mesa de citas que se ve así:

FechaañoNúmero de mesMes-añoClasificación mes-año¿Es el día de trabajo?
01/01/20212021121 de enero20210010
02/01/20212021121 de enero20210010
03/01/20212021121 de enero20210010
04/01/20212021121 de enero20210011
Fórmula

En la parte inferior de esta tabla (que incluye cinco años de fechas) está la fórmula:

Días laborables disponibles:=SUM([¿Es día de trabajo?])

Esto me permite averiguar el número total de días laborables en una tabla dinámica seleccionando el Mes-Año del filtro (o usando el mes-año de otras maneras, pero es el filtro que me interesa principalmente).

Todo esto funciona, pero genera el mensaje de advertencia al que me referí anteriormente.

Espero que esto lo aclare un poco más.

Muchas gracias.

Chris

Syndicate_Admin
Administrator
Administrator

Hola, @OuluChris

Según la descripción y los datos de ejemplo, la tabla de datos no tiene ninguna columna de fecha para vincularla a la tabla "Fecha". Entonces, ¿cuál es la relación esperada entre la tabla de datos y la tabla de calendario?

v-robertq-msft_0-1616406577962.png

Si desea obtener el número de días de trabajo dentro de cada mes, PhilipTreacy ha publicado la solución. Si desea suprimir esta advertencia, creo que dar una columna de fecha a la tabla de datos es muy necesario.

Puede publicar su archivo pbix de ejemplo o algunos datos de ejemplo (sin datos confidenciales) y su resultado esperado para que podamos ayudarle de antemano.

¡Muchas gracias!

Cómo obtener respuestas rápidamente a su pregunta

Saludos

Equipo de soporte comunitario _Robert Qin

Si este post ayuda, entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

Syndicate_Admin
Administrator
Administrator

Hola

No puedo entender tu pregunta. Si no hay fecha/mes en la tabla que haya compartido, ¿cómo se sabrá cuántos días tenemos que multiplicar?

Syndicate_Admin
Administrator
Administrator

Hola Chris,

Descargue el archivo PBIX de ejemplo.

¿Cómo estás determing qué mes es, y por lo tanto alimentar eso en tu medida?

Si utiliza TODAY, por ejemplo, podría resolver los días laborables en este mes de esta manera (mulitply esto por su tarifa diaria para obtener su respuesta deseada)

Monthly Target Rate = CALCULATE(COUNTROWS('DateTable'), FILTER('DateTable', MONTH('DateTable'[Date]) = MONTH(TODAY()) && YEAR('DateTable'[Date]) = YEAR(TODAY()) && 'DateTable'[IsWorkingDay] = TRUE))

Esto requiere una tabla de fechas que tenga una columna para indicar si un día es un día laborable o no. Esto requiere que se cree una lista de días festivos para que la tabla de fechas la use.

La medida anterior da 23 días hábiles en marzo de 2021, lo cual es correcto.

days.png

Compruebe mi PBIX adjunto que tiene una tabla de fechas que muestra los días laborables.

saludos

Phil

Helpful resources

Announcements
LearnSurvey

Fabric certifications survey

Certification feedback opportunity for the community.

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

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

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.