[发明专利]基于工程造价计算描述语言BCL的报表生成装置及生成方法有效
申请号: | 201611207627.X | 申请日: | 2016-12-23 |
公开(公告)号: | CN106648662B | 公开(公告)日: | 2020-02-21 |
发明(设计)人: | 朱林生;万慧建;何贺;欧阳强;郝海风;曾江佑;王海民;廖成慧;刘国 | 申请(专利权)人: | 江西博微新技术有限公司 |
主分类号: | G06F8/30 | 分类号: | G06F8/30;G06F8/34;G06Q10/10 |
代理公司: | 南昌市平凡知识产权代理事务所 36122 | 代理人: | 夏材祥 |
地址: | 330096 江西省*** | 国省代码: | 江西;36 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 工程造价 计算 描述 语言 bcl 报表 生成 装置 方法 | ||
一种基于工程造价计算描述语言BCL的报表生成装置及生成方法,包括编制报表BCL脚本和格式文件;创建报表对象,加载报表配置文件;加载报表BCL脚本;对BCL脚本进行词法分析,生成EL表达式;使用语法分析器,将所有EL表达式,生成对应的BCL语法树结点,进而形成整个BCL语法树;创建相应BCL对象,并关联经语法分析后得到的BCL语法树;通过对生成的BCL对象进行分析,获取待计算BCL语法树对象;解释执行当前BCL语法树,按照后序遍历的方式处理语法树中的结点,将创建的报表对象作为上下文提供给BCL执行,直到所有BCL语法树执行完毕;将报表数据持久化为文件,完成任务。本方法实现一次编译多次解释执行,从而有效提高报表生成效率。
技术领域
本发明属于工程造价报表生成领域,具体涉及一种基于工程造价计算描述语言BCL的报表配置化生成执行装置及生成方法,具体实现工程造价报表数据生成并可动态配置报表生成的数据及格式。
背景技术
随着信息技术不断发展及企业管理的提升,工程造价计算日益精细化,各类报表越来越多并且报表生成逻辑复杂及报表格式多样化。传统的报表生成,通常为每张报表编写一份数据及格式生成代码,而实际存在不少报表输出规则相似,很容易导致相同逻辑重复编码情况。而报表生成逻辑及报表格式在出现定制化需求时,目前通常在代码中扩展特殊处理逻辑,一旦定制化需求过多代码复杂度呈几何数增长,不利于后期维护。
传统的报表生成,报表生成规则、逻辑及样式通常通过编码实现,并集成在报表生成装置中。报表生成装置一旦发布用户无法更改报表生成规则,这种方式导致在软件产品中传统的报表生成装置灵活性差。一旦业务发生变化,哪怕报表输出数据项顺序发生变更这种微小更改,都必须根据变化的需求修改代码,并经过编译、集成、打包、测试、发布等一系列研发流程,导致软件响应速度慢及维护更新成本高。
发明内容
为了解决现有技术存在的问题,本发明提出了一种基于工程造价计算描述语言BCL的报表生成装置及生成方法,用于定制生成报表数据及格式。
所述报表生成装置及执行方法基于工程造价计算语言BCL,与所述工程造价计算语言BCL一致,能够独立于不同的产品、项目及数据源,均具有与开发语言无关性和平台无关性。
1.所述工程造价计算描述语言BCL,其实现包括:
(1)设计描述具体计算算法规则的代数式及扩展运算表达式结构,即EL表达式;所述EL表达式是对计算算法规则的一个完整描述,以${和}作为起始和结束标记,在沿袭传统代数表达式运算特点的同时,EL表达式包含多种条件选择表达式的条件选择运算和完成具体计算规则的函数运算在内的其他高级运算功能。与传统代数运算不同,所述EL表达式包含种类多元化的操作数,支持数值、字符串和变量等类型,其中,变量类型操作数是所述EL表达式支持动态数据挂接的典型体现,其值可以为外部对象的引用,也可以为执行阶段设定的具体数据值。
所述条件表达式以#{和}作为起始和结束标记,其内部包含多个条件分支和之多一个缺省条件分支,每个分支对应一个EL表达式,整个条件选择表达式的取值为当前被激活条件分支对应的EL表达式计算结果,如:
#{
->条件1:EL表达式1;
->条件2:EL表达式2;
->:EL表达式3;
}
所述函数运算定义了具体的计算规则,以满足工程造价特定计算需求,其语法结构与C语言兼容,并支持BCL的扩展数据类型,除此之外,所述函数的调用还支持把EL表达式作为参数进行输入,能够实现指定工程数据范围与EL表达式的动态绑定,进而减少表达式代码冗余,语法格式为:
sum(数据源标记,数据源别名,?EL表达式);
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于江西博微新技术有限公司,未经江西博微新技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611207627.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:通知栏消息的处理方法及移动终端
- 下一篇:金融系统的兼容性处理方法及系统