unit uLogForm;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Data.DB, Vcl.Grids, Vcl.DBGrids, Vcl.ExtCtrls,
  Vcl.StdCtrls, uDM, FireDAC.Comp.Client;

type
  TfrmLog = class(TForm)
    pnlBottom: TPanel;
    btnRefresh: TButton;
    btnClose: TButton;
    DBGridLogs: TDBGrid;
    dsLogs: TDataSource;
    qryLogs: TFDQuery;
    procedure FormShow(Sender: TObject);
    procedure btnRefreshClick(Sender: TObject);
    procedure btnCloseClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  frmLog: TfrmLog;

implementation

{$R *.dfm}

procedure TfrmLog.btnCloseClick(Sender: TObject);
begin
  Close;
end;

procedure TfrmLog.btnRefreshClick(Sender: TObject);
begin
  qryLogs.Close;
  qryLogs.Open;
end;

procedure TfrmLog.FormCreate(Sender: TObject);
begin
  qryLogs.Connection := DM.FDConnection;
  qryLogs.SQL.Text := 'SELECT fecha, tipo, proceso, mensaje, nomarchivo ' +
                      'FROM proceso_log ' +
                      'ORDER BY fecha DESC ' +
                      'LIMIT 500';
end;

procedure TfrmLog.FormShow(Sender: TObject);
begin
  btnRefreshClick(nil);
end;

end.
