📄 u_bmbm.pas
字号:
exit;
//如果删除的是第二级目录
if mynode.level = 2 then
begin
if DM.ADO_BMBMK.recordcount <> 0 then
begin
if Application.messagebox('请确认是否要删除,并且子目录也将被删除', '材料租赁系统', mb_iconinformation + mb_yesno) = idyes then
begin
DM.ADO_BMBMK.Delete;
// DM.tbbmbmk.applyupdates(0);
Treeview.Items.delete(mynode);
end;
end
else
begin
Application.messagebox('已无记录可删除', '材料租赁系统', mb_iconinformation + mb_defbutton1);
exit;
end;
EXIT;
end;
//如果删除是第一级目录,还得删除第二级目录
if mynode.level = 1 then
begin
{ DM.tbbmbmk.filter := 'substring(bmbh,1,2)=' + '''' + copy(mynode.text, 2, 2) + '''';
DM.tbbmbmk.filtered := true;
DM.tbbmbmk.first;}
if DM.ADO_BMBMK.recordcount <> 0 then
begin
if Application.messagebox('请确认是否要删除,并且子目录也将被删除', '材料租赁系统', mb_iconinformation + mb_yesno) = idyes then
begin
s_value :=copy(mynode.text, 2, 2);
deledata('bmbh','bmbmk',s_value,frmmain.adoqytmp);
DM.ADO_BMBMK.Close ;
DM.ADO_BMBMK.Open ;
Treeview.Items.delete(mynode);
end;
end
else
begin
Application.messagebox('已无记录可删除', '材料租赁系统', mb_iconinformation + mb_defbutton1);
exit;
end;
DM.ADO_BMBMK.filtered := false;
end;
end;
//恢复
procedure TfrmBmda.N_cancelClick(Sender: TObject);
begin
DM.ADO_BMBMK.cancel;
//设置组件的有效性
button_valid;
end;
//保存
procedure TfrmBmda.N_saveClick(Sender: TObject);
var
s_bm, s_mc: string;
begin
if Node_Parent.level = 0 then
begin
if length(trim(DBEdt_Bmbm.text)) <> 2 then
begin
Application.messagebox('编码应为两位', '材料租赁系统', mb_iconinformation + mb_defbutton1);
exit;
end;
end;
if Node_Parent.level = 1 then
begin
if copy(DBEdt_Bmbm.text, 1, 2) <> copy(Node_Parent.text, 2, 2) then
begin
Application.messagebox('前面两位不能变,请确认!', '材料租赁系统', mb_iconinformation + mb_defbutton1);
DBEdt_Bmbm.text := copy(Node_Parent.text, 2, 2);
exit;
end;
if length(trim(DBEdt_Bmbm.text)) <> 5 then
begin
Application.messagebox('编码应为五位', '材料租赁系统', mb_iconinformation + mb_defbutton1);
exit;
end;
end;
s_bm := DBEdt_Bmbm.text;
s_mc := DBEdt_Bmmc.text;
//查找重复编号
if DM.ADO_BMBMK.state = dsinsert then
begin
if findundo('bmbh','bmbmk',s_bm,frmmain.adoqytmp ) then
begin
application.MessageBox('部门编码已重复', '材料租赁系统', mb_iconinformation + mb_defbutton1);
pagecontrol1.ActivePageIndex := 0;
DBEdt_Bmbm.SetFocus;
exit;
end;
end;
//判断是添加数据的保存还是编辑数据保存
if b_pd = true then
Treeview.items.addchild(Node_Parent, '(' + s_bm + ') ' + s_mc)
else
Node_Child.Text := '(' + s_bm + ') ' + s_mc;
DM.ADO_BMBMK.post;
//设置按扭的有效性
button_valid;
end;
//刷新
procedure TfrmBmda.N_refreshClick(Sender: TObject);
begin
refreshTree;
Treeview.TopItem.selected := true;
end;
//TreeViewClick根据部门编码来定位数据集,从而实现数据的联动
procedure TfrmBmda.TreeViewClick(Sender: TObject);
var
mynode: Ttreenode;
s_value_1: string;
begin
if Treeview.Items.Count = 0 then
exit;
mynode := Treeview.selected;
//如果是在目录树的第一级,代表是第一级部门,它的部门编码只有两位
if mynode.Level = 1 then
begin
//从目录树的节点标题中,提取部门编码
s_value_1 := copy(mynode.text, 2, 4);
// DM.tbbmbmk.IndexFieldNames := 'bmbh';
DM.ADO_BMBMK.Locate('BMBH',s_value_1,[LOCASEINSENSITIVE]);
//DM.tbbmbmk.findkey([s_value_1]);
DM.ADO_BMBMK.FieldByName('bmbh').editmask := '9999;1;_';
end;
//如果是在目录树的第二级,代表是第二级部门,它的部门编码有五位
if mynode.Level = 2 then
begin
//从目录树的节点标题中,提取部门编码
s_value_1 := copy(mynode.text, 2, 5);
// DM.tbbmbmk.IndexFieldNames := 'bmbh';
DM.ADO_BMBMK.Locate('BMBH',s_value_1,[LOCASEINSENSITIVE]);
// DM.tbbmbmk.FindKey([s_value_1]);
DM.ADO_BMBMK.FieldByName('bmbh').editmask := '99-999;1;_';
end;
end;
//排序
procedure TfrmBmda.N_OrderClick(Sender: TObject);
//var
// vs_value: string;
// vi, i: integer;
begin
{ application.createform(TfrmSzcx, frmSzcx);
frmSzcx.srclist.items.add('部门编码');
frmSzcx.srclist.items.add('bmjc')
frmSzcx.srclist.items.add('部门名称');
frmSzcx.srclist.items.add('负责人姓名');
frmSzcx.srclist.items.add('部门属性');
frmSzcx.srclist.items.add('联系电话');
frmSzcx.srclist.items.add('地址');
try
frmSzcx.showmodal;
finally
if Ordered then
begin
vi := frmSzcx.DstList.Items.Count;
if vi > 0 then
begin
vs_value := frmSzcx.dstlist.items[0];
end;
for i := 2 to vi do
begin
vs_value := vs_value + ';' + frmSzcx.dstlist.items[i - 1];
end;
DM.CDS_BMDA.IndexFieldNames := vs_value;
end;
frmSzcx.free;
end;}
end;
//打印
procedure TfrmBmda.N_PrintClick(Sender: TObject);
var
frmPrint:TfrmPrint;
begin
CurrentParam.PrintTitle :=CurrentParam.name+'('+Caption+')';
frmPrint:=TfrmPrint.Create(self);
frmPrint.ShowModal;
frmPrint.Free ;
if CurrentParam.bprint then
ExportDataToExecel(dbgrid,CurrentParam.PrintTitle,CurrentParam.UserName,CurrentParam.printDate );
{ //打开通用报表窗体
application.createform(TfrmPrint, frmPrint);
with frmPrint do
begin
//添加打印的字段头
srclist.items.add('部门编码');
srclist.items.add('部门名称');
srclist.items.add('负责人姓名');
srclist.items.add('部门属性');
srclist.items.add('联系电话');
srclist.items.add('地址');
srclist.items.add('备注');
//设置表名
vps_tablename := 'WZ_BMDA';
//设置过滤条件
vps_filter := DM.CDS_BMDA.Filter;
//设置排序索引
vps_index := DM.CDS_BMDA.IndexFieldNames;
edtPrintTitle.Text := '部门列表';
try
showmodal;
finally
free;
end;
end; }
end;
procedure TfrmBmda.DBGridTitleClick(Column: TColumn);
begin
//调用u_public单元的DBGridSort按表格的列字段排序
DBGridSort(dbgrid, column);
end;
procedure TfrmBmda.n_closeClick(Sender: TObject);
begin
close;
end;
procedure TfrmBmda.btn_deleteClick(Sender: TObject);
begin
if DM.ADO_BMBMK.recordcount <> 0 then
begin
if Application.messagebox('请确认是否要删除,并且子目录也将被删除', '材料租赁系统', mb_iconinformation + mb_yesno) = idyes then
begin
DM.ADO_BMBMK.Delete;
refreshTree;
end;
end else
begin
Application.messagebox('已无记录可删除', '材料租赁系统', mb_iconinformation + mb_defbutton1);
exit;
end;
end;
procedure TfrmBmda.btn_editClick(Sender: TObject);
begin
if DM.ADO_BMBMK.recordcount <> 0 then
begin
DM.ADO_BMBMK.edit;
//设置按扭的有效性
button_valid;
end
else
begin
Application.messagebox('已无记录可编辑!', '材料租赁系统', mb_iconinformation + mb_defbutton1);
exit;
end;
end;
procedure TfrmBmda.FormCreate(Sender: TObject);
begin
top:=0;
left:=0;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -