⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 uproductfilter.pas

📁 进销存以及BOM管理,SQl Server数据库程序
💻 PAS
字号:
unit uProductFilter;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, DB, ADODB, ExtCtrls, Buttons, Base, Grids, DBGrids,
  dxdbtrel, wwdblook;

type
  TfrmProductFilter = class(TfrmBase)
    GroupBox1: TGroupBox;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Panel1: TPanel;
    edtCode: TEdit;
    edtName: TEdit;
    QProductType: TADOQuery;
    dsProductType: TDataSource;
    lblNO: TLabel;
    Label4: TLabel;
    QProducts: TADOQuery;
    dsProducts: TDataSource;
    btFilter: TBitBtn;
    btOk: TBitBtn;
    btCancel: TBitBtn;
    btClear: TBitBtn;
    DBGrid1: TDBGrid;
    lktvTypeCode: TwwDBLookupCombo;
    QProductTypefid: TAutoIncField;
    QProductTypefcode: TWideStringField;
    QProductTypefname: TWideStringField;
    QProductTypefdesc: TWideStringField;
    QProductTypefstate: TBooleanField;
    QProductsfid: TAutoIncField;
    QProductsfcode: TWideStringField;
    QProductsfname: TWideStringField;
    QProductsfdesc: TWideStringField;
    QProductsftype: TWideStringField;
    QProductsfcolor: TWideStringField;
    QProductsflevel: TWideStringField;
    QProductsfunit: TWideStringField;
    procedure FormCreate(Sender: TObject);
    procedure btFilterClick(Sender: TObject);
    procedure btClearClick(Sender: TObject);
    procedure btCancelClick(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure btOkClick(Sender: TObject);
  private
    sSql,sFilter:String;
    bClick:Boolean;
    { Private declarations }
  public
    { Public declarations }
  end;

var
  frmProductFilter: TfrmProductFilter;

implementation

uses Data, Global;

{$R *.dfm}

procedure TfrmProductFilter.FormCreate(Sender: TObject);
begin
  inherited;
if Not QProductType.Active then QproductType.Open ;
sSql:='Select fid,fCode,ftype,fName,fdesc,fColor,fUnit,flevel from vitem';
end;

procedure TfrmProductFilter.btFilterClick(Sender: TObject);
begin
  inherited;
sFilter:=' Where';
if Trim(lktvTypeCode.Text)<>'' then
   begin
   sFilter:= sFilter+' fType like '''+'%'+QProductType.fieldbyName('fname').asString+'%''';
   end;
if Trim(edtCode.Text) <> '' then
   begin
   if sFilter<>' Where' then sFilter := sFilter+' and';
      sFilter:= sFilter+' fCode like '''+'%'+Trim(EdtCode.Text)+'%''';
   end;
if Trim(edtName.Text) <> '' then
   begin
   if sFilter<>' Where' then sFilter := sFilter+' and';
      sFilter:= sFilter+' fName like '''+'%'+Trim(EdtName.Text)+'%'''
   end;

With QProducts do
begin
  Close;
  Sql.Clear ;
  if sFilter<>' Where' then
     Sql.Add(sSql+sFilter)
     else
     Sql.Add(sSql);
  Open;
end;
end;

procedure TfrmProductFilter.btClearClick(Sender: TObject);
begin
  inherited;
lktvTypeCode.Text:='';
edtCode.Text :='';
edtName.Text :='';
QProducts.Close ;
end;

procedure TfrmProductFilter.btCancelClick(Sender: TObject);
begin
  inherited;
iProductID:=0;
Close;
end;

procedure TfrmProductFilter.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
  inherited;
  frmProductFilter:=Nil;
end;

procedure TfrmProductFilter.btOkClick(Sender: TObject);
begin
  inherited;
if QProducts.Active and (Qproducts.RecordCount >0) then
begin
 iProductID:=QProducts.fieldbyName('fID').AsInteger;
 Close;
end;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -