📄 qd_rep.pas
字号:
15: begin //sl
if Trim(Tjc_rcj(gcqdlist.Items[i]).column19)='' then
sum_str:=sum_str+'0'
else
sum_str:=sum_str+Trim(Tjc_rcj(gcqdlist.Items[i]).column19);
break;
end;
16: begin //
if Trim(Tjc_rcj(gcqdlist.Items[i]).column20)='' then
sum_str:=sum_str+'0'
else
sum_str:=sum_str+Trim(Tjc_rcj(gcqdlist.Items[i]).column20);
break;
end;
17: begin
if Trim(Tjc_rcj(gcqdlist.Items[i]).column21)='' then
sum_str:=sum_str+'0'
else
sum_str:=sum_str+Trim(Tjc_rcj(gcqdlist.Items[i]).column21);
break;
end;
18: begin //sl
if Trim(Tjc_rcj(gcqdlist.Items[i]).column23)='' then
sum_str:=sum_str+'0'
else
sum_str:=sum_str+Trim(Tjc_rcj(gcqdlist.Items[i]).column23);
break;
end;
19: begin //
if Trim(Tjc_rcj(gcqdlist.Items[i]).column22)='' then
sum_str:=sum_str+'0'
else
sum_str:=sum_str+Trim(Tjc_rcj(gcqdlist.Items[i]).column22);
break;
end;
20: begin //sl
if Trim(Tjc_rcj(gcqdlist.Items[i]).column24)='' then
sum_str:=sum_str+'0'
else
sum_str:=sum_str+Trim(Tjc_rcj(gcqdlist.Items[i]).column24);
break;
end;
21: begin //
if Trim(Tjc_rcj(gcqdlist.Items[i]).column25)='' then
sum_str:=sum_str+'0'
else
sum_str:=sum_str+Trim(Tjc_rcj(gcqdlist.Items[i]).column25);
break;
end;
end; //case j of
end; //if lowercase(str1)=Trim(array_rcjbl[j]) then
end; //for j:=4 to 12 do
if b_falg=False then
sum_str:=sum_str+'0'
//if lowercase(str1)=
end; // else begin
end; //end//begin //val begin
end; //if r1=length(str) then
end //if (str[r]<>'(') and (str[r]<>')') and (
else
begin
if isnumber(str1)=0 then
begin
sum_str:=sum_str+str1+str[r];
str1:='';
end //end; if isnumber(str1)=0 then
else
begin
if (str1<>'cos') and (str1<>'sin') and (str1<>'round')
and (str1<>'tan') and (str1<>'arctan') and (str<>'abs')
and (str1<>'exp') and (str1<>'ln') and (str1<>'sqr')
and (str1<>'sqrt') and (str1<>'int') then
begin
b_falg:=False;
for j:=5 to 21 do
begin
if lowercase(str1)=Trim(array_rcjbl[j]) then
begin
b_falg:=True;
case j of
5: begin //sl
if Trim(Tjc_rcj(gcqdlist.Items[i]).column8)='' then
sum_str:=sum_str+'0'+str[r]
else
sum_str:=sum_str+Trim(Tjc_rcj(gcqdlist.Items[i]).column8)+str[r];
break;
end;
8: begin
if Trim(Tjc_rcj(gcqdlist.Items[i]).column12)='' then
sum_str:=sum_str+'0'+str[r]
else
sum_str:=sum_str+Trim(Tjc_rcj(gcqdlist.Items[i]).column12)+str[r];
break;
end;
9: begin //sl
if Trim(Tjc_rcj(gcqdlist.Items[i]).column13)='' then
sum_str:=sum_str+'0'+str[r]
else
sum_str:=sum_str+Trim(Tjc_rcj(gcqdlist.Items[i]).column13)+str[r];
break;
end;
10: begin //
if Trim(Tjc_rcj(gcqdlist.Items[i]).column14)='' then
sum_str:=sum_str+'0'+str[r]
else
sum_str:=sum_str+Trim(Tjc_rcj(gcqdlist.Items[i]).column14)+str[r];
break;
end;
11: begin
if Trim(Tjc_rcj(gcqdlist.Items[i]).column16)='' then
sum_str:=sum_str+'0'+str[r]
else
sum_str:=sum_str+Trim(Tjc_rcj(gcqdlist.Items[i]).column16)+str[r];
break;
end;
12: begin //sl
if Trim(Tjc_rcj(gcqdlist.Items[i]).column15)='' then
sum_str:=sum_str+'0'+str[r]
else
sum_str:=sum_str+Trim(Tjc_rcj(gcqdlist.Items[i]).column15)+str[r];
break;
end;
13: begin //
if Trim(Tjc_rcj(gcqdlist.Items[i]).column17)='' then
sum_str:=sum_str+'0'+str[r]
else
sum_str:=sum_str+Trim(Tjc_rcj(gcqdlist.Items[i]).column17)+str[r];
break;
end;
14: begin
if Trim(Tjc_rcj(gcqdlist.Items[i]).column18)='' then
sum_str:=sum_str+'0'+str[r]
else
sum_str:=sum_str+Trim(Tjc_rcj(gcqdlist.Items[i]).column18)+str[r];
break;
end;
15: begin //sl
if Trim(Tjc_rcj(gcqdlist.Items[i]).column19)='' then
sum_str:=sum_str+'0'+str[r]
else
sum_str:=sum_str+Trim(Tjc_rcj(gcqdlist.Items[i]).column19)+str[r];
break;
end;
16: begin //
if Trim(Tjc_rcj(gcqdlist.Items[i]).column20)='' then
sum_str:=sum_str+'0'+str[r]
else
sum_str:=sum_str+Trim(Tjc_rcj(gcqdlist.Items[i]).column20)+str[r];
break;
end;
17: begin
if Trim(Tjc_rcj(gcqdlist.Items[i]).column21)='' then
sum_str:=sum_str+'0'+str[r]
else
sum_str:=sum_str+Trim(Tjc_rcj(gcqdlist.Items[i]).column21)+str[r];
break;
end;
18: begin //
if Trim(Tjc_rcj(gcqdlist.Items[i]).column23)='' then
sum_str:=sum_str+'0'+str[r]
else
sum_str:=sum_str+Trim(Tjc_rcj(gcqdlist.Items[i]).column23)+str[r];
break;
end;
19: begin
if Trim(Tjc_rcj(gcqdlist.Items[i]).column22)='' then
sum_str:=sum_str+'0'+str[r]
else
sum_str:=sum_str+Trim(Tjc_rcj(gcqdlist.Items[i]).column22)+str[r];
break;
end;
20: begin //
if Trim(Tjc_rcj(gcqdlist.Items[i]).column24)='' then
sum_str:=sum_str+'0'+str[r]
else
sum_str:=sum_str+Trim(Tjc_rcj(gcqdlist.Items[i]).column24)+str[r];
break;
end;
21: begin //
if Trim(Tjc_rcj(gcqdlist.Items[i]).column25)='' then
sum_str:=sum_str+'0'+str[r]
else
sum_str:=sum_str+Trim(Tjc_rcj(gcqdlist.Items[i]).column25)+str[r];
break;
end;
end; //case j of
end; //if lowercase(str1)=Trim(array_rcjbl[j]) then
end; //for j:=4 to 12 do
if b_falg=False then
sum_str:=sum_str+'0'+str[r];
str1:='';
end //if (str1<>'cos') and (str1<>'sin') and (str1<>'round')
else
begin
sum_str:=sum_str+str1+str[r]; //此处为加入roumd,sqr,sqrt,ln的函数写入
str1:='';
end;
end; //end; if isnumber(str1)=0 then
end; //end else begin
end; //for r:=1 to length(str) do
if sum_str='0' then
strtmp:=''
else
begin
(getactiveform as TFrm_ys).scriptcontrol1.Language:='vbscript';
try
tem_real:=(getactiveform as TFrm_ys).scriptcontrol1.Eval(sum_str);
except
tem_real:='';
end;
if tem_real='' then
strtmp:=''
else
strtmp:=formatstr(mygrid,ncol,tem_real);
end;
end; //end if pos()^^^^^^
end //if Trim(str)<>'' then
else
strtmp:='';
Result:=strtmp;
end;
{取得分部工程清单项目费汇总表}
procedure getxmqdlist(mygrid:TStringGrid);
var
lgcqd:Trcjdatarecord;
lrcj:Tjc_rcj;
nr,nc,k,ncol:integer;
str:string;
begin
{说明如果是有*号,类型是清单的才是清单,falgd标志0清单1项目2是合计
column[1]是清单的序号}
gcqdlist:=TObjectList.Create(True);
gcqdlist.Clear;
k:=1;
for nr:=2 to mygrid.RowCount-2 do
begin
str:=Trim(mygrid.Cells[4,nr]);
if Trim(str)<>'' then
begin
if str[1]='*' then
begin
if Trim(mygrid.Cells[5,nr])='清单' then
begin
;
end
else
begin
lrcj:=Tjc_rcj.Create;
lgcqd.flag:=0;
lgcqd.column[1]:=inttostr(k);
for ncol:=1 to mygrid.ColCount-1 do
lgcqd.column[ncol+1]:=Trim(mygrid.Cells[ncol,nr]);
readfromfile(lrcj,lgcqd);
gcqdlist.Add(lrcj);
inc(k);
end;
end; //end if pos
end; //end <>''
end; //end for
if Trim(array_jbxx[46])='1' then //合计
begin
lrcj:=Tjc_rcj.Create;
lgcqd.flag:=2;
lgcqd.column[1]:='';
for nc:=1 to mygrid.ColCount-1 do
lgcqd.column[nc+1]:=Trim(mygrid.Cells[1,nc]);
readfromfile(lrcj,lgcqd);
lrcj.column5:='';
lrcj.column10:='合计';
gcqdlist.Add(lrcj);
end;
end;
{取得分部分项工程量清单计价表数据}
procedure getjjbqdlist(mygrid:TStringGrid);
var
lgcqd:Trcjdatarecord;
lrcj:Tjc_rcj;
nr,nc,k,ncol:integer;
str,strbh:string;
ncount:integer; //取得清单*号的个数
b_frist:boolean; //判断该项目是否是第一条项目
ntmprow:integer; //取得该条项目的行号
ntmp:integer; //清单的序号
begin
{说明如果是有*号,类型是清单的才是清单,falgd标志0清单1项目2是合计
column[1]是清单的序号,本项目小计是3}
ntmp:=1;
b_frist:=False;
ntmprow:=0;
gcqdlist:=TObjectList.Create(True);
gcqdlist.Clear;
for nr:=2 to mygrid.RowCount-2 do
begin
str:=Trim(mygrid.Cells[4,nr]);
if Trim(str)<>'' then
begin
if str[1]='*' then
begin
if Trim(mygrid.Cells[5,nr])='清单' then
begin
ncount:=0;
for k:=1 to length(str) do
begin
if str[k]='*' then
ncount:=ncount+1
else
break;
end;//end for
{if b_frist1 then
begin
lrcj:=Tjc_rcj.Create;
lgcqd.flag:=3;
lgcqd.column[1]:='';
lgcqd.column[2]:=Trim(mygrid.Cells[1,ntmprow1]);
lgcqd.column[3]:='';
for ncol:=3 to mygrid.ColCount-1 do
lgcqd.column[ncol+1]:=Trim(mygrid.Cells[ncol,ntmprow1]);
readfromfile(lrcj,lgcqd);
lrcj.column8:='清单小计';
gcqdlist.Add(lrcj);
end; }
strbh:=copy(str,ncount+1,Length(str)-ncount);
lrcj:=Tjc_rcj.Create;
lgcqd.flag:=0;
lgcqd.column[1]:=inttostr(ntmp); //序号
lgcqd.column[2]:=Trim(mygrid.Cells[1,nr]); //随机ID
lgcqd.column[3]:=Trim(mygrid.Cells[2,nr]); // 关联ID
lgcqd.column[4]:=Trim(mygrid.Cells[3,nr]); // 系数说明
lgcqd.column[5]:=strbh; // 编号
for ncol:=5 to mygrid.ColCount-1 do
lgcqd.column[ncol+1]:=Trim(mygrid.Cells[ncol,nr]);
readfromfile(lrcj,lgcqd);
gcqdlist.Add(lrcj);
inc(ntmp);
end
else
begin
if b_frist then //是项目小计
begin
lrcj:=Tjc_rcj.Create;
lgcqd.flag:=3;
lgcqd.column[1]:='';
lgcqd.column[2
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -