Ошибка с nlapiYieldScript из запланированного сценария (SS1.0) - PullRequest
0 голосов
/ 02 февраля 2019

В 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));

Любые идеи, почему эта ошибка появляется ??

1 Ответ

0 голосов
/ 12 марта 2019

Пожалуйста, проверьте свою запланированную логику сценария, для использования каждого, фильтра, forEach, map и некоторых.SuiteScript не может быть в середине этих управляющих структур.Это был мой случай в forEach, который я пытался выполнить nlapiYieldScript (), а SuiteScript выбросил NLAPIYIELDSCRIPT_MUST_BE_CALLED_FROM_A_SCHEDULED_SCRIPT.

enter image description here

...