📄 zyxxwh.pas
字号:
unit Zyxxwh;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Controls, Forms, Dialogs, DB,
Grids, DBGrids, StdCtrls, ExtCtrls, GZGLCommon, ActnList, ADODB, Menus;
type
TZyxxwhForm = class(TForm)
dbZyxx: TDBGrid;
dsZyxx: TDataSource;
adotZyxx: TADOTable;
adoqGzjb: TADOQuery;
adotZyxxZybh: TStringField;
adotZyxxXm: TStringField;
adotZyxxXb: TStringField;
adotZyxxBmmc: TStringField;
adotZyxxGzzw: TStringField;
adotZyxxJbID: TIntegerField;
adotZyxxJbmc: TStringField;
pmZyxx: TPopupMenu;
pnDel: TMenuItem;
procedure FormCreate(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure pnDelClick(Sender: TObject);
procedure pmZyxxPopup(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
implementation
{$R *.dfm}
procedure TZyxxwhForm.FormCreate(Sender: TObject);
var
l_adoq: TADOQuery;
i: integer;
begin
// 取得adotZyxx的JbID字段的Lookup数据集
with adoqGzjb do
begin
Connection := AdoGzgl;
SQL.Text := 'Select * from Gzjb';
Open;
end;
// 打开职员信息表
with adotZyxx do
begin
Connection := AdoGzgl;
Open;
end;
// 初始化Grid
l_adoq := TADOQuery.Create(nil);
with l_adoq do
try
Connection := AdoGzgl;
l_adoq.SQL.Text := 'Select * from GzglField where GridName = ''dbZyxx''';
Open;
InitDBGrid(l_adoq, dbZyxx);
Close;
finally
Free;
end;
// 给性别字段赋备选值
for i := 0 to dbZyxx.Columns.Count - 1 do
begin
if dbZyxx.Columns[i].FieldName = 'Xb' then
begin
dbZyxx.Columns[i].PickList.Add('男');
dbZyxx.Columns[i].PickList.Add('女');
Break;
end;
end;
end;
procedure TZyxxwhForm.FormDestroy(Sender: TObject);
begin
with adotZyxx do
if Active then Close;
with adoqGzjb do
if Active then Close;
end;
procedure TZyxxwhForm.pnDelClick(Sender: TObject);
begin
if Application.MessageBox('是否删除此记录?', '确认', 1) = 1 then
begin
// 查询是否有工资记录,如有则不能删除
with TADOQuery.Create(nil) do
try
Connection := AdoGzgl;
Sql.Text := 'Select Zybh from Ydgz where Zybh = ' +
QuotedStr(adotZyxx.fieldByname('Zybh').AsString);
Open;
if Recordcount > 0 then
Application.MessageBox('该职员已有工资记录,不能删除!', '提示')
else
adotZyxx.Delete;
Close;
finally
Free;
end;
end;
end;
procedure TZyxxwhForm.pmZyxxPopup(Sender: TObject);
begin
pnDel.Enabled := not (adotZyxx.Bof and adotZyxx.Eof);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -