【问题标题】:Error with nlapiYieldScript from a Scheduled Script (SS1.0)来自计划脚本 (SS1.0) 的 nlapiYieldScript 错误
【发布时间】:2019-02-02 05:19:33
【问题描述】:

在 SuiteScript 1.0 中,我收到 NLAPIYIELDSCRIPT_MUST_BE_CALLED_FROM_A_SCHEDULED_SCRIPT,即使脚本已安排。

执行途径:

  1. 带有自定义按钮的自定义 Suitelet 表单
  2. 自定义按钮触发客户端脚本
  3. 客户端脚本以管理员身份触发 SuiteLet

    var sletURL = nlapiResolveURL('SUITELET', 'customscriptjcse_au_da_manual_paymentupd', 'customdeployjcse_au_da_manual_paymentupd',false)+'&userid='+currentUser; var resp = nlapiRequestURL(sletURL);

  4. Suitelet 触发脚本:

    var result = nlapiScheduleScript('customscriptjcse_au_da_payment_ss', 'customdeployjcse_au_da_payment_ss_manual', params);

即使是预定脚本上下文的日志也显示:

Started at: 20:28:50 GMT-0800 (PST) by User ID: 7880 Context: scheduled

在预定的脚本中,我有:

if (context.getRemainingUsage() < 250 ) { nlapiYieldScript(); } context.setPercentComplete((processed/trancount*100).toFixed(1));

知道为什么会出现这个错误吗??

【问题讨论】:

    标签: netsuite suitescript


    【解决方案1】:

    请检查您的预定脚本逻辑,以了解every、filter、forEach、map 等的使用情况。 SuiteScript 不能在这些控制结构的中间产生。这就是我在 forEach 中的情况,我尝试使用 nlapiYieldScript() 并且 SuiteScript 抛出了 NLAPIYIELDSCRIPT_MUST_BE_CALLED_FROM_A_SCHEDULED_SCRIPT。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-11-11
      • 1970-01-01
      • 2016-04-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-06-14
      • 1970-01-01
      相关资源
      最近更新 更多