数据分析模式下,如何实现【打印】指定标签页的数据?

前辈们好,请教个问题,提前感谢。

数据分析模式下,有多个标签页。

点击【打印】按钮,如何实现【打印】指定标签页的数据?

image.png

FineReport 冥王星 发布于 2024-12-21 17:31 (编辑于 2024-12-22 19:50)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
CD20160914Lv8专家互助
发布于2024-12-22 22:25(编辑于 2024-12-22 22:47)

变通的方法麻烦。但是可以实现你的需求!

1、比如你现在有8个sheet页。那么你单独制作8个不同的cpt模板出来。cpt模板的名称以你现在sheet页的名称为准!(如果你有10个标签页,那么你就得制作10个不同的cpt模板出来)

独立的cpt模板

image.png

2、目前这个总的报表,写上一个加载结束切换sheet页的事件,然后参数面板放一个隐藏的参数。比如叫bl的参数,这样当用户切换sheet页的时候,会自动给隐藏的bl赋值为当前标签页的名称。

3、然后再结合js调用打印。传参数,把分开的cpt模板调用打印就行了

image.png

$(".fr-sheetbutton-container").click(function() //切换 sheet 时   

{  

    var a = contentPane.$contentPane.data('TabPane').tabBtns[contentPane.selectedIndex].options.name;  //获取当前sheet的名字   

   

    _g().parameterEl.getWidgetByName("bl").setValue(a);      

   

});

image.png

4、具体调用打印传参数。类似如下,你改成你的参数与模板路径就行了

//以下代码是测试过的,你在数据模板预览写加载结束事件

var b=this.options.form.getWidgetByName("sale_name").getValue();//参数改成你自己的。

var a=this.options.form.getWidgetByName("state").getValue();//参数改成你自己的。

var bl=this.options.form.getWidgetByName("bl").getValue();//工作表标签页名称

var printurl="${servletURL}";

var reportlets ="[{reportlet: '/test11/"+bl+".cpt', state:'"+a+"', sale_name:'"+b+"'}]";//注意我的目录多了一个test11你看你的目录来改

var config = {

printUrl : printurl,

isPopUp : false, 

data :{ 

reportlets: reportlets // 需要打印的模板列表 

},

printType : 0, // 打印类型,0为零客户端打印,1为本地打印/

ieQuietPrint : false,// IE静默打印设置 true为静默,false为不静默

printerName : 'Microsoft Print to PDF', // 打印机名

pageType: 0, // 打印页码类型:0:所有页,1:当前页,2:指定页

copy: 1, // 打印份数

};

FR.doURLPrint(config)

数据分析预览与填报分析预览都是可以的!!!!

0524.gif

  • 冥王星 冥王星(提问者) 前辈好。
    这么弄的话,确实是是有点儿麻烦。
    2024-12-23 14:07 
最佳回答
0
snrtuemcLv8专家互助
发布于2024-12-21 18:37

这个目前标准不支持

  • 冥王星 冥王星(提问者) 前辈好。
    在标签页中的单元格上增加【打印】按钮,点击时只打印【当前页】。
    这种方式,能实现吗?
    2024-12-21 19:05 
  • snrtuemc snrtuemc 回复 冥王星(提问者) 目前标准不支持的
    2024-12-21 21:37 
  • 冥王星 冥王星(提问者) 回复 snrtuemc 前辈好。
    在FR标准产品功能范围内,有其他变通的方法吗?
    只要能满足需求就行。
    2024-12-22 11:48 
  • 4关注人数
  • 57浏览人数
  • 最后回答于:2024-12-22 22:47
    请选择关闭问题的原因
    确定 取消
    返回顶部