
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Ultimo estado con aggr
Buenas,
Os cuento el caso que estoy intentando resolver.
Tengo un listado de casos con los estados por los que ha pasado y su fecha y su hora.
Yo he definido que la franja horaria se pueda seleccionar de forma manual en la aplicacion, de forma que si selecciono las 15:00 todos los casos que reciba hoy antes de las 15:00 se contarán para el dia de hoy, y los que reciba despues de las 15:00 se contarán para mañana.
Necesito saber cuantos casos se me han quedado pendientes de resolver cada dia, para ello necesito saber cual es el "ultimo estado" en el que han estado según la franja horaria y contar los casos en los que el ultimo estado esté dentro de una lista de estados correspondientes.
Lo estoy intentando hacer con la función aggr, para sacar la hora del ultimo estado y la fecha y despues contar los que ese ultimo estado este dentro de mi lista.
No estoy teniendo mucho exito al resolver este problema. alguien puede ayudarme? Estoy abierta a escuchar otras opciones.
Gracias


- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Saludos Maria, la mejor forma de extraer el ultimo estado para los datos que tienes es usando la funcion FirstSortedValue(), posiblemente tendras que usar algun Aggr.
Seria bueno que en el QVW que enviaste especifiques cual es el estado que te interesa o aclarar un poco mas como debe quedar el resultado. Esto para poder ayudarte mejor con la respuesta.
Otro detalle es que si tienes muchos registros es recomendable que la hora la trunques a los minutos, esto te ayudara a ahorrar espacio.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hola Juan,
Muchas gracias por tu respuesta.
La función First sorted value no he conseguido que me funcione fuera de una tabla.
Los casos que quiero contar son los que se quedan en alguno de estos estados: AS,BC,DP,PP,PI al terminar la jornada en la franja seleccionada.
Respecto a lo de los minutos... al principio lo hice, pero algunas acciones se diferencian en segundos, por lo que para algunas operaciones me generaba error.
Se te ocurre como usar FirstSorted y los agg en un cuadro de texto?
Gracias


- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hola Maria,
Un caso pendiente de resolver es cualquier estado?
es decir cuando dices que casos me han quedado pendientes de resolver que estados son? (los que comentas mas arriba?
estados: AS,BC,DP,PP,PI)
Saludos,

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hola Jordi,
Efectivamente, se consideran casos pendientes a los que el ultimo estado en el que han estado ese dia ( el dia efectivo segun la franja horaria seleccionada) es uno de los siguinetes AS,BC,DP,PP,PI


- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hola María,
El resultado lo quieres en un cuadro de texto? (basandote en la seleccion del número de operación?) o lo quieres en una tabla? (un listado de todos los números con su Hora última y su estado?)
El tema es complejo
Lo tengo en tabla pero los sets no me hacen caso
si lo quieres probar:
FirstSortedValue(If(ID_TIPTR='CT',ID_TIPTR),-HoraHist)
(faltarían poner el resto de estados)
(yo tengo una tabla con dimension ID_LZD y expresion: FirstSortedValue(If(ID_TIPTR='CT',ID_TIPTR),-HoraHist) y para la hora máxima FirstSortedValue(If(ID_TIPTR='CT',HoraHist),-HoraHist))
Saludos,

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hola Jordi,
Lo quiero en cuadro de texto, aunque podría intentar ver como apañarme con la tabla.
El ejemplo que me mandas no me tiene en cuenta el dia ni la franja horaria seleccionada, sino simplemente el ultimo estado según la hora, pero yo selecciono la fecha y la hora en los campos que van independientes, no en los que pone Hist.
No me importaría calcularlo en el script definiendo de antemano aunque fueran 3 franjas horarias, pero tampoco soy capaz de saber como enfocarlo.
Un saludo,
Maria

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hola Maria, si lo he entendido bien necesitarías un campo con fecha y hora para aplicar el filtro, porque se quiere filtrar una hora menor que la seleccionada para el día seleccionado, pero para los días anteriores puede ser cualquier hora, por poner un ejemplo:
Date(FechaHist)+Time(HoraHist) as FechaHoraHist
Con esto la expresion sería:
=Sum({<FechaHoraHist={"<=$(=Max(Fecha)+Max(Hora))"}>}
Aggr(If(Match(FirstSortedValue({<FechaHoraHist={"<=$(=Max(Fecha)+Max(Hora))"}>} ID_TIPTR,-FechaHoraHist),'AS','BC','DP','PP','PI'), 1), ID_LZD))
Igual se podría buscar evitar el campo FechaHora intentando una suma de set analysis para el día actual con otra para los días anteriores, pero entonces el FirstSortedValue creo que no nos serviría y habría que buscar otra alternativa.
