Access - Mostrar registro que mas se repite en formulario

 
Vista:
Imágen de perfil de Roland

Mostrar registro que mas se repite en formulario

Publicado por Roland (9 intervenciones) el 14/11/2022 10:59:11
Buenas amigos,

Vergüenza me da tener que preguntar esto a estas alturas de la vida pero hoy es Lunes y estoy espeso.
Tengo un formulario que me muestra las llamadas de un Call Center. Entre otros campos está el nombre del agente que atiende la llamada(agente) y el número de llamada (idllamada).

Este formulario me saca los datos de la tabla 'tbl_llamadas', a través de unos filtros (como fecha, por ejemplo, a la que le paso dos valores -fecha inicio - fecha fin) de una consulta llamada csl_busqueda

Lo que quiero es que en el pie del formulario, con un textbox, me diga cuál de todos los agentes que aparecen en el formulario es el que más veces aparece, y el que menos veces aparece.

De esta forma sabría entre dos fechas, cuál es el agente que más llamadas ha atendido, y cuál el que menos.
El tema del filtro por fechas lo tengo solucionado. Pero lo de que me aparezca cuál es que más ha atendido y el que menos, no lo consigo. Intuyo es que es con la función DMax y agrupando, pero no lo logro.

RESUMEN: Tabla: tbl_llamadas filtro: por fecha consulta: csl_busqueda campo que quiero contar: agente

LO QUE HE INTENADO:
textbox_masllamadas = Dmax("agente";"csl_busqueda")


Gracias de antemano
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Mostrar registro que mas se repite en formulario

Publicado por Anonimo (3316 intervenciones) el 14/11/2022 11:18:16
.- Consulta de selección
.- Activar la opción de agrupación
.- Agrupar por agente
.- Contar un campo cualquiera (se cuentan registros, no campos)
.- Ordenar en ascendente/descendente el campo contado

Según el orden aplicado, el primer registro y el ultimo serán los ganadores/perdedores, para obtener esos datos habrá que cargar la consulta en un recordset u obtener esos datos con funciones de dominio.

Aquí puede surgir un problema y es que se repitan los resultados (varios agentes comparten el primer/último puesto) y si se ordena por otra cualidad .... se pierde la fidelidad (en igualdad de resultados, siempre 'ganaran' los mismos)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Roland

Mostrar registro que mas se repite en formulario

Publicado por Roland (9 intervenciones) el 14/11/2022 11:30:39
Esto que dices ya lo he hecho, y en la consulta me agrupa los agentes y me dice cuantas llamadas ha atendido cada uno. Pero aquí me quedo. No se como dar el siguiente paso, de tener la consulta agrupada por agentes, y el numero total de llamadas atendidas de cada uno, como hago para que el mayor de ellos (suponiendo que no haya empates), me aparezca en el cuadro de texto del formulario? Qué es lo que tengo que poner en el origen de control de ese cuadro de texto?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Mostrar registro que mas se repite en formulario

Publicado por Anonimo (3316 intervenciones) el 14/11/2022 12:46:51
Según se ordene la consulta, con las funciones de domino (DFirst, DLast) que utilicen como 'dominio' la consulta se obtendrán los agentes que estén a la cabeza por uno u otro extremo.

Si a la consulta propuesta se la guarda como 'Top_Agentes' el origen de datos para el cuadro de texto seria:
= DFirst("Agente", "Top_Agentes")
o
= DLast("Agente", "Top_Agentes")

El resultado está condicionado al orden aplicado al campo que se cuenta (ascendente/descendente)

Descarto la opción de utilizar un recordset (que también es una alternativa válida) porque no se le puede asignar como origen de datos a un cuadro de texto, queda como alternativa para otras funciones (por ejemplo: comparando el primer y segundo registro se puede conocer si hay un único ganador o varios, así como cuantos y cuales ....)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar