润乾报表如何远程调用集算器脚本文件

在远程服务器192.168.2.12上有一个集算器企业版脚本文件,本机192.168.2.4的报表想要远程调用这个脚本文件,那就需要通过企业版的分机服务器和集算器jdbc来完成,具体步骤如下:

1. 安装集算器企业版

在远程服务器192.168.2.12上安装集算器企业版,并设置企业版系列号。

2. 启动分机服务器

[集算器企业版安装目录]\esProc\bin 路径下,可以找到esprocsEE.exe或者ServerConsoleEE.batlinux下为ServerConsoleEE.sh)文件,直接运行它来启动或配置服务器。

1png

切换到【分机 服务器】,点击【选项】,设置主目录、日志级别等信息:

2png

点击【配置】,设置分机列表:

3png

设定客户端白名单,如下:

4png

选定 【启用】后,可以在客户机名单列表中,设定允许调用服务器的 IP 地址白名单,不在设定范围中的 IP 地址将无法调用服务器执行计算。

服务器设定完成后,点击 【确定】保存配置,此时自动设定对应的配置文件unitServer.xml,该文件位于 [集算器企业版安装目录]\esProc\config 中。

启动服务器:

5png

3. 配置脚本文件中的数据源

远程调用的示例脚本用到了hsql数据库,所以需配置hsql数据源。

集算器中,通过工具 - 数据连接,新建数据源,如下图所示:

6png

如果使用其他数据库,自行准备数据库JDBC驱动,放入[集算器企业版安装目录]\common\jdbc中。

前面通过界面配置的系列号、主目录、日志级别、数据源等信息,都会自动保存到配置文件raqsoftConfig.xml,该文件位于 [集算器企业版安装目录]\esProc\config

4. 启动数据库

示例脚本中的数据源用的产品自带的demo数据库。在192.168.2.12[集算器企业版安装目录]\esProc\bin下启动startDataBase.batlinux下启动startDataBase.sh)。

5. 脚本文件

集算器脚本jdbc_test.splx内容如下:


A

1

=connect("hsql").query@v("select EID,NAME,GENDER,DEPT,BIRTHDAY from employee")

2

=A1.sort@v(BIRTHDAY)

3

return A2

该脚本对employee表中的雇员按生日进行排序,A2返回值为纯序表。query@vsort@v为集算器企业版功能。

将脚本放到192.168.2.12上集算器企业版的主目录中,也就是步骤2中设置的主目录D:\files

6. 部署企业版jar

[集算器企业版安装目录]/esProc/lib下拷贝esproc-ent-*.jaresproc-ext-*.jar(最好一并更新集算器企业版中的esproc-bin-*.jar,以免出现兼容问题),放到[润乾报表安装目录]\report\web\webapps\demo\WEB-INF\lib下。

调用脚本的返回值为非企业版功能时,该步骤可省略。

7. 部署 raqsoftConfig.xml

在配置文件raqsoftConfig.xml中指定远程访问服务器的ip及端口号。该文件位于[集算器企业版安装目录]\esProc\config 下,将文件复制到192.168.2.4润乾报表的类路径里,此时配置文件的名称不可更改。然后手动在文件的<JDBC> ... </JDBC>节点里加上以下代码:

<Units>  
            <Unit>192.168.2.12:8281</Unit>  
</Units> 

7png

8. 润乾报表中配置数据源

润乾报表中,通过工具 - 数据源菜单,新建数据源,选择"esProc"类型。

8png

onlyServer用于控制当前jdbc是否对服务器进行远程计算,为true表示远程计算;false时表示本地计算。

在使用集算器JDBC时,会自动在类路径中加载raqsoftConfig.xml,此时配置文件是不能改名的。但是如果集算器JDBC的连接串中使用了...?config=...的格式,即会加载连接串中config所指定的.xml文件作为配置,而忽略默认配置raqsoftConfig.xml中的定义。

例如:数据源URLjdbc:esproc:local://onlyServer=true&config=E:/files/myconfig.xml,则使用myconfig.xml中的配置。

9. 设计报表

润乾报表中,通过文件 - 新建报表,使用第8步配置的数据源PJDBC,并选择"存储过程"类型的数据集。

9png

在存储过程数据集界面,输入:call jdbc_test()

10png

点击【确定】。此时可在192.168.2.12的分机服务器窗口中,看到服务器执行计算的相关信息:

11png

生成网格报表:

12png

报表预览结果:

13png