📄 uffxtgl.pas
字号:
begin
ChildNode := TreeView1.Items.AddChildObject(
RootNode,
'[' + qryDWINFO.FieldByName('DWDM').AsString + ']' +
qryDWINFO.FieldByName('DWMC').AsString,
Pointer(qryDWINFO.FieldByName('SSDWID').AsInteger));
ChildNode.ImageIndex := 2;
ChildNode.SelectedIndex := 3;
qryDWINFO.Next;
end;
qryDWINFO.Close;
RootNode := TreeView1.Items.Add(nil, '中行');
RootNode.ImageIndex := 0;
RootNode.SelectedIndex := 1;
//添加单位项
qryDWINFO.SQL.Clear;
qryDWINFO.SQL.Add('select D.dwmc,D.ssdwid,D.sshy,DM.DMMC,D.DWDM from tff_DWXX D,tDMB DM');
qryDWINFO.SQL.Add('where D.sshy=DM.dm and DM.ZDBZ=''SSHY'' and DM.DMMC=''中行''');
qryDWINFO.SQL.Add('and d.dwid_ff=d.ssdwid');
qryDWINFO.SQL.Add('order by D.dwdm');
qryDWINFO.Open;
while not qryDWINFO.Eof do
begin
ChildNode := TreeView1.Items.AddChildObject(
RootNode,
'[' + qryDWINFO.FieldByName('DWDM').AsString + ']' +
qryDWINFO.FieldByName('DWMC').AsString,
Pointer(qryDWINFO.FieldByName('SSDWID').AsInteger));
ChildNode.ImageIndex := 2;
ChildNode.SelectedIndex := 3;
qryDWINFO.Next;
end;
qryDWINFO.Close;
RootNode := TreeView1.Items.Add(nil, '有色');
RootNode.ImageIndex := 0;
RootNode.SelectedIndex := 1;
//添加单位项
qryDWINFO.SQL.Clear;
qryDWINFO.SQL.Add('select D.dwmc,D.ssdwid,D.sshy,DM.DMMC,D.DWDM from tff_DWXX D,tDMB DM');
qryDWINFO.SQL.Add('where D.sshy=DM.dm and DM.ZDBZ=''SSHY'' and DM.DMMC=''有色''');
qryDWINFO.SQL.Add('and d.dwid_ff=d.ssdwid');
qryDWINFO.SQL.Add('order by D.dwdm');
qryDWINFO.Open;
while not qryDWINFO.Eof do
begin
ChildNode := TreeView1.Items.AddChildObject(
RootNode,
'[' + qryDWINFO.FieldByName('DWDM').AsString + ']' +
qryDWINFO.FieldByName('DWMC').AsString,
Pointer(qryDWINFO.FieldByName('SSDWID').AsInteger));
ChildNode.ImageIndex := 2;
ChildNode.SelectedIndex := 3;
qryDWINFO.Next;
end;
qryDWINFO.Close;
RootNode := TreeView1.Items.Add(nil, '中建');
RootNode.ImageIndex := 0;
RootNode.SelectedIndex := 1;
//添加单位项
qryDWINFO.SQL.Clear;
qryDWINFO.SQL.Add('select D.dwmc,D.ssdwid,D.sshy,DM.DMMC,D.DWDM from tff_DWXX D,tDMB DM');
qryDWINFO.SQL.Add('where D.sshy=DM.dm and DM.ZDBZ=''SSHY'' and DM.DMMC=''中建''');
qryDWINFO.SQL.Add('and d.dwid_ff=d.ssdwid');
qryDWINFO.SQL.Add('order by D.dwdm');
qryDWINFO.Open;
while not qryDWINFO.Eof do
begin
ChildNode := TreeView1.Items.AddChildObject(
RootNode,
'[' + qryDWINFO.FieldByName('DWDM').AsString + ']' +
qryDWINFO.FieldByName('DWMC').AsString,
Pointer(qryDWINFO.FieldByName('SSDWID').AsInteger));
ChildNode.ImageIndex := 2;
ChildNode.SelectedIndex := 3;
qryDWINFO.Next;
end;
qryDWINFO.Close;
RootNode := TreeView1.Items.Add(nil, '铁道');
RootNode.ImageIndex := 0;
RootNode.SelectedIndex := 1;
//添加单位项
qryDWINFO.SQL.Clear;
qryDWINFO.SQL.Add('select D.dwmc,D.ssdwid,D.sshy,DM.DMMC,D.DWDM from tff_DWXX D,tDMB DM');
qryDWINFO.SQL.Add('where D.sshy=DM.dm and DM.ZDBZ=''SSHY'' and DM.DMMC=''铁道''');
qryDWINFO.SQL.Add('and d.dwid_ff=d.ssdwid');
qryDWINFO.SQL.Add('order by D.dwdm');
qryDWINFO.Open;
while not qryDWINFO.Eof do
begin
ChildNode := TreeView1.Items.AddChildObject(
RootNode,
'[' + qryDWINFO.FieldByName('DWDM').AsString + ']' +
qryDWINFO.FieldByName('DWMC').AsString,
Pointer(qryDWINFO.FieldByName('SSDWID').AsInteger));
ChildNode.ImageIndex := 2;
ChildNode.SelectedIndex := 3;
qryDWINFO.Next;
end;
qryDWINFO.Close;
finally
qryDWINFO.Close;
qryDWINFO.Free; ;
end;
TreeView1.FullCollapse;
TreeView1.Show;
//选取第一个节点为主节点
if TreeView1.Items.Count <> 0 then
TreeView1.Items[0].Selected := True;
end;
procedure TfrmFFXTGL.FormCreate(Sender: TObject);
begin
inherited;
pTreeRefresh;
sTitleName := '调整发放/应急系统的人员对应关系';
cmbInterface.Visible := False;
lblInterface.Visible := False;
btnInsert.Visible := False;
btnSave.Visible := False;
btnUndo.Visible := False;
btnDelete.Visible := False;
actInsert.Enabled := False;
actSave.Visible := False;
actUndo.Visible := False;
actDelete.Visible := False;
Self.navTemp.Visible := False;
end;
procedure TfrmFFXTGL.btnUnlinkClick(Sender: TObject);
begin
inherited;
//取消对应
end;
procedure TfrmFFXTGL.TreeView1Click(Sender: TObject);
begin
inherited;
//选择发放单位
if TreeView1.Selected.Level <> 0 then
begin
strDWID := IntToStr(Integer(TreeView1.Selected.Data));
with TQuery.Create(Self) do
try
DatabaseName := dfmMain.dbsMain.DatabaseName;
SQL.Add('SELECT DWMC,DWDM from tFF_DWXX where dwid_ff=''' + strDWID +
'''');
open;
strDWMC := FieldByName('DWMC').AsString;
strDWDM := FieldByName('DWDM').AsString;
finally
Free;
end;
//显示对应情况
with qryTemp do
begin
Close;
SQL.Clear;
Sql.Add('SELECT ');
Sql.Add(' tff_rydy.ryid_ff "发放系统|人员编号",');
Sql.Add('-- dwid_ff "发放系统|单位编号",');
Sql.Add(' tff_rydy.sfzh_ff "发放系统|身份证号",');
Sql.Add(' tff_rydy.xm_ff "发放系统|姓名",');
Sql.Add(' tff_rydy.ryid_yj "待遇核算系统|人员编号",');
Sql.Add(' tdwxx.dwdm "待遇核算系统|单位编号",');
Sql.Add(' tff_rydy.sfzh_yj "待遇核算系统|身份证号",');
Sql.Add(' tff_rydy.xm_yj "待遇核算系统|姓名",');
Sql.Add(' decode(tff_rydy.dyfs,');
Sql.Add(' 0,''正确对应'',');
Sql.Add(' 1,''应急系统无法对应'',');
Sql.Add(' 2,''身份证号不同'',');
Sql.Add(' 3,''姓名不同'',');
Sql.Add(' 4,''发放系统无法对应''');
Sql.Add(' ) "对应结果"');
Sql.Add(' FROM tff_rydy,tdwxx');
SQL.Add('WHERE tff_rydy.dwid_yj=tdwxx.dwid(+) and tff_rydy.dwid_ff=''' +
IntToStr(Integer(TreeView1.Selected.Data)) +
'''');
SQL.Add('AND dyfs<>0');
Sql.Add('ORDER BY dyfs, xm_yj, xm_ff');
Open;
end;
//显示对应情况
with TQuery.Create(Self) do
try
DatabaseName := dfmMain.dbsMain.DatabaseName;
Sql.Add('SELECT decode(dyfs,');
Sql.Add(' 0,''完全对应'',');
Sql.Add(' 1,''应急系统无法对应'',');
Sql.Add(' 2,''身份证号不同'',');
Sql.Add(' 3,''姓名不同'',');
Sql.Add(' 4,''发放系统无法对应''');
Sql.Add(' ) "对应方式",');
Sql.Add(' count(*)');
Sql.Add(' FROM tff_rydy');
SQL.Add('WHERE dwid_ff=''' + IntToStr(Integer(TreeView1.Selected.Data)) +
'''');
Sql.Add('group by dyfs');
open;
Panel1.Caption := '应急系统人员对应情况 ';
First;
while not EOF do
begin
Panel1.Caption := Panel1.Caption + Fields[0].AsString + ':' +
Fields[1].AsString + '人; ';
Next;
end;
finally
Free;
end;
end;
end;
procedure TfrmFFXTGL.Button1Click(Sender: TObject);
begin
if TreeView1.Selected.Level = 0 then
begin
gfShowError('请选择单位');
Exit;
end;
if gfShowQuestion('是否进行人员对应') = ID_OK then
begin
qryTemp.Close;
qryDo.Close;
with qryDo do
begin
sql.clear;
Sql.Add('BEGIN');
Sql.Add(' SIDB2000.sp_rydy(''' +
IntToStr(Integer(TreeView1.Selected.Data)) +
''');');
// Sql.Add(' COMMIT;');
Sql.Add('END;');
ExecSQL;
end;
TreeView1Click(Sender);
end;
end;
procedure TfrmFFXTGL.Button2Click(Sender: TObject);
begin
inherited;
// PrintOut.PageHeader.CenterText.Add('单位人员对应明细');
// PrintOut.Preview;
frmRep_Rydy := TfrmRep_Rydy.Create(Self);
try
//设置对应字段
with frmRep_Rydy do
begin
//发放系统-人员编号
QrDBText1.DataSet := qryTemp;
QrDBText1.DataField := qryTemp.Fields[0].FieldName;
//发放系统-姓名
QrDBText2.DataSet := qryTemp;
QrDBText2.DataField := qryTemp.Fields[2].FieldName;
//发放系统-身份证号
QrDBText3.DataSet := qryTemp;
QrDBText3.DataField := qryTemp.Fields[1].FieldName;
//应急系统-人员编号
QrDBText4.DataSet := qryTemp;
QrDBText4.DataField := qryTemp.Fields[3].FieldName;
//应急系统-单位代码
QrDBText5.DataSet := qryTemp;
QrDBText5.DataField := qryTemp.Fields[4].FieldName;
//应急系统-姓名
QrDBText6.DataSet := qryTemp;
QrDBText6.DataField := qryTemp.Fields[6].FieldName;
//应急系统-身份证号
QrDBText7.DataSet := qryTemp;
QrDBText7.DataField := qryTemp.Fields[5].FieldName;
//对应结果
QrDBText8.DataSet := qryTemp;
QrDBText8.DataField := qryTemp.Fields[7].FieldName;
//单位名称
dwmc.Caption := '单位名称:(' + strDWDM + ')' + strDWMC + ' (盖章)';
end;
frmRep_Rydy.QuickRep1.Preview;
finally
frmRep_Rydy.Free;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -