本人实施了北京炎黄盈动的BPM及OA系统,主要目标是对业务流程进行控制和管理,加快Oracle JDE的业务前端录单速度和弥补JDE在流程控制方面的不足,实现BPM数据能与JDE无缝互相结合,经过3个多月的开发,基本上实现了这个目标。

但是AWS本身也有缺陷,主要表现在表单设计和打印格式设计方面,无法实现类似Excel方式的灵活复杂格式表单、表头表尾重复打印、安装用户定义的纸张打印等等,我们的销售前端需要按照一种特殊的纸张打印,打印机的标准纸张里没有,这些功能要求是上线所必须的,但是AWS的开发人员在其系统内部根本无法完成。

考虑到FineReport在表单设计打印方面的极大的灵活易用性,我们故而使用FineReprot和AWS结合完成这个任务。

效果—— AWS销售打印表单

开发配置

系统集成:把FineReport集成到AWS服务的目录下。AWS安装在linux系统中,找到AWS的WEB服务目录WEBAPPS, 把Finereport目录下的WebReport目录拷贝到该目录下,即可实现与AWS同一主机的WEB报表,不需要对AWS配置做任何改变,报表修改后上传覆盖即可。集成后的访问方式为:http://192.168.1.10:8099/WebReport/ReportServer?reportlet=aws/xiaoshoudan.cpt和AWS的地址主机http://192.168.1.10:8099/portal/一致。

报表开发

创建报表数据源、开发报表及格式不讲了,大家可以到帆软官网(www.finereport.com)和帮助文档(www.finereporthelp.com)上自己去看,很简单的。

部署报表到AWS服务器

把Finereport目录下的WebReport目录拷贝到AWS服务器 AWS目录下Webapps下。

表单集成

表单集成的关键是从AWS表单向FineReport报表传递一个流水号的参数,然后调用FineReport报表打印,从AWS实现这个目标有多种方案,主要包括表单链接和JAVA链接两种,经过多次试验和开发,选择了比较简单易于维护的表单链接方案。

该方案实施过程如下:

1、在AWS表单上新增打印按钮和选择打印格式的下拉框;

2、在AWS表单中新增Javascript函数,用Javascript创建在新窗口打开的一个Frame ,并使用这个Frame的source URL参数传递FineReport报表的地址并传递AWS流水号参数给报表;

增加的Javascript内容:

<scripttype="text/javascript">

varmapwin;

functionquery()

{

// create the window on the first click andreuse on subsequent clicks

varsid=document.getElementsByName("AWSFLOWID")[0].value;

//获取参数AWS流程号;

varobj=document.getElementById("dyxz");

//获取报表格式;

var xzz=obj.value;

varurl="http://"+window.location.host+"/WebReport/ReportServer?reportlet=aws/xiaoshoudan";

//FineReport报表的URL部分

url=url+xzz+".cpt";

//URL 加上报表格式部分,实现了5种格式的报表链接,构成完整的URL;

if(sid!=null) url=url+"&lsh="+sid;

var h="<iframe name=mainsrc="+url+" frameborder=1 width=100% height=100% scrolling=yesonload=''></iframe>";

if(!mapwin){

// 打开新窗口,链接到FineReport报表

mapwin = new Ext.Window({

layout:'fit',

title: '销售单打印',

closeAction:'hide',width:1000,

height:800,html:h,y:30

});

}

mapwin.show();}

</script>

3、从AWS中运行程序,调用FineReport报表,实现表单按要求格式打印。

4、销售录单后,点打印表单

FineReport集成到AWS系统中的方案的更多相关文章

  1. 如何在CRM系统中集成ActiveReports最终报表设计器

    有时候,将ActiveReports设计器集成到业务系统中,为用户提供一些自定义的数据表,用户不需要了解如何底层的逻辑关系和后台代码,只需要选择几张关联的数据表,我们会根据用户的选择生成可供用户直接使 ...

  2. 在Windows系统中安装集成的PHP开发环境

    原文:在Windows系统中安装集成的PHP开发环境 刚想学php的,又不会配置复杂php的环境,可以使用集成的,目前网上提供常用的PHP集成环境主要有AppServ.phpStudy.WAMP和XA ...

  3. SpringBoot集成PageHelper时出现“在系统中发现了多个分页插件,请检查系统配置!”

    近日在项目中使用SpringBoot集成PageHelper后,跑单元测试时出现了"在系统中发现了多个分页插件,请检查系统配置!"这个问题. 如下图所示: org.mybatis. ...

  4. C#开发BIMFACE系列39 网页集成开发3:审图系统中三维模型比对

    系列目录     [已更新最新开发文章,点击查看详细] 在建筑施工图审查系统中,设计单位提交设计完成的模型/图纸,审查专家审查模型/图纸.审查过程中如果发现不符合规范的地方,则流程退回到设计单位,设计 ...

  5. C#开发BIMFACE系列38 网页集成开发2:审图系统中的模型或图纸批注

    系列目录     [已更新最新开发文章,点击查看详细] 在运维或协同的场景中,经常需要对模型或图纸进行批注,及时记录已发现的问题并交给相关负责的人员. 在开始实现功能之前,先了解一下BIMFACE中有 ...

  6. iOS 的 APP 在系统中如何适配不同的屏幕的尺寸

    iOS 的 APP 在系统中如何适配不同的屏幕的尺寸 标签: 2007年,初代iPhone发布,屏幕的宽高是 320 x 480 像素.下文也是按照宽度,高度的顺序排列.这个分辨率一直到iPhone ...

  7. Java生鲜电商平台-生鲜系统中微服务架构设计与分析实战

    Java生鲜电商平台-生鲜系统中微服务架构设计与分析实战 说明: Java生鲜系统中微服务的拆分应该如何架构设计与分析呢?以下是我的实战中的设计与经验分析. 目录 1. 微服务简介2. 当前现状3. ...

  8. Nas 系统的虚拟化方案

    Nas 系统的虚拟化方案 https://zhuanlan.zhihu.com/p/55025102 对搞技术的人来说,Nas 是个理想的玩具,既然是程序员用的 Nas ,自然要专业一点,不能像小白一 ...

  9. 腾讯云分布式数据库TDSQL在银行传统核心系统中的应用实践

    本文是腾讯云TDSQL首席架构师张文在腾讯云Techo开发者大会现场的演讲实录,演讲主题是<TDSQL在银行传统核心系统中的应用实践>. 我是TDSQL架构师张文,同时也是TDSQL的开发 ...

随机推荐

  1. java多线程功力

    一.操作系统中线程和进程的概念 现在的操作系统是多任务操作系统.多线程是实现多任务的一种方式.多线程编程可以使程序具有两条或两条以上的并发执行线索. 进程是指一个内存中运行的应用程序,每个进程都有自己 ...

  2. bootstrap的下拉框在firefox界面不友好的处理

    http://output.jsbin.com/titaki 以上这个链接在firefix浏览器打开就会发现里面有个小容器,而且下拉按钮样式跟不友好 上谷歌查了一下 1.小容器可以利用select:p ...

  3. Bootstrap源码分析之transition、affix

    一.Transition(过滤) 作为一个基础支持的组件,被其他组件多次引用.实现根据浏览器支持transition的能力,然后绑定动画的结束事件:首先:创建一个Element:然后:迭代查看此元素支 ...

  4. HTML5 模拟现实物理效果,感受 Web 技术魅力

    Ball Pool 是一个基于 HTML5 技术的实验,模拟现实物理效果,让你在 Web 中感受自然物体的运动.玩法介绍:可以随意拖动圆球.点击页面背景.晃动浏览器.双击页面背景或者按住鼠标左键,有不 ...

  5. JavaScript基础19——innerHTML示例

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  6. Winform 图片鼠标滚动查看(放大,缩小,旋转,拖动查看)[日常随笔]

    方法千千万,我只是其中一笔[通过控制PictureBox来控制图片,图片完全施展在控件中]...几久不做,还真有点陌生! 窗体构造中添加鼠标滚动: /// <summary> /// 窗体 ...

  7. Python开发GIS的应用组件包

    Library name Description Reason to install   NumPy This adds support for large multidimensional arra ...

  8. SharePoint 使用脚本为表单绑定事件

    在SharePoint的使用过程中,我们经常需要为表单页面做一些特殊处理,比如说新建页面的时候有多选项的字段,但是只能选择指定数量的选项,尤其在新闻列表或者调查列表等特殊场景中,广泛使用. 下面,我们 ...

  9. ArcGIS Engine环境下创建自定义的ArcToolbox Geoprocessing工具

    在上一篇日志中介绍了自己通过几何的方法合并断开的线要素的ArcGIS插件式的应用程序.但是后来考虑到插件式的程序的配置和使用比较繁琐,也没有比较好的错误处理机制,于是我就把之前的程序封装成一个类似于A ...

  10. 如何编写Vault插件扩展Vault Explorer的功能

    今天练习了一下Vault Explorer的扩展程序,基本上是Vault SDK中的HelloWord示例程序.如果你刚刚开始接触Vault的二次开发,希望对你有帮助. 开始之前,你需要安装Vault ...