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

📄 qd_rep.pas

📁 工程预算系统
💻 PAS
📖 第 1 页 / 共 5 页
字号:
                      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 + -