参考错误:未定义“工作簿”

时间:2017-02-17 11:05:39

标签: javascript birt

我想使用下一个java脚本代码:

function dumpVal(file) {
if (file !=null) {
var wb = new Workbook.create(file);
var sheet = wb.getSheet("Tabelle1");
for (myrow = 1; !isCellEmpty(sheet, myrow, 0); myrow++) {
dataset.setColumnValue("A",getNumericValue(sheet,myrow,0));
dataset.storeResultRow();
}
}
return;
}

但是当我编译它时,我收到下一条错误消息:ReferenceError: "Workbook" is not defined. 有人可以告诉我我做错了什么吗?

2 个答案:

答案 0 :(得分:1)

您使用以下代码行接收错误:

var wb = new Workbook;

在您创建工作簿(新工作簿)的位置,您将引用一个名为“Workbook”的类。此时你的脚本没有一个名为Workbook的类。

解决方案: 如果包含类及其命名,则应检查脚本。 也许这个课程稍后会被初始化!

出于调试目的,您可以尝试在以前创建类:

class Workbook{ }

如果您现在收到错误,因为Workbook需要一个名为“create”的方法,您知道该类正在丢失。

答案 1 :(得分:-1)

我假设您要解析Web应用程序中的excel文件,您正在使用的库用于开发excel而非Web应用程序的加载项:

  

Excel JavaScript API编程概述

     

本文介绍如何使用Excel JavaScript API为Excel 2016构建加载项。它介绍了使用API​​的基本概念,例如RequestContext,JavaScript代理对象,sync(),Excel.run( )和load()。本文末尾的代码示例向您展示了如何应用这些概念。

     

来源:   https://dev.office.com/docs/add-ins/excel/excel-add-ins-javascript-programming-overview

如果要在Web应用程序中解析Excel,我建议使用此库:

https://github.com/SheetJS/js-xlsx

我没有使用它所以我不能保证它,但你可以寻找类似的图书馆。