我的报表里想按人员分组小计,分组是成功的,组头显示人员姓名,组尾想显示按人员进行的小计,结果错误。
    我组尾里使用了rbGroupFooter,在上面加了QRExpr1,Expression设置为SUM(字段名),可结果却是累计数。请问大侠如何解决?

解决方案 »

  1.   

    QRSubDetail的FooterBand属性要指定小计的QRBand
      

  2.   

    楼上的,报表里没有用到QRSubDetail,而是使用了rbDetail,因为不是多层分组,只是将一个表按业务员分组。
        所以只用了QRGroup、rbDetail和rbGroupFooter。
        QRGroup的FooterBand属性指定了小计的QRBand——rbGroupFooter
      

  3.   

    你在报表中设计2个ADOQUERY,QryMaster,QryDetail,QryDetail的DataSource指向Master,
    在QuickRep1BeforePrint中做分组查询.你试试
    我以前做过类似报表.
    procedure TQr_typeRep.QuickRep1BeforePrint(Sender: TCustomQuickRep;
      var PrintReport: Boolean);
    begin
      with QryMaster do
      begin
          Close;
          SQL.Clear ;
          IF A_S_OP=FALSE THEN SQL.Add('select * from PZDICT where PLNO='''+Ls_PLNO+''' ORDER BY PLNO')
          ELSE SQL.Add('select * from PZDICT ORDER BY PLNO');
          Open ;
      end;  with QryDetail do
      begin
        CLOSE;
        SQL.CLEAR;
        SQL.ADD('SELECT * FROM PZDAT');
        SQL.ADD('WHERE PZDAT >= '+FormatDateTime('yyyy-mm-dd',L_DTP_START));
        SQL.ADD('  AND PZDAT <= '+FormatDateTime('yyyy-mm-dd',L_DTP_END  ));
        SQL.ADD('  AND LEFT(PZENO,2)=:PLNO');
        SQL.ADD('  ORDER BY BNENO,PZDAT,PZTME ');
        Open;
      end;end;
    PLNO就是分组条件