【问题标题】:SuiteScript 2.0 Deploy from Eclipse Script Type Function ErrorSuiteScript 2.0 从 Eclipse 脚本类型函数错误部署
【发布时间】:2017-08-03 17:33:13
【问题描述】:

下午好。

我真的在为此苦苦挣扎,显然它应该非常容易弄清楚。我正在使用 Eclipse Neon.3 Release 4.6.3 来构建、编译 SuiteScript 2.0 并将其部署到我们的 Sandbox 环境。我已经成功地使用工作脚本管理了 1.0 部署,但是随着我们转向 2.0,现在这是必须解决的问题。

错误是:SuiteScript 2.0 入口点脚本必须实现一种脚本类型函数。

这是脚本:

/**
* @NApiVersion 2.0
* @NScriptType UserEventScript
*/

define(['N/record'], 
function (record) {

    function doThis(context) {
        log.debug({'details': 'IN THE FUNCTION!'});
    }

    return {
        beforeLoad: doThis
    };
});

这里是用户事件 XML(因为错误指向这个文件:

<usereventscript scriptid="customscript_userevent">
<aftersubmitfunction/>
<beforeloadfunction>doThis</beforeloadfunction>
<beforesubmitfunction/>
<description></description>
<isinactive></isinactive>
<name>SDF Tutorial User Event</name>
<notifyowner>T</notifyowner>
<scriptfile>[/SuiteScripts/UserEventScript_2.js]</scriptfile>
<scriptdeployments>
    <scriptdeployment scriptid="customdeploy_ue_tut">
        <isdeployed>T</isdeployed>
        <loglevel>DEBUG</loglevel>
        <recordtype>[customrecord_tutorial]</recordtype>
        <status>TESTING</status>
    </scriptdeployment>
</scriptdeployments>

显然,我错过了正确的 Script Type 函数,但这就是我之前认为的 beforeLoad 实际正在做的事情。我在这里错过了什么?

【问题讨论】:

    标签: eclipse deployment netsuite suitescript


    【解决方案1】:

    嗯,答案比我预期的要简单。请注意,我来自 Visual Studio c# 背景,所以我是从这个角度来看的。

    Eclipse 的更高版本(在 Kepler 之后)停止支持 SuiteCloud Development Framework 插件。要么,要么您需要向已安装的 Eclipse 版本添加更多内容以使其正常工作,而我根本没有找到任何文档来帮助解决这个问题。

    我们清理了 Eclipse 安装并返回到 Eclipse Kepler (4.3.2),一切正常。

    我认为这对开发人员不利,因为我们应该能够通过 IDE 访问最新版本的库和插件,但这只是我的看法。最后,我们有了工作模型,并且可以从我们的开发机器部署到我们所有的环境中,这样我们现在就可以完成工作。

    感谢您抽出宝贵时间协助解答这个问题。我很感激。

    【讨论】:

      【解决方案2】:

      您缺少 usereventscript/beforeloadfunction 元素:

      <beforeloadfunction>beforeLoad</beforeloadfunction>
      

      【讨论】:

      • 感谢您的回复,但我仍然遇到同样的错误。我在用户事件脚本 XML 中添加了提到的元素,但它不起作用。不过,我感谢您的帮助。
      • 很抱歉。在类似情况下,我通常会在 UI 中创建一个脚本,从 UI 下载 XML,然后将它们与我尝试上传的进行比较。也许这有帮助。
      • 如何从脚本中下载 XML?
      • 最后……那也没用。再次感谢您的帮助。
      • 也许另一个想法是添加其他两个入口点。我可以看到 UI 中的 XML 包含所有入口点的元素。 &lt;aftersubmitfunction&gt;&lt;/aftersubmitfunction&gt; &lt;beforeloadfunction&gt;beforeLoad&lt;/beforeloadfunction&gt; &lt;beforesubmitfunction&gt;&lt;/beforesubmitfunction&gt;
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多