如题.
在报表中设置了一个变量A,然后在程序中赋值给变量A。
报表生成过程中,变量A与报表的名项相加,最后得到一个合计值B,显示在报表的Footer中,
在程序中如何才能读取B的值?

解决方案 »

  1.   

    memo1.memo.text:=VarToStr(b);
    这是在FastReport中读取。
    我的意思是在程序中读取。
      

  2.   

    既然数据合计来源于程序 为何还要在程序里去读报表中的 Footer值呢。
      

  3.   

    var
    Index: Integer;
    Variable: TfrxVariable;
    ss :String;{ search for the variable }
    Index := frxReport1.Variables.IndexOf('B');
    if Index <> -1 then
    begin
      Variable := frxReport1.Variables.Items[Index];
      ss :=Variable.Value ;
    end;适当修改上面语句,将其加入到report的OnProgress 或OnPrintReport 或(你需要取出B值的适当的事件里)
      

  4.   

    var
     x: TfrxMemoView;
    begin
     x:=frxReport1.FindObject('Memo1') as TfrxMemoView;
     x.Memo.Text:=edit1.Text;
    End;
    --//可以把值付给memo,至于付值给在FAS定义的变量,暂时没有找到方法
      

  5.   

    谢谢6楼与7楼的解答!6楼正解!回3楼5楼:报表中是用到很多变量的,在程序中赋值只是初始化,然后交给FR去运算,最后得到一个结果,我要将这个结果读出来并保存到数据库中.
    例如:我做的是财务报表,财务报表必须有上月余额、本月发生额、本月余额等等,在程序中赋值只是将上月余额赋给FR,然后让FR根据数据库的数据去计算每天的财务情况并显示,本月最后一天的余额,我必须保存到数据库中,以给下月提供上月余额。
    在程序中读取不是不行,而是重复了相同的数据处理,如果在FR的结果中读出来,就不用再在程序中重复处理。
      

  6.   

    var 
    Index:   Integer; 
    Variable:   TfrxVariable; 
    请问:TfrxVariable 在哪个资源文件中定义,找发很久没找到。