📄 unit_qingbiao.pas
字号:
begin
showmessage('文件打开错误');
exit;
end;
cell1.ShowSideLabel(0, 0); //不显示行标
cell1.ShowTopLabel(0, 0); //不显示列标
cell1.SetCellString(1,4,0,com_leibie.Text);
if com_zhuanjia.ItemIndex<8 then
begin
adoquery:=tadoquery.Create(nil);
try
adoquery.Close;
adoquery.Connection:=datamodule1.ADOMainConn;
adoquery.SQL.Text:='select dw_name,jlpf_gcs,jlpf_fzgcs,jlpf_zr,jlpf_zdgcs,jlpf_gjzdgcs,jlpf_zygcs,jlpf_jldg,jlpf_jyxy,'
+'jlpf_sb,(cast(isnull(jlpf_gcs,0) as decimal)+cast(isnull(jlpf_fzgcs,0) as decimal)+cast(isnull(jlpf_zr,0) as decimal)'
+'+cast(isnull(jlpf_gjzdgcs,0) as decimal)+cast(isnull(jlpf_zdgcs,0) as decimal)+cast(isnull(jlpf_zygcs,0) as decimal)+'
+'cast(isnull(jlpf_jldg,0) as decimal)+cast(isnull(jlpf_jyxy,0) as decimal)+cast(isnull(jlpf_sb,0) as decimal)) as total from bid_jl_jspf a,'
+'bid_danwei_xinxi b,bid_biaoduan_xinxi c where a.dw_id=b.dw_id and a.bd_isbn=c.bd_isbn and a.jlpf_renyuan='
+inttostr(com_zhuanjia.ItemIndex)
+' and c.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 c.bd_name='+quotedstr(trim(com_leibie.Text));
adoquery.Open;
adoquery.First;
for i:=0 to adoquery.RecordCount-1 do
begin
cell1.SetCellString(2+i,5,0,adoquery.fieldbyname('dw_name').AsString);
cell1.SetCellString(2+i,6,0,adoquery.fieldbyname('jlpf_gcs').AsString);
cell1.SetCellString(2+i,7,0,adoquery.fieldbyname('jlpf_fzgcs').AsString);
cell1.SetCellString(2+i,8,0,adoquery.fieldbyname('jlpf_zr').AsString);
cell1.SetCellString(2+i,9,0,adoquery.fieldbyname('jlpf_gjzdgcs').AsString);
cell1.SetCellString(2+i,10,0,adoquery.fieldbyname('jlpf_zdgcs').AsString);
cell1.SetCellString(2+i,11,0,adoquery.fieldbyname('jlpf_zygcs').AsString);
cell1.SetCellString(2+i,12,0,adoquery.fieldbyname('jlpf_jldg').AsString);
cell1.SetCellString(2+i,13,0,adoquery.fieldbyname('jlpf_jyxy').AsString);
cell1.SetCellString(2+i,14,0,adoquery.fieldbyname('jlpf_sb').AsString);
cell1.SetCellString(2+i,15,0,adoquery.fieldbyname('total').AsString);
adoquery.Next;
end;
except
freeandnil(adoquery);
end;
end;
if com_zhuanjia.ItemIndex=8 then
begin
adoquery:=tadoquery.Create(nil);
try
adoquery.Close;
adoquery.Connection:=datamodule1.ADOMainConn;
adoquery.SQL.Text:='select dw_name,cast(sum(cast(jlpf_gcs as decimal))/7 as decimal(15,2)) as jlpf_gcs,cast(sum(cast(jlpf_fzgcs as decimal))/7 as decimal(15,2)) as jlpf_fzgcs,'
+'cast(sum(cast(jlpf_zr as decimal))/7 as decimal(15,2)) as jlpf_zr,cast(sum(cast(jlpf_zdgcs as decimal))/7 AS Decimal(15,2)) as jlpf_zdgcs,'
+'CAST(sum(cast(jlpf_gjzdgcs as decimal))/7 as decimal(15,2)) as jlpf_gjzdgcs,cast(sum(cast(jlpf_zygcs as decimal))/7 as decimal(15,2)) as jlpf_zygcs,'
+'CAST(sum(cast(jlpf_jldg as decimal))/7 AS DECIMAL(15,2)) as jlpf_jldg,cast(sum(cast(jlpf_jyxy as decimal))/7 as decimal(15,2)) as jlpf_jyxy,'
+'cast(sum(cast(jlpf_sb as decimal))/7 as decimal(15,2)) as jlpf_sb,cast(sum((cast(isnull(jlpf_gcs,0) as decimal)+cast(isnull(jlpf_fzgcs,0) as decimal)+cast(isnull(jlpf_zr,0) as decimal)'
+'+cast(isnull(jlpf_gjzdgcs,0) as decimal)+cast(isnull(jlpf_zdgcs,0) as decimal)+cast(isnull(jlpf_zygcs,0) as decimal)+'
+'cast(isnull(jlpf_jldg,0) as decimal)+cast(isnull(jlpf_jyxy,0) as decimal)+cast(isnull(jlpf_sb,0) as decimal)))/7 AS DECIMAL(15,2)) as total from bid_jl_jspf a,'
+'bid_danwei_xinxi b,bid_biaoduan_xinxi c where a.dw_id=b.dw_id and a.bd_isbn=c.bd_isbn and a.jlpf_renyuan>0'
+' and c.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 c.bd_name='+quotedstr(trim(com_leibie.Text))+' group by dw_name';
adoquery.Open;
adoquery.First;
for i:=0 to adoquery.RecordCount-1 do
begin
cell1.SetCellString(2+i,5,0,adoquery.fieldbyname('dw_name').AsString);
cell1.SetCellString(2+i,6,0,adoquery.fieldbyname('jlpf_gcs').AsString);
cell1.SetCellString(2+i,7,0,adoquery.fieldbyname('jlpf_fzgcs').AsString);
cell1.SetCellString(2+i,8,0,adoquery.fieldbyname('jlpf_zr').AsString);
cell1.SetCellString(2+i,9,0,adoquery.fieldbyname('jlpf_gjzdgcs').AsString);
cell1.SetCellString(2+i,10,0,adoquery.fieldbyname('jlpf_zdgcs').AsString);
cell1.SetCellString(2+i,11,0,adoquery.fieldbyname('jlpf_zygcs').AsString);
cell1.SetCellString(2+i,12,0,adoquery.fieldbyname('jlpf_jldg').AsString);
cell1.SetCellString(2+i,13,0,adoquery.fieldbyname('jlpf_jyxy').AsString);
cell1.SetCellString(2+i,14,0,adoquery.fieldbyname('jlpf_sb').AsString);
cell1.SetCellString(2+i,15,0,adoquery.fieldbyname('total').AsString);
adoquery.Next;
end;
except
freeandnil(adoquery);
end;
end
end
else if com_zhaobiao.Text='设计' then
begin
if not DirectoryExists(GetFilePath) then
CreateDir(GetFilePath);
if not DirectoryExists(GetFilePath+'reports') then
createDir(GetFilePath+'reports');
if not fileexists(GetFilePath+'reports\zhuanjiadafen.cll') then
begin
CopyFile(Pchar(sPath+'report\sheji\pingbiao\zhuanjiadafen.cll'),Pchar(GetFilePath+'reports\zhuanjiadafen.cll'),false);
end;
if cell1.OpenFile(GetFilePath+'reports\zhuanjiadafen.cll','')<>1 then
begin
showmessage('文件打开错误');
exit;
end;
cell1.ShowSideLabel(0, 0); //不显示行标
cell1.ShowTopLabel(0, 0); //不显示列标
adoquery:=tadoquery.Create(nil);
try
adoquery.Close;
adoquery.Connection:=datamodule1.ADOMainConn;
adoquery.SQL.Text:='select a.bd_isbn,a.dw_name,sjzj_1,sjzj_2,sjzj_3,sjzj_4,sjzj_5,sjzj_6,sjzj_7,sjzj_8,sjzj_9,sjzj_10,'
+'sjzj_11,sjzj_12,sjzj_13,sjzj_14,sjzj_15,sjzj_16,sjzj_17,sjzj_18,sjzj_19,sjzj_20 from bid_sj_zjpf a,'
+'bid_sj_qingbiao b where a.dw_name=b.dw_name and a.bd_isbn=b.bd_isbn and sjzj_id='
+inttostr(com_zhuanjia.itemindex)+' and a.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_leibie.Text)+''')'
+' order by sj_xuhao';
adoquery.Open;
if adoquery.recordcount>0 then
begin
if adoquery.RecordCount<(cell1.GetCols(0)-5)/2 then
begin
cell1.DeleteCol(7,cell1.GetCols(0)-5-adoquery.RecordCount*2,0);
end;
adoquery.First;
for i:=0 to adoquery.RecordCount-1 do
begin
cell1.SetCellString(5+i*2,5,0,adoquery.fieldbyname('dw_name').AsString);
for j:=0 to cell1.GetRows(0)-8 do
begin
cell1.SetCellString(5+i*2,6+j,0,adoquery.fieldbyname('sjzj_'+inttostr(j+1)).asstring);
end;
GetSjdwdefen(5+i*2,0,'');
adoquery.Next;
end;
end;
finally
FreeAndNil(adoquery);
end;
end;
end;
procedure TFrm_qingbiao.Btn_xiangxiclick(Sender:Tobject);
var
adoquery:tadoquery;
i:Integer;
ssql,shenhebj:string;
begin
if com_leibie.Items.IndexOf(com_leibie.Text)<0 then
begin
showmessage('请选择标段');
exit;
end;
if com_zhaobiao.Text='施工' then
begin
if com_project.Items.IndexOf(com_project.Text)>0 then
begin
if application.MessageBox('该操作将要重新加载数据,该项目后面数据将需要你再次重新录入','请确认',MB_YESNO)<>mryes then exit;
end;
if com_project.ItemIndex=0 then
begin
ssql:='';
for i:=6 to cell1.GetRows(0)-1 do
begin
if trim(cell1.GetCellString(2,i,0))='' then break;
begin
try
if (strtofloat(cell1.GetCellString(5,i,0))<5) and (strtofloat(cell1.GetCellString(5,i,0))>=-15)
and (strtofloat(cell1.GetCellString(5,i,0))<>0) then
shenhebj:=cell1.GetCellString(4,i,0)
else
shenhebj:=cell1.GetCellString(3,i,0);
except
shenhebj:=cell1.GetCellString(3,i,0);
end;
ssql:=ssql+' update bid_pingbiao set pb_zuizhongbj='''+trim(shenhebj)+''',pb_suanshubj='''+trim(shenhebj)
+''',pb_pingbiaoj='''+trim(shenhebj)+''' where dw_id in (select dw_ID from '
+' bid_danwei_xinxi where dw_name='''+trim(cell1.GetCellString(2,i,0))+''') and 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_leibie.Text+''');';
end;
end;
if ssql<>'' then
begin
adoquery:=tadoquery.Create(nil);
try
adoquery.Close;
adoquery.Connection:=datamodule1.ADOMainConn;
datamodule1.ADOMainConn.BeginTrans;
try
adoquery.SQL.Text:=ssql;
adoquery.ExecSQL;
datamodule1.ADOMainConn.CommitTrans;
except
datamodule1.ADOMainConn.CommitTrans;
end;
finally
freeandnil(adoquery);
end;
end;
end;
if com_project.ItemIndex=3 then
begin
adoquery:=TADOQUERY.Create(nil);
try
adoquery.Close;
adoquery.Connection:=datamodule1.ADOMainConn;
datamodule1.ADOMainConn.BeginTrans;
try
adoquery.SQL.Text:='exec PB_CREATE_BAOZHENGJIN '''+trim(xmbdgc.XM_ISBn)+''','+xmbdgc.gCLX_ID+','+xmbdgc.BDLX_ID;
ADOQUERY.ExecSQL;
datamodule1.ADOMainConn.CommitTrans;
except
datamodule1.ADOMainConn.RollbackTrans;
end;
finally
freeandnil(adoquery);
end;
end;
if com_project.Itemindex=4 then
begin
adoquery:=tadoquery.Create(nil);
try
adoquery.close;
adoquery.Connection:=datamodule1.ADOMainConn;
datamodule1.ADOMainConn.BeginTrans;
try
adoquery.SQL.Text:='exec pb_create_pbfhx '''+trim(com_leibie.Text)+''','''+trim(xmbdgc.XM_ISBn)+''','+xmbdgc.gCLX_ID+','+xmbdgc.BDLX_ID;
adoquery.ExecSQL;
datamodule1.ADOMainConn.CommitTrans;
except
datamodule1.ADOMainConn.RollbackTrans;
end;
finally
freeandnil(adoquery);
end;
end;
if com_project.ItemIndex=5 then
begin
adoquery:=tadoquery.Create(nil);
try
adoquery.Close;
adoquery.Connection:=datamodule1.ADOMainConn;
datamodule1.ADOMainConn.BeginTrans;
try
adoquery.SQL.Text:='exec pb_create_pbqzx '''+trim(com_leibie.Text)+''','''+trim(xmbdgc.XM_ISBn)+''','+xmbdgc.gCLX_ID+','+xmbdgc.BDLX_ID;
adoquery.ExecSQL;
datamodule1.ADOMainConn.CommitTrans;
except
datamodule1.ADOMainConn.RollbackTrans;
end;
except
freeandnil(adoquery);
end;
end;
end
else if com_zhaobiao.Text='监理' then
begin
if application.MessageBox('该操作将要重新加载数据,该项目后面数据将需要你再次重新录入','请确认',MB_YESNO)<>mryes then exit;
if com_project.ItemIndex=0 then
begin
adoquery:=tadoquery.Create(nil);
try
adoquery.close;
adoquery.Connection:=datamodule1.ADOMainConn;
datamodule1.ADOMainConn.BeginTrans;
try
adoquery.SQL.Text:='delete from bid_qb_fhx 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_leibie.Text)+''')'
+' insert into bid_qb_fhx(dw_id,bd_isbn) select dw_id,bd_isbn from bid_pingbiao where pb_baozhengjin=1'
+' and 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_leibie.Text)+''')';
adoquery.ExecSQL;
datamodule1.ADOMainConn.CommitTrans;
except
datamodule1.ADOMainConn.RollbackTrans;
end;
finally
freeandnil(adoquery);
end;
end;
if com_project.ItemIndex=2 then
begin
adoquery:=tadoquery.Create(nil);
try
adoquery.close;
adoquery.Connection:=datamodule1.ADOMainConn;
datamodule1.ADOMainConn.BeginTrans;
try
adoquery.SQL.Text:='delete from bid_qb_qzx 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_leibie.Text)+''')'
+' insert into bid_qb_qzx(dw_id,bd_isbn) select a.dw_id,a.bd_isbn from bid_qb_fhx a left join'
+' bid_wenjian2 b on a.dw_id=b.dw_id and a.bd_isbn=b.bd_isbn where b.wj2_leixing=2 and b.wj2_fhx=1'
+' and a.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_leibie.Text)+''')';
adoquery.ExecSQL;
datamodule1.ADOMainConn.CommitTrans;
except
datamodule1.ADOMainConn.RollbackTrans;
end;
finally
freeandnil(adoquery);
end;
end;
if com_project.ItemIndex=3 then
begin
if (com_zhuanjia.ItemIndex<0) or (com_zhuanjia.ItemIndex=8) then exit;
adoquery:=tadoquery.Create(nil);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -