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

📄 unit_kaibiaojl.pas

📁 招投标软件代码,很有应用价值,请大家参考下哦,不明白的地方给我留言
💻 PAS
📖 第 1 页 / 共 3 页
字号:
unit Unit_Kaibiaojl;

interface

uses
  unit_parentform,Dialogs,forms,SysUtils,DB, ADODB,windows,controls;

type
  Tfrm_Kaibiaojl = class(TFrm_ParentForm)
    procedure FormCreate(Sender: TObject);
    procedure Com_xmnameChange(sender:Tobject);
    procedure Com_zhaoBiaoChange(Sender:Tobject);
    procedure Com_GclxnameChange(Sender: TObject);
    procedure com_projectchange(sender:tobject);
    procedure bb_reflashclick(Sender:Tobject);
    procedure Btn_xiangxiclick(Sender:Tobject);
    procedure Cell1MouseLClick(Sender: TObject; col, row,updn: Integer);
    procedure Cell1MouseRClick(Sender: TObject; col, row,updn: Integer);
    procedure Cell1EditFinish(Sender: TObject;var text: WideString; var approve: Integer);
    procedure GetBiaoDuan;
    procedure GetINfor;
    procedure LoadSJSource;
    procedure BitBtn2Click(Sender:TObject);
    private
      ecol:string;
      sjSource:Integer;//判断是录入数据还是在载入数据:0:录入,1:载入
  end;

var
  frm_Kaibiaojl:Tfrm_Kaibiaojl;

implementation

uses
  unit_public,SystemObject,DataModule,DataAccessCommonShell;

procedure Tfrm_Kaibiaojl.GetBiaoDuan;
var
  adoquery:tadoquery;
  str:string;
  I:Integer;
begin
  com_project.Items.Clear;
  com_project.Text:='请选择';
  adoquery:=tadoquery.Create(nil);
  try
    adoquery.Close;
    adoquery.Connection:=datamodule1.ADOMainConn;
    adoquery.SQL.Text:='select bd_name from bid_biaoduan_xinxi where xmgczb_id in (select xmgczb_id from bid_xmgczb '
              +' where xm_isbn='''+trim(xmbdgc.XM_ISBn)+''' and gclx_id='+xmbdgc.gCLX_ID
              +' and zblx_id='+xmbdgc.BDLX_ID+') order by bd_bianhao';
    adoquery.Open;
    adoquery.First;
    for i:=0 to adoquery.RecordCount-1 do
    begin
      com_project.Items.Add(adoquery.fieldbyname('bd_name').asstring);
      adoquery.Next;
    end;
  finally
    freeandnil(adoquery);
  end;
  if  trim(com_zhaobiao.text)='施工' then
  begin
    if cell1.OpenFile(SPATH+'report\shigong\pingbiao\kbjl.cll','')<>1 then
       showmessage('文件打开错误');
  end
  else if  trim(com_zhaobiao.text)='监理' then
  begin
    if cell1.OpenFile(SPATH+'report\jianli\pingbiao\kbjl.cll','')<>1 then
       showmessage('文件打开错误');
  end
  else if  trim(com_zhaobiao.text)='设计' then
  begin
    if cell1.OpenFile(SPATH+'report\sheji\pingbiao\kbjl.cll','')<>1 then
       showmessage('文件打开错误');
    sjSource:=0;
  end;
  cell1.ShowSideLabel(0, 0); //不显示行标
  cell1.ShowTopLabel(0, 0);  //不显示列标
end;

procedure Tfrm_Kaibiaojl.FormCreate(Sender: TObject);
var
  adoquery:tadoquery;
begin
  GetItems(com_xmname,com_zhaobiao,com_gclxname,2);
  inherited;
  panel2.Caption:='开标记录';
  caption:='开标记录';
  panel1.Visible:=true;
  com_leibie.Visible:=false;
  label1.Caption:='选择标段';
  btn_xiangxi.Visible:=true;
  btn_xiangxi.Left:=com_leibie.Left;
  btn_xiangxi.Caption:='载入数据';
  btn_xiangxi.OnClick:=Btn_xiangxiclick;
  BitBtn2.OnClick:=BitBtn2Click;
  cell1.OnEditFinish:=cell1EditFinish;
  bb_reflash.visible:=true;
  bb_reflash.onclick:=bb_reflashclick;
  cell1.OnMouseLClick:=Cell1MouseLClick;
  cell1.OnMouseRClick:=Cell1MouseRClick;
  GetBiaoDuan;
end;

procedure Tfrm_kaibiaojl.bb_reflashclick(Sender:Tobject);
begin
  if (com_zhaobiao.Text='施工') or (com_zhaobiao.Text='监理') then
    GetINfor
  else if com_zhaobiao.Text='设计' then
  begin
    sjSource:=0;
    LoadSjSource;
  end;
end;

procedure Tfrm_kaibiaojl.Btn_xiangxiclick(Sender:Tobject);
var
  adoquery:tadoquery;
begin
  if (com_zhaobiao.Text='施工') or (com_zhaobiao.Text='监理') then
  begin
    if application.MessageBox('该操作将要重新加载数据,该项目后面数据将需要你再次重新录入','请确认',MB_YESNO)<>mryes then exit;
    adoquery:=tadoquery.Create(nil);
    try
      adoquery.Close;
      adoquery.Connection:=datamodule1.ADOMainConn;
      datamodule1.ADOMainConn.BeginTrans;
      try
        adoquery.SQL.Text:='delete from bid_pingbiao where bd_isbn in (select bd_isbn from bid_biaoduan_xinxi where xmgczb_id in '
           +' (select xmgczb_id from bid_xmgczb '+' where xm_isbn='''+trim(xmbdgc.XM_ISBn)+''' and gclx_id='+xmbdgc.gCLX_ID
           +' and zblx_id='+xmbdgc.BDLX_ID+') and bd_name='''+trim(com_project.Text)+''')'
           +' insert into bid_pingbiao(dw_id,bd_isbn,pb_baozhengjin) select dw_id,bd_isbn,1 from bid_wenjian2 where wj2_leixing=2 and bd_isbn in '
           +' (select bd_isbn bd_isbn from bid_biaoduan_xinxi where xmgczb_id in (select xmgczb_id  from bid_xmgczb '
           +' where xm_isbn='''+trim(xmbdgc.XM_ISBn)+''' and gclx_id='+xmbdgc.gCLX_ID +' and zblx_id='
           +xmbdgc.BDLX_ID+') and bd_name='''+trim(com_project.Text)+''') order by bd_isbn ';
        adoquery.ExecSQL;
        datamodule1.ADOMainConn.CommitTrans;
      except
        datamodule1.ADOMainConn.RollbackTrans;
      end;
    finally
      freeandnil(adoquery);
    end;
    GetINfor;
    //btn_xiangxi.Enabled:=False; //对载入数据进行控制,(因为只有一页,可以削掉)
  end
  else if com_zhaobiao.Text='设计' then
  begin
    sjSource:=1;
    LoadSJSource;
  end;
end;


procedure Tfrm_kaibiaojl.Cell1MouseLClick(Sender: TObject; col, row,updn: Integer);
var
  adoquery:tadoquery;
  baozhengjin:Integer;
begin
  if updn=0 then exit;
  //if cell1.GetCurrentCol=1 then
  ecol:=cell1.getcellstring(col,row,cell1.GetCurSheet);
  if (row<6)  then exit;
  if (updn=0) and (col=5) then
  begin
    if cell1.GetCellString(col,row,0)='√' then
    begin
      baozhengjin:=1;
      cell1.SetCellString(col,row,0,'×');
    end
    else if cell1.GetCellString(col,row,0)='×' then
    begin
      baozhengjin:=0;
      cell1.SetCellString(col,row,0,'√');
    end;
    adoquery:=tadoquery.Create(nil);
    try
      adoquery.Connection:=datamodule1.ADOMainConn;
      datamodule1.ADOMainConn.BeginTrans;
      try
        adoquery.SQL.Text:='update bid_pingbiao set pb_baozhengjin='''+inttostr(baozhengjin)
           +''' where bd_isbn in (select bd_isbn FROM bid_biaoduan_xinxi where xmgczb_id in '
           +' (select xmgczb_id from bid_xmgczb '+' where xm_isbn='''+trim(xmbdgc.XM_ISBn)+''' and gclx_id='+xmbdgc.gCLX_ID
           +' and zblx_id='+xmbdgc.BDLX_ID+') and bd_name='''+com_project.Text+''') and dw_id in (select dw_id from bid_danwei_xinxi '
           +' where dw_name='''+trim(cell1.GetCellString(2,row,0))+''')';
        adoquery.ExecSQL;
        datamodule1.ADOMainConn.CommitTrans;
      except
        datamodule1.ADOMainConn.RollbackTrans;
      end;
    finally
      freeandnil(adoquery);
    end;
  end;
end;

procedure Tfrm_kaibiaojl.Cell1MouseRClick(Sender: TObject; col, row,updn: Integer);
begin
  if updn=0 then exit;
  //if cell1.GetCurrentCol=1 then
  ecol:=cell1.getcellstring(col,row,cell1.GetCurSheet);
end;

procedure Tfrm_Kaibiaojl.Com_xmnameChange(sender:Tobject);
begin
  inherited;
  GetBiaoDuan;
end;

procedure Tfrm_Kaibiaojl.Com_zhaoBiaoChange(Sender:Tobject);
begin
  inherited;
  GetBiaoDuan;
end;

procedure Tfrm_Kaibiaojl.Com_GclxnameChange(Sender: TObject);
begin
  inherited;
  GetBiaoDuan;
end;

procedure Tfrm_Kaibiaojl.Cell1EditFinish(Sender: TObject;var text: WideString; var approve: Integer);
var
  adoquery:tadoquery;
  nowrow,nowcol:Integer;
  Maxxuhao,ssql:string;
begin
  inherited;
  if (com_zhaobiao.Text='施工') or (com_zhaobiao.Text='监理') then
  begin
    nowrow:=cell1.GetCurrentRow;
    nowcol:=cell1.GetCurrentCol;
    if trim(cell1.GetCellString(nowcol,nowrow,0))=ecol then exit;
    if (nowrow<6) or (nowcol=2) or (nowcol=5) then exit;


    if nowcol=1 then
    begin
      IF trim(cell1.GetCellString(nowcol,nowrow,0))='' THEN EXIT;
      if (cell1.getcellstring(1,nowrow,0)=ecol) or (trim(cell1.getcellstring(1,nowrow,0))='') then exit;
      IF ECOL='' THEN ECOL:='1';
      adoquery:=tadoquery.Create(nil);
      try
        adoquery.Close;
        adoquery.Connection:=datamodule1.ADOMainConn;
        if ecol<>'' then
        begin
          if cell1.getcellstring(1,nowrow,0)<>ecol then
          begin
            ssql:=' if (select count(*) from bid_pingbiao where bd_isbn in (select bd_isbn FROM bid_biaoduan_xinxi where xmgczb_id in '
                +' (select xmgczb_id from bid_xmgczb '+' where xm_isbn='''+trim(xmbdgc.XM_ISBn)+''' and gclx_id='+xmbdgc.gCLX_ID
                +' and zblx_id='+xmbdgc.BDLX_ID+') and bd_name='''+com_project.Text+''') and pb_xuhao='
                +trim(cell1.GetCellString(nowcol,nowrow,0))+')>0  begin';

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -