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

Calling all Data Engineers! Fabric Data Engineer (Exam DP-700) live sessions are back! Starting October 16th. Sign up.

Reply
Syndicate_Admin
Administrator
Administrator

Consulta de segmentación/dax

Hola a todos

Emitir:

Estoy luchando con una cortadora que funciona de la manera que necesitamos. Tenemos una columna meeting_date y el informe es para mostrar las cuentas sin reunión en los últimos 6 meses dentro de una tabla.

es decir:

andyfoster_0-1724928290362.png

Puede ver que la última columna muestra un sí / no que es para el meeting_date de los últimos 6 meses, esta es la misma bandera que el usuario en la segmentación.

Si bien esto funciona, cuando lo coloco en una cortadora que alimenta una tabla, lo que hace seleccionar 'No' es eliminar la reunión que se celebró en los últimos 6 meses y solo muestra las mediciones anteriores, si selecciono Sí, hace lo contrario, al no seleccionar No o Sí, se muestran todas las reuniones.

La lógica que quiere mi gerente es mostrar solo las cuentas que NO han tenido una reunión en los últimos 6 meses

He tratado de abordar esto de dos maneras:

1. SQL - Un breve enunciado del caso:

CASO
WHEN CONVERT(DATE, reuniones. Meeting_Date) >= DATEADD(MONTH, -6, GETDATE()) Y Meetings.Meeting_Status_Reporting = 'Held' THEN 'Yes' ELSE 'No'
TERMINA COMO Meeting_Flag_6Months,

2. Creé un Dax de:

IsWithinLast6Months =
SI (
'v_headacc_meetings_10-30'[meeting_date_months_diff] >= -6 &&
'v_headacc_meetings_10-30'[meeting_date_months_diff] <= 0,
"Sí",
"No"
)
Ambos hacen la misma tarea cuando se aplican a una segmentación y funcionan exactamente de la misma manera, lo cual está bien, y Sé que la lógica que powerbi está aplicando no es incorrecta cuando se usa el slicer, como en, muestra la reunión dentro o fuera de los 6 meses según la columna SQL o Dax que uso, pero no es el comportamiento que deseamos y me pregunto si alguien tuvo alguna idea brillante.
En resumen:
Solo queremos mostrar datos cuando no se haya celebrado una reunión en la cuenta en los últimos 6 meses, pero la segmentación solo "ejecuta" la vista de la reunión en los últimos 6 meses (seleccionando No en la segmentación)
Esto significa que mis chicos de ventas están viendo cuentas en Powerbi que no muestran ninguna reunión en los últimos 6 meses, pero cuando usan nuestro sistema CRM, obviamente pueden ver la reunión registrada en los últimos 6 meses
Espero que esto tenga sentido

Muchas gracias

1 ACCEPTED SOLUTION

Hola Sabiduría Wu

Ese resultado todavía no es lo que estamos tratando de lograr

Cerremos este post, nadie ha sido capaz de ofrecer una solución pero gracias por intentarlo.

Amable

View solution in original post

6 REPLIES 6
Syndicate_Admin
Administrator
Administrator

Hola @andyfoster ,

Según el conocimiento, la segmentación no puede quitar filas en Power BI Desktop. La segmentación simplemente filtra los datos dentro de la tabla.

vjiewumsft_0-1725002541637.png

Además, puede intentar ordenar la columna de fecha de reunión en el editor de consultas de energía.

vjiewumsft_1-1725002553600.png

Retire las filas superiores.

vjiewumsft_2-1725002560111.png

vjiewumsft_3-1725002566559.png

Segmentaciones de datos en Power BI - Power BI | Microsoft Learn

Saludos

Sabiduría Wu

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

¡Gracias por su respuesta

El objetivo no es eliminar ninguna fecha/dato, solo usar un botón/función de segmentación / equivalente para excluir cuentas/reuniones en una tabla donde se cumple una condición (reunión celebrada en los últimos 6 meses), luego, cuando esta condición no se cumple, aparece la lista de cuentas, que luego le da a Ventas una lista de cuentas para contactar que no han sido contactadas en los últimos 6 meses.

Es una pregunta complicada que no he descubierto, y dado que ya ha habido 92 vistas sobre esto, parece una tarea difícil.

Gracias

Hola @andyfoster ,

Cree la nueva columna para filtrar la fecha de reunión.

MeetingFlagLast6Months = 
IF (
    'v_headacc_meetings_10-30'[Metting Date] >= TODAY () - 180,
    "Yes",
    "No"
)

Arrastre la columna al objeto visual de segmentación.

vjiewumsft_0-1725008560511.png

vjiewumsft_1-1725008595711.png

Saludos

Sabiduría Wu

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

Lo he hecho con

IsWithinLast6Months =
SI (
'v_headacc_meetings_10-30'[meeting_date_months_diff] >= -6 &&
'v_headacc_meetings_10-30'[meeting_date_months_diff] <= 0,
"Sí",
"No"
)
Y sí, 'funciona' para lo que está destinado, pero no resuelve mi problema
No queremos poder filtrar ENTRE los dos, necesito poder excluir completamente de la vista de tabla las cuentas que han tenido una reunión celebrada en los últimos 6 meses
Todo lo que hace la segmentación de filtros es quitar la fila (de tres) que muestra una reunión celebrada.


Permítanme mostrar esto visualmente:

Este es el punto de partida/punto de vista
andyfoster_0-1725010150580.png

Esto muestra que una fila es una reunión en los últimos 6 meses y se muestra con el 'Sí' en la última columna de una columna calculada creada.

Cuando se aplica NO a la segmentación, se quita la fila que mostraba una reunión celebrada en los últimos 6 meses, la tabla debajo de la segmentación sigue mostrando la cuenta.

andyfoster_1-1725010210493.png

Al seleccionar SÍ, esto solo incluye la fila en la que se encuentra la reunión dentro de los últimos 6 meses

andyfoster_2-1725010303813.png

Entiendo que este es el comportamiento CORRECTO, sin embargo, esto no es lo que estamos tratando de lograr.

Al seleccionar NO, lo que el equipo de ventas quiere es que cualquier cuenta que haya tenido una reunión celebrada en los últimos 6 meses no sea visible EN ABSOLUTO, ni siquiera mostrando reuniones fuera de los 6 meses.

Quieren poder ver TODAS las cuentas que NO han tenido una llamada en los últimos 6 meses, y yo esperaba poder hacer esto usando segmentaciones o de otra manera.

Es por eso que he estado probando todo tipo de columnas calculadas y medidas de Dax, pero no parece poder encontrar una solución

No necesariamente necesito que esto esté en un Slicer si hay una mejor manera de usar botones u otra cosa.

Espero que esto tenga sentido

Gracias

Hola @andyfoster ,

Se puede intentar crear la siguiente medida.

Filter the metting = IF(SELECTEDVALUE('v_headacc_meetings_10-30'[MeetingFlagLast6Months]) = "No", 1, 0)

A continuación, arrastre la medida al panel Filtros del objeto visual de tabla. Establezca el parámetro mostrar elementos en 1 y aplíquelo.

vjiewumsft_0-1725238519780.png

vjiewumsft_1-1725238546307.png

Saludos

Sabiduría Wu

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 Sabiduría Wu

Ese resultado todavía no es lo que estamos tratando de lograr

Cerremos este post, nadie ha sido capaz de ofrecer una solución pero gracias por intentarlo.

Amable

Helpful resources

Announcements
FabCon Global Hackathon Carousel

FabCon Global Hackathon

Join the Fabric FabCon Global Hackathon—running virtually through Nov 3. Open to all skill levels. $10,000 in prizes!

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.