本文介绍了扩展报表系统中的宏变量功能,允许用户定义、查找、编辑、删除等宏变量操作。支持SQL宏和公式宏的创建,前者可自定义SQL查询,后者使用函数和内置参数定义。宏变量可用于设置参数默认值、数据来源、SQL查询语句及报表单元格表达式中,提高了报表的灵活性和复用性。
宏变量 扩展报表系统提供设置宏变量的功能,方便用户自己去定义变量。支持在参数默认值、参数数据来源以及SQL数据集查询语句、报表单元格表达式中使用宏变量。
一、定义宏 进入报表工具后,点击工具栏【宏定义】按钮,进入宏定义页签,如下图所示。
如上图所示,在宏定义页签中,可以对宏变量进行查找、刷新预览、新建、编辑、修改属性、删除、导入、导出等操作。支持新建SQL宏和公式宏,宏的返回值类型包括单值和多值两种,宏值为宏执行后的第一列数据。
[u]新建SQL宏:[/u] 点击【新建SQL宏】按钮,弹出新建SQL宏窗口,如下图所示,窗口包含“查询”和“外部数据库”两个页签:
在“查询”页签,用户可以使用KSQL语法自定义SQL查询语句;若要使用方言,可点击下方的【添加方言标记】按钮,则SQL查询语句的最上方显示“/*dialect*/”。数据可以来源于当前登录的EAS数据中心,也可以来源于外部数据库(需要到“外部数据中心管理”页签中新建外部数据库连接)。
点击【预览】按钮,查看宏变量的执行结果:
点击【保存】按钮,弹出保存窗口,如下图所示,需要输入名称、选择宏值类型。
[u]新建公式宏:[/u] 点击【新建公式宏】按钮,弹出新建公式宏窗口,如下图所示,左侧分类列出宏支持的函数以及系统内置参数;右侧为内容区域,用户可在该区域定义宏,系统会对宏的定义进行语法解析;窗口下方显示函数说明、光标所在函数、参数等。另外,用户可进行窗口最大化、排版等操作。
二、宏的用法1、参数的默认值可以设置为宏变量 例如下图中输入框类型的参数,其默认值可以设置为单值宏:
2、参数数据来源可以设置为宏变量 例如下图中F7选择框类型的参数,其数据来源可以设置为宏:
3、在SQL数据集查询语句中使用宏变量 在SQL查询语句中使用宏变量时,若宏值是数值型,则不加单引号,直接使用“ $宏名 ”即可;若是字符型,则需要加单引号,如“ ‘$宏名’ ”。 例如,定义一个单值的SQL宏“CURRENTUSERNUMBER”,宏的内容是“select fnumber from T_PM_User where fid='@ExtRptCurrentUserInfoID'”,返回结果是当前用户编码。那么在数据集的SQL查询语句的过滤条件中可以使用该宏变量,如下图所示:
另外,在多次使用同一段固定SQL语句的情况时,可以将这段固定的SQL语句定义为宏变量。例如定义一个单值的公式宏“ORGINFO”,宏的内容是“ "(SELECT * FROM T_org_admin)" ”。那么在数据集的SQL查询语句中可以使用该宏变量(需要添加方言标记),如下图所示:
4、在报表单元格表达式中使用宏变量 在报表的单元格表达式中也可以使用宏变量,在宏名前加“$”符号来标识宏。如下图所示,公式编辑器的“数据集”抽屉中,新增了公式宏和SQL宏,双击宏名后在内容区域显示“$宏名”:
宏-参数来源.png(54.61KB)
宏-过滤条件.png(20.14KB)
宏-复用.png(20.48KB)
宏-单元格.png(24.12KB)
新建SQL宏-预览.png(9.53KB)
宏-保存.png(5.76KB)
新建公式宏.png(24.32KB)
宏-默认值.png(48.59KB)
宏定义入口.png(63.66KB)
宏定义页面.png(77.49KB)
新建SQL宏.png(15.44KB)