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

📄 datamodule.pas

📁 考勤管理系统
💻 PAS
字号:
unit DataModule;

interface

uses
  SysUtils, Windows, Classes, Graphics, Controls,
  Forms, Dialogs, DB, DBTables;

type
  TDataModuleKaoQin = class(TDataModule)
    TableKaoQinGongXuHao: TStringField;
    TableKaoQinYueFen: TStringField;
    TableKaoQinChuQin: TFloatField;
    TableKaoQinChiDao: TFloatField;
    TableKaoQinZaoTui: TFloatField;
    TableKaoQinQingJia: TFloatField;
    TableKaoQinKuangGong: TFloatField;
    DataSourceKaoQin: TDataSource;
    TableKaoQin: TTable;
    DataSourceGongZi: TDataSource;
    TableGongZi: TTable;
    TableJiBen: TTable;
    DataSourceJiBen: TDataSource;
    TableXiShu: TTable;
    DataSourceXiShu: TDataSource;
    TableGongZiGongXuHao: TStringField;
    TableGongZiYueFen: TStringField;
    TableGongZiJiangJin: TFloatField;
    TableGongZiChuQinTiaoZheng: TFloatField;
    TableGongZiYueGongZi: TFloatField;
    TableXiShuChuQinXiang: TStringField;
    TableXiShuTiaoZhengXiShu: TFloatField;
    TableJiBenGongXuHao: TStringField;
    TableJiBenXingMing: TStringField;
    TableJiBenBuMen: TStringField;
    TableJiBenLianXiFangShi: TStringField;
    TableJiBenJiBenGongZi: TFloatField;
    procedure DataModuleCreate(Sender: TObject);
    procedure TableKaoQinPostError(DataSet: TDataSet; E: EDatabaseError;
      var Action: TDataAction);
    procedure TableGongZiPostError(DataSet: TDataSet; E: EDatabaseError;
      var Action: TDataAction);
    procedure TableJiBenPostError(DataSet: TDataSet; E: EDatabaseError;
      var Action: TDataAction);
    procedure TableXiShuPostError(DataSet: TDataSet; E: EDatabaseError;
      var Action: TDataAction);
    procedure TableGongZiAfterInsert(DataSet: TDataSet);
  private
    { private declarations }
  public
    { public declarations }
  end;

var
  DataModuleKaoQin: TDataModuleKaoQin;

const
  eKeyViol = 9729;


implementation

{$R *.DFM}

procedure TDataModuleKaoQin.DataModuleCreate(Sender: TObject);
begin
  TableKaoQin.Open;
end;

procedure TDataModuleKaoQin.TableKaoQinPostError(DataSet: TDataSet;
  E: EDatabaseError; var Action: TDataAction);
begin
Try
   TableKaoQin.Cancel;
   Abort;
Finally
If (E Is EDBEngineError) Then
    If (E As EDBEngineError).Errors[0].Errorcode = eKeyViol Then
       MessageDlg('出现关键字重复记录!', mtWarning, [mbOK], 0);
End;
end;

procedure TDataModuleKaoQin.TableGongZiPostError(DataSet: TDataSet;
  E: EDatabaseError; var Action: TDataAction);
begin
Try
   TableKaoQin.Cancel;
   Abort;
Finally
If (E Is EDBEngineError) Then
    If (E As EDBEngineError).Errors[0].Errorcode = eKeyViol Then
       MessageDlg('出现关键字重复记录!', mtWarning, [mbOK], 0);
End;
end;

procedure TDataModuleKaoQin.TableJiBenPostError(DataSet: TDataSet;
  E: EDatabaseError; var Action: TDataAction);
begin
Try
   TableKaoQin.Cancel;
   Abort;
Finally
If (E Is EDBEngineError) Then
    If (E As EDBEngineError).Errors[0].Errorcode = eKeyViol Then
       MessageDlg('出现关键字重复记录!', mtWarning, [mbOK], 0);
End;
end;

procedure TDataModuleKaoQin.TableXiShuPostError(DataSet: TDataSet;
  E: EDatabaseError; var Action: TDataAction);
begin
Try
   TableKaoQin.Cancel;
   Abort;
Finally
If (E Is EDBEngineError) Then
    If (E As EDBEngineError).Errors[0].Errorcode = eKeyViol Then
       MessageDlg('出现关键字重复记录!', mtWarning, [mbOK], 0);
End;
end;

procedure TDataModuleKaoQin.TableGongZiAfterInsert(DataSet: TDataSet);
begin
    TableGongZi.FieldByName('JiangJin').AsFloat:=0;
    TableGongZi.FieldByName('ChuQinTiaoZheng').AsFloat:=0;
    TableGongZi.FieldByName('YueGongZi').AsFloat:=0;
end;

end.

⌨️ 快捷键说明

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