- 浏览: 18188 次
最新评论
文章列表
FineReport巧用tab组件实现APP的布局效果
1. 版本说明
iOS/Android支持版本
jar包版本
8.4及往后版本
2017年4月1日
2. 描述
tab布局能避免多层次钻取与返回,可以在一个报表内部进行切换,钻
今天给大家介绍一款上手度极低、可用做数据可视化的工具——帆软商业智能FineBI。作为BI商业智能的领导者,它简单易用,人人可用,可以让业务人员自主、灵活、多样的可视化分析,无需任何技术,数秒实现数据可视化。借 ...
1. BI描述
FineBI是一款纯B/S端的商业智能分析服务平台;支持通过web应用服务器将其部署在服务器上,提供企业云服务器。用户端只需要使用一个浏览器即可进行服务平台的访问和使用。因此在配置使用上可分为:服务器硬件配置、web服务器配置、客户端浏览器配置这三项内容。其中服务器硬件配置与web服务器配置是相辅相成的。
注:BI是web应用工程,是在web服务器上执行的。因此BI使用内存实际上是web服务器对应的JVM的内存。因此下文会分别说明硬件内存和BI分配的内存来区分二者。
2. 性能说明与服务器硬件
FineBI的性能主要分为FineIndex性能和数据分析的性能
2 ...
1. 问题描述
填报预览时,我们想获取到某个控件的值相对来说较容易。但如果控件是扩展的,就只能获取到第一个值,无法根据扩展一行行获取对应的值。
例:本意是想获取到袁成洁,结果还是获取到第一个单元格值孙林。
2. 解决方法
我们可以通过js事件来获取对应行控件的值。
3. 示例
1. 描述
FR客户使用FineReport报表并将其集成到自己的产品中,然后提供给最终用户使用,最终用户可以预览FR模板,但是不能打开模板进行设计修改。
FineReport提供了cpt模板Des加密功能来实现此需求,即模板在集成至系统之前被加密了,其他使用者如果想打开模板进行修改设计,就需要输入密码,下面介绍cpt模板加密的使用方法.
2. 加密
2.1 管理员登录
在浏览器地址栏中输入链接http://localhost:8075/WebReport/R
1. 问题描述
进行FineReport数据填报时,如果数据量过大,由于前端浏览器的性能限制,如果将数据全部展现出来,速度会非常的慢,影响用户体验,这时候大家就会想,填报是否能像分页预览一样进行分页呢,实现只加载当前页,从而提高性能,下面我们就来介绍填报分页的制作与浏览过程,在op=write下,使用__cutpage__=v参数(即在url后增加&__cutpage__=v)来启用填报横向不分页纵向分页。
2. 示例
下面我们以1000行数据为例,每页显示200行,分5页显示。
2.1 数据准备
新建数据集ds1:SELECT top 1000 * FROM ...
在企业应用中,通常单个计算机的配置是有限的,而企业应用又是高并发的需求,这个时候会通过计算机集群的方式来提高并发数,从而提高整体应用服务的性能。集群是将多台计算机作为一个整体来提供相关应用的服务。FineBI支持多计算机服务的集群部署,通过集群部署利用有限的计算机资源来有效提高整体应用的并发性能。本文主要介绍整体FineBI集群的思路。
FineBI采用负载均衡集群的模式,将多台服务器创建为一个集群服务器。这里碰到这几个问题:1)web工程的存储问题:FineBI在集群中,由于自身的问题需要多台服务器读取同一个web工程。因此要实现web工程分享。2)系统数据一致性:在FineBI的运行过程 ...
我们经常利用按钮进行一些页面值的处理工作,但是默认的逻辑造成,每次新填报的值,需要点击下空白区域或是执行某个其他操作才可以被正确读取,那么我们如何处理呢?
例:当我们用常规取值的时候,虽然B3单元格录入了值,但是在光标不离开B3的前提下,用JS只获取到了控制而不是实际的值“2”。
想获得B3的值,需要在空白处点击下鼠标,让文本框的左上角的红三角出现才可以。
优化过后则可以将光标强制跳转到A2单元格,使其获得光标,进而强制B3单元格刷新值。
当报表中列出数据太多时,想通过显示按钮隐藏明细数据只显示统计数据。如下图示例,那么该如何实现呢?本文以FineReport为例,来讲述JS如何实现点击参数面板按钮显示或隐藏数据。
打开报表
在参数面板添加一个标签控件,控件名为lable,设置标签控件不可见,控件值为“显示”。
对于一些特殊的模板,可能为了展示的更加丰富、全面会在一个页面放置很多图表。表格等内容。由于内容过多,超出了浏览器窗口的大小导致内容展示不全的情况。这样我们就需要用到JS滚屏效果来解决,这里主要介绍在FineReport中的具体制作方法。
添加加载结束事件
点击菜单模板>模板web属性>分页预览设置,选择“为该模板单独设置”,添加一个“加载结束”后事件,如下图所示:
对于企业大多数员工来说,由于其工作位置是固定的,可以有多种方式进行上班打卡签到以保证该员工有按时正常来上班,但是对于经常需要出差,去客户现场的员工来说,就无法保证他们是否有去上班,所以希望能通过手机位 ...
在报表填报成功后,发送消息至APP会提示数据已更新。再次期间用户需要有查看该模板的权限,如果没有的话,则无法接受到提示信息。那么在FineReport移动端中,如何手动推送APP消息呢?
具体用法
在报表填报成功后事件中添加js,使用ajac发送消息请求
FR.ajax({
url: 'http://192.168.1.120:8033/WebReport/ReportServer?cmd=send_messages&op=fs_mobile_main',
type: 'POST',
data: {user:'sunlin', text:'填报成功,模板A有数据更新',ur ...
最近出现了很多关于帆软报表和泛微OA的集成问题,均出现在“单点登录”上。直接也有相关的文章介绍一些FineReport和泛微集成的背景、价值等,以及FineReport和OA的深度集成的方案,但是并没有提到单点登录的集成方案,今天就简单介绍下FineReport和OA单点登录集成方式。
同步用户信息
单点登录的基础,就是用户信息的同步,FineReport的决策系统中有一个很强大的功能,可以自动帮助用户实现用户信息同步。具体菜单:决策系统-管理系统-用户管理。点击用户管理菜单后,右侧页面右上角有一个“设置”按钮,如下图:
点击“设置”,则会出现如下图的界面。按照下图中的配置进行对应的 ...
在通用的webservice集合中,在集合中使用wsdl取数的方式获取数据,并将数据转换为程序数据集,那么怎样通过wsdl取数并转换为程序数据集呢?
首先将wsdl获取到的数据数据转换为二维数组,然后通过FineReport的程序数据集接口,将数据导入到接口中,wsdl取数的方式有三种,RPC方式调用、document方式调用以及通过axis2的wsdl2java.bat生成客户端调用,前两种方式不生成客户端代码,比较繁琐,最后一种方式生成客户端代码,但是比较简洁。
在浏览器中输入wsdl文件的地址可得知,wsdl中定义了两个取数函数,getDatabaseInfo 和getMobile ...
在使用WebService作为项目的数据源时,希望报表中也是直接调用这个WebService数据源,而不是定义数据连接调用对应的数据库表,这样要怎么实现呢?
在程序中访问WebService应用服务,将WebService返回的数据转为程序数据集,然后在设计器中调用。
以axis1.4上的WebService为例,介绍其取数方式以及将数据转换为WebService的程序数据集的过程。
WebService应用服务
如在Tomcat下的Axis工程中以jwa方式发布了一个WebService应用服务下TestWS2TDClient.jws,返回一个数组数据,如下:
public cla ...