![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
|||
|
|||
|
Cita:
Bien para insertar un registro use
luego guardo, pero el problema es cuando elimino una fila q seleccione en el dbgrid solo puse: table1.delete y me da error (master has detail records cannot delete or modify), mi intencion es hacerlo de esa manera , quisiera saber si ahi alguna solucion, o que tendria q modificar en el codigo o agregar , gracias |
|
#2
|
||||
|
||||
|
Hola gonza.
Primero un consejo: Te conviene agregar un nuevo hilo para tu consulta. Vas a tener más oportunidades de obtener una respuesta satisfactoria. (Ya que más gente va a leer el post y se vá a tratar tu tema en particular). El error que te arroja es lógico y te dice que no puede borrar el registro actual puesto que hay otros registros que dependen de él. Hay bases de datos que permiten el borrado en cascada y otras que nó, debiéndolo hacer vos por código. Por lo que para ayudarte a solucionarlo, deberías especificar con que base de datos estás trabajando. Saludos. ![]() Última edición por ecfisa fecha: 10-08-2010 a las 19:38:44. |
|
#3
|
|||
|
|||
|
como eliminar fila de dbgrid
bueno las tablas las hice en paradox
|
|
#5
|
||||
|
||||
|
Casi siempre surge la confusión con el uso de los grids, solo hay que recordar que cualquier grid no es mas que la representación de lo que contiene una tabla o query, es mejor hacer cualquier cambio directamente en la tabla y el grid en automático responde.
__________________
AKA "El animalito" ||Cordobés a mucha honra|| |
|
#6
|
|||
|
|||
|
Cita:
table2.active:=false; table1.delete; table2.active:=true; probe con un navigator pero tambien me da el mismo error |
|
#7
|
||||
|
||||
|
Hola
Un masterdetail lo que hace es ligar dos tablas (o mas) esto para hacer normalmente un enlace de dos dbfrid. Cuando se llama a un master la relacion es filtrada por el campo requerido, la palabra magica, FILTRADA. Ninguna tabla aceptara borrar campos filtrados por un Table, solamente por sql. Saludos PD: Independientemente de la BD.
__________________
Siempre Novato |
|
#8
|
||||
|
||||
|
Si definiste bien tus tablas, (no mencionas que motor usas) debiste haber colocado las dependencias entre la tabla maestra y la de detalle de manera que cuando borres un registro de la maestra, en automático se borren los detalles (en algunos motores se usa CASCADE).
Lo que dice caral es correcto, por eso no puedes borrar a partir de un grid, tienes que hacerlo directamente en la tabla. Por otro lado el mensaje de error mismo te da la respuesta: "la tabla maestra tiene registros de detalle, no se puede borrar"...solución: primero borra todo detalle del registro maestro y luego el registro maestro. Ojo: tienes que cerrar las 2 tablas para hacer la operación.
__________________
AKA "El animalito" ||Cordobés a mucha honra|| |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| unir varias filas en una sola | microbiano | SQL | 4 | 26-04-2010 18:28:27 |
| Marcar varias filas de dbgrid | Kenobi | Varios | 3 | 02-02-2010 15:22:03 |
| Cómo borrar filas de un StringGrid | sac | OOP | 3 | 28-04-2008 10:51:23 |
| Seleccionar varias filas de un RXDBGrid | kayetano | C++ Builder | 1 | 26-06-2006 16:43:00 |
| Evitar Borrar más filas con DBGRID | User_Baja_2 | Varios | 4 | 12-01-2006 23:59:09 |
|