一、表达式的语法
V5报表的表达式主要由操作符、关键字、函数组成。
语法:{=}左操作数 {操作符 右操作数 ......}
其中操作数可以是常量、变量、函数、单元格等;操作符包括算数运算符(+-*/)、逻辑运算符(&&或and ||或or !或not)、比较运算符(== != > >= < <=)以及包含(in)、求余(%)、赋值(=)、到(:)、列号(#)等特殊操作符。
快逸报表支持基于数据集和基于单元格的两类表达式,并且可以混合书写,如:ds1.sum(amount);B3+C3+sum(D3{});ds1.select(id,typeid=C2)等。还支持中文表达式,如可以写类似 价格*数量 这样的表达式,使报表设计更加通俗易懂。
二、报表表达式注意事项
报表的表达式定义里,部分属性表达式必须等于号开头,部分属性表达式不用等于号开头,具体区分如下:
1. 可写表达式必须等于号开头
2. 更新属性里,字段对应的更新表达式必须等于号开头
3. 数据集定义的最后一个tab页,参数表达式定义不用等于号开头
4. 动态参数、动态宏表达式不用等于号开头
5. 统计图定义里,所有表达式等于号开头
6. 流水号初值表达式,不用等于号开头
7. 语义层定义里的所有表达式,均不需要等于号开头
三、表达式的类型
V5报表设计中用到表达式的地方很多:单元格表达式、报表属性表达式、动态参数表达式、动态宏表达式、更新属性中字段对应的更新表达式、统计图选取数据时的分类表达式和系列表达式、填报表中的流水号初值表达式、以及语义层定义里的表达式等等。
下面几节,我们结合报表实例介绍一下报表设计中用到的表达式例子。
课后练习:
1、V5报表的表达式主要由哪些部分组成?
2、表达式中的操作数除了常量、变量,还可以是什么?
3、写出8个表达式的操作符,并按运算优先级排列。
4、必须用等于号开头的表达式有哪些?
5、举出5种表达式的类型,并注明是否用等于号开头。