本人最近在做一个固定资产管理系统,打印根据固定资产类型分三组,格式如下:房屋建筑物
序号  单位   资产名称   座落  结构  面积  原值
 1    单位1   ...                          200000   
 2    单位2   ...                          400000
专用设备
序号  单位   资产名称   品牌  型号  号牌   原值
 1    单位3   ...                          1000   
 2    单位4   ...                          2000
一般设备
序号  单位   资产名称   品牌  型号  号牌   原值
 1    单位2   ...                              
 2    单位4   ...   我用的是fastreport3 的分组功能,在groupHeader、groupfoot之间放masterdata。在groupHeader中放置一个memo1,值设为[frxDBDataset1."AssetTypeName"] ,用于显示固定资产类型(如:房屋建筑物、专用设备、一般设备)
现在数据都显示正常了,问题如下:
  1、如何在分组打印之前,取到memo1的值,根据memo1的值,设置memo1最后打印的值。如分组是“房屋建筑物”,设置memo1的值为“一、房屋建筑物”;专用设备,设置为“二、专用设备”;
一般设备,设置为“三、一般设备”     
  2、序号下面设置memo的值为[line#],但打印结果如下,并不是我想要的:房屋建筑物
序号  单位   资产名称   座落  结构  面积  原值
 1    单位1   ...                          200000   
 2    单位2   ...                          400000
专用设备
序号  单位   资产名称   品牌  型号  号牌   原值
 3    单位3   ...                          1000   
 4    单位4   ...                          2000
一般设备
序号  单位   资产名称   品牌  型号  号牌   原值
 5    单位2   ...                              
 6    单位4   ...    怎么样从另一个固定资产类型开始序号又从1开始计数,查考了Demo,还是无从下手,望高手赐教!

解决方案 »

  1.   

    房屋建筑物
    专用设备
    一般设备
    这些都要在一个表中,
    在groupHeader1中的Condition
      

  2.   

    接上:
    里写[Ads."AssetTypeName"],
    [Line#]放在MasterData1里,
    应该就可以了,
      

  3.   

    yyq_leaf(冷血),你说得都没错,我也是这么做的,我的问题是怎样根据固定资产的类型来动态更改栏目的名称,座落跟品牌、结构跟型号分别是同一个字段,只是最后打印的时候根据固定资产类型显示的名称
      

  4.   

    //MasterData中加一个Edit Text Tool 值为 [I], 
    //在报表设计器中写代码
    var
      I: integer;
    procedure MasterData1OnAfterPrint(Sender: TfrxComponent);
    begin
      I := I +1;
    end;procedure GroupHeader1OnBeforePrint(Sender: TfrxComponent);
    begin
      I := 1;
    end;
      

  5.   

    To:cncharles(旺仔),多谢,照你的方法,问题二已经搞定,问题一通过sql语句也已经解决了!请接分!