历史版本25 :SAP 数据集插件 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 描述编辑

在客户SAP系统集成时,在7.0.4版本之前只能通过程序数据集或者是ETL工具进行取数,实现起来非常麻烦,希望有类似JDBC数据连接的设置方式来设置SAP数据连接。
FineReport在8.0版本中,将SAP数据连接功能做成一个插件的功能,启用插件后,可在服务器数据连接处新增数据连接类型SAP数据连接,在数据集中添加SAP数据集类型。

2. 环境准备编辑

与SAP系统进行连接,需要导入SAP接口包和本地库,并确保运行的JVM能够找到接口包和本地库,下载地址为SAPjar包和本地库,服务器和本地设计器导入的接口包和本地库有所区别,下面一一介绍。

注:下文中使用到的sap的文件请到sap官网下载,可以联系技术支持协助下载
2.1 windows系统服务器
报表工程部署在windows系统的服务器下,以tomcat为例
注:首先报表工程里需要安装sap插件
(1)32位jdk
windows系统安装的32位的jdk,根据jdk版本的不同下载不同的接口包和本地库。
jdk1.4
sapjco.jar接口包放在%tomcat%\lib文件夹下;
librfc32.dll和sapjcorfc.dll本地库放在C:\Windows\System32文件夹下。
jdk1.5及以上
sapjco3.jar接口包放在%tomcat%\lib文件夹下;
sapjco3.dll本地库放在C:\Windows\System32文件夹下。
注:如果数据连接失败,可以尝试将dll文件放置在系统jre的bin目录下,比如说,C:\Program Files\Java\jre7\bin
(2)64位jdk
windows系统安装的64位的jdk,根据jdk版本的不同下载不同的接口包和本地库。文件的放置路径与32位jdk的放置路径一致,只是下载地址有所不同。
jdk1.4同32位
jdk1.5及以上同32位
注:win2003和windows xp的系统在连接SAP时,需要下载安装Microsoft Visual C++ 2005 SP1,32位系统请点击Microsoft Visual C++ 2005 SP1 x86下载安装,64位系统请点击microsoft visual c++ 2005sp1_x64.rar
2.2 linux系统服务器
报表工程部署在linux系统的服务器下,与windows系统服务器类似,也分32位和64位的jdk,以tomcat为例
注:首先报表工程里需要安装sap插件
(1)32位jdk
libsapjco3.so放到jar文件放到tomcat所用jdk的jre\bin目录;
sapjco3.jar放在%tomcat%\lib文件夹下;
libsapjco3.so放在usr\lib文件夹下,若是linux为64位的系统,放到usr\lib64文件夹下。
(2)64位jdk
Linux系统安装的64位的jdk,下载对应位数的接口包和本地库。文件的放置路径与32位jdk的放置路径一致,只是下载地址有所不同。
同32位

注:仍连接不了,看报错,例如验证SAPJCO失败,缺少依赖包 libstdc++.so【SAPJCO2才需要,而SAPJCO3不需】,则需要安装共享库
2.3 本地设计器
如果是在本地设计器上设计报表使用到SAP数据连接,由于FineReport设计器启动时是启动在32位jdk1.6版本上的,所以,不论系统安装jdk的32位的还是64位的,我们只需要下载windows系统下的32位的jdk1.6版本的sapjco3.jar和sapjco3.dll,将sapjco3.jar放置在D:\FineReport_8.0\lib下面,dll本地库文件放置在D:\FineReport_8.0\jre\bin文件夹下即可。
注:8.0及以后的版本需要安装sap插件,安装方法见3.2

3. SAP数据连接编辑

3.1 建立连接

选择服务器>定义数据连接,点击按钮,选择SAP,如下图:
主机名局域网中已配置的SAP的主机名称,也可以写该机器的IP地址。
System NumberSAP系统中设置的属性,用于交互的端口号,一般来说是00,具体根据SAP系统来定。
客户端SAP 系统管理的业务和数据的最大有效集合,也是SAP系统的一个属性,具体根据SAP系统决定。
连接池属性SAP系统中的容量和最大连接数。

222

3.2安装sap插件

注:如这里没有SAP连接,则需要安装sap插件,设置方法往下看。
设计器插件安装方法参照插件的安装管理
服务器安装插件方法参照服务器上安装插件

注:如果是在本地设计器上设计报表使用到SAP数据连接,由于FineReport设计器启动时是启动在32位jdk1.6版本上的,所以,不论系统安装jdk的32位的还是64位的,我们只需要下载windows系统下的32位的jdk1.6版本的sapjco3.jar和sapjco3.dll,将sapjco3.jar放置在D:\FineReport_8.0\lib下面,dll本地库文件放置在D:\FineReport_8.0\jre\bin文件夹下即可。
3.3 连接测试
点击测试连接,如果提示连接成功则表示数据连接新建好了,点击确定退出数据连接设置面板。

222

连接成功之后就可以在服务器数据集、模板数据集等地方使用该数据连接,通过该数据连接从SAP系统中取数,详细请查看SAP数据集.