超级链接——导出Excel失败

订单明细表.zip

我根据“FineReportV10.0新手入门”的“超级链接”视频学习制作了相同的两个表“订单信息表”、“订单明细表”和相同的超级链接,其中按日期排序和根据订单号自动打开订单明细都成功了,但根据订单号导出Excel格式的订单明细却不成功,提示“CustomJSError:fr is not defined”。请问是什么原因?如何修正?感谢指导!

添加的脚本如下,其中“reportlets”改为“reportlet”也不行。

window.open(fr.cjkencode("${servleturl}?reportlets=订单明细表.cpt&订单号="+ ID +"&format=excel"));

新的提示:

跳转页面.png

FineReport 笑笑宝贝 发布于 2021-12-25 11:04 (编辑于 2021-12-26 21:55)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
1
CD20160914Lv8专家互助
发布于2021-12-25 12:12(编辑于 2021-12-26 22:35)

你的路径错了。。。

window.open(fr.cjkencode("${servleturl}?reportlets=订单明细表.cpt&订单号="+ ID +"&format=excel"))   

要把你   报表/超级链接的路径加上去才可以。。。

var url = FR.cjkEncode("${servletURL}?reportlet=报表/超级链接/订单明细表.cpt&订单号="+ id + "&format=excel" );

window.open(url);

超级链接.rar

image.png

你的语句这样也可以:window.open(FR.cjkEncode("${servletURL}?reportlet=报表/超级链接/订单明细表.cpt&订单号="+ ID +"&format=excel"));

把上面id的值设置为公式。。=a4

  • 笑笑宝贝 笑笑宝贝(提问者) 非常感谢!将路径补充完整后,将结合“程琼”指导的小写改大写问题,确实弹出了不一样的页面,请看上面新增加的截图。不过建帐号后还是不导出Excel。
    2021-12-26 10:10 
  • 笑笑宝贝 笑笑宝贝(提问者) 最新的代码是这样的: window.open(FR.cjkEncode(\"${servletURL}?reportlets=/报表/超级链接/订单明细表.cpt&订单号=\"+ ID +\"&format=excel\"));
    2021-12-26 10:15 
  • CD20160914 CD20160914 回复 笑笑宝贝(提问者) 多了一个/。。。你复制我的用
    2021-12-26 11:49 
  • 笑笑宝贝 笑笑宝贝(提问者) 回复 CD20160914 直接复制你的来用,提示“id is not defined”。 我改成这样: window.open(FR.cjkEncode(\"${servletURL}?reportlets=报表/超级链接/订单明细表.cpt&订单号=\"+ ID +\"&format=excel\")); 去除你说的/,还是不能导出Excel,还是弹出上面我增加的新的提示:看到此页面,说明你已经成功部署了报表服务器。
    2021-12-26 21:40 
  • 笑笑宝贝 笑笑宝贝(提问者) 回复 CD20160914 我复制上来的代码,不明白为什么自动增加了 $前的\\和“订单号=”、Excel后等的\\,我实际的代码是没有这些的。
    2021-12-26 21:44 
最佳回答
0
程琼Lv4初级互助
发布于2021-12-25 11:11(编辑于 2021-12-25 11:12)

你的js写对了吗?这个报错好像是js报错图片.png

  • 笑笑宝贝 笑笑宝贝(提问者) 上面是我添加的截图及脚本。这个脚本和视频中是一样的。
    2021-12-25 11:14 
  • 程琼 程琼 回复 笑笑宝贝(提问者) 你换成这个再试一下,这个是我对着这个图照抄下来的
    2021-12-25 11:20 
  • 程琼 程琼 回复 笑笑宝贝(提问者) window.open(FR.cjkEncode(\"${servletURL}?reportlet=/订单明细表.cpt&订单号=\" + ID + \"&format=excel\"));
    2021-12-25 11:20 
  • 程琼 程琼 回复 笑笑宝贝(提问者) 我试了一下,没问题,应该还是你js的问题。你贴上来的都是小写,试试我发给你的,有用吗?
    2021-12-25 11:29 
  • 笑笑宝贝 笑笑宝贝(提问者) 回复 程琼 window.open(fr.cjkencode(\\\"${servletURL}?reportlet=/订单明细表.cpt&订单号=\\\"+ ID +\\\"&format=excel\")); 或 window.open(fr.cjkencode(\\\"${servletURL}?reportlet=/订单明细表.cpt&订单号=\\\"+ ID +\\\"&format=excel\\\")); 都不可以。提示“Invalid or unexpected token”。特别是后一个,加了“excel”后的\\后,整个代码都由红色改为绿色了。
    2021-12-26 09:49 
  • 3关注人数
  • 459浏览人数
  • 最后回答于:2021-12-26 22:35
    请选择关闭问题的原因
    确定 取消
    返回顶部