- 水晶报表教程
- 水晶报表 - 首页
- 水晶报表 - 概述
- 水晶报表 - GUI 导航
- 水晶报表 - 选项
- 水晶报表 - 页面布局
- 水晶报表 - 获取帮助
- 水晶报表 - 设计环境
- 水晶报表 - 数据源
- 水晶报表 - 查询
- 查询筛选器和筛选条件
- 水晶报表 - 基于时间的筛选器
- 字段对象控件和修改
- 水晶报表 - 节
- 水晶报表 - 删除节
- 水晶报表 - 分组
- 水晶报表 - 分组选项
- 水晶报表 - 模板
- 水晶报表 - 插入对象
- 水晶报表 - 图表
- 水晶报表 - 交叉表布局
- 水晶报表 - 定义公式
- 水晶报表 - 公式编辑器
- 创建和修改公式
- 水晶报表 - 应用布尔公式
- 水晶报表 - if-then-else 语句
- 水晶报表 - 应用计算
- 水晶报表 - 条件格式化
- 水晶报表 - 创建变量
- 水晶报表 - 创建数组
- 水晶报表 - 参数
- 水晶报表 - 筛选器
- 水晶报表 - 提示面板
- 水晶报表 - 级联提示
- 水晶报表 - 创建参数字段
- 水晶报表 - 编辑参数字段
- 水晶子报表 - 概述
- 水晶报表 - 数据导出概述
- 水晶报表 - 数据导出到 Excel
- 水晶报表 - 数据导出到 XML
- 水晶报表 - 数据导出到 HTML
- 水晶报表 - 数据导出到 CSV
- 水晶报表有用资源
- 水晶报表 - 快速指南
- 水晶报表 - 有用资源
- 水晶报表 - 讨论
水晶报表 - 创建变量
变量用于为对象分配不同的值,这与固定不变的常量不同。当您为变量赋值时,它会保留该值,直到您为其分配新值为止。在使用变量之前,需要在报表中定义它们。
在水晶报表中声明变量时,需要为其指定名称,但是此名称不应与任何其他函数、运算符等相同。变量可以是数字类型、字符串类型、日期类型、布尔类型、范围类型或数组类型。一个变量只能保存单一类型的值,例如,如果将其声明为数字类型,则以后不能用于保存字符串值。
定义变量
Local Stringvar Customer_Lastname Local numbervar Sales_percentage
声明变量的关键字以“var”结尾,所有变量类型都如此。您也可以在声明时或使用单独的语法为变量赋初始值。
Local NumberVar Z; //Declare Z to be a Number variable Z := 30; //Assign the value of 30 to Z
要在公式中使用变量,需要定义其作用域。变量作用域有三种类型:
- 局部变量
- 全局变量
- 共享变量
这定义了一个公式中的变量可以在其他公式中使用。
局部变量
局部变量使用 local 关键字声明,后跟类型,然后是变量名,如上例所示。
局部变量仅限于单个公式。这意味着您无法从一个公式访问另一个公式中局部变量的值。
//Formula 1 Local NumberVar Z; Z := 30; //Formula 2 EvaluateAfter ({@Formula A}) Local NumberVar Z; Z := z + 5;
在上例中,公式 2 将返回 5,因为 Z 在公式 1 中声明为局部数字变量,因此公式 2 将为变量 Z 使用默认值。
全局变量
全局变量用于整个主报表。其值可用于声明该变量的所有公式,子报表中的公式除外。
Global StringVar Z;
建议仅当局部变量不足时才使用全局变量。
由于全局变量在整个主报表中共享其值,因此您不能在一个公式中声明一个特定类型的全局变量,然后在另一个公式中使用相同的名称声明不同类型的全局变量。
共享变量
共享变量用于整个主报表及其所有子报表。共享变量比全局变量更通用。
要使用共享变量,请在主报表中的公式中声明它:
Shared NumberVar Z := 10;
要使用共享变量,必须在主报表和子报表中使用它之前声明并为其赋值。
广告