Ver Mensaje Individual
  #2  
Antiguo 22-08-2013
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 38
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
Cita:
Empezado por exequielmatias1 Ver Mensaje
este codigo me funciono! pero me muestra toda la columna de la tabla, yo necesito mostrar en el memo, sólo el resultado de una consulta hecha anteriormente que se muestra en un dbgrid. Es decir pasar los campos mostrados en el dbgrid a un memo
Hola.

Esa consulta fué un ejemplo, en la práctica deberías repetir la consulta que utilizaste para mostrar la información en el DBGrid, por ejemplo:
Código Delphi [-]
...
  SQL.Text := 'SELECT ' + ColName + ' FROM TU_TABLA WHERE OTRO_CAMPO BETWEEN 1 AND 50';
...
Cita:
Al ejecutar este codigo me borra el resultado anterior...
Lo ideal es usar otro componente query para enviarle a la función.


Cita:
Es decir pasar los campos mostrados en el dbgrid a un memo
Directamente desde el DBGrid sería:
Código Delphi [-]
procedure TForm1.EncolumnarMemo(const aFieldName: string);
var
  BM: Pointer;
begin
  Memo1.Lines.Clear;
  with DBGrid1.DataSource.DataSet do
  begin
    DisableControls;
    BM := GetBookmark;
    try
      while not Eof do
      begin
        Memo1.Lines.Add(FieldValues[aFieldName]);
        Next;
      end;
    finally
      GotoBookmark(BM);
      FreeBookmark(BM);
      EnableControls;
    end;
  end;
end;
En ese caso estamos trabajando con el TDataSet que alimenta al DBGrid, por lo que debemos guardar la posición del registro actual antes de recorrerlo para luego dejarlo en su posición original.

Saludos.
__________________
Daniel Didriksen

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