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

📄 bjjz.pas

📁 人力资源管理系统(Delphi程序)大家学习共勉
💻 PAS
字号:
unit bjjz;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls, DBCtrls, Mask, ComCtrls,
  HumanResourceControls, Grids, DBGrids, DB, ADODB;

type
  TFrmBjjz = class(TForm)
    GroupBox1: TGroupBox;
    GroupBox2: TGroupBox;
    DBGrid1: TDBGrid;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    DBDTPKsrq: TDBDateTimePicker;
    DBDTPJsrq: TDBDateTimePicker;
    DBNavigator1: TDBNavigator;
    Button1: TButton;
    ADODataSet1: TADODataSet;
    DataSource1: TDataSource;
    ADODataSet2: TADODataSet;
    DBLookupCmbJzbm: TDBLookupComboBox;
    DBLookupCmbJZGW: TDBLookupComboBox;
    ADODataSet1JZXX_GH: TWideStringField;
    ADODataSet1JZXX_GWDM: TWideStringField;
    ADODataSet1JZXX_BMDM: TWideStringField;
    ADODataSet1JZXX_KSSJ: TDateTimeField;
    ADODataSet1JZXX_ZZSJ: TDateTimeField;
    ADODataSet1JZXX_BMMC: TStringField;
    ADODataSet1JZXX_GWMC: TStringField;
    procedure FormCreate(Sender: TObject);
    procedure ADODataSet1NewRecord(DataSet: TDataSet);
    procedure ADODataSet1BeforePost(DataSet: TDataSet);
    procedure DBGrid1TitleClick(Column: TColumn);
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
    FGh:string;
    procedure setGh(value:string);


  public
    { Public declarations }
    property Gh:string read FGh write setGh ;
  end;

var
  FrmBjjz: TFrmBjjz;

implementation
uses
  dm;

{$R *.dfm}

procedure TFrmBjjz.setGh(value:string);
begin
  FGh := value;
  if trim(FGh) = '' then //工号为空
  begin
    ADODataSet1.Active := false;
  end
  else
  begin
    //下面查找是否有工号为FGh的员工
    ADODataSet2.Active := false;
    ADODataSet2.CommandText := 'select * from jbzl where trim(JBZL_GH)' +
          ' = ''' + trim(FGh) + '''';
    ADODataSet2.Active := true;
    if ADODataSet2.IsEmpty then //此员工不存在
    begin
      ShowMessage('未找到工号为' + FGh + '的员工');
      ADODataSet1.Active := false;
    end
    else   //存在此员工
    begin
      Caption := '编辑兼职信息:' +
        ADODataSet2.fieldbyName('JBZL_XM').AsString ;
      ADODataSet1.Active := false;
      ADODataSet1.CommandText := 'select * from jzxx where trim(Jzxx_Gh)' +
            ' = ''' + trim(FGh) + ''' order by Jzxx_KSSJ';
      ADODataSet1.Active := true;
    end;// if ADODataSet1.IsEmpty
  end; // if trim(FGh) <> ''
end;

procedure TFrmBjjz.FormCreate(Sender: TObject);
begin
  DBDTPKsrq.MaxDate := now;
  DBDTPJsrq.MaxDate := now;
end;

procedure TFrmBjjz.ADODataSet1NewRecord(DataSet: TDataSet);
begin
  ADODataSet1.Fields.FieldByName('JZXX_GH').Value := Gh;
end;

procedure TFrmBjjz.ADODataSet1BeforePost(DataSet: TDataSet);
begin
  if not DBDTPKsrq.Checked then
  begin
    ShowMessage('必须输入开始日期!');
    Abort ;
    DBDTPKsrq.SetFocus ;
    exit;
  end;

  if (DBDTPJsrq.Checked) and (DBDTPJsrq.Date < DBDTPKsrq.Date) then
  begin
    ShowMessage('结束日期必须晚于开始日期!');
    Abort ;
    DBDTPJsrq.SetFocus ;
    exit;
  end;

  if trim(DBLookupCmbJzbm.Text) = '' then
  begin
    ShowMessage('必须输入兼职部门!');
    Abort ;
    DBLookupCmbJzbm.SetFocus ;
    exit;
  end;

  if trim(DBLookupCmbJZGW.Text) = '' then
  begin
    ShowMessage('必须输入兼职岗位!');
    Abort ;
    DBLookupCmbJZGW.SetFocus ;
    exit;
  end;


end;

procedure TFrmBjjz.DBGrid1TitleClick(Column: TColumn);
var
  tempSortStr,FN:string;
begin
  FN := Column.FieldName;

  if trim(FN) = 'JZXX_BMMC' then
  begin
    FN := 'JZXX_BMDM';
  end;

  if trim(FN) = 'JZXX_GWMC' then
  begin
    FN := 'JZXX_GWDM';
  end;

  tempSortStr := ADODataSet1.Sort ;

  if tempSortStr = (FN + ' ASC') then
  begin
      ADODataSet1.Sort := FN + ' DESC';
  end
  else
  begin
    ADODataSet1.Sort := FN + ' ASC';
  end;
end;

procedure TFrmBjjz.Button1Click(Sender: TObject);
begin
  Close;
end;

end.

⌨️ 快捷键说明

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