找回密码
 立即注册

QQ登录

只需一步,快速开始

低调的繁华
金牌服务用户   /  发表于:2024-5-10 11:17  /   查看:317  /  回复:7
1金币
本帖最后由 Joestar.Xu 于 2024-5-10 11:50 编辑


调研编号:DOCXLS-10329

当前版本上数一个设计器的模板会报错:

5月 10, 2024 11:11:06 上午 com.grapecity.documents.excel.I.aV a
警告: Error occurred while copying sheet '_sys_data_backend'.
The target workbook doesn't contain one or more referenced sheets:
'Sheet1' at $F$2
'Sheet1' at $F$3
'Sheet1' at $F$4
'Sheet1' at $F$5
'Sheet1' at $F$6
'Sheet1' at $F$7
'Sheet1' at $F$8
'_sys_data_struct' at $I$2
'_sys_data_struct' at $I$3
'_sys_data_struct' at $I$4
'_sys_data_struct' at $I$5
'_sys_data_struct' at $I$6
'_sys_data_struct' at $I$7
'_sys_data_struct' at $I$8
'_sys_data_struct_item' at $J$2
'_sys_data_struct_item' at $J$3
'_sys_data_struct_item' at $J$4
'_sys_data_struct_item' at $J$5
'_sys_data_struct_item' at $J$6
'_sys_data_struct_item' at $J$7
'_sys_data_struct_item' at $J$8

Exception in thread "main" java.lang.IllegalStateException: A workbook must contain at least one visible worksheet.
        at com.grapecity.documents.excel.I.aQ.r(Unknown Source)
        at com.grapecity.documents.excel.template.ba.a(Unknown Source)
        at com.grapecity.documents.excel.template.ba.b(Unknown Source)
        at com.grapecity.documents.excel.template.ba.b(Unknown Source)
        at com.grapecity.documents.excel.template.bx.b(Unknown Source)
        at com.grapecity.documents.excel.I.aQ.b(Unknown Source)
        at com.grapecity.documents.excel.Workbook.processTemplate(Unknown Source)
        at com.grapecity.documents.excel.Workbook.processTemplate(Unknown Source)
        at org.example.Main.main(Main.java:39)



切换到7.0.3版本就正常,期望官方帮忙排查下。相关demo在附件中已上传

GcExcel_static.zip

68.41 KB, 下载次数: 27

7 个回复

倒序浏览
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-5-10 11:35:49
沙发
您好,您描述的情况我了解了,这边调研一下,后续有进展我会在本贴中回复您。
SpreadJS 17.0.10 | GcExcel 7.1.2 已发布~
回复 使用道具 举报
低调的繁华
金牌服务用户   /  发表于:2024-5-10 11:46:54
板凳
Joestar.Xu 发表于 2024-5-10 11:35
您好,您描述的情况我了解了,这边调研一下,后续有进展我会在本贴中回复您。

好的 麻烦
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-5-10 11:50:41
地板
SpreadJS 17.0.10 | GcExcel 7.1.2 已发布~
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-5-13 09:50:03
5#
您好,请尝试下面的代码来临时解决该问题:

将模板文件中的所有隐藏工作表移至末尾。(5-13行)

  1. String templatePath = "src/main/resources/template/demo.sjs";
  2. Workbook workbook = new Workbook();
  3. workbook.open(templatePath);

  4. List<IWorksheet> allHiddenWorksheets = new ArrayList<>();
  5. for (int i = 0; i < workbook.getWorksheets().getCount(); i++) {
  6.     if (workbook.getWorksheets().get(i).getVisible() != Visibility.Visible) {
  7.         allHiddenWorksheets.add(workbook.getWorksheets().get(i));
  8.     }
  9. }
  10. for (IWorksheet worksheet : allHiddenWorksheets) {
  11.     worksheet.setIndex(workbook.getWorksheets().getCount() - 1);
  12. }

  13. // 数据源
  14. List<Map> dataSource = createDataSource("测试");

  15. // 上数
  16. ObjectMapper objectMapper = new ObjectMapper();
  17. workbook.addDataSource("test", new JsonDataSource(objectMapper.writeValueAsString(dataSource)));
  18. // 关闭自动计算
  19. workbook.setEnableCalculation(false);
  20. workbook.processTemplate();
复制代码
SpreadJS 17.0.10 | GcExcel 7.1.2 已发布~
回复 使用道具 举报
低调的繁华
金牌服务用户   /  发表于:2024-5-13 15:49:41
6#
Joestar.Xu 发表于 2024-5-13 09:50
您好,请尝试下面的代码来临时解决该问题:

将模板文件中的所有隐藏工作表移至末尾。(5-13行)

您好 我目前是通过降低版本实现的,目前这个问题会在后续版本中修复吗
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-5-13 15:55:52
7#
您好,该问题是会在后续的版本中修复的,如果您不着急的话也可以等待后续版本发布后再升级,届时我也会在本帖中告知您。
SpreadJS 17.0.10 | GcExcel 7.1.2 已发布~
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-5-23 14:54:14
8#
您好,该问题已在7.1.2中修复,您可以升级后测试一下。

在7.1.2中运行时会有红色字样的Log,无需关注,后续版本会移除,不会影响程序的正常运行。
SpreadJS 17.0.10 | GcExcel 7.1.2 已发布~
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部