Fast Report 增加自定义变量

来源:互联网 发布:美芽软件 编辑:程序博客网 时间:2024/04/30 07:23

某些情况下,我们可能需要传递变量给FastReport,并且将其显示在数据树的变量树中.如下图中的Customer 和Company Info 节点下的变量

自定义变量加入到数据树中的代码如下:

  with FfrxReport.Variables do  begin    //加入分组(必须有前导空格格,标识为一个分类)    CategoryName:='Customer';    if IndexOf(' ' + CategoryName) = -1 then Add.Name:=' ' + CategoryName;    //当前登录用户    FfrxReport.Variables.AddVariable(CategoryName, 'AppUserName',      Format('''%s''', [iDAppInfo.UserName]));    //加入皮肤文件目录    FfrxReport.Variables.AddVariable(CategoryName, 'SkinRootFolder',      Format('''%s''', [iDAppInfo.SkinsRootFolder]));    //加入临时文件目录    FfrxReport.Variables.AddVariable(CategoryName, 'tempFolder',      Format('''%s''', [GetEnvironmentVariable('temp')]));  end;

上述代码的要点是:

1、Category增加时,必须判断是否已经存在.如果不加判断,直接增加,会造成数据树中出现多个Category;

2、增加字符型变量时,必须用引号括住,否则报表运行时,会提示表达式错误.

3、增加变量时,可以不用判断变量是否已经存在.变量存在的,程序会自动覆盖原来的值(已经检查过FastReport代码).