Ver Mensaje Individual
  #6  
Antiguo 11-07-2008
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Reputación: 30
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
¡Hola!

Cita:
Empezado por GuerreroDelphi Ver Mensaje
...al fin logré establecer la relación maestro detalle gracias a tus indicaciones, pero demoré buen tiempo en detectar que ya estaba solucionado, porque, después de abrir los ClientDataSets maestro y detalle, el detalle no muestra los registros correspondientes, hasta que no empiezo a navegar en el maestro, lo cual solucioné, invocando el método First del ClientDataSet maestro. ¿Hay forma de que, al abrirlos, automáticamente me refresque el detalle?...
Que bueno que te ayudó mi consejo. Es extraño ese comportamiento. Cuando abres un conjunto de datos, éste se posiciona en su primera fila, y cada vez que un conjunto de datos se posiciona en una fila, sus subordinados conjuntos de datos detalles responden en consecuencia. No me explico qué pueda estar causando tal anomalía, pero a mí no me ha pasado (Delphi 7).

Un favor: ¿podrías elaborar una "prueba aislada" que puedas enviar a mi correo o anexar como .zip en este mismo hilo (en caso de que aún en esa prueba aislada siga presentándose el problema) para compilarla y analizarla con detenimiento en mi Delphi 2007? Una pequeña aplicación con dos TClientDataSet maestro-detalle y demás componentes necesarios ya armada. Me gustaría ver el trazo que sigue dentro de la VCL para descubrir por qué no te carga los detalles desde la apertura.


Cita:
Empezado por GuerreroDelphi Ver Mensaje
...En cuanto al inconveniente del 'Key violation', el problema lo corregí incluyendo el campo llave en la sentencia del detalle; lo que tampoco entiendo, pues no existían registros con la exactamente misma información...
De cualquier forma es muy buena práctica incluir el campo llave de los registros en los conjuntos de datos.


Cita:
Empezado por GuerreroDelphi Ver Mensaje
...¿Sabes dónde puedo encontrar información mucho mas detallada sobre el manejo de TClientDataSet?, pues lo que consigo casi siempre son descripciones de cada propiedad o evento, pero desearia algo más de contexto...
Fuentes que recomiendo:
1. Código fuente de la VCL (es muy enriquecedor atreverse a bucear en él).
2. Estupendos foros como este.
3. Libros de autores reconocidos como Ian Marteens, Marco Cantú, entre otros.
4. Bitácoras sobre Delphi y sus autores.
5. Cursos Delphi, como este que encontré de Ian Marteens: http://www.marteens.com/cdb1ad.pdf, o el que ofrezco en Sistemas GH.

Un abrazo maestro.

Al González.
Responder Con Cita