zysdcyymyw 发表于 2021-1-21 00:44:29

ActiveReports15 Web Designer MVC 如何自定义serverApi

在ActiveReports14 版本中通过
GrapeCity.ActiveReports.WebDesigner.createDesignerOptions(baseServerApi);
可配置自定义的服务端API接口
在ActiveReports15中不起作用

在15版本中应该怎样实现自定义服务端接口?


Lenka.Guo 发表于 2021-1-21 10:40:22

您好
您要通过自定义服务端口要实现什么样的功能呢?可以把您之前 AR14的demo提供给我们吗?我这边测试下。


zysdcyymyw 发表于 2021-1-21 10:51:18

通过自定义服务端接口实现在获取报表文件列表时,根据用户登录信息(我们系统前端传递的一个变量)进行过滤,比如有用户A和B
StartUp中指定的报表文件基础路径是 C:\Reports\
A用户看到的报表文件列表在 C:\Reports\A\ 下面
B用户看到的报表文件列表在 C:\Reports\B\ 下面
处理后的报表文件路径都是上面这个路径下的相对路径
在保存、删除、预览的时候再把前面的用户标识添加上
我之前就是在14版本的Demo下进行修改的,主要修改了里面的baseServerApi文件,在15版本中我发现createDesignerOptions函数没有定义参数,因此传递进去不起作用

想问下在15版本中如何自定义服务端接口,或者是否有其他方式可以实现通过在线设计器传递登录信息到StartUp中UseCustomStore的接口中

Lenka.Guo 发表于 2021-1-21 15:33:38

您可以参考将报表保存到数据库这个demo,里面走的后端实现的保存报表和加载报表服务,这样就可以增加客户的授权信息,去返回对应的报表及列表。
https://gcdn.grapecity.com.cn/forum.php?mod=viewthread&tid=80466&extra=page%3D3
另外您发的js文件 QQ上我也接收到了,我这边也验证后,给您回复。15的接口是比14更丰富的。

zysdcyymyw 发表于 2021-1-21 16:05:51

我看过这个方案,但是不知道应该怎样把登录信息传递到UserCustomStore传递进去的接口中
如何让在线设计器在发起请求的时候通过Cookie和Header携带登录信息
然后怎样在IResourceService中获取传递过来的信息

Lenka.Guo 发表于 2021-1-21 18:41:22

我这边先跑下您的demo,看看是否是V15 designer的设置问题。Cookies可以通过HTTPRequets里面传递。

zysdcyymyw 发表于 2021-1-28 15:50:20

你好,自定义 serverApi 不生效这个问题有解决方案了么

KearneyKang 发表于 2021-1-28 17:51:15

本帖最后由 KearneyKang 于 2021-2-23 11:12 编辑

您好,关于AR15的web在线设计器,设计报表进行保存后的回调可以使用这个方法 designerOptions.dataTab.dataSets.canModify = true;
      designerOptions.dataTab.dataSources.canModify = true;
      designerOptions.onReportSaved = function (options) { console.log(options.id); console.log(options.name) }可以在该方法中进行保存回调的操作

页: [1]
查看完整版本: ActiveReports15 Web Designer MVC 如何自定义serverApi