Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 16-03-2015
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola mramos65.
Cita:
La pregunta es como hago que el Dbedit1 se actualice al cambiar la OP de la tabla Maestro y por consiguiente el valor de la suma en la columna "ENTRADAS" de la tabla detalle?
Si utilizas un TEdit como mencionaste en tu primer mensaje, usando el código del mensaje #4 en el evento AfterScroll de la tabla detalle (ENTREGAS).

Pero como ahora has cambiado el TEdit por un TDBEdit... la cosa cambia. Agrega otro componente Query y otro DataSource, es decir que tendrías 3 TQuery y 3 TDataSource:
Código:
qyProduccion <- dsProduccion
qyEntregas   <- dsEntregas
qySumatoria  <- dsSumatoria
Luego este código en el evento OnCreate del form:
Código Delphi [-]
procedure TForm1.FormCreate(Sender: TObject);
const
  DBNAME = 'TU_ALIAS_O_RUTA_A_BD';
begin
  // DataSources
  dsProduccion.DataSet:= qyProduccion;
  dsEntregas.DataSet  := qyEntregas;
  dsSumatoria.DataSet := qySumatoria;

  // Queries
  with qyProduccion do
  begin
    Close;
    DatabaseName:= DBNAME;
    SQL.Text:= 'SELECT OP, PRODUCTO FROM PRODUCCION';
    Open;  
  end;

  with qyEntregas do
  begin
    Close;
    DataBaseName:= DBNAME;
    DataSource  := dsProduccion;
    SQL.Clear;
    SQL.Add('SELECT OP, ENTRADAS, SALIDAS');
    SQL.ADD('FROM ENTREGAS WHERE OP = :OP');
    Open;
  end;

  with qySumatoria do
  begin
    Close;
    DatabaseName:= DBNAME;
    DataSource  := dsProduccion;
    SQL.Clear;
    SQL.Add('SELECT SUM(ENTRADAS) AS SUMA');
    SQL.Add('FROM ENTREGAS WHERE OP= :OP');
    Open;
  end;
  // DBEdit
  DBEdit1.DataSource:= dsSumatoria;
  DBEdit1.DataField := 'SUMA';
end;
Todo esto lo realicé en tiempo de ejecución a efectos de clarificar y evitar equívocos, pero podes hacerlo desde el Object Inspector en tiempo de diseño.

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Suma del Total de un campo calculado José Luis Garcí SQL 4 23-09-2010 08:41:15
DBGRID, campo calculado... Vichomo Conexión con bases de datos 4 03-08-2007 22:37:11
crear campo calculado en dbgrid tesorillo3 MySQL 0 01-02-2007 00:36:29
Pasar un campo calculado a un campo del mismo DbGrid maravert Conexión con bases de datos 3 12-05-2006 00:31:30
Campo Calculado en DBGrid Agar23 Tablas planas 0 07-11-2003 09:05:50


La franja horaria es GMT +2. Ahora son las 23:24:04.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi