📄 unemployee.pas
字号:
Tbnsv.Enabled:=True;
TbnFirst.Enabled:=False;
TbnPrior.Enabled:=False;
TbnNext.Enabled:=False;
TbnLast.Enabled:=False;
//showmessage(FormatMe(strtoint(edit2.Text),strtoint(edit1.Text)));
with dm.AQ1 do
begin
DM.AdoConn.BeginTrans;
DBGrid1.Enabled:=False;
Edit;
end;
end;
procedure TEmployee_Frm.TbndelClick(Sender: TObject);
var
adoq_tmp:TADOQuery;
begin
if not DelUser then exit;
with dm.AQ1 do
begin
if not Active then exit;
if RecordCount>0 then
begin
if fieldbyname('No').AsString=copy(UserName,1,4) then
begin
MessageBox(Handle,'用户自己不能删除自己','提示',MB_OK+MB_ICONINFORMATION);
Exit;
end;
if MessageBox(self.Handle,'你真的想删除么?','删除提示',MB_YESNO+MB_ICONQUESTION)=idyes then
begin
try
adoq_tmp:=TADOQuery.Create(self);
dm.AdoConn.BeginTrans;
adoq_tmp.Connection:=DM.AdoConn;
adoq_tmp.Close;
adoq_tmp.SQL.Text:='delete FROM T_NCPT where perno='+quotedstr(dm.aq1.fieldbyname('no').AsString);
adoq_tmp.ExecSQL;
adoq_tmp.Close;
adoq_tmp.SQL.text:='delete FROM t_bdata where perno='+quotedstr(dm.aq1.fieldbyname('no').AsString);
adoq_tmp.ExecSQL;
dm.AQ1.Delete;
dm.AQ1.Refresh;
dm.AdoConn.CommitTrans;adoq_tmp.Free;
with AdoRY do
begin
Active:=not Active;
SQL.Text:='select * from abc order by 人员编号';
Prepared:=True;
Open;
end;
listrec(dm.AQ1);
except
DM.AdoConn.RollbackTrans; adoq_tmp.Free;
MessageBox(self.Handle,'删除数据失败!','删除',MB_OK+MB_ICONINFORMATION);
end;
end;
end;
end;
end;
procedure TEmployee_Frm.listrec(adotmp: TADOQuery);
begin
with adotmp do
begin
if adotmp.Recordset.RecordCount <=0 then exit;
edit1.Text:=Fieldbyname('username').AsString;
edit2.Text:=Fieldbyname('Password').AsString;
edit3.Text:=fieldbyname('Prefession').AsString;
edit4.Text:=fieldbyname('Remark').AsString;
Cbx_Purview.ItemIndex:=fieldbyname('Purview').AsInteger;
try
AdoRY.RecNo:=RecNo;
Cbx_Dept.Text:=fieldbyname('DeptNo').AsString+'-'+AdoRY.fieldbyname('部门名称').AsString;
except
end;
end;
end;
procedure TEmployee_Frm.TbnFirstClick(Sender: TObject);
begin
dm.AQ1.First;
dm.AQ1.Refresh;
listrec(dm.AQ1);
end;
procedure TEmployee_Frm.TbnPriorClick(Sender: TObject);
begin
dm.AQ1.Prior;
dm.AQ1.Refresh;
listrec(dm.AQ1);
end;
procedure TEmployee_Frm.TbnNextClick(Sender: TObject);
begin
dm.AQ1.Next;
dm.AQ1.Refresh;
listrec(dm.AQ1);
end;
procedure TEmployee_Frm.TbnLastClick(Sender: TObject);
begin
dm.AQ1.Last;
dm.AQ1.Refresh;
listrec(dm.AQ1);
end;
procedure TEmployee_Frm.ToolButton15Click(Sender: TObject);
begin
Tbncel.Click;
Close;
end;
procedure TEmployee_Frm.TbncelClick(Sender: TObject);
begin
if (DM.AQ1.State in [dsInsert]) or (DM.AQ1.State in [dsEdit]) then
try
DBGrid1.Enabled:=True;
DM.AdoConn.Cancel;
if DM.AdoConn.InTransaction then
dm.AdoConn.RollbackTrans;
except
end;
tbnadd.Enabled:=True;
Tbnedt.Enabled:=True;
Tbnview.Enabled:=True;
Tbndel.Enabled:=True;
Tbncel.Enabled:=False;
Tbnsv.Enabled:=False;
TbnFirst.Enabled:=True;
TbnPrior.Enabled:=True;
TbnNext.Enabled:=True;
TbnLast.Enabled:=True;
end;
function TEmployee_Frm.ControlEdit: boolean;
begin
result:=True;
if edit1.Text='' then
begin
application.MessageBox('请输入用户名!','提示',MB_OK+MB_ICONINFORMATION);
edit1.SetFocus;
result:=False;
exit;
end;
if edit2.Text='' then
begin
application.MessageBox('请输入密码!','提示',MB_OK+MB_ICONINFORMATION);
edit1.SetFocus;
result:=False;
exit;
end;
if Cbx_Dept.Text='' then
begin
application.MessageBox('请选择部门!','提示',MB_OK+MB_ICONINFORMATION);
edit1.SetFocus;
result:=False;
exit;
end;
if Cbx_Purview.Text='' then
begin
application.MessageBox('请选择权限!','提示',MB_OK+MB_ICONINFORMATION);
edit1.SetFocus;
result:=False;
exit;
end;
if edit3.Text='' then
begin
application.MessageBox('请输入岗位!','提示',MB_OK+MB_ICONINFORMATION);
edit1.SetFocus;
result:=False;
exit;
end;
end;
procedure TEmployee_Frm.DBGrid1CellClick(Column: TColumn);
begin
if DS.DataSet.RecordCount<=0 then exit;
dm.AQ1.Locate('no',ds.DataSet.fieldbyname('人员编号').AsString,[loPartialKey]);
listrec(dm.AQ1);
end;
procedure TEmployee_Frm.DBGrid1DrawDataCell(Sender: TObject;
const Rect: TRect; Field: TField; State: TGridDrawState);
begin
{ if Field.FieldName='用户权限' then
begin
if Field.Value=1 then
field.Value:='高级用户'
else
field.Value:='普通用户';
end; }
end;
procedure TEmployee_Frm.AdoRYNewRecord(DataSet: TDataSet);
begin
//
end;
procedure TEmployee_Frm.AdoRYFilterRecord(DataSet: TDataSet;
var Accept: Boolean);
begin
//
end;
procedure TEmployee_Frm.AdoRYRecordChangeComplete(
DataSet: TCustomADODataSet; const Reason: TEventReason;
const RecordCount: Integer; const Error: Error;
var EventStatus: TEventStatus);
begin
//
end;
procedure TEmployee_Frm.AdoRYRecordsetChangeComplete(
DataSet: TCustomADODataSet; const Reason: TEventReason;
const Error: Error; var EventStatus: TEventStatus);
begin
//dm.AQ1.Locate('no',ds.DataSet.fieldbyname('人员编号').AsString,[loCaseInsensitive]);
//listrec(dm.AQ1);
end;
procedure TEmployee_Frm.AdoRYWillMove(DataSet: TCustomADODataSet;
const Reason: TEventReason; var EventStatus: TEventStatus);
begin
//dm.AQ1.Locate('no',ds.DataSet.fieldbyname('人员编号').AsString,[loCaseInsensitive]);
//listrec(dm.AQ1);
end;
procedure TEmployee_Frm.TbnviewClick(Sender: TObject);
begin
EmployeeFind_frm:=TEmployeeFind_frm.Create(nil);
EmployeeFind_frm.Show;
end;
procedure TEmployee_Frm.SpeedButton1Click(Sender: TObject);
begin
Dept_frm:=TDept_frm.Create(nil);
Dept_frm.Show;
end;
procedure TEmployee_Frm.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=cafree; Employee_Frm:=nil;
end;
procedure TEmployee_Frm.DBGrid1DrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumn;
State: TGridDrawState);
begin
if gdSelected in State then exit;
if AdoRY.RecNo mod 2 = 0 then
(Sender as TDBGrid).Canvas.Brush.Color := rgb(225,249,255)//rgb(253,255,253),clinfobk , RGB(226, 253, 254);
else
(Sender as TDBGrid).Canvas.Brush.Color := rgb(255,255,240);//
DBGrid1.DefaultDrawColumnCell(Rect,DataCol,Column,State);
end;
function TEmployee_Frm.DelUser: boolean;
var
ado_tmp:TADOQuery;
begin
if not AnsiContainsText(UserName,'admin') then
if dm.AQ1.FieldByName('purview').AsString='1' then
begin
Application.MessageBox('对不起,你的权限不够!','提示',MB_OK+MB_ICONINFORMATION);
Result:=False;
Exit;
end;
ado_tmp:=TADOQuery.Create(self);
with ado_tmp do
begin
try
Connection:=DM.AdoConn;
SQL.Text:='select * from T_employee where purview=1';
open;
If Recordset.RecordCount<=1 then begin
Application.MessageBox('不能删除此用户,系统至少保留一个高级用户!','提示',MB_OK+MB_ICONINFORMATION);
Result:=False;
end else Result:=True;
Free;
except
Result:=False;
Free;
end;
end;
end;
procedure TEmployee_Frm.Cbx_PurviewClick(Sender: TObject);
begin
if not AnsiContainsText(UserName,'admin') then
Cbx_Purview.ItemIndex:=0;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -