Ver Mensaje Individual
  #1  
Antiguo 27-03-2012
Tcmn Tcmn is offline
Miembro
 
Registrado: sep 2004
Posts: 153
Reputación: 22
Tcmn Va por buen camino
ClientDataset no inserta registros si sistema tarda en inactividad

Hola, disculpen si es muy largo el titulo del hilo.

Tengo algo muy raro en un sistema que ya esta en funcionamiento desde hace algunos meses y aunque así estan trabajando los usuarios, obviamente no es lo mas optimo como se daran cuenta.

El escenario es:

Delphi 6

Firebird 2.1

ClientDataset

Objetos de Interbase para conexion

Windows XP Profesional SP3

El asunto es que una tabla que es detalle se "bloquea" y no acepta inserciones si el usuario a durado 5 o mas minutos sin usar el programa. La tabla maestra se llama Contratos y esta a su vez tiene como tablas de detalles a ObjetosEmpeñados, Intereses, Abonos y Aumentos.

En la capa de acceso a datos uso IBQuery y con ellos establezco la relacion Maestro/Detalle con la propiedad DataSource de las tablas detalles. Posteriormente en la capa donde van todos los DatasetProvider y ClientDataset conecto las tablas de detalles usando la capacidad de ClientDataset de usar datos anidados con los FieldDataSet.

Todas las tablas de detalle funcionan bien todo el tiempo, y también todas las demas tablas de la base de datos trabajan y responden al momento, pero en el caso de una tabla detalle (ObjetosEmpeñados), al ejecutar la instruccion:

Código Delphi [-]
ObjetosEmpenados.Insert;

Los controles DataAware no responden, no permite al operario escribir nada, pero si cancela la alta presionando el respectivo
boton para cancelar la alta, ahora si deja insertar los detalles. Ya revise todo lo que se me ha ocurrido, como la configuracion de los campos(providerFalgs) pero no mas no.

Es muy raro el comportamiento, y ya no se me ocurre que mas verificar.

Espero haberme explicado y si alguien puede echarme una mano, seran bienvenidas las observaciones.

Gracias de antemano
__________________
Salu2
Responder Con Cita