Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 28-09-2007
alopete alopete is offline
Miembro
 
Registrado: sep 2007
Posts: 95
Poder: 17
alopete Va por buen camino
Error al modificar datos en maestro detalle con dbexpress

Hola:

Soy nuevo en esto del delpgi y me estan surgiendo una serie de problemillas.

Tengo delhi 2006 conectado a firebird mediante dbexpress.

Tengo un maestro-cliente: el maestro con un TSQLTABLE,TDATASETPROVIDER,TCLIENTDATASET y TDATASOURCE.
Tengo el cliente con los mismos componentes salvo que en vez de TSQLTABLE, tengo un TSQLQUERY , unidos el maestro y el detalle mediante un parametro.
Tengo un grid (TDGRID) asociado al mestro y otro al cliente.

Mi problema surge cuando modifico algun dato de del cliente, me salta un error diciendo que no existe la tabla a la que hace referencia. Tengo puesto el applyupdates en el afertpost del clientedataset del cliente.

¿Alguien sabe pq me pasa eso (si modifico datos del maestro, va bien)?

Muchas gracias
Responder Con Cita
  #2  
Antiguo 29-09-2007
maro maro is offline
Miembro
 
Registrado: sep 2003
Ubicación: Sevilla
Posts: 104
Poder: 21
maro Va por buen camino
Hola,

Una pregunta: ¿Puede ser que en el SQLQuery del cliente tengas el nombre de la tabla en minusculas?

Gracias.
Un Saludo.
__________________
Maro. OutSourcing de programación con Delphi.
Responder Con Cita
  #3  
Antiguo 01-10-2007
alopete alopete is offline
Miembro
 
Registrado: sep 2007
Posts: 95
Poder: 17
alopete Va por buen camino
Hola:

Efectivamente, estaba en minusculas. Lo he puesto en mayusculas y funciona. Pero si se pongo apllyupdates tambien al maestro, al modificar datos del cliente, da "Stack Overflow". ¿ si tengo un maestro detalle, a que clientdataset hay que ponerle el applyupdates, al maestro al detalle o a ambos?

Muchas gracias por responder.
Responder Con Cita
  #4  
Antiguo 01-10-2007
maro maro is offline
Miembro
 
Registrado: sep 2003
Ubicación: Sevilla
Posts: 104
Poder: 21
maro Va por buen camino
Hola,

Ciertamente, tendrás que realizar un applyUpdates cada vez que quieras que las modificaciones se propaguen a la base de datos, es decir, por cada ClientDataset que estés usando.

El error que comentas no tiene nada que ver con el ApplyUpdates en si. Probablemente, tengas algún procedimiento, que se ejecuta al hacer el applyUpdates, y está provocando el desbordamiento de la pila.
Es muy posible que este desbordamiento lo esté provocando la ejecución de un bucle infinito, sin fin, que se repite hasta desbordar la pila de procesos.

Espero que te ayude.
Un Saludo.
__________________
Maro. OutSourcing de programación con Delphi.
Responder Con Cita
  #5  
Antiguo 01-10-2007
JosepGA JosepGA is offline
Miembro
 
Registrado: jun 2007
Ubicación: Tarragona
Posts: 166
Poder: 17
JosepGA Va por buen camino
hola, supongo que realizaras la consulta del tipo dos tSQLQuery conectados mediante un tDataSource, el maestro del tSQLQuery a un Tdatasetprovider, un tClientDataSet al Provider, y otro tClientDataSet ( el detalle ), a un campo tDataSetField del tClientDataSet maestro, si es así, debes realizar el ApplyUpdates en el tClientDataSet maestro.

un saludo
Responder Con Cita
  #6  
Antiguo 01-10-2007
alopete alopete is offline
Miembro
 
Registrado: sep 2007
Posts: 95
Poder: 17
alopete Va por buen camino
Hola de nuevo:

He tenido que poner en los dos. Como bien deciais, el error de stack era debido a otro motivo.

Muchas gracias
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
problemas maestro-detalle DBexpress jmlifi Conexión con bases de datos 2 16-06-2006 12:27:05
error con maestro detalle joanajj Conexión con bases de datos 1 22-04-2006 22:02:11
maestro/detalle, modificar ecfisa Tablas planas 6 30-12-2005 22:22:10
Ordenar Maestro detalle en DBExpress cesar_picazo Conexión con bases de datos 3 17-08-2005 18:10:30
Maestro/Detalle con dbExpress mosorio Conexión con bases de datos 4 02-09-2003 23:48:52


La franja horaria es GMT +2. Ahora son las 12:37:19.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi