"我们在输入报表参数, 点击查询按钮之后, 想要先访问某个 restful 服务进行运算并写库, 然后再访问数据库, 这样可以做到吗?"
我们在输入报表参数, 点击查询按钮之后, 想要先访问某个 restful 服务进行运算并写库, 然后再访问数据库, 这样可以做到吗?
可以实现。可以使用集算器数据集,在集算器数据集中可以通过脚本执行代码调用你们的服务,可以更新数据库数据,最后从数据库中取数返回给报表。还有一种办法,如果你们的那个 result 可以通过 java 调用能完成所有需要的操作,那么可以看下报表的数据集监听类,可以在取数前执行 java 代码,然后再执行正常的取数,可以参考下报表帮助文档 程序员教程
我们的 restful 服务 http://192.168.X.XXX/add_task 接收 json 形式的参数对数据库进行更新, 如果成功则返回 json 形式的 suc. 如果用集算器的那个方案, 有 Demo 供参考吗?
具体的 demo 没有,主要是那个 resful 服务之前没处理过。大概思路和参考可以说下,在集算器中有个 httpfile 函数,这个可以调用 url 链接并且返回相应数据,如果返回的是 json,集算器里是可以将其转换成常见的二维表形式的,将 json 转换成二维表方式,可以参考在线文档:http://doc.raqsoft.com.cn/esproc/tutorial/json.html或者也可以看下这个帖子:http://c.raqsoft.com.cn/article/1534487651664接下来就看怎么调用你的 restful 服务器了,看你要求,应该是先将一个 json 格式数据传给 url,这里可以用 httpfile 函数,通过该函数访问 url 时可以传入参数,具体可以参见 httpfile 的函数帮助,在集算器安装目录的 doc 目录中有函数帮助文档,这样传入一个 json,然后你们的 restful 服务处理数据,返回 json 数据给集算器,集算器处理这个 json 将解析后的数据做为结果集在返回给报表。报表调用集算器方法,可以见下这个:http://c.raqsoft.com.cn/article/1534472709457
你好, 我们的 restful 服务是一个接受 post 请求的地址, 需要首先访问这个地址, 并以 json 的形式将报表入参传输过去. 我看了 httpfile 这个命令, 好像是访问服务器上的 dfx 文件?
httpfile 也可以不是 dfx,可以是其他 url,可以看下 httpfile 函数帮助最下边的例子。
你好, 我写了如下的 dfx 文件设置为 ds1
=httpfile(“http://192.168.6.228:8081/barra”:“GBK”,“user=hi&type=json”:“GBK”)
在 rpx 中的单元格
ds1.select(col1)
但是服务器没有收到请求, 是否是运行方式不对?
httpfile 读入后,还需要 read,import 等操作,这个具体可以看下集算器帮助文档:http://doc.raqsoft.com.cn/esproc/tutorial/json.html在这个靠下部分有 httpfile 返回 json 格式数据的处理办法,将处理完之后的返回给报表,可以先在集算器下调试下比较方便些
=httpfile(“http://localhost:6080/myweb/servlet/testServlet”:“GBK”
,“table=employee&type=json”:“GBK”)这里面的 employee 可以是变量 (报表入参) 吗?
我们用的是脚本数据集
润乾报表 5.0
可以,这里边可以做拼接,比如 "table="+ 参数名或者单元格名称
谢谢, 问题解决了.
可以实现。
可以使用集算器数据集,在集算器数据集中可以通过脚本执行代码调用你们的服务,可以更新数据库数据,最后从数据库中取数返回给报表。
还有一种办法,如果你们的那个 result 可以通过 java 调用能完成所有需要的操作,那么可以看下报表的数据集监听类,可以在取数前执行 java 代码,然后再执行正常的取数,可以参考下报表帮助文档 程序员教程
我们的 restful 服务 http://192.168.X.XXX/add_task 接收 json 形式的参数对数据库进行更新, 如果成功则返回 json 形式的 suc. 如果用集算器的那个方案, 有 Demo 供参考吗?
具体的 demo 没有,主要是那个 resful 服务之前没处理过。
大概思路和参考可以说下,在集算器中有个 httpfile 函数,这个可以调用 url 链接并且返回相应数据,如果返回的是 json,集算器里是可以将其转换成常见的二维表形式的,将 json 转换成二维表方式,可以参考在线文档:
http://doc.raqsoft.com.cn/esproc/tutorial/json.html
或者也可以看下这个帖子:
http://c.raqsoft.com.cn/article/1534487651664
接下来就看怎么调用你的 restful 服务器了,看你要求,应该是先将一个 json 格式数据传给 url,这里可以用 httpfile 函数,通过该函数访问 url 时可以传入参数,具体可以参见 httpfile 的函数帮助,在集算器安装目录的 doc 目录中有函数帮助文档,这样传入一个 json,然后你们的 restful 服务处理数据,返回 json 数据给集算器,集算器处理这个 json 将解析后的数据做为结果集在返回给报表。
报表调用集算器方法,可以见下这个:
http://c.raqsoft.com.cn/article/1534472709457
你好, 我们的 restful 服务是一个接受 post 请求的地址, 需要首先访问这个地址, 并以 json 的形式将报表入参传输过去. 我看了 httpfile 这个命令, 好像是访问服务器上的 dfx 文件?
httpfile 也可以不是 dfx,可以是其他 url,可以看下 httpfile 函数帮助最下边的例子。
你好, 我写了如下的 dfx 文件设置为 ds1
=httpfile(“http://192.168.6.228:8081/barra”:“GBK”,“user=hi&type=json”:“GBK”)
在 rpx 中的单元格
ds1.select(col1)
但是服务器没有收到请求, 是否是运行方式不对?
httpfile 读入后,还需要 read,import 等操作,这个具体可以看下集算器帮助文档:
http://doc.raqsoft.com.cn/esproc/tutorial/json.html
在这个靠下部分有 httpfile 返回 json 格式数据的处理办法,将处理完之后的返回给报表,可以先在集算器下调试下比较方便些
=httpfile(“http://localhost:6080/myweb/servlet/testServlet”:“GBK”
,“table=employee&type=json”:“GBK”)这里面的 employee 可以是变量 (报表入参) 吗?
我们用的是脚本数据集
润乾报表 5.0
可以,这里边可以做拼接,比如 "table="+ 参数名或者单元格名称
谢谢, 问题解决了.