Indices complejos no se actualizan automáticamente


([N3] krear) #1

Hola, he notado un comportamiento extraño con los indices complejos y me gustaría saber si les ocurre lo mismo.

  • Tengo dos tablas enlazadas reservas (RSV) y clientes (CLT)
  • He creado un indice complejo para poder buscar las reservas de un cliente por su nombre/s, apellidos o dni.

El problema que me he encontrado, si por algún motivo cambiamos el nombre, o agregamos un 2do apellido o actualizamos el dni del cliente, estos cambios no quedan reflejados en el indice complejo, por lo cual luego la búsqueda de reservas me devuelve datos erróneos o ninguno.

Por ejemplo:
Genero una nueva reserva, creo un nuevo cliente (apellidos: Honguito, nombre: pepe, dni; 2245544x)
Si realizo una búsqueda utilizando el indice complejo escribiendo “honguito”, “pepe” o “2245544” me funciona ok y me devuelve todas las reservas del cliente.

Pero, si luego completo o modifico los datos de “Honguito” en clientes, estos cambios no se actualizan en el indice complejo.

  • Si por ejemplo en Apellidos lo actualizo a “Honguito lopez” y luego realizo la búsqueda en reservas con “lopez” no aparece ninguna reserva.
  • Si por ejemplo en Nombre lo actualizo a “Pepe Ricardo”, al realizar la búsqueda por “Ricardo” no aparecen reservas de este cliente.
  • Si por ejemplo en Nombre cambio “Pepe” a “José”, al realizar la búsqueda por “José” no aparecen reservas, pero si busco por “Pepe” (su anterior nombre) si aparecen reservas.

Es decir, los cambios realizados a algún valor de los campos que componen el indice complejo no se actualizan en el indice.

Si entro por dataclient y regenero los indices entonces empiezan a funcionar bien nuevamente.

Les ocurre lo mismo??
Estoy con la 7.12.1

Pablo


([N4] Infortic) #2

Da algún error de índice el vAdmin?

Aunque 7.12 me parece que deberías plantearte actualizar…


([N3] synetic) #3

Sí, me ocurre igual.
AL final tengo una tarea que reindexa cada x minutos en el servidor para solucionar esto porque en soporte no conseguimos encontrar solución.

Mándalo a soporte a ver que te contestan y sería de gran utilidad que publicases la respuesta. Es un problema que en mi caso arrastro hace tiempo y que en los nuevos desarrollos desde entonces me obligan a no usar índices complejos. Con seguridad se que les sucede a otros desarrolladores.

Un saludo.


([N4] gontorre) #4

Buenos días

A mi no me ocurre esto y utilizo los índices complejos en varias tablas.

Lo que si que ocurre es que si se modifica la estructura de alguna de las tablas que intervienen en el índice complejo (añadiendo un campo, por ejemplo) hay que reconstruir el índice porque si no devuelve resultados erróneos.

Yo estoy con la 7.18

Un saludo


([N3] krear) #5

@infortic No no me da ningún vadmin, simplemente el indice queda con los datos anteriores a la actualización de datos del cliente! Tienes razón debería actualizar, pero le he tomado miedo a las actualizaciones, me ha pasado que luego de actualizar he tenido que trabajar extra para solucionar problemas/bugs o lo que sea luego por las actualizaciones.

@synetic He enviado ticket a soporte, os comentaré que me dicen. Es bueno saber que ha alguien más le ocurre para ver cual es el inconveniente. Lo de la tarea es una buena opción, lo tendré en cuenta. No se si hay alguna opción para decirle al servidor que regenere el indice de todas las instancias que utilizan este indice. En mi caso tengo 12 instancias que utilizan la parte de reservas y comparten una instancia en común de “Clientes”. Por lo que tengo que entrar via dataclient a cada una y reindexar por si acaso a cambiado algún dato de algún cliente. Esto debo hacerlo x 3 dado que utilizo un indice similar para temas de presupuestos y facturas.

@gontorre Gonzalo! es bueno saber lo de los cambios en la estructura! No veo que relación puede tener, pero lo tendré en cuenta. Quieres decir que si por ejemplo, agrego en la tabla “Clientes” un campo nuevo “USR_TWITTER” el cual no forma parte de ningún indice complejo, debo volver a generar todos los indices complejos de la aplicación que tengan alguna realación con la tabla Clientes??

Gracias a todos por vuestra ayuda!
En cuanto tenga noticias de soporte os comento!

Pablo


([N4] gontorre) #6

Eso es Pablo,

Yo siempre tengo que regenerar los índices complejos cada vez que hago una modificación en la estructura de una tabla que intervenga en un índice complejo, incluso si el campo añadido o modificado no interviene en el índice.

