FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Consulta: Maestro/Detalle, CachedUpdates
Hola compañeros.
Antes de comenzar: Delphi7 y Firebird 2.1. Tengo dos IBDataSets en relación maestro/detalle. Les adjunto los campos significativos para clarificar:
Tengo que ingresar y guardar los campos del archivo detalle antes de que todos los campos del maestro hayan sido completados, así lo requiere el ingreso. Bástaría con hacer un post y un edit antes de guardar el detalle para funcionar correctamente, pero se dispara lógicamente una excepción por no estar ingresados los campos "not null" en el maestro. La solución que encontré, fue Activar CachedUpdates en los IBDataSets Maestro y detalle, para poder realizar el post y evitar la excepción, ya que todavía los datos no han sido enviado al servidor. Luego al guardar los IBDataSets involucrados hice:
Funciona bién. Pero me queda la duda si es buena manera de hacerlo o si existe otra opción... Espero haber sido claro y gracias por leer estas líneas. Saludos. Última edición por ecfisa fecha: 28-08-2010 a las 22:34:08. |
#2
|
|||
|
|||
Sobre cacheUpdates
El problema de las tablas maestro/detalle nos es común a todos los programadores, la solución... no, seguro que cada uno hemos ido adaptando o escogiendo una solución a raiz de nuestras experiencias, fallos, tipo de relaciones entre las tablas, etc...
Postear una cabecera y volver a editarla para terminar de rellenar datos que sólo se obtendrán cuando se hayan ido grabando los detalles es algo a lo que particularmente he recurrido varias veces. Incluso cuando trabajaba con Delphi 3 creaba tablas de memoria o lista punteros a estructuras del tipo register (poder moverme por los datos con varios punteros y varios órdenamientos) para trabajar con los detalles y luego volcarlos a la base de datos. Pero lo que mejor resultado me ha dado es usar ClientDataSet y DataSetProviders, que aunque estaban disponibles desde D5, los empezé a implentar habitualmente con D7. Merece la pena que inviertas dos o tres días en estudiar su funcionamiento. Echa un ojo a http://delphiallimite.blogspot.com/2...dataset-i.html Saludos.
__________________
Amar al mundo apasionadamente. |
#3
|
||||
|
||||
Hola axfe.
Muchas gracias por tu respuesta, ahora mismo voy a pegar una ojeada al link. Saludos y gracias nuevamente. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Consulta maestro/Detalle (TibTable) | mantraxer21 | Varios | 10 | 24-08-2010 20:51:07 |
Consulta maestro detalle. | jplj | SQL | 5 | 30-05-2007 20:24:14 |
Consulta sobre maestro detalle | ilichhernandez | Conexión con bases de datos | 0 | 18-05-2007 19:13:06 |
Problema con consulta en Maestro-Detalle | TrUnkS | SQL | 2 | 11-10-2006 00:20:47 |
Consulta Maestro Detalle | Acker | SQL | 1 | 10-07-2006 19:25:58 |
|