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
FlyKick
Helper II
Helper II

Recuento de filas por columna de fecha donde la fecha es entre un período específico

Hola a todos

Tengo dos tablas una contiene todos mis datos y la otra es una tabla Date que he creado en M Query.

Tabla de Entradas

Número de ticket, DateTime ingresado, Fecha y hora cerrada, Fecha solamente (Fecha solamente desde DateTIme ingresado), ClosedDateOnly(Date only)

Tabla de fechas (formada por la unión distinta de EnteredDateOnly y ClosedDateOnly)

*Con la excepción de la fecha en que se crean todas las demás columnas en la consulta M

Fecha

DayOfWeekNo

DayOfWeekLabel

WeekNo

MonthNo

MonthlLabel

año

Estoy tratando de crear una medida para contar el número de entradas cerradas dentro de un período de tiempo y he intentado lo siguiente.

  • TotalClosed á CALCULATE(COUNTROWS('Tickets'),DATESBETWEEN('Tickets'[ClosedDateOnly],MIN('Date'[Date]),MAX('Date'[Date])))
  • TotalClosed á CALCULATE(COUNTROWS('Tickets'),DATESBETWEEN('Tickets'[ClosedDateOnly],FIRSTDATE('Date'[Date]),LASTDATE('Date'[Date])))
  • TotalClosed á CALCULATE(COUNTROWS('Tickets'), FILTER('Tickets','Tickets'[ClosedOnDateOnly] >- MIN('Date'[Date]) && 'Tickets'[ClosedOnDateOnly] <- MAX('Date'[Date]))

En mi informe tengo una segmentación de datos basada en la columna Fecha de la tabla Fecha. La tabla Date tiene una relación de uno a varios con la tabla Tickets de la columna EnteredDateOnly.

Ambas medidas anteriores funcionan y proporcionan el resultado correcto cuando la segmentación está en el mínimo y máximo de la tabla de tickets. Sin embargo, el segundo utilizo la segmentación de datos para filtrar durante cualquier período de tiempo muestra el recuento incorrecto. He validado agregando un objeto visual Card y filtrando manualmente en la columna ClosedDateOnly utilizando el intervalo de la segmentación de datos.

He validado que MAX/MIN/FIRSTDATE/LASTDATE('Date'[Date]) devuelve las fechas correctas creando medidas para todos ellos y utilizando objetos visuales de tarjeta. Así que sé que las fechas que se pasan a las funciones son correctas. También he validado que las funciones ignoran los espacios en blanco.

Sé que la lógica de las funciones parece ser correcta también y que funciona cuando la fecha no se filtra. He comprobado mi relación y probado la dirección de filtro cruzado ambos y único.

No puedo averiguar por mi vida cómo Power BI está contando los registros de modo que hay una amplia discrepancia, especialmente cuando funciona cuando la segmentación de datos está en el intervalo de fechas mínimo y máximo de la tabla de datos Tickets.

¿Qué me estoy perdiendo aquí? Parece que debería funcionar????

1 ACCEPTED SOLUTION

Hola @FlyKick ,

Si el eje X utiliza Fecha de la tabla Tickets, puede crear una medida y colocarla en Filtro en este objeto visual. Configúrelo como 1.

Measure = 
IF(
    MAX(Tickets[ClosedOnDateOnly])>=MIN('Date'[Date]) && MAX(Tickets[ClosedOnDateOnly])<=MAX('Date'[Date]),1,0)

C1.jpg

Si su eje X utiliza Fecha de la tabla Fecha, intente eliminar la relación entre la tabla de fechas y la tabla Entradas.

Si no cumple con sus requisitos, ¿podría proporcionar una muestra de maqueta basada en datos falsos?

Puede ayudarnos a reproducir su problema.

Cargue sus archivos en OneDrive para la Empresa y comparta el enlace aquí. Por favor, no contenga ninguna Información Confidencial o Datos Reales en su respuesta.

Saludos

Equipo de apoyo a la comunidad _ zhenbw

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

8 REPLIES 8
v-zhenbw-msft
Community Support
Community Support

Hola @FlyKick ,

Tal vez la relación afectó el resultado.

Elimine delete la relación entre la tabla Tickets y la tabla de fechas y, a continuación, utilice la siguiente medida.

CO1.jpg

TotalClosed = CALCULATE(COUNTROWS('Tickets'), FILTER('Tickets','Tickets'[ClosedOnDateOnly] >= MIN('Date'[Date]) && 'Tickets'[ClosedOnDateOnly] <= MAX('Date'[Date])))

Co2.jpg

CO3.jpg

Si no cumple con sus requisitos, ¿podría proporcionar una muestra de maqueta basada en datos falsos?

Será útil si puede mostrarnos el resultado esperado exacto basado en las tablas.

Cargue sus archivos en OneDrive para la Empresa y comparta el enlace aquí. Por favor, no contenga ninguna Información Confidencial o Datos Reales en su respuesta.

Saludos

Equipo de apoyo a la comunidad _ zhenbw

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

BTW, pbix como adjunto.

Hola a todos,

Así que después de un buen sueño y la cabeza clara he descubierto por qué no estoy recibiendo los resultados que espero. Para todos los beneficios que hice crear una tabla de fechas contintinosa como se sugiere, pero que no solucionó mi problema que esperaba como el rango de fechas filtrada que estaba probando con de hecho ya contenía fechas contintini.

El problema es que quiero encontrar todos los boletos que se introdujeron o cerraron entre un período de fecha específico. Estoy filtrando la tabla por fecha introducida y luego contando las filas que tienen una fecha cerrada. Pero esto ignora los tickets que se ingresaron antes de ese período de tiempo.

Así que he corregido la medida mediante la función ALLEXCEPT para eliminar el filtro EnteredDate de la tabla Tickets. Intenté usar la función All(Column), pero no pude hacer que eso funcionara. No dejaba de decir que devolvía una tabla, pero ejepctando un número.

Aquí está la expresión actualizada
Cerrado On-TotalTickets ? CALCULATE(COUNTROWS('Tickets'), FILTER(ALLEXCEPT('Tickets','Tickets'[Board]),'Tickets '[ClosedOnDateOnly] >' MIN('Date'[Date]) && 'Tickets'[ClosedOnDateOnly] <- MAX('Date'[Date]))
Sin embargo, el problema con esto es mi gráfico ahora muestra todo el rango de fechas, estoy asumiendo porque la función ALL está quitando el filtro de fecha. Estoy confundido en cuanto a cómo funciona la función ALLEXCEPT. Pensé que sólo se aplicaría a la medida y devolver los resultados no también se aplican al gráfico.
¿He perdido entender cómo funciona? ¿Alguna sugerencia sobre cómo resolver este problema? Gracias

Aquí está el resultado de agregar la función ALLEXCEPT.

All Function Issue.jpg

Hola @FlyKick ,

¿Qué tal el resultado después de seguir las sugerencias mencionadas en mi publicación original?

¿Podría proporcionar más detalles o resultado esperado si no cumple con su requisito?

Si ha solucionado el problema por su cuenta, por favor comparta su solución. Si la ayuda de los mensajes anteriores, por favor márquela como una solución para ayudar a otros a encontrarlo más rápidamente.

Saludos

Equipo de apoyo a la comunidad _ zhenbw

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

Hola @FlyKick ,

Si el eje X utiliza Fecha de la tabla Tickets, puede crear una medida y colocarla en Filtro en este objeto visual. Configúrelo como 1.

Measure = 
IF(
    MAX(Tickets[ClosedOnDateOnly])>=MIN('Date'[Date]) && MAX(Tickets[ClosedOnDateOnly])<=MAX('Date'[Date]),1,0)

C1.jpg

Si su eje X utiliza Fecha de la tabla Fecha, intente eliminar la relación entre la tabla de fechas y la tabla Entradas.

Si no cumple con sus requisitos, ¿podría proporcionar una muestra de maqueta basada en datos falsos?

Puede ayudarnos a reproducir su problema.

Cargue sus archivos en OneDrive para la Empresa y comparta el enlace aquí. Por favor, no contenga ninguna Información Confidencial o Datos Reales en su respuesta.

Saludos

Equipo de apoyo a la comunidad _ zhenbw

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

Fowmy
Super User
Super User

@FlyKick

¿Puede cambiar la relación a [ClosedDateOnly e intentarlo.

________________________

¿He respondido a tu pregunta? Marque este post como una solución, esto ayudará a otros!.

Haga clic en el icono Thumbs-Up a la derecha si le gusta esta respuesta 🙂

YoutubeLinkedin

Did I answer your question? Mark my post as a solution! and hit thumbs up


Subscribe and learn Power BI from these videos

Website LinkedIn PBI User Group

Fowmy
Super User
Super User

@FlyKick


Estoy leyendo a mitad de camino la pregunta, el primer punto, la tabla de fechas tiene que tener un intervalo de fechas continuo con años completos. Puede empezar a crear las fechas utilizando MIN y MAX de su tabla de datos y convertirlas en año completo.

________________________

¿He respondido a tu pregunta? Marque este post como una solución, esto ayudará a otros!.

Haga clic en el icono Thumbs-Up a la derecha si le gusta esta respuesta 🙂

YoutubeLinkedin

Did I answer your question? Mark my post as a solution! and hit thumbs up


Subscribe and learn Power BI from these videos

Website LinkedIn PBI User Group

Hola Fowmy,

Aunque no he comprobado toda la tabla de fechas, he comprobado el período de tiempo con el que estoy probando la segmentación y la tabla de fechas tiene todos los días del mes. Es julio de 2020 y contiene todos los días del 1 al 31.

Solo para aclarar que no he establecido la tabla Date como la tabla de fechas que Power BI va a usar. Sólo me refiero a ella como mi tabla de fechas porque tiene un conjunto único de fechas que necesito para filtrar en ambas columnas de fecha en la tabla de tickets.

¿Sabe con certeza si la tabla de fechas que no es continua causaría este problema incluso cuando el período de tiempo que se filtra por incluye todas las fechas de ese mes?

Si es así, ¿puedes explicarme la lógica ya que no puedo por mi vida averiguar por qué eso causaría algún problema?

Seguramente obtiene la fecha mínima de la tabla de fechas 1st-Jul-2020 y la fecha máxima 31-Jul-2020 y pasa eso a las fechas entre la función para contar las filas?

Si ambas fechas existen en la tabla de fechas y son continuas (al menos para ese mes) ¿por qué provocaría un recuento incorrecto?

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.