fkcgl.pas.~38~

来自「delphi2007开发的汽车配件进销存系统.实用级的源码.」· ~38~ 代码 · 共 185 行

~38~
185
字号
unit Fkcgl;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, GridsEh, DBGridEh, cxTextEdit, cxControls, cxContainer, cxEdit,
  cxGroupBox, cxPC, StdCtrls, Menus, cxLookAndFeelPainters, cxButtons,
  cxNavigator, cxDBNavigator, PrnDbgeh,
  DBGridEhImpExp;

type
  Tfrmkcgl = class(TForm)
    cxPageControl1: TcxPageControl;
    cxTabSheet1: TcxTabSheet;
    cxGroupBox2: TcxGroupBox;
    cxTextEdit1: TcxTextEdit;
    DBGridEh2: TDBGridEh;
    Button1: TButton;
    cxButton1: TcxButton;
    cxTextEdit2: TcxTextEdit;
    cxButton2: TcxButton;
    cxButton3: TcxButton;
    cxButton4: TcxButton;
    cxButton5: TcxButton;
    SaveDialog1: TSaveDialog;
    procedure cxTextEdit1Click(Sender: TObject);
    procedure cxTextEdit1KeyUp(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Button1Click(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure cxButton1Click(Sender: TObject);
    procedure cxDBNavigator1ButtonsButtonClick(Sender: TObject;
      AButtonIndex: Integer; var ADone: Boolean);
    procedure cxTextEdit2KeyPress(Sender: TObject; var Key: Char);
    procedure cxButton2Click(Sender: TObject);
    procedure cxButton3Click(Sender: TObject);
    procedure cxButton4Click(Sender: TObject);
    procedure cxButton5Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  frmkcgl: Tfrmkcgl;

implementation

uses UDM, Fkhgl, Fxgkc;

{$R *.dfm}

procedure Tfrmkcgl.Button1Click(Sender: TObject);
begin
  if DBGridEh2.Columns[6].Visible then
     DBGridEh2.Columns[6].Visible := False
  else
     DBGridEh2.Columns[6].Visible := true;
end;

procedure Tfrmkcgl.cxButton1Click(Sender: TObject);
begin
  Close;
end;

procedure Tfrmkcgl.cxButton2Click(Sender: TObject);
begin
  with dm.qry3 do begin
    Close;
    with sql do begin
      Clear;
      Add('select spxx.*,kcxx.sl as kcsl from spxx ,kcxx where spxx.bm=kcxx.bm');
      Add(' and kcxx.sl<=:p_sl');
    end;
    Parameters.ParamByName('p_sl').Value := StrToFloat(cxTextEdit2.Text);
    Open;
  end;
end;

procedure Tfrmkcgl.cxButton3Click(Sender: TObject);
begin
  with dm.qry3 do begin
    Close;
    with sql do begin
      Clear;
      Add('select spxx.*,kcxx.sl as kcsl from spxx ,kcxx where spxx.bm=kcxx.bm');
    end;
    Open;
  end;
end;

procedure Tfrmkcgl.cxButton4Click(Sender: TObject);
begin
  FrmXGKC.ShowModal;
end;

procedure Tfrmkcgl.cxButton5Click(Sender: TObject);
var ExpClass:TDBGridEhExportClass;
    Ext:String;
begin

  SaveDialog1.FileName := 'file1';
  //if (ActiveControl is TDBGridEh) then
    if SaveDialog1.Execute then
    begin
      case SaveDialog1.FilterIndex of
        1: begin ExpClass := TDBGridEhExportAsText; Ext := 'txt'; end;
        2: begin ExpClass := TDBGridEhExportAsCSV; Ext := 'csv'; end;
        3: begin ExpClass := TDBGridEhExportAsHTML; Ext := 'htm'; end;
        4: begin ExpClass := TDBGridEhExportAsRTF; Ext := 'rtf'; end;
        5: begin ExpClass := TDBGridEhExportAsXLS; Ext := 'xls'; end;
      else
        ExpClass := nil; Ext := '';
      end;
      if ExpClass <> nil then
      begin
//        if UpperCase(Copy(SaveDialog1.FileName,Length(SaveDialog1.FileName)-2,3)) <>
//           UpperCase(Ext) then
          SaveDialog1.FileName := SaveDialog1.FileName + '.' + Ext;
//        SaveDBGridEhToExportFile(ExpClass,TDBGridEh(ActiveControl),
//             SaveDialog1.FileName,False);
        SaveDBGridEhToExportFile(TDBGridEhExportAsText,DBGridEh2,SaveDialog1.FileName,False);
      end;
    end;
end;

procedure Tfrmkcgl.cxDBNavigator1ButtonsButtonClick(Sender: TObject;
  AButtonIndex: Integer; var ADone: Boolean);
begin
  //判断按下去的按钮,确认删除
  if AButtonIndex=8  then
    if Application.MessageBox('将删除当前选择的记录,删除的记录将不能恢复,'+
        '删除吗?', '提示信息', MB_OKCANCEL + MB_ICONQUESTION) = IDOK then
      ADone:=false
    else
      Adone:=true;
end;

procedure Tfrmkcgl.cxTextEdit1Click(Sender: TObject);
begin
  cxTextEdit1.Clear;
end;

procedure Tfrmkcgl.cxTextEdit1KeyUp(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  with dm.qry3 do begin
    active:=false;
    with sql do begin
      Clear;
      add('select spxx.*,kcxx.sl as kcsl from spxx ,kcxx where spxx.bm=kcxx.bm'
          +' and (spxx.bm like :pbm or spxx.pm like :ppm or spxx.gg like :pgg)');
    end;
    Parameters.ParamByName('pbm').value:='%'+ cxTextEdit1.Text+'%';
    Parameters.ParamByName('ppm').value:='%'+ cxTextEdit1.Text+'%';
    Parameters.ParamByName('pgg').value:='%'+ cxTextEdit1.Text+'%';
    Active:=true;
  end;
end;

procedure Tfrmkcgl.cxTextEdit2KeyPress(Sender: TObject; var Key: Char);
begin
  if ((key<'0') or (key>'9'))and (key<>#8) then key:=#0;
end;

procedure Tfrmkcgl.FormShow(Sender: TObject);
begin
  //隐去进价
  DBGridEh2.Columns[6].Visible := False;

  DBGridEh2.Columns[0].Title.caption:='货位';
  DBGridEh2.Columns[1].Title.caption:='编码';
  DBGridEh2.Columns[2].Title.caption:='品名';
  DBGridEh2.Columns[3].Title.caption:='规格';
  DBGridEh2.Columns[4].Title.caption:='产地';
  DBGridEh2.Columns[5].Title.caption:='单位';
  DBGridEh2.Columns[6].Title.caption:='进价';
  DBGridEh2.Columns[7].Title.caption:='单价';
  DBGridEh2.Columns[8].Title.caption:='库存数量';
end;

end.

⌨️ 快捷键说明

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