2017-02-19 19 views
0

Я использую SS 1 и Suitelet для загрузки списка связанных элементов сборки, а затем пользователь проверяет, какие из них относятся к моду. Я модерирую их, но я сталкиваюсь с этим ограничением использования скриптов. Ну, я выгрузил это для рестайла, и я сделал авторизацию пользователя для авторизации (пароль пользователя), теперь я получаю сообщение «INVALID_HOST», «сообщение»: «Неверный хост debugger.sandbox.netsuite.c» в ответе от 'nlapiRequestURL' Я вызываю скрипт из Suitelet, как он может быть недопустимым хостом? Любая помощь была бы замечательной, спасибоИсходные единицы данных SuiteScript

ответ

1

Нужно больше информации для решения проблемы с недействительным хостом, может быть вызвано чем-то в коде, поскольку я заметил, что URL-адрес неполный, если вы вставляете его, я мог бы помочь вам дальше.

Сделав шаг назад к тому, что вы на самом деле пытаетесь достичь вы можете идти двумя путями:

1: Процесс входа пользователя немедленно. (Пользователь должен будет дождаться окончания процесса)

2: Запланируйте пакетное задание. (Это рекомендуемый вариант для больших операций)

Если вы решите пойти с опцией 1 (немедленно обработать), я предлагаю настроить функцию клиента, прикрепленную к кнопке в форме. Кроме того, вам нужно будет принять запрос POST в вашем Suitelet, чтобы получать данные и обрабатывать их. Функция clientside обрабатывает элементы в цикле и передает каждый элемент в Suitelet для обработки с использованием вызовов ajax (не используйте nlapiRequestURL, так как он будет использовать точки управления). Если вы хотите получить фантазию, вы даже можете добавить функцию обратного вызова к вашему аякс-вызову и отобразить индикатор выполнения, поэтому каждый раз, когда одна из записей обрабатывается Suitelet, ваш индикатор выполнения обновляется и на 100% отображается как «Полный».

Если вы переходите на вариант 2 (Запланируйте пакетное задание), вы можете передать данные в качестве параметра в Scheduled Script с использованием nlapiScheduleScript(scriptId, deployId, params), обработать данные в цикле и отправить ему электронное письмо пользователю в конце , Желательно, чтобы вы использовали скрипт «Уменьшить карту», ​​но это на SS 2.0.

+0

URL-адрес был отключен и просто был эллипсом (...). Весь url, который я использую, выглядит следующим образом: https://debugger.sandbox.netsuite.com/app/site/hosting/restlet.nl?script=60&deploy=1 Что вам потребуется? Его нужно обрабатывать сразу же, как и их другие процессы, которые собираются вместе. Я хотел бы пойти с рестайлем, как уже написано, но на всякий случай мы никуда не обходимся, вы упомянули о Suitelet, вы хотите создать тот, который просто обрабатывает информацию, например, без интерфейса? – jk121960

+0

Итак, я бы использовал URL-адрес развертывания пакета suitelet и использовал jQuery для POST для него и таким образом изменил данные? Если есть способ вернуть сообщения об успехе/сбое обратно в вызов ajax? спасибо за любую помощь, которую вы можете дать. – jk121960

+0

Вы можете использовать тот же Suitelet, который вы используете для интерфейса, просто убедитесь, что ваша форма отправлена ​​только тогда, когда входящий запрос GET. Чтобы отправить ответ от Suitelet, просто используйте response.write («Hello world») –