ReferenceError: ошибка nlapiLoadFile не определена в Netsuite

Я пытаюсь запустить простой скрипт, который загружает файл json и получает его содержимое. Однако первая строка сценария уже отправляет сообщение об ошибке, в котором говорится, что функция из API SuiteScript не определена. Я получаю сообщение ReferenceError: nlapiLoadFile не определено.

function pageInit(context) {

        var File = nlapiLoadFile('/SuiteScripts/jsonfile.json');
        .
        .
        .
        .
        .
   }

Я думаю, что может быть проблема с моей учетной записью, потому что у меня была аналогичная проблема с SuiteScript 2.0, когда весь модуль File отсутствовал в API моей учетной записи. Вот почему я использую 1.0, как показано выше.


person VicDid    schedule 14.10.2016    source источник
comment
FWIW, вы можете изменить файл JSON, чтобы присвоить содержимое переменной (фактически превратив его в файл javascript), и добавить файл как библиотеку в клиентский сценарий.   -  person Shea Brennan    schedule 14.10.2016


Ответы (2)


Поскольку вы пытаетесь вызвать это в pageInit (), я предполагаю, что вы создаете клиентский скрипт. nlapiLoadFile() недоступен в клиентских скриптах. Согласно файлу справки для этой функции: Этот API поддерживается в серверных скриптах.

person Mike Robbins    schedule 14.10.2016
comment
ООО Я вижу. Есть ли тип, рекомендуемый при загрузке файлов? - person VicDid; 14.10.2016
comment
См. Мой комментарий к основному вопросу для быстрого / грязного решения. В противном случае вы можете преобразовать сценарий в сценарий UserEvent (beforeLoad), который выполняется на стороне сервера и, таким образом, имеет доступ к API LoadFile. Хотя специфика того, что вы пытаетесь выполнить, может потребовать как пользовательского события, так и клиентского скрипта, я думаю. - person Shea Brennan; 14.10.2016
comment
@SheaBrennan у меня работает сценарий пользовательского события. У меня есть еще несколько ошибок, но я думаю, что смогу их исправить. Вы правы, мне может понадобиться клиентский скрипт, но я еще не уверен. Я просто хочу прочитать файл json, а затем загрузить его содержимое в записи. - person VicDid; 14.10.2016

Для меня проблемой была версия SuitScript. Изначально мой сценарий был в SuiteScript 2.0, но позже я перешел на 1.0, и тогда он работал нормально.

person Manjunath Reddy    schedule 07.12.2016