unit fbuscararticulosprov;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.ExtCtrls, Vcl.Grids,
  Vcl.DBGrids, Data.DB, ZAbstractRODataset, ZDataset;

type
  Tbuscararticulosprov = class(TForm)
    DBGrid1: TDBGrid;
    Panel1: TPanel;
    Label1: TLabel;
    Edit1: TEdit;
    btAguardar: TButton;
    qarticulos: TZReadOnlyQuery;
    dsqarticulos: TDataSource;
    qarticulosidempresa: TIntegerField;
    qarticulosid: TWideStringField;
    qarticuloscodigo: TWideStringField;
    qarticulosdescripcion: TWideStringField;
    qarticulospvp: TFloatField;
    procedure Edit1Change(Sender: TObject);
    procedure qarticulosBeforeOpen(DataSet: TDataSet);
    procedure btAguardarClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  buscararticulosprov: Tbuscararticulosprov;
  filtro:string;

implementation

{$R *.dfm}

uses fentradas;

procedure Tbuscararticulosprov.btAguardarClick(Sender: TObject);
begin
    buscararticulosprov.Close;
end;

procedure Tbuscararticulosprov.Edit1Change(Sender: TObject);
begin
    filtro:=edit1.Text;
    qarticulos.Close;
    qarticulos.Open;
end;

procedure Tbuscararticulosprov.qarticulosBeforeOpen(DataSet: TDataSet);
var filtrolocal:string;
begin
    filtrolocal:='';
    filtrolocal:=' and (descripcion like('+''''+'%'+filtro+'%'+''''+') or id like('+''''+'%'+filtro+'%'+''''+'))';
    qarticulos.SQL.Clear;
    qarticulos.SQL.Add('select idempresa,id,id_propio as codigo,descripcion,ult_precio as pvp from proveedores_articulos where idempresa='+entradas.entradasidempresa.AsString+' and idproveedor='+entradas.entradasidproveedor.asstring+filtrolocal+' order by descripcion');
end;

end.