Un saludo


([N4] Infortic) #7

Lo de los cambios de estructura es básico, cualquier cambio en una tabla que tenga índices complejos hay que regenerar los índices o no funcionan.

A mi sólo me pasan cosas así con los índices cuando hago cambios.

De todas formas synetic comenta que le pasa a menudo y soporte no encuentra solución, así que algo raro tiene la cosa…


([N4] apinna.winmotor) #8

Buenas,

tengo un soporte abierto en estado 2 ( ha pasado a programación) exactamente por esta cuestión . En mi caso tengo en la misma aplicación un índice complejo que se “recalcula” con el cambio del maestro ( en tu caso el cliente de la reserva) y otro que no funciona, hay que reindexarlo.

Estoy a la espera de noticias de Velneo, si me dicen algo lo publicaré.


([N3] krear) #9

Hola!, de momento me preguntan en soporte si este problema se produce también en 7.19.1. También tengo que enviarles el .vin de la aplicación para ver si pueden reproducir lo que sucede. En cuanto lo pruebe y les envíe la aplicación les comento que ha pasado.

Muchas gracias a todos por vuestra ayuda!
Saludos!
Pablo


([N4] apinna.winmotor) #10

@pablo,

lo que yo te he contado pasa en la 19.1; vamos a ver si le dan caña


([N3] synetic) #11

Hola @apinna.winmotor @Krear

que solución te dieron en soporte para este asunto?
Lo refloto porque lo considero interesante.

Gracias y un saludo.


([N3] krear) #12

Hola @synetic!

En soporte me hicieron probarlo con la última versión (7.19.1), lo probé y el funcionamiento era
correcto (por lo menos en mi app). Por lo que me recomendaron actualizar a la última versión, cosa
que no voy a hacer hasta fin de año, estamos en plena temporada de reservas y ya vi que tenía que
realizar actualizaciones en formularios, informes, etc. que no se comportan igual que en la 7.12.

Por lo tanto he creado un evento al inicio de la app que ejecuta en 2do plano la re-indexación de los
indices complejos y así al menos cuando inicia un usuario la aplicación se vuelven a generar.

En soporte al comentarles que funcionaba ok en la última versión, lo único que me aconsejaron es actualizar

De todas maneras no podemos sacar mucho en claro, a mi en la 7.19.1 me funciona ok pero a @apinna.winmotor en
la 7.19 no le funcionan bien, no se de que dependerá que funcionen o no.

Saludos!


([N4] Infortic) #13

Toca esperar a que a apinna.winmotor le den una respuesta.

krear, si vas a migrar desde 7.12, revisa muy muy bien, sobre todo el tamaño de los formularios con tamaños de monitor y resolución del cliente, además si tienes integraciones con el visor HTML échales un ojo también que pueden haber sorpresas.


([N4] apinna.winmotor) #14

Hola @Symetic y los demás,

yo envié una solución donde pudieron reproducir el error y pasó a estado 2, está pendiente del equipo de desarrollo. Todas mis pruebas son con la 7.19, en cuanto tenga respuesta lo publicaré aquí.


([N3] krear) #15

Muchas gracias @infortic por tus consejos a la hora de actualizar! Me servirán mucho.
@apinna.winmotor esperamos tu respuesta a ver que te dicen.

Saludos y gracias a todos!
Pablo


([N4] frueda) #16

Hola @apinna.winmotor, algun resultado sobre el soporte abierto? Alguna aclaración de medidas a tomar con índices complejos sobre 7.19.1?

Estoy analizando el tema de los índices complejos y no me quiero meter de lleno sin tener claro cuando reindexar.

Gracias.


([N4] apinna.winmotor) #17

@frueda

de momento no tengo solución a la cuestión, entiendo que la montarán para la 7.20.

Creo en todo caso que para evaluar lo que necesitas deberías leer los post anteriores de este tema: hay soluciones por programación para el caso que a mi se me presentaba ( forzar la reindexación en un triger de la tabla afectada).

Espero haber ayudado


([N4] frueda) #18

Ok, muchas gracias por responder. De momento intentaré usar lo menos posible los índices complejos. Quizás haya suerte y mejoren este tema para la 7.20 como dices.

Un saludo.


([N4] tutormcsoftware) #19

NO había leído este hilo antes.
En la 19.1 he detectado que los indices complejos no se actualizan. En versiones anteriores no tenía problema, pero justo esta semana detenté que no funcionaba. Cada vez que modificaba el contenido de un campo de la tabla afectada tenía que recalcular indices si quería que el indice complejo mostrase el registro.

Esperemos pronta solución.