📄 personel.pas
字号:
unit Personel;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, ToolWin, dxExEdtr, dxDBTLCl, dxGrClms, dxTL, dxDBCtrl,
dxDBGrid, dxCntner, DB, ExtCtrls, StdCtrls, dxEditor, dxEdLib, dxDBEdtr,
dxDBELib, ImgList;
type
TfrmPersonel = class(TForm)
CoolBar1: TCoolBar;
ToolBar1: TToolBar;
ToolButton2: TToolButton;
ToolButton3: TToolButton;
ToolButton4: TToolButton;
ToolButton5: TToolButton;
ToolButton7: TToolButton;
ToolButton8: TToolButton;
ToolButton9: TToolButton;
ToolButton12: TToolButton;
ToolButton10: TToolButton;
ToolButton13: TToolButton;
ToolButton11: TToolButton;
PageControl1: TPageControl;
TabSheet1: TTabSheet;
TabSheet2: TTabSheet;
grdPersonel: TdxDBGrid;
grdPersonelPersonID: TdxDBGridMaskColumn;
grdPersonelName: TdxDBGridMaskColumn;
grdPersonelSex: TdxDBGridMaskColumn;
grdPersonelDept: TdxDBGridMaskColumn;
grdPersonelWorkType: TdxDBGridMaskColumn;
grdPersonelInDate: TdxDBGridDateColumn;
grdPersonelBasePay: TdxDBGridCurrencyColumn;
grdPersonelServiceAward: TdxDBGridCurrencyColumn;
grdPersonelSubsidy: TdxDBGridCurrencyColumn;
grdPersonelNotes: TdxDBGridMemoColumn;
dsPersonel: TDataSource;
Panel1: TPanel;
Label1: TLabel;
edtPersonId: TdxEdit;
Label2: TLabel;
edtName: TdxEdit;
Label3: TLabel;
icbSex: TdxImageEdit;
Label4: TLabel;
cbDept: TdxLookupEdit;
cbWorkType: TdxLookupEdit;
Label5: TLabel;
Label6: TLabel;
dtInDate: TDateTimePicker;
Label7: TLabel;
cedtBasepay: TdxCurrencyEdit;
Label8: TLabel;
cedtServiceAward: TdxCurrencyEdit;
Label9: TLabel;
cedtSubsidy: TdxCurrencyEdit;
Label10: TLabel;
memNotes: TdxMemo;
ImageList1: TImageList;
dsDept: TDataSource;
dsWorktype: TDataSource;
ToolButton1: TToolButton;
procedure ToolButton2Click(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure ToolButton4Click(Sender: TObject);
procedure ToolButton5Click(Sender: TObject);
procedure ToolButton8Click(Sender: TObject);
procedure ToolButton14Click(Sender: TObject);
procedure ToolButton11Click(Sender: TObject);
procedure SaveToPersonel();
procedure PersonelToText();
procedure ToolButton9Click(Sender: TObject);
procedure ToolButton10Click(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure FormKeyPress(Sender: TObject; var Key: Char);
procedure FormCreate(Sender: TObject);
procedure ToolButton12Click(Sender: TObject);
procedure grdPersonelChangeNode(Sender: TObject; OldNode,
Node: TdxTreeListNode);
procedure ToolButton1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
frmPersonel: TfrmPersonel;
implementation
{$R *.dfm}
uses
DataCenter,Main, ChoicePerson;
procedure TfrmPersonel.ToolButton2Click(Sender: TObject);
begin
dmData.aquPersonel.First;
PersonelToText();
end;
procedure TfrmPersonel.ToolButton3Click(Sender: TObject);
begin
dmData.aquPersonel.Prior;
PersonelToText();
end;
procedure TfrmPersonel.ToolButton4Click(Sender: TObject);
begin
dmData.aquPersonel.Next;
PersonelToText();
end;
procedure TfrmPersonel.ToolButton5Click(Sender: TObject);
begin
dmData.aquPersonel.Last;
PersonelToText();
end;
procedure TfrmPersonel.ToolButton8Click(Sender: TObject);
begin
dmData.aquPersonel.Append;
PersonelToText();
end;
procedure TfrmPersonel.ToolButton14Click(Sender: TObject);
begin
dmData.aquPersonel.CancelBatch();
end;
procedure TfrmPersonel.ToolButton11Click(Sender: TObject);
begin
close;
end;
procedure TfrmPersonel.SaveToPersonel();
begin
with dmData do
begin
aquPersonelPersonID.Value:=edtPersonId.Text;
aquPersonelName.Value:=edtName.Text;
aquPersonelSex.Value:=icbSex.Text;
aquPersonelDept.Value:=cbDept.Text;
aquPersonelWorkType.Value:=cbWorkType.Text;
aquPersonelindate.Value:=dtIndate.Date;
aquPersonelBasepay.Value:=cedtBasepay.Value;
aquPersonelServiceAward.Value:=cedtServiceAward.Value;
aquPersonelSubsidy.Value:=cedtSubsidy.Value;
aquPersonelNotes.Value:=memNotes.Text;
end;
end;
procedure TfrmPersonel.PersonelToText();
begin
with dmData do
begin
edtPersonId.Text:=aquPersonelPersonId.Value;
edtName.Text:=aquPersonelName.Value;
icbSex.Text:=aquPersonelSex.Value;
cbDept.Text:=aquPersonelDept.Value;
cbWorkType.Text:=aquPersonelWorktype.Value;
dtIndate.Date:=aquPersonelIndate.Value;
cedtBasepay.Value:=aquPersonelBasepay.Value;
cedtServiceAward.Value:=aquPersonelServiceAward.Value;
cedtSubsidy.Value:=aquPersonelSubsidy.Value;
memNotes.Text:=aquPersonelNotes.Value;
end;
end;
procedure TfrmPersonel.ToolButton9Click(Sender: TObject);
begin
if not (dmData.aquPersonel.State in [dsInsert,dsEdit]) then dmData.aquPersonel.Edit;
SaveToPersonel();
dmData.aquPersonel.UpdateBatch();
MessageDlg('数据保存成功!',mtInformation,[mbOk],0);
end;
procedure TfrmPersonel.ToolButton10Click(Sender: TObject);
begin
if MessageDlg('确定删除此人员资料码?',mtConfirmation,[mbOk,mbCancel],0)=mrOk then
dmData.aquPersonel.Delete;
dmData.aquPersonel.UpdateBatch;
PersonelToText();
end;
procedure TfrmPersonel.FormShow(Sender: TObject);
begin
dmData.aquPersonel.Close;
dmData.aquPersonel.SQL.Clear;
dmData.aquPersonel.SQL.Text:='select * from Personel order by PersonId';
dmData.aquPersonel.Open;
PersonelToText();
end;
procedure TfrmPersonel.FormKeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then { 判断是按执行键}
if not (ActiveControl is TdxDbGrid) Then
Begin { 不是在TDbgrid控件内}
key:=#0;
perform(WM_NEXTDLGCTL,0,0);{移动到下一个控件}
end;
end;
procedure TfrmPersonel.FormCreate(Sender: TObject);
begin
if not dmData.atblWorkType.Active then dmData.atblWorkType.Open;
if not dmData.atblDept.Active then dmData.atblDept.Open;
end;
procedure TfrmPersonel.ToolButton12Click(Sender: TObject);
var
lcSearchID:string;
begin
if Application.FindComponent('frmChoicePerson')=nil then
Application.CreateForm(TfrmChoicePerson,frmChoicePerson);
if frmChoicePerson.ShowModal=mrOk then
begin
with dmData do
begin
lcSearchID:=aquPersonel.FieldByName('PersonId').Value;
aquPersonel.SQL.Clear;
aquPersonel.SQL.Text:='select * from Personel order by PersonId';
aquPersonel.Open;
aquPersonel.Locate('PersonID',lcSearchID,[loPartialKey]);
PersonelToText();
end;
end;
end;
procedure TfrmPersonel.grdPersonelChangeNode(Sender: TObject; OldNode,
Node: TdxTreeListNode);
begin
PersonelToText();
end;
procedure TfrmPersonel.ToolButton1Click(Sender: TObject);
begin
if dmData.aquPersonel.State in [dsEdit] then dmData.aquPersonel.Prior;
dmData.aquPersonel.CancelBatch();
PersonelToText();
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -