find.pas

来自「某大型医院护士站」· PAS 代码 · 共 110 行

PAS
110
字号
unit find;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, Buttons, Grids, Wwdbigrd, Wwdbgrid, Db, Wwdatsrc, DBTables,
  Wwtable, Wwquery;

type
  TfrmFindItemID = class(TForm)
    wwDBGrid1: TwwDBGrid;
    edname: TEdit;
    Label1: TLabel;
    btmSearch: TBitBtn;
    qryFind: TwwQuery;
    wwDataSource1: TwwDataSource;
    BitBtn2: TBitBtn;
    qryFindcostid: TStringField;
    qryFindcname: TStringField;
    qryFindename: TStringField;
    qryFindspec: TStringField;
    qryFindPRICE: TFloatField;
    procedure btmSearchClick(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure BitBtn2Click(Sender: TObject);
    procedure wwDBGrid1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure wwDBGrid1DblClick(Sender: TObject);
    procedure ednameKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure FormShow(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }

  end;

var
  frmFindItemID: TfrmFindItemID;

implementation

uses OrderItem, Datamodule;

{$R *.DFM}

procedure TfrmFindItemID.btmSearchClick(Sender: TObject);
var
  findname : String;
begin
 findName := ' WHERE CNAME like ''%' + Trim(edname.Text) + '%''' ;
 with qryFind do
 begin
    qryfind.Active := False;
    sql.Clear;
    sql.Add('SELECT COSTID, CNAME, ENAME, SPEC ,PRICE FROM ORDERCOST ');
    sql.Add(findname);
    qryfind.Active := True;
 end;

 if qryfind.RecordCount > 0 then wwDBGrid1.SetFocus;

end;

procedure TfrmFindItemID.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  qryfind.Close;
end;

procedure TfrmFindItemID.BitBtn2Click(Sender: TObject);
begin
  close;
end;

procedure TfrmFindItemID.wwDBGrid1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);

begin
  if key = 13 then
  begin
    if not qryfind.Active then SysUtils.Abort;

    DM.Itemid := qryfindCostid.AsString;
    frmFindItemID.ModalResult := mrOK;
  end;
end;

procedure TfrmFindItemID.wwDBGrid1DblClick(Sender: TObject);
begin
  if not qryfind.Active then SysUtils.Abort;

    DM.Itemid := qryfindCostid.AsString;
    frmFindItemID.ModalResult := mrOK;
end;

procedure TfrmFindItemID.ednameKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
   if key = 13 then btmSearch.Click;
end;

procedure TfrmFindItemID.FormShow(Sender: TObject);
begin
   edname.SetFocus;
end;

end.

⌨️ 快捷键说明

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