【delphi开源代码栏目提醒】:网学会员鉴于大家对delphi开源代码十分关注,论文会员在此为大家搜集整理了“bjjz.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.