Cita:
|
Empezado por Crandel
nunca habia pensado en la pregunta y mucho menos sabia la respuesta
|
Tampoco yo había caido en la cuenta de ello. La duda me surgió cuando intentaba usar un DataModule para cada objeto de la aplicación, TdmCliente, TdmFactura, TdmPedido, etc. y por otro lado, un formulario de edición de cada tipo de objeto, TfrmCliente, TfrmFactura, TfrmPedido, etc. Cada data module tenía su propio Query y cada formulario su correspondiente DataSource. De manera que lo natural era enlazar unos con otros durante el diseño, como es costumbre. Sin embargo, en determinado momento pensé que me convendría crear más de un mismo tipo de objeto para el caso de que tuviera que acceder a dos objetos de la misma clase al mismo tiempo (tanto el módulos de datos como el formulario). Ahí es donde ya no queda claro qué está conectado con qué y donde, como dice
Al, este tipo de asociaciones no están pensadas para ser muchos a muchos.
Me parece interesante el problema porque cuando uno trabaja de la forma canónica (una sóla instancia del módulo de datos), diera la impresión de que el enlace que uno hace en el diseño es un enlace a nivel de clases, pero no es así (y creo que ni debiera ser así) sino a nivel de objetos (instancias).
Claro que tal asociación múltiple puede establecerse como debe ser, por código asignando manualmente las componentes al momento de la creación.
Pero el aprendizaje para mí es, nuevamente, mirar con mucho cuidado lo que se hace en tiempo de diseño.
// Saludos