Tema: facturacion
Ver Mensaje Individual
  #2  
Antiguo 05-06-2003
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Reputación: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
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.
Responder Con Cita