广告
返回顶部
首页 > 资讯 > 精选 >BIRT中如何根据参数实现动态日期分组
  • 549
分享到

BIRT中如何根据参数实现动态日期分组

2023-06-03 15:06:24 549人浏览 泡泡鱼
摘要

BIRT中如何根据参数实现动态日期分组,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。BIRT一般擅长处理规则一致的数据,若条件不一致的动态运算在报表中是很难实现

BIRT中如何根据参数实现动态日期分组,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

BIRT一般擅长处理规则一致的数据,若条件不一致的动态运算在报表中是很难实现的。常规办法是创建scripted data sources, 在该脚本源上自行处理业务逻辑把数据准备好,然后直接传给BIRT展现。但sql或scripted data sources的方式,代码写起来非常麻烦,而且工作量很大。

比如要处理这么个场景:按照开始日期、结束日期统计一段时间内订单,但要根据起止日期的跨度长短实现按天、按周、按月、按年动态分组显示结果。查询流程如下图所示:

BIRT中如何根据参数实现动态日期分组

建议使用集算器,其丰富的集合运算可以方便地完成这类计算和逻辑判断,比Java写的代码要短,比存储过程写起来更简单,比如类似的计算在集算器里可以这样写:


A

B

1

=[]


2

=demo.query@x("select ORDERID,ORDERDATE,ORDERAMOUNT from ORDERS where ORDERDATE>=? and ORDERDATE<=?",startDate,endDate)

3

=interval(startDate,endDate)


4

if A3>365

>A1=startDate|A3.(elapse@y(startDate,~))

5

else if A3>30

>A1=startDate|A3.(elapse@m(startDate,~))

6

else if A3>15

>A1=startDate|A3.(elapse(startDate,7*~))

7

else

>A1=startDate|A3.(elapse(startDate,~))

8

=A2.group(A1.pseg(ORDERDATE);~.count(ORDERID):TotalOrder,round(~.sum(ORDERAMOUNT),2):TotalOrderAmount,A1(#):BeginDate)

9

=A8.new(BeginDate:BeginDate,#2:TotalOrder,#3:TotalOrderAmount)

10

return A9

其中startDate,endDate为报表起止日期参数。

集算器提供了JDBC驱动,可以很方便的与BIRT等报表工具集成,BIRT调用SPL脚本有使用和获得它的方法。

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注编程网精选频道,感谢您对编程网的支持。

--结束END--

本文标题: BIRT中如何根据参数实现动态日期分组

本文链接: https://www.lsjlt.com/news/234749.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • BIRT中如何根据参数实现动态日期分组
    BIRT中如何根据参数实现动态日期分组,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。BIRT一般擅长处理规则一致的数据,若条件不一致的动态运算在报表中是很难实现...
    99+
    2023-06-03
  • BIRT 统计图中如何根据参数实现 X 轴动态分组
    BIRT 统计图中如何根据参数实现 X 轴动态分组,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。报表工具一般擅长处理规则一致的数据,若条件不一致的动态运算在报表...
    99+
    2023-06-03
  • 大数据中如何实现动态列报表
    大数据中如何实现动态列报表,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。一般有两种实现方式: 通过报表工具来做如下图这样的,浏览时候选择不同的指标,就可以展现不同的列具体做法参...
    99+
    2023-06-03
  • sql存储过程如何实现动态根据表数据复制一个表的数据到另一个表
    这篇文章给大家分享的是有关sql存储过程如何实现动态根据表数据复制一个表的数据到另一个表的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。动态根据表数据复制一个表的数据到另一个表把t...
    99+
    2022-10-18
  • BootStrap中如何实现selectpicker后台动态绑定数据
    这篇文章主要介绍BootStrap中如何实现selectpicker后台动态绑定数据,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!html部分代码<select cl...
    99+
    2022-10-19
  • 如何在Flask中实现数据分组流程详解
    【数据库模型类】 class ConColumn(db.Model): __tablename__='content_column' id = db.Column(d...
    99+
    2023-05-19
    Flask数据分组 Flask分组数据
  • PHP和JavaScript:如何在NumPy日志中实现高效数据分析?
    数据分析已经成为了现代社会中不可或缺的一部分。无论是商业、科学还是政治,都需要对各种数据进行分析,以便更好地理解和预测未来的趋势。在这个过程中,NumPy日志成为了一个非常重要的工具,它为Python编程语言提供了一个高效的数据分析环境。...
    99+
    2023-06-29
    numy 日志 javascript
  • VBS脚本中的字典、动态数组、队列和堆栈如何实现
    这篇文章给大家分享的是有关VBS脚本中的字典、动态数组、队列和堆栈如何实现的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1.编写环境今天突发奇想下载了个gVim来写VBS脚本,我用的版本是7.4的在写脚本前,需要...
    99+
    2023-06-08
  • 如何通过ASP技术实现大数据分布式路径动态调整?
    随着大数据时代的到来,越来越多的企业开始使用分布式计算来处理海量数据。而路径动态调整是分布式计算中的一项重要技术,能够在运算过程中根据实时数据动态地调整计算路径,提高计算效率。 本文将介绍如何使用ASP技术实现大数据分布式路径动态调整,并...
    99+
    2023-10-18
    大数据 path 分布式
  • 在Spring项目中使用 Mybatis 如何实现动态切换数据源
    这篇文章将为大家详细讲解有关在Spring项目中使用 Mybatis 如何实现动态切换数据源,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。实现思路是:第一步,实现动态切换数据源:配置两个Da...
    99+
    2023-05-31
    spring mybatis 数据源
  • Go语言中的分布式数据管理:如何利用数组实现?
    随着互联网技术的不断发展,分布式系统已经成为了现代软件开发中不可或缺的一部分。对于分布式系统而言,数据的管理和存储是其中最重要的问题之一。在这方面,Go语言提供了一些非常实用的工具和方法,包括数组。 数组是一种非常基础的数据结构,它可以用...
    99+
    2023-11-08
    分布式 数据类型 数组
  • vue中如何使用echarts实现动态数据绑定及获取后端接口数据
    本篇内容主要讲解“vue中如何使用echarts实现动态数据绑定及获取后端接口数据”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“vue中如何使用echarts实现动态数据绑定及获取后端接口数据”...
    99+
    2023-07-02
  • 分布式数组:在Go语言中如何实现高效的数据共享?
    在分布式计算中,数据共享是非常重要的一个方面。而分布式数组正是一种实现高效数据共享的方式。在本文中,我们将探讨在Go语言中如何实现分布式数组,并且演示一些示例代码。 什么是分布式数组? 分布式数组是由多个计算节点组成的数组,每个节点都可以...
    99+
    2023-11-08
    分布式 数据类型 数组
  • 如何使用ajax实现数据库中随机读取5条数据动态在页面中刷新
    这篇文章主要介绍了如何使用ajax实现数据库中随机读取5条数据动态在页面中刷新,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。前台代码:&nb...
    99+
    2022-10-19
  • Bootstrap中treeview如何实现动态加载数据并添加快捷搜索功能
    这篇文章主要介绍了Bootstrap中treeview如何实现动态加载数据并添加快捷搜索功能,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。写...
    99+
    2022-10-19
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作