自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 收藏
  • 关注

转载 如何从字符串文本中拆解出多个数值并计算

对于字母符号数值混排的文本文件,可以拷入Excel再拆解,但公式过于复杂,普通人难以掌握。用VBA\JAVA\Python等开发语言也可以解决这个问题,但代码冗长繁琐,还要使用难懂的正则表达式,实现起来更加困难。如果用esProc就会简单很多。比如文本文件的其中一行是"Jeff spent 13.5$ for cola, 5.2$ for coat,and 21$ for toys",要对该文件中的所有数值求和,esProc代码可以写成: A B 1 =file("data..

2020-06-30 17:27:20 81

转载 如何用一个 Excel 过滤另一个 Excel

可以用vlookup之类的函数解决这个问题,虽然整个过程不算太难,但只要数据发生变动,每次就要重复这个过程,这就显得太繁琐了。用VBA可以让这个过程自动化,但写法过于复杂,一般人很难掌握。用esProc就简单多了,只需几行代码就能完成过滤: A B D 1 =file("param.xlsx").xlsimport() =A1.(_1) /打开存放参数的Excel,取第1列 2 =file("all.xlsx").xlsimport() ..

2020-06-30 17:25:34 118

转载 有没有支持复杂报表的 BI 产品

目前市场上主流的 BI 工具主要分为几大类:一:开源工具主要是国外产品,以 Birt、Jasper 为代表,此类工具开源免费,但是功能较为简单,不支持国内复杂报表,而且 web 端的数据分析功能缺失。二:国外商用 BI以 Tableau、QlikView 为代表,此类工具 web 端分析功能强大,但同样中国式复杂报表不支持三:国内商用工具润乾报表为代表的国内报表工具推出主要是为了解决中国式复杂报表,后续又逐渐增加了 WEB 端的数据分析功能,所以要选择支持复杂报表的 BI 工具的话,

2020-06-30 17:22:36 52

转载 两行代码实现 Excel数据按列提取

关键词导读:解析Excel 结构化Excel一般常规办法:使用第三方类库(POI或者HSSFWorkbook等)来读取EXCEL文件的Sheet和单元格信息,然后按照规则循环读取到所需的每个单元格的值,并对表格数据进行结构化。但由于程序语言缺乏丰富的函数类库,仍然是硬编码方式,工作量会比较大。如果使用集算器SPL,解决这类问题则会简单很多,它能轻松读取Excel文件,并对表格数据结构化。比如:文件item.xlsx内容如下图所示:结构化后的效果如下图所示:处理...

2020-06-30 17:20:47 237

转载 有什么简单办法从格式复杂的 Excel中提取数据

关键词导读:解析自由格式Excel 结构化Excel要在程序语言中编程解决这类问题,工作量会非常大。而且因为许多EXCEL文件的格式都不规整,所以编写的程序并不能通用,每次都要重新编写新程序来应对新需求,也非常的麻烦。如果使用集算器SPL,应对这类问题则会简单很多,它精心设计了一套集合运算领域的函数库,处理Excel文件更加灵活和高效;同时SPL是解释执行的脚本,也很容易做到热切换适应新需求。比如要处理这么个场景:文件employe.xlsx格式如下图所示:结构化后的效果如下图所..

2020-06-30 17:19:03 95

转载 简单几行代码轻松实现大文本并行计算

关键词导读:大文本计算 并行计算 对于大文件的处理,可以充分利用现代计算机的多核CPU,实施多线程并行计算,从而达到提速的目的。然而,要在程序语言中编写多线程并行程序,并不是一件容易的事。要并行处理就需要将源文件分段,每个线程处理其中一段。文本文件一般是每一行对应一条记录,每一行长度不一定相同。所以,不能按行数分段,因为每次都从头遍历,起不到提高性能的目标;若按字节分段则不需要遍历,但有可能分段点正好落在行的中间,造成一行被拆进两段,导致数据错误。有效的解决办法是采用自动去头补尾的字节分段机制,..

2020-06-30 17:16:53 168

转载 如何找出两个文本文件中有相同字段的行

关键词导读:txt 文本对比有什么方便的工具可以做文件内容对比吗?比如:文件Old.txt和New.txt,第一行是列名,需要取出文件中Name字段相同的内容。部分数据如下: Old.txt New.txt Name Dept Rachel Sales Ashley R&D Matthew Sales Alexis Sales Megan Marketing Name ...

2020-06-30 17:07:49 921

转载 如何使用 SQL 查询文本

关键词导读:文本 计算文本 SQL查询文本数据查询场景,用SQL写起来很简单,比如:SELECT ... FROM ... WHERE ...,但是文件上没法直接用SQL,一般常规做法:在数据库创建临时表,解析文本入库,再使用SQL对其查询、过滤、分组等。但实现过程太麻烦了。主要不方便体现在:1、解析入库代码写起来很长,还有开发环境配置等因素,一般对人员要求较高。2、安装数据库、创建临时表,虽然不难,却很繁琐。3、一些临时性、突发性需求,搞起来周期长,甚至某些场景下不允许安装数据库,就很

2020-06-30 17:05:44 338

转载 哪个报表工具支持 Excel 那样锁定行列头的呈现?

在查看报表的时候,当列很宽或者记录的行数很多,在一屏中不能完全显示所有的数据,如果表头信息不能固定显示在最上方或左侧,当我们在上下或者左右拖动滚动条来查看数据时,数据记录无法和数据项对应上,不方便查看数据,为了解决这个问题,可以让表头信息固定显示在页面的最上方或最左侧,自己实现这样的功能需要写大量的 HTML 和 CSS,为了保证在不同浏览器的兼容性还需要耗费些精力,有时还会出现滚动过程中表头错位,格子边框不对齐的情况。其实现在大多报表工具都提供了这个锁定表头的功能,以我们熟悉的润乾报表为例,实现这样的

2020-06-30 17:03:29 60

转载 哪个 BI 产品能实现同比环比?

同比、环比是数据统计分析中常用的功能,但不是所有的 BI 产品都支持这样复杂跨行组的计算,而大多支持这个功能的 BI 产品价格还很高,例如 Tablaue。不过也有支持这样功能,价格非常便宜的 BI 产品——润乾报表。它的多维分析功能不仅可以对已有的数据集指标做分析,还可以添加一些复杂的跨行组计算的指标,如排名、同比、环比、累积等,操作简单方便。举例来说,根据订单的签单日期年、月分组,对订单金额求比上期,累计订单金额,同期比,环比增长率。在右侧的数据分析设计器中拖拽字段,然后通过绿色加的按钮增加

2020-06-30 17:01:02 150

转载 报表工具能实现怎么的导出效果?

用报表工具开发,核心功能是把各种数据源的数据以表格或图表的形式在线上网页端呈现出来。但是很多场景都是线上和线下结合,既要方便线上在系统中查看到报表,同时还得能和传统的线下业务无缝贴合,比如把结果导出到文件来流转、电子归档呀之类的,这时就需要报表工具具备强有力的所见即所得的导出本领。当前,对报表工具来说,支持导出基本算是标配功能,除了开源报表工具在支持的文件类型上有限制外,对于商业报表工具来说,常用的文件类型,几乎没什么区别,比如都支持导出 word、excel、pdf、txt 等。至于使用的技术细节

2020-06-29 11:22:28 69

转载 报表工具都有哪些应用部署方式?

回答这个问题之前,我们先来看看报表工具到目前为止都有哪些形态,虽然国产的大部分都是 java 语言开发的,功能方面也基本相同,但是形态还是有差异的。差异在于,有一些厂商始终把报表定位为一个通用工具类中间件产品,因其特性,使得集成商与自己的产品或项目做集成时比较简便且灵活,这也是大部分集成商希望的一个定位。另外有些厂商,不愿意只挣工具的钱了,想把报表包装成一个通用的平台,既能挣工具的钱,又能挣一部分平台的钱,这个形态的优点是,遇上一些需求简单的终端用户可以直接拿来用;缺点是,很多项目定制程度高,统一平

2020-06-29 11:20:50 188

转载 BI、OLAP、多维分析、CUBE 这几个词是什么关系?

这些词我们在建设分析型应用时经常会听到,这几个词也经常被弄混,这里来梳理一下。BIBI 是 Business Intelligence(商业智能)的缩写,是指企业利用已有数据进行数据分析从而指导商业决策的过程。BI 有广义和狭义之分,广义上的 BI 是指只要涉及利用数据及其分析结果进行商业决策的行为都属于 BI 的范畴;而狭义上的 BI 则主要多维分析,在实际工作中,狭义 BI 也更流行一些。著名的啤酒和尿布的故事曾一度在 BI 领域广泛传唱,据说沃尔玛通过数据分析发现了在某一时间段啤酒和尿片的销

2020-06-29 11:19:15 269 1

转载 BI 和 AI 都有 I,是一回事吗?

BI 和 AI 虽然长得挺像,但实际却没什么关系,完全不是一回事。BI 的主要工作是查询统计,根据企业生产经营过程中产生的数据按照业务部门的查询需求进行统计分析,比如查询 2019 年各地区销售情况,今年和去年的销售额同期比,资产负债表等。BI 主要是由数据仓库技术、报表技术、多维分析技术以及相当一部分可视化技术组成和实现的,其中数据仓库承担了大部分的计算工作,而数据库体系内并不涉及过于复杂的数学运算,因而在 BI 中的计算也很简单,对数学的要求也不高。那 BI 到底智能在哪呢?BI 的 I

2020-06-29 11:17:43 67

转载 什么是 BI?和报表有什么关系?有了 BI 还要做报表吗?

BI 是商业智能(Business Intelligence)的缩写,是数据分析领域的一个大类,其内容包含多维分析、报表查询、数据可视化、系统管理等方面,属于典型的 OLAP(在线联机分析)业务。构成 BI 系统的各部分关系大概这样:固定报表和多维分析彼此独立,前者用于业务复杂、格式固定的报表查询,后者用于相对简单的用户自助查询;固定报表和多维分析都具备实施部分数据可视化的能力;BI 系统外围是相应管理功能。有时大家狭义地认为 BI 就是多维分析(自助报表),上了多维分析就可以满足所有用户的查询

2020-06-29 11:15:41 72

转载 报表热切换是什么意思?如何做到?

热切换(Hot Swap)是指在系统不停机的情况下更换系统部件,在报表业务中则是指在不重启报表及相关应用的情况下完成对报表的维护(新增、修改、删除),冷切换则恰好相反。报表业务很不稳定,业务开展的过程中会刺激出更多查询统计需求,如果每次需求实现后都要等系统空闲(往往是非工作时间)时重启系统才能让修改后的报表生效,那将会对业务使用造成非常大影响(延迟)。因此在需求经常会变化的报表业务中,热切换显得尤其重要。事实上,在报表业务中要实现热切换并不难,只要在开发报表时选择合适的技术手段,避免使用诸如 JAV

2020-06-29 11:13:17 157

转载 报表工具能用来做 DashBoard 和大屏吗?

我们首先来理一下 DashBoard、大屏和报表的关系。DashBoard 是指企业仪表盘,也叫管理者驾驶舱,通常被简称为 DBD。从表现形式上来看,DBD 由多个决策者关注的各类指标数据拼接而成,每部分数据的表现形式不同,可以是图形、表格或文字,可以理解成每部分是一个报表;从技术本质上来看,DBD 是由多个 HTML 元素(布局)组成的页面,跟普通的页面是一样的,从这点来看 DBD 的本质和报表的本质并无差异。大屏又是什么呢?(这里我们只说数据分析呈现类的大屏)大屏是在一个(或多个拼接的)大型

2020-06-29 10:57:18 72

转载 报表为什么会没完没了?怎么解决这个问题?

可以先想一下自己的部门或项目组是否面临这些问题:1. 投入很多技术力量做报表,却还是疲于应付2. 用了高端报表工具和敏捷 BI,却还是不够用3. 技术高手用来做报表,感觉很浪费4. 对于频繁多变的报表需求,需要低成本应对方案专门用于统计分析的报表业务有一个特点,就是业务稳定性非常差。在业务开展过程中会催生很多新的查询需求,而且已实现的查询需求还会经常变化,这就造成了没完没了的报表。所以经常会有这么一段对话报表没完没了是需求使然,无法规避,只能适应,而目前主要的是问题是普遍缺少一种低成本的

2020-06-29 10:55:28 97

转载 报表的 SQL 注入风险是什么意思?如何防范?

啥是 SQL 注入风险?数据库要执行 SQL 访问数据,数据库是个执行机构,它只会检查传来的 SQL 是不是合乎语法,而并不会关心这个语句是否会造成伤害(数据泄露或破坏)。正因为只要符合语法规则就会执行的机制,导致 SQL 有了注入的风险。SQL 本身就是个字符串,而且一般没有加密,字符串可能被黑客劫持修改,这样就可能造成数据库执行了不该执行的动作。SQL 注入的惯用做法是通过把 SQL 子串插入到 Web 表单项或页面请求(Url)的查询字符串中提交,最终达到欺骗服务器执行恶意操作的目的。常见案

2020-06-29 10:44:14 244

转载 报表工具有哪些打印技术?

在 C/S 时代,报表是由应用程序显示的,可以直接操控打印机来实现打印。进入到 B/S 时代后,报表呈现变成浏览器的事情了,而浏览器中的 JS 编程不能直接控制打印机,只能依靠浏览器本身的打印能力。这种方式下的问题很多,比如不能精确分页,浏览器一般是根据用户设置的页面大小和 web 页面的内容多少来自行决定分页位置,程序员很难控制;再比如不能准确对齐边边距及打印文字,无法实现发票套打等功能。浏览器为弥补这些能力,提供了 ActiveX 控件,这相当于把原来的 C/S 前端程序搬进了浏览器,这样就可以解决

2020-06-29 10:42:10 113

转载 中间表是什么?和报表有什么关系?会带来怎样的问题?又如何解决?

在数据库中有一类用于保存中间计算结果的物理表,通常被称为“中间表”。中间表主要跟 OLAP(在线联机分析)业务有关,产生的原因主要有以下几方面。中间表来源1. 计算逻辑复杂在 OLAP(报表或查询)业务中,有些计算逻辑很复杂,每次都从头写会导致报表开发过于繁琐,而且有的计算用 SQL 很难写出来。这时会采用中间表事先计算好,再基于预计算的中间结果开发报表。计算逻辑复杂常见于报表业务中,以固定报表最为常见;多维分析则比较少见。2. 查询性能差当查询涉及的数据量很大或者计算逻辑很复杂时查

2020-06-16 16:27:31 184

转载 什么是大报表?如何解决大报表的问题?

实际业务中有些报表比较“大”,查询出的报表数据行数可以达到几千万甚至上亿,这类行数很多的报表通常被成为“大报表”。大报表大部分情况下是清单明细报表,少量是分组报表。大报表查询通常不会采用一次性取出所有记录再交给前端呈现的方式,因为这样要等很久,用户体验极差;而且报表服务器内存也吃不消。常见的方式是通过分页来呈现大报表,一次只取一小部分数据,取数结束后立刻交给前端呈现,当页码变化时再取出相应页数的数据,这样可以加快报表呈现速度,用户几乎没有等待感。具体如何实现呢?有几种方式。1. 数据库分页

2020-06-16 16:25:45 127

转载 报表的性能问题是怎样产生的?又该如何解决?

报表性能是总也避不开的话题,报表作为 OLAP(在线联机分析)中的主要应用场景,无论从涉及数据的宽度(表数量),还是数据的广度(查询范围)都可能非常巨大;而且在报表中还经常伴随非常复杂的数据处理逻辑,这些都会影响报表的运行速度。而服务器环境、数据库环境、JDBC 效率、网络环境、客户端环境这些也都都跟报表性能密切相关。报表性能可能跟很多因素有关,非常复杂。这里我们试着从报表运行的各个阶段来分析报表性能问题产生的主要原因及其应对方法。未尽之处,欢迎讨论。我们知道报表运行主要分报表解析、数据准备、数据传

2020-06-16 16:23:58 153

转载 什么是报表的多样性数据源问题?如何解决?

在报表开发早期,报表连接的数据源基本只有关系数据库,而且经常只有一种或者只有一个数据库。但今天就不一样了,数据源种类繁多,除了 RDBMS 还有1.MongoDB、Cassandra、HBase、Redis 这些 NoSQL 数据库;2.TXT/CSV、Excel、JSON/XML 等文件;3.HDFS 等分布式文件系统;4.webService;5.ES、Kafka 等其他数据源形式……当这些都成为报表数据源,报表需要从这些数据源分别或混合取数运算进行报表呈现时,报表就出现了多样性

2020-06-16 16:21:39 117

转载 用存储过程和 JAVA 写报表数据源有什么弊端?

我们在报表开发中经常会使用存储过程准备数据,存储过程支持分步计算,可以实现非常复杂的计算逻辑,为报表开发带来便利。所以,报表开发中这样的存储过程并不少见:3008 行,141KB 的存储过程,会给报表开发带来什么不好的影响?1. 编辑调试性存储过程难以编辑调试,这样几千行存储过程的开发周期往往要以周或月计,这样会严重影响报表的开发效率,而业务提的报表需求似乎都“很急”。2. 维护性相对开发的一次性,维护的工作可能要经常做。实际业务中报表经常会修改,这种现象叫做报表业务的稳定性差。报表的数

2020-06-16 16:18:32 220

转载 为什么说当前报表开发的工作量主要在数据源环节?又如何解决呢?

我们知道,报表开发主要有两个阶段。第一阶段:数据准备。将原始数据加工成报表需要的结果集(数据源);第二阶段:数据呈现。根据已准备的结果集(数据源)编写表达式将数据以表格或图形方式呈现。这两个阶段虽然处于同一报表开发过程,但实现方式却大不相同。通常原始数据距离报表“能用”还相去甚远,通过 SQL/JAVA/ 存储过程等编码方式准备报表可用的数据源是第一阶段的目标,过程中可能涉及复杂的数据处理过程,因而这个阶段会牵扯较多的精力,占用的工作量也多。数据源准备好后,通过报表工具来解决数据以何种方式(

2020-06-16 16:02:56 112

转载 报表输入页码翻页(润乾 V2018)

报表数据分了太多页,一页一页翻页查看数据嫌麻烦,可以试试这种翻页效果——输入页码翻页。润乾报表提供了翻页相关的 JS 函数,可以在报表展现的页面中添加 JS 调用翻页函数实现输入页码跳转到对应页。1. 在 showReport.jsp 中 html 标签中添加属性userFuncBarElements="<input type='text' style='width:50px;' value='' name='atpage' id='atpage'><input type='

2020-06-16 16:00:36 127

转载 实现报表滚动到底部翻页效果

报表数据分多页在页面中显示,为了用户翻看数据方便,报表页面都会有按钮,方便用户点击按钮查看其他页的数据,按钮的翻页方式比较常见,润乾报表展现页面提供的就是这种方式。这里介绍另一种翻页方式,鼠标滚动来翻页查看数据。基本实现思路就是在报表展现页面中加鼠标滚动事件,滚到底就调用润乾自带的函数。在报表展现的页面 showReport.jsp 中添加下面的 JS:if (window.addEventListener)//FF,火狐浏览器会识别该方法 window.addEventListe

2020-06-16 15:57:50 162

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除