nlapiSendEmail возвращает SSS_AUTHOR_MUST_BE_EMPLOYEE от правильного идентификатора сотрудника (в Песочнице) - PullRequest
0 голосов
/ 06 мая 2019

в среде «песочницы» nlapiSendEmail (определено внутри пакета) возвращает SSS_AUTHOR_MUST_BE_EMPLOYEE, даже если идентификатор отправителя правильный

Мой дистрибутив - Килиманджаро, с SuiteScript 1.0. У меня есть роль администратора: при вызове nlapiSenEmail () напрямую из серверной модели с идентификатором моего сотрудника электронное письмо было отправлено в мой профиль сотрудника, но не на указанный адрес электронной почты, который действительно является списком рассылки компании. Даже когда я не указал адрес электронной почты зарегистрированного клиента, копия была отправлена ​​на адрес электронной почты зарегистрированного клиента - учетную запись gmail. Бэкэнд-модель работает только для приложения MyAccount. Стоит отметить, что в этом случае возвращаемое значение nlapiSendEmail () было неопределенным. По моему опыту, Netsuite действительно неоднозначно в своем поведении, возвращая значения или просто функционируя ожидаемым образом из-за «контекста выполнения». Итак, с теми же данными я поместил свой вызов в пакет, и теперь у меня возвращение SSS_AUTHOR_MUST_BE_EMPLOYEE.

function sendEmailWithAPI(request, response) 
{
    var senderId = request.getParameter('senderId');
    var to = request.getParameter('emailTo');
    var subject = request.getParameter('subject');
    var body = request.getParameter('body');
    var cc = request.getParameter('emailCC');

    var result = {success:false, errorInfo:''};
    try
    {
        var sendingResult = nlapiSendEmail(senderId, to, subject, body, cc);
        result.success = true;
    }
    catch (errorOnMailSending)
    {
        result.returnValue = sendingResult;
        result.errorInfo = errorOnMailSending.details;
    }
    response.write(JSON.stringify(result));
}

Ответы [ 2 ]

2 голосов
/ 07 мая 2019

Какой тип записи у senderId? NetSuite принимает только записи сотрудников в качестве отправителей писем, созданных сценариями. Также в учетных записях Sandbox электронные письма перенаправляются вошедшему в систему пользователю, конкретному списку или не отправляются вовсе. На самом деле это основано на предпочтениях компании в вашей учетной записи Sandbox. Причина в том, что Sandbox обычно используется для тестирования, и вы не хотите отправлять тестовые электронные письма реальным клиентам.

0 голосов
/ 05 июня 2019

В конце концов, «проблема» заключалась в том, что я просто работал в «Песочнице», так как я подготовил фрагмент для проверки отправки электронной почты в производстве, и все прошло хорошо. В песочнице вы все еще можете отправлять электронные письма, указав список во вложенной вкладке «Параметры электронной почты»

с опцией «ОТПРАВИТЬ ПОЧТУ (ОТДЕЛЬНЫЕ АДРЕСА С КОММАСАМИ)»

это находится в Настройке> Компания> Настройки электронной почты.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...