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

📄 gpgz.pas

📁 2004090611144625767.rar 资源名称:通用工资管理
💻 PAS
字号:
unit gpgz;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, Mask, DBCtrls, ComCtrls, Grids, DBGrids, ExtCtrls, Db, DBCGrids;

type
  Tgpgzb = class(TForm)
    Panel1: TPanel;
    Label5: TLabel;
    Label1: TLabel;
    DateTimePicker1: TDateTimePicker;
    Label2: TLabel;
    Label6: TLabel;
    DBEdit5: TDBEdit;
    DBEdit1: TDBEdit;
    Label3: TLabel;
    DBEdit2: TDBEdit;
    Label7: TLabel;
    Label4: TLabel;
    DBEdit3: TDBEdit;
    Panel2: TPanel;
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    DBGrid1: TDBGrid;
    DataSource1: TDataSource;
    Label8: TLabel;
    DataSource2: TDataSource;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    DBGrid2: TDBGrid;
    procedure FormShow(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure DBEdit6Enter(Sender: TObject);
  
    procedure DBEdit3Click(Sender: TObject);
    procedure DBComboBox1DrawItem(Control: TWinControl; Index: Integer;
      Rect: TRect; State: TOwnerDrawState);
    procedure Edit2Enter(Sender: TObject);
    procedure DBComboBox1DragDrop(Sender, Source: TObject; X, Y: Integer);
    procedure DBComboBox1DragOver(Sender, Source: TObject; X, Y: Integer;
      State: TDragState; var Accept: Boolean);
    procedure DBComboBox1DropDown(Sender: TObject);
    procedure Edit3Click(Sender: TObject);
    procedure DBGrid2DblClick(Sender: TObject);
    procedure DBEdit1KeyUp(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure DBGrid2CellClick(Column: TColumn);
    procedure DBEdit2KeyUp(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure Edit2KeyUp(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Button3Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure DBGrid2DrawColumnCell(Sender: TObject; const Rect: TRect;
      DataCol: Integer; Column: TColumn; State: TGridDrawState);
    procedure Button4Click(Sender: TObject);
    procedure DBGrid1EditButtonClick(Sender: TObject);
    procedure DBGrid2KeyUp(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Edit1KeyUp(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure DBEdit5KeyUp(Sender: TObject; var Key: Word;
      Shift: TShiftState);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  gpgzb: Tgpgzb;

implementation

uses datamodule, gpgzfind;

{$R *.DFM}

procedure Tgpgzb.FormShow(Sender: TObject);
begin
datamodule1.gpgz.append;
dbgrid2.visible:=false;
end;

procedure Tgpgzb.Button1Click(Sender: TObject);
begin
with datamodule1.gpgz do
begin
try
fieldbyname('a_date').asdatetime:=datetimepicker1.Date;
fieldbyname('a_number').asstring:=dbedit1.text;
fieldbyname('a_name').asstring:=dbedit2.text;
fieldbyname('a_bm').asstring:=edit3.Text;
fieldbyname('a_bz').asstring:=dbedit3.Text;
fieldbyname('a_price').asfloat:=strtofloat(edit1.text);
fieldbyname('a_how').asfloat:=strtofloat(dbedit5.text);
 fieldbyname('a_jjgz').ascurrency:=strtocurr(edit2.text);
 post;
 append;
 edit1.text:='';
 edit2.text:='';
 dbedit5.text:='';
 except
 showmessage('不能正确保存数据,请检查输入数据的正确性');
 end;
 end;

end;

procedure Tgpgzb.DBEdit6Enter(Sender: TObject);
begin
if (edit1.text='') or (dbedit5.text='') then
showmessage('请在单价和数量下输入数字!')
else
begin
showmessage(edit1.text);
edit2.text:=currtostr(strtocurr(edit1.text)*strtocurr(dbedit5.text));
end;

end;


procedure Tgpgzb.DBEdit3Click(Sender: TObject);
begin
dbgrid2.visible:=false;
 edit3.text:=datamodule1.rsbm.FieldByName('a_bm').asstring;
 dbedit3.text:=datamodule1.rsbm.fieldbyname('a_bz').asstring;
end;

procedure Tgpgzb.DBComboBox1DrawItem(Control: TWinControl; Index: Integer;
  Rect: TRect; State: TOwnerDrawState);
begin
dbgrid2.visible:=true;
end;

procedure Tgpgzb.Edit2Enter(Sender: TObject);
begin
if (edit1.text='') or (dbedit5.text='') then
showmessage('请在单价和数量里面输入数字')
else
edit2.text:=floattostr(strtofloat(edit1.text)*strtofloat(dbedit5.text))
end;

procedure Tgpgzb.DBComboBox1DragDrop(Sender, Source: TObject; X,
  Y: Integer);
begin
dbgrid2.visible:=true;
end;

procedure Tgpgzb.DBComboBox1DragOver(Sender, Source: TObject; X,
  Y: Integer; State: TDragState; var Accept: Boolean);
begin
dbgrid2.visible:=true;
end;

procedure Tgpgzb.DBComboBox1DropDown(Sender: TObject);
begin
dbgrid2.visible:=true;
end;

procedure Tgpgzb.Edit3Click(Sender: TObject);
begin
dbgrid2.visible:=true;
end;

procedure Tgpgzb.DBGrid2DblClick(Sender: TObject);
begin
edit3.text:=datamodule1.rsbm.fieldbyname('a_bm').asstring;
dbedit3.text:=datamodule1.rsbm.fieldbyname('a_bz').asstring;
 dbgrid2.visible:=false;
 edit1.setfocus;
end;

procedure Tgpgzb.DBEdit1KeyUp(Sender: TObject; var Key: Word;
  Shift: TShiftState);
var
str:string;
begin
str:='select *from yggb where a_number like ';
str:=str+''''+'%'+dbedit1.text+'%'+'''';
if inttostr(key)='13' then
 begin
 with datamodule1.yggb do
 begin
 close;
 sql.clear;
 sql.add(str);
 prepare;
 open;
 end;
 dbgrid2.visible:=true;
 dbgrid2.SetFocus;
 end;


end;

procedure Tgpgzb.DBGrid2CellClick(Column: TColumn);
begin
dbedit1.text:=datamodule1.yggb.fieldbyname('a_number').asstring;
dbedit2.text:=datamodule1.yggb.fieldbyname('a_name').asstring;
edit3.text:=datamodule1.yggb.fieldbyname('a_bm').asstring;
dbedit3.text:=datamodule1.yggb.fieldbyname('a_bz').asstring;

end;

procedure Tgpgzb.DBEdit2KeyUp(Sender: TObject; var Key: Word;
  Shift: TShiftState);
var
str:string;
begin
str:='select *from yggb where a_name like ';
str:=str+''''+'%'+dbedit2.text+'%'+'''';
if inttostr(key)='13' then
 begin
 with datamodule1.yggb do
 begin
 close;
 sql.clear;
 sql.add(str);
 prepare;
 open;
 end;
 if datamodule1.yggb.Eof then
 showmessage('查无此人,请重新输入,谢谢')
 else
 dbgrid2.visible:=true;
 end;
  end;
procedure Tgpgzb.FormClose(Sender: TObject; var Action: TCloseAction);
begin
datamodule1.gpgz.close;
self.release;
end;

procedure Tgpgzb.Edit2KeyUp(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
if inttostr(key)='13' then
button1.click;
end;

procedure Tgpgzb.Button3Click(Sender: TObject);
begin
self.close;
end;

procedure Tgpgzb.Button2Click(Sender: TObject);
begin
gpgzfindb.show;
end;

procedure Tgpgzb.DBGrid2DrawColumnCell(Sender: TObject; const Rect: TRect;
  DataCol: Integer; Column: TColumn; State: TGridDrawState);
  var
  i_odd:integer;
  begin
{  i_odd:=1;
while not datamodule1.yggb.Eof do
begin
dbgrid2.Canvas.Font.color:=cllime;
dbgrid2.DefaultDrawColumnCell(rect,datacol,column,state);
datamodule1.yggb.next;
end;//while
}end;

procedure Tgpgzb.Button4Click(Sender: TObject);
begin
//dbgrid2.datasource.dataset.gotobookmark(pointer(dbgrid2.selectedrows.items[0]));

end;

procedure Tgpgzb.DBGrid1EditButtonClick(Sender: TObject);
begin
showmessage('asfadf');
end;

procedure Tgpgzb.DBGrid2KeyUp(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
if key=13 then
begin
dbedit1.text:=datamodule1.yggb.fieldbyname('a_number').asstring;
dbedit2.text:=datamodule1.yggb.fieldbyname('a_name').asstring;
edit3.text:=datamodule1.yggb.fieldbyname('a_bm').asstring;
dbedit3.text:=datamodule1.yggb.fieldbyname('a_bz').asstring;
dbgrid2.visible:=false;
edit1.SetFocus;

end;
end;

procedure Tgpgzb.Edit1KeyUp(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
if key=13 then
dbedit5.setfocus;
end;

procedure Tgpgzb.DBEdit5KeyUp(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
if key=13 then
edit2.SetFocus;
end;

end.

⌨️ 快捷键说明

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