对比项目 | 润乾报表 | Crystal Report(水晶报表) |
部署与集成 .p#1'% (Java环境) | | |
{X\@5v6
{ ~3#v,!D??
function anonymous() /9cMN+2>
{ >?S)r(
window.open(this.src); -
wg_T"L
} y2
0N9z
}" src="http://www.runqian.com.cn/images/arr_black.jpg" width="3" onload="function anonymous() 6 ?d#F
{ UgI>O:@2L
function anonymous() 8K$O^:ro+
{ X=i?FX
if(this.width>500){this.resized=true;this.style.width=500;} @2M%rD
U
} EWO0E
}" /> 应用集成
| 可直接嵌入应用 | 需部署独立服务器 |
5P%P;*wy)
{ l<#*@VF'5
function anonymous() ^b
r&B~p
{ ]rRNvayg
window.open(this.src); {*KwJ@F
} =|;v
DHQo
}" src="http://www.runqian.com.cn/images/arr_black.jpg" width="3" onload="function anonymous() ov'Y>s:6
{ 5X+x!&"a
function anonymous() %i;b@yc}
{ k rzH&P"
if(this.width>500){this.resized=true;this.style.width=500;} cW)>#
} ^+4T~QCd
}" /> 负载均衡
| 可以直接使用应用服务器的负载均衡体系 | 需要部署独立的一套负载均衡体系 |
U7_cLi--
{ Gi(
6r<D
function anonymous() >)3T1(]y8
{ D"#AP?_+6
window.open(this.src); ZHeZ76>b
} c%E&04}
}" src="http://www.runqian.com.cn/images/arr_black.jpg" width="3" onload="function anonymous() G d/-n
{ 8p eh~_
function anonymous() 7h[g- \y0
{ (8hHHjHuR
if(this.width>500){this.resized=true;this.style.width=500;} &t%Ypwl9
} FYpp nA.0
}" /> 数据库连接
| 可以直接使用应用服务器的连接池 | 需要独立进行数据库连接,可能成为性能瓶颈 |
y}jvAR/&
{ yofKq":u
function anonymous() yr'xS;uj
{ .-i-KB;[9
window.open(this.src); }G dNx@Y-
} OLHnW,
}" src="http://www.runqian.com.cn/images/arr_black.jpg" width="3" onload="function anonymous() Gnx]O%
{ Xd_Gknr>
function anonymous() YJkDh^
{ LPbf
k]
if(this.width>500){this.resized=true;this.style.width=500;} r;\b_{
} =EoMH6dj
}" /> 服务器部署
| 纯Java应用,与平台无关,在各类Unix、Linux和Windows Server上均有成功部署案例 | 与平台相关,在不同操作系统下配置繁琐 |
*0<?,N-
{ )*ux;ti ?j
function anonymous() 61^^Ndr
{ _VD8+w+
window.open(this.src); I.6I^}Q p
} 2|8k
}" src="http://www.runqian.com.cn/images/arr_black.jpg" width="3" onload="function anonymous() (,\b[*^9
{ 9 og 8<
function anonymous() ,iB&QP9gA&
{ 9M&Z[K0
if(this.width>500){this.resized=true;this.style.width=500;} vu^qdErl
} }A@-5s#
}" /> 应用程序接口
| 丰富齐全,结合紧密的J2EE应用程序接口 | 非J2EE接口,通过网络协议,力度不足,统计图常采用古老的CGI方式 |
| | | |
部署与集成 8 J-J1x (非Java环境) | 以独立报表服务的方式运行,与Crystal Report类似 | 以独立报表服务的方式运行 |
| | | |
| 报表设计 | | |
gNF=Zhjg,
{ ~jV>yWE
function anonymous() S
v5|s-
{ 49{3B5%MDq
window.open(this.src); [# 4+wx
b
} WyZRIj(
}" src="http://www.runqian.com.cn/images/arr_black.jpg" width="3" onload="function anonymous() _X
En5
{ h( Vn{8i{
function anonymous() PQ]-3udc/
{ *tluTleN
if(this.width>500){this.resized=true;this.style.width=500;} -=tP
C%
} D-)rZnXW
}" /> 简单的数据列表
| 支持 | 支持 |
olxY9HZy0
{ 4ljgjxaQ
function anonymous() \rq4E8u
(
{ b?Z}P/
k
window.open(this.src); $a82[
} =Jjejm3V
}" src="http://www.runqian.com.cn/images/arr_black.jpg" width="3" onload="function anonymous() ?!~}d[
{ _zbu[b?<x
function anonymous() <e-3~N
&m
{ qpa%p<=M0
if(this.width>500){this.resized=true;this.style.width=500;} JI`M>
u +
} rj$50S"
}" /> 分组报表
| 支持 | 支持 |
'VBkpT_~M'
{ f0$rkB>r
function anonymous() Uix9pVjV[E
{ wttnP
window.open(this.src); 0=*8VRd_
} R1>Z_7RK
}" src="http://www.runqian.com.cn/images/arr_black.jpg" width="3" onload="function anonymous() 1>8hq LjqS
{ 43)w&
function anonymous() yY c]kZv=^
{ (q]1QL'hh0
if(this.width>500){this.resized=true;this.style.width=500;} D!v'<K#Z
} !2\JfaM'w
}" /> 交叉表
| 支持,且与其他报表类型是一致的,可以混合和进行各种变化 | 支持,但是是独立的类型,无法与其他报表形式混合,且不支持各种变化 |
.Ve(ex
{ o1V
FY0c
function anonymous() =B]itB)
{ *0nKUo&GOV
window.open(this.src); 3*Ybdp:K
} L"9x"
JE
}" src="http://www.runqian.com.cn/images/arr_black.jpg" width="3" onload="function anonymous() D~]@n#
{ U$-2NMdm
function anonymous() isBkR-sV
{ .Tr}X
if(this.width>500){this.resized=true;this.style.width=500;}
NL>
} 0DP606}3-
}" /> 图表
| 支持 | 支持 |
or_M7f9jX`
{ ;O=! kUaA
function anonymous() sJFm8<ZrT
{ O%Q)AA
window.open(this.src); 1oiK8qR~
} xNgx/P8
}" src="http://www.runqian.com.cn/images/arr_black.jpg" width="3" onload="function anonymous() NT@I59,
{ ~n2iuFg
function anonymous() #R
8s<u
{ 3_]
hy
if(this.width>500){this.resized=true;this.style.width=500;} bJHZQ~1
} :VDnec{
}" /> 横向展开
| 支持 | 很困难 |
p`8UxqA
{ 5ay@Y,I
function anonymous() ++l(lCu._
{ ;a(-GbZ
window.open(this.src); i0*|+)HJ
} v!`aU];
}" src="http://www.runqian.com.cn/images/arr_black.jpg" width="3" onload="function anonymous() m/:7:W+?
{ <IoEwZN
function anonymous() PT)0Mi<\
{ rjaKYrT
if(this.width>500){this.resized=true;this.style.width=500;} 5&}_<e
} SiUN/n
}" /> 不规则分组
| 支持,在报表中即可轻松实现 | 需要在数据库中建立临时表实现 |
/&gFeP4[.
{ Xi4HPy
function anonymous() zpqIFvu
{ ?M_*5??
window.open(this.src); +-d]KqPM
} s3*h5V
ws
}" src="http://www.runqian.com.cn/images/arr_black.jpg" width="3" onload="function anonymous() gs9\n]If
{ N>Q|n3{,
function anonymous() LP8amxbw^
{ :,{1iu
if(this.width>500){this.resized=true;this.style.width=500;} /s
lz;
} mq)G@CBb+
}" /> 多表数据
| 支持 | 实际不支持,需要预先建立视图,形成复杂的SQL,甚至需要进行预先编程计算 |
"_sm% ^
{ ,eS7G~\X
function anonymous() 2yxj~eSDd'
{ } F: A
window.open(this.src); e{X?`(c1
}
/Pz%km\
}" src="http://www.runqian.com.cn/images/arr_black.jpg" width="3" onload="function anonymous() B48`~C3&
{ "R0H!k6i
function anonymous() R-^ L$ %
{ GcW)R(ZY i
if(this.width>500){this.resized=true;this.style.width=500;} !oBD:%
} .:Tx{
CLsw
}" /> 主从报表
| 无须子表概念即可完成 | 须用子表,数据无法沟通 |
U"Na[b
{ y:#`]hUa
function anonymous() 8V&'7B
{ .{,M6
window.open(this.src); c4{n49
} L7>2LT'
}" src="http://www.runqian.com.cn/images/arr_black.jpg" width="3" onload="function anonymous() >?mgN*LR
{ U5YoJ*S
function anonymous() K<
|