⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 uffxtgl.pas

📁 行业应急系统 包括: 应急系统(待遇核发) 发放系统 开发环境:Delphi5 (sp1)+ Oracle 8.05 MultiExport是一个可以将数据按指定字段倒出
💻 PAS
📖 第 1 页 / 共 2 页
字号:
    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 + -