【问题标题】:Cant create file via suitescript 2.0无法通过套件脚本 2.0 创建文件
【发布时间】:2016-09-26 19:37:10
【问题描述】:

我正在尝试通过带有以下代码的 restlet 创建一个文件:

 /**
 *@NApiVersion 2.x
 *@NScriptType Restlet
 */
define(['N/file'], function (file) {
    var fileRequest = {
        name: 'test' + '.txt',
        fileType: file.Type.PLAINTEXT,
        contents: 'test',
        description: 'f',
        folder: 165
    };
    try {
        var resultingFile = file.create(fileRequest);
    }
    catch (ex) {
        debugger;
    }
    var fileId = resultingFile.save();
});

当我运行它时,我在 file.create 处收到一个错误,并显示以下消息:“意外错误”。

【问题讨论】:

  • 猜我没有我想的那么清楚。我有那些 cmets 包括在内。我只是在这里粘贴了我试图在脚本调试器中运行以模拟的内容。问题已被编辑。

标签: netsuite suitescript


【解决方案1】:

使用 SuiteScript 2.0,您需要在文件顶部有一个 JSDoc 注释块。

看起来您正在尝试创建自定义模块,因此您至少需要:

/**
 *  @NAPIVersion 2.0
 *  @NModuleScope Public
 */

如果您尝试为其中一种标准脚本类型创建脚本,您还需要像这样指定:

/**
 *  @NAPIVersion 2.0
 *  @NModuleScope Public
 *  @NScriptType ClientScript
 */

如果您这样做,您还需要公开适当的入口点,例如 pageInitbeforeLoad,具体取决于脚本类型。

如果 SuiteScript 2.0 文件没有适当的 JSDoc 块或入口点,NetSuite 将阻止您上传。

【讨论】:

  • 如果您正在定义自定义模块或脚本,那么您还需要使用define 而不是require。您通常只使用require 在调试器或浏览器控制台中运行一些临时代码。
  • @erictgrubaugh 这是非常重要的一点,让我很快就省了很多麻烦。
猜你喜欢
  • 2021-10-01
  • 1970-01-01
  • 2020-04-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-04-20
  • 1970-01-01
相关资源
最近更新 更多