前几天看了一下BIRT。 想起在前一家公司使用Oracle BAM, 当时就我一个人搞BAM,从零开始,把东西学的差不多后发现Oracle BAM要做起应用来极其崩溃,几乎要把我折磨死。Bug一堆不说,功能设计也相当鸡肋。虽然可以理解,做到Oracle BAM那么不编程就实现实时确实很难,但是感觉Oracle的设计方向有问题。把东西封装的太死,花大量时间做功能的封装,几乎没有任何扩展,这样的好处是如果只用到了它提供的功能,万事大吉,做的还快,但是一旦它的功能没法满足需求,那么就完蛋了。
1.Report的产生只能按照BAM提供的套路,直接从DataObject里生成,提供的套路有限。大概就是sql功能的限制版,限制只能在一个DataObject上操作。 经常遇到的问题是,为了某个report建了一个DataObject; 之后的需求要用同样的数据生成另外的report,但是因为BAM提供的套路有限,可能这个时候的数据格式就没法生成我们要的report了,就只能再建一个DataObject。造成大量数据重复,集成复杂化。BAM对比BIRT的一个不足是,BIRT可以从一个SQL的执行结果里生成report,这样SQL就可以对数据进行一些预转换来满足业务要求。BAM没有类似的功能,考虑到BAM需要截获数据的变更,所以通过sql来做确实有点困难,但是还是希望有个类似的功能出来。
2.Report的style只能在页面上的那些选择之类来更改,没有一个统一的CSS。 这样如果大老板希望所有report的颜色之类变变,那就只能把自己当苦力,一个一个改了。当时确实碰到这个问题,好在被TL挡住了,不然要累死。
3.BAM提供一个基于web的report编辑器。report里的view的布局之类也在web上做,用鼠标托拉调整大小,对齐之类。没有提供任何帮助的工具,没有坐标,没有水平线,垂直线,百分比,或者直接输入值的地方。反正什么都没有,想要把页面布局的好看些那就哭去吧。好在后来我做了个小工具,把report先导出来,导出的文本其实是个XML,把report内容的部分截出来,把< > & 之类的字符按XML转义的替换一下,生成一个新的xml,直接更新xml的内容,可以直接调整大小,颜色之类。完了把字符替换回去,并入原来的XML再导入到BAM。
4.动态性不足,没有地方让用户可以自己输入javascript之类来对页面进行些自定义的操作。虽然BAM生成的也是html,但是Oracle把这些都封装死了,没法潜入javascript ;再比如calculator field,其实也可以做到用写动态语言自己写,现在只能用BAM的功能,就算对字符串进行简单操作都变得很困难。
5.bug太多,产品还不够稳定;封装太死,提供的功能的一致性不够强。很多我们认为它会提供的功能最后发现没有,做任何事情前都要亲手做一下,切切实实的试试才能知道到底能不能做。比如,一个Row Group里面不能包含另外一个Row Group; Row Group的title字体没法改(可以用3里提到的那个工具改);Drill Across的参数不能含有 ‘,’(BAM在javascript里写死用这个作为参数分隔符);Drill Across不能用Calculator field作为参数等等。
分享到:
相关推荐
如何架设Java版本的BAM 因为Java版本的BAM与之前基于.Net版本的BAM安装方式不同,给发布人员带来不便,特将安装过程的顺序记录下来
业务价值 11g 中的主要特性 体系结构 演示
BAM1020 粒子监测仪 操作手册 说明书,中文版,操作手册,Met One 仪器型号BAM-1020 利用β-射线衰减原理自动测量并记录空气中微粒的浓度, 这种方法提供了一种简单测定浓度的方法,微粒的单位是毫克或微克每立方米...
用C写的神经网络,ADALINE,SOM,BAM,BPN,CPN,HOPFIELD,绝对经典、实用,测试OK!
解析bam文件中flag标签
anoda great matlab source code.. use at ur free willl
bam-readcount-0.8.0.tar.gz
Gartner创造了BAM这个新名词,为IT行业的三字经又添了一个新成员。BAM的具体含义是:“业务活动监控(Business Activity Monitoring),它提供对业务绩效指标的实时访问,以改进业务运作的速度和效率。
BAM-----关于神经网络的资源,源程序.
BAM注意力机制——Pytorch源代码
关于BAM神经网络算法源代码,内含编译后的EXE程序
fastq_to_bam.slurm
BAM Administrator’s Guide (BAM 管理工具说明文档)----From Oracle
研究了面向服务的业务活动监控(BAM)系统设计问题。在分析BAM的几类系统模型优缺点的基础上,立足于BAM系统的动态感知、协同工作和实时处理数据,采用事件驱动体系架构,提出了一种基于事件、面向服务的业务活动...
bam-readcount bam-readcount在BAM或CRAM文件上运行,并在单个核苷酸位置生成指标。 这些指标可用于滤除误报变异调用。 对于支持,请上尽可能多的关于最常见的问题bam-readcount已经有回答。建造需要 C++ 工具链和...
bam文件标签含义.pdf
E-BAM PARTICULATE MONITOR OPERATION MANUAL E-BAM-9800 REV M This document is organized with the most important information toward the front of the manual, such as site selection, installation, setups,...
jbpm-bam-5.1.0.Final.jar jbpm5
华为HLR相关技术资料,HLR9820V9_BAM原理简介
人工智能神经网络中的bam算法的实现方法,学神经网络的同学请使用