找回密码
 立即注册

QQ登录

只需一步,快速开始

shangk

注册会员

8

主题

18

帖子

78

积分

注册会员

积分
78
shangk
注册会员   /  发表于:2023-11-19 22:48  /   查看:2464  /  回复:3
本帖最后由 shangk 于 2023-11-21 10:17 编辑

在jsviewer中通过某一字段分组预览,通过export导出pdf时,如何设置才能按照group分组的字段,导出多个不同pdf文件呢

3 个回复

倒序浏览
Felix.LiWyn认证
超级版主   /  发表于:2023-11-20 14:11:10
沙发

问题描述:
jsViewer 怎么实现分组打印

问题回答:
抱歉,这个目前确实没有办法,暂时还无法在获取分组字段的前提下,做这个打印。目前能提供的有一个方法:

  1. GrapeCity.ActiveReports.JSViewer.export({
  2.   reportID: '报表ID', exportType: 'Pdf', settings: { PrintOnOpen: 'false'},
  3.   callback: (args) => {
  4.     fetch(args)
  5.       .then(response => {
  6.         if (!response.ok) {
  7.           throw new Error('下载失败:网络错误');
  8.         }
  9.         return response.blob();
  10.       })
  11.       .then(blob => {
  12.         const url = window.URL.createObjectURL(blob);
  13.         const a = document.createElement('a');
  14.         a.href = url;
  15.         a.download = '文件名.pdf';
  16.         document.body.appendChild(a);
  17.         a.click();
  18.         a.remove();
  19.       })
  20.       .catch(error => {
  21.         console.error(error);
  22.       });
  23.   },
  24.   reportParameters: [{ name: "报表参数", values: ["参数值"] }]
  25. });   
复制代码
这个可以实现快速导出一个PDF,但是也只是一个。如果我们可以想办法知道所有的分组有哪些。可以给报表加一个参数,然后参数过滤值导出自己。
我们可以通过for循环。然后每次传一个分组。然后在多次调用。就可以了
回复 使用道具 举报
shangk
注册会员   /  发表于:2023-11-20 16:09:54
板凳
本帖最后由 shangk 于 2023-11-20 16:16 编辑

好的,可以了,多谢
回复 使用道具 举报
Felix.LiWyn认证
超级版主   /  发表于:2023-11-20 18:02:38
地板
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部