宏变量的使用
扩展报表系统提供设置宏变量的功能,方便用户自己去定义变量。支持在参数默认值、参数数据来源以及SQL数据集查询语句、报表单元格表达式中使用宏变量。
一、定义宏
进入报表工具后,点击工具栏【宏定义】按钮,进入宏定义页签,如下图所示。
如上图所示,在宏定义页签中,可以对宏变量进行查找、刷新预览、新建、编辑、修改属性、删除、导入、导出等操作。支持新建SQL宏()和公式宏(),宏的返回值类型包括单值和多值两种,宏值为宏执行后的第一列数据。
新建SQL宏:
点击【新建SQL宏】按钮,弹出新建SQL宏窗口,如下图所示,窗口包含“查询”和“外部数据库”两个页签:
在“查询”页签,用户可以使用KSQL语法自定义SQL查询语句;若要使用方言,可点击下方的【添加方言标记】按钮,则SQL查询语句的最上方显示“/*dialect*/”。数据可以来源于当前登录的EAS数据中心,也可以来源于外部数据库(需要到“外部数据中心管理”页签中新建外部数据库连接)。
点击【预览】按钮,查看宏变量的执行结果:
点击【保存】按钮,弹出保存窗口,如下图所示,需要输入名称、选择宏值类型。
新建公式宏:
点击【新建公式宏】按钮,弹出新建公式宏窗口,如下图所示,左侧分类列出宏支持的函数以及系统内置参数;右侧为内容区域,用户可在该区域定义宏,系统会对宏的定义进行语法解析;窗口下方显示函数说明、光标所在函数、参数等。另外,用户可进行窗口最大化、排版等操作。
二、宏的用法
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宏,双击宏名后在内容区域显示“$宏名”:
宏变量的使用
本文2024-09-22 18:11:35发表“eas cloud知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-eas-99211.html