Lo puedes hacer así:
Ingredientes
tblClientes: TTable // tabla de clientes
tblDetalles: TTable // tabla de detalles
dsClientes: TDataSource // asociado a tblClientes
dsDetalles: TDataSource // asociado a tblDetalles
edtClienteId: TEdit // para captuar el id del cliente
btnBuscar: TButton // Para buscar al cliente
grdDetalles: TDBGrid // para mostrar los detalles
Preparación
1. Pones a dsClientes como "MasterSource" de tblDetalles y los conectas con la propiedad "MasterFields" para relacionar el id del cliente en la tabla de clientes con el campo cliente_id de la tabla de detalles.
2. Asignas dsDetalles a la propiedad "DataSource" de grdDetalles
3. En el evento OnClick de btnBuscar usas el método FindKey de tblClientes para localizar al cliente. Si devuelve false es que no existe un cliente con ese id y le mandas un mensaje al usuario.
4. En el evento OnShow del formulario activas tus tablas.
5. Ejecutas tu aplicación y ¡voilà!, escribes un id de cliente, aprietas el botón y el dbgrid te mostrará los detalles de ese cliente.
El resto te lo dejo de tarea y te recomiendo que te leas alguna introducción al uso de componentes db aware
Sugerencias para la tarea
Buscar en la ayuda de Delphi acerca de los métodos "Append", "Delete" y "FieldByName" de TTable.
// Saludos
Última edición por roman fecha: 05-06-2003 a las 23:17:07.
|