Cita:
Empezado por ecfisa
Hola DANIEL1818.
Reemplaza el componente ADOTable (detalle) por un ADOQuery y luego este código:
Código Delphi [-]
procedure TForm.FormCreate(Sender: TObject);
begin
qyDetail.Close;
qyDetail.DataSource := dsMaster; qyDetail.SQL.Clear;
qyDetail.SQL.Add('SELECT * FROM TABLA_DETALLE');
qyDetail.SQL.Add('WHERE MASTER_ID = :ID AND ESTADO_COMENTARIO <> :BORRADO');
qyDetail.Parameters.ParamByName('BORRADO').Value := 'DATO_BORRADO';
qyDetail.Open;
end;
También deberás cambiar: - TABLA_DETALLE por el nombre que le hayas dado a la tabla detalle.
- MASTER_ID por el nombre de la columna de la tabla detalle que referencia a la columna clave de la tabla maestro.
- ID por el nombre de la columna clave de la tabla maestro. (No quites los dos puntos ":" que preceden al nombre o no funcionará)
- DATO_BORRADO por el tipo y valor que posee la columna ESTADO_COMENTARIO.
saludos
|
Gracias por tu respuesta, unas preguntas: 1) el codigo lo pongo en el evento onCreate del formulario que tiene las dos grillas no(la que me muestra el producto y el detalle)?
2)la verdad no entendi muy bien, ya que nunca lo hice de esta forma y estoy un poco perdido,ya puse ese codigo como me dijiste y ya en la primer linea me tira error fuera de memoria, lo que hice fue agregar un ADOQuery en el datamodule, y no lo active ni nada porque no me deja ya que no tiene escrito en su interior sentencia sql. El codigo que puse en el evento onCreate fue:
Código Delphi
[-] procedure TForm1.FormCreate(Sender: TObject);
begin
DM.QueryDETALLEComentario.Close;
DM.QueryDETALLEComentario.DataSource := DM.ds_productos; DM.QueryDETALLEComentario.SQL.Clear;
DM.QueryDETALLEComentario.SQL.Add('SELECT * FROM Comentario');
DM.QueryDETALLEComentario.SQL.Add('WHERE id_sub = :id_sub AND estado_comentario <> :BORRADO');
DM.QueryDETALLEComentario.Parameters.ParamByName('BORRADO').Value := true;
DM.QueryDETALLEComentario.Open;
end;
No entiendo como puedo hacer para que funcione, porque que pasa con el dbgrid_Comentario (DETALLE) en el formulario? lo asocio al query que me dijiste que ponga en reemplazo del ADOtable que tenia antes? porque ya lo hice y tampoco funciona. El dbgrid que me muestra todos los productos esta asociado a varias querys, ya que se puede filtrar por fecha, por nombre del producto etc.
Espero tu respuesta! y muchas gracias por tu ayuda!