找回密码
 立即注册

QQ登录

只需一步,快速开始

爱飞的鱼_

注册会员

2

主题

7

帖子

23

积分

注册会员

积分
23
  • 87

    金币

  • 2

    主题

  • 7

    帖子

最新发帖
爱飞的鱼_
注册会员   /  发表于:2024-8-17 20:28  /   查看:1841  /  回复:11
1金币
目前使用的是ActiveReports 18





前端使用createViewer方法加载报表时传递了reportParameters,但是后端无法获取到参数



后端代码:



查阅很多帖子,感觉别人都是可以获取到,为什么我不能获取呢?烦请指导一下,感激不尽





附件: 您需要 登录 才可以下载或查看,没有帐号?立即注册

最佳答案

查看完整内容

您好,这是我们测试了一下,您可以改一下:

11 个回复

倒序浏览
最佳答案
最佳答案
Felix.LiWyn认证
超级版主   /  发表于:2024-8-17 20:28:17
来自 10#
您好,这是我们测试了一下,您可以改一下:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
Eden.SunWyn认证
超级版主   /  发表于:2024-8-19 14:21:19
2#
问题描述:
获取报表参数;

问题解决:
您好,您试试下面这个教程,将参数值拼接在报表文件名称后面,然后后端代码处理获取:
https://gcdn.grapecity.com.cn/fo ... &extra=page%3D2


此外,您的AR是什么版本的呢?从您的代码上来看,您直接使用的 create() 创建,首先这个方法是在报表文件内部传递参数,您需要先获取到报表文件,在从报表文件中获取参数值的。
这个方法在不同的版本可能不太一样,比如在15上是 create,AR17是createView。
您在这里根军您的版本来查询使用再试试呢:
https://developer.mescius.com/activereportsnet/docs/

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
爱飞的鱼_
注册会员   /  发表于:2024-8-20 15:59:46
3#
我用的是AR18(GITHUB 下载的代码),只不过前端使用JS代码库我把15和18的都获取了下来,因为我发现18的没办法直接使用JSViewer.create方法来创建报表(您可以看下我注释的js代码片段)
但是现在不管使用create方式还是createViewer方式来创建报表都无法传递参数;我参考了很多其他帖子,貌似都可以传参为何我的不行?

此外,我还想了解下,如果我报表的数据想通过外部传参的方式给他设置进去该如何来实现呢?比如我展示时直接使用读取数据库方式来展示数据,但是打印的时候使用外部传参方式给他设置数据源
回复 使用道具 举报
Eden.SunWyn认证
超级版主   /  发表于:2024-8-21 10:26:04
4#
本帖最后由 Eden.Sun 于 2024-8-21 10:28 编辑

不建议在AR18的项目中使用AR15的东西,版本不同,可能会有兼容性或者不可预测的问题。
  1.     settings.LocateDataSource = args =>
  2.     {
  3.         var pa = args.Parameters[0].Value;

  4.         DataTable dt = new DataTable();

  5.         dt.Columns.Add("col1");
  6.         dt.Columns.Add("col2");
  7.         dt.Columns.Add("col3");

  8.         dt.Rows.Add(1, 1, 1);
  9.         dt.Rows.Add(2, 1, 1);
  10.         dt.Rows.Add(3, 1, 1);
  11.         dt.Rows.Add(4, 1, 1);
  12.         dt.Rows.Add(5, 1, 1);
  13.         dt.Rows.Add(6, 1, 1);

  14.         return dt;
  15.     };
  16. });
复制代码


另外您的这个问题,获取参数,在AR18中写法有变化,您可以参考一下:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
Eden.SunWyn认证
超级版主   /  发表于:2024-8-21 10:29:38
5#
本帖最后由 lucas.Yan 于 2024-8-22 17:43 编辑

AR18  JSViewer 的创建报表的方式,您可以参考:https://developer.mescius.com/ac ... izationOptions.html


其他的开放出来的api。也可以进行搜索查看。
回复 使用道具 举报
Eden.SunWyn认证
超级版主   /  发表于:2024-8-21 10:53:49
6#
Eden.Sun 发表于 2024-8-21 10:29
AR18  JSViewer 的创建宝宝的方式,您可以参考:https://developer.mescius.com/activereportsnet/docs/lat ...

您说的后面的问题,预览查看时直接读取数据库数据是正常的流程。

您说的打印的时候外部传参,不太明白您的具体使用场景。感觉想要不通过预览,直接把参数传到报表进行打印。
您可以看下这个静默打印的教程。可以在导出的时候添加参数,并且不用预览报表进行打印;
https://gcdn.grapecity.com.cn/showtopic-163480-1-1.html
回复 使用道具 举报
爱飞的鱼_
注册会员   /  发表于:2024-8-21 17:39:55
7#
你好,为了方便您这边帮忙确认问题原因我上传了一个附件程序,烦请帮忙看下是哪里的问题呢,非常感谢【抱拳】

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
Eden.SunWyn认证
超级版主   /  发表于:2024-8-22 10:56:57
8#
爱飞的鱼_ 发表于 2024-8-21 17:39
你好,为了方便您这边帮忙确认问题原因我上传了一个附件程序,烦请帮忙看下是哪里的问题呢,非常感谢【抱拳 ...

是打印的问题吗?那您开个新帖,咱们在新帖中协助您解决问题。一个帖子解决一个问题
回复 使用道具 举报
爱飞的鱼_
注册会员   /  发表于:2024-8-22 11:25:04
9#
不是的,就是传参的问题,非打印问题
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部