AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 06.06.2011, 09:26   #1  
DreamCreator is offline
DreamCreator
Moderator
Аватар для DreamCreator
Axapta Retail User
 
553 / 45 (3) +++
Регистрация: 04.11.2004
Адрес: Казань
Отправка писем через SysEmailBatch на внешние адреса
Здравствуйте!

Написал отправку писем в зависимости от смены статуса заказа. Вот код который отправляет:

X++:
static server void sendMail(Notes   _text,
                            Email   _toEmail,
                            Name    _fromName,
                            Email   _fromEmail,
                            str     _subject,
                            str     _attachment = '')
{
    EmailPriority   priority = EmailPriority::High;
    str             attachmentPath = '';
    SysEmailBatch   sysEmailBatch;
    ;

    if(!_toEmail)
        return;

    if (_attachment && WinAPI::fileExistsClient(_attachment))
        attachmentPath = _attachment;

    try
    {
        sysEmailBatch = SysEmailBatch::construct();
        sysEmailBatch.parmSendername(_fromName);
        sysEmailBatch.parmSenderAddr(_fromEmail);
        sysEmailBatch.parmEmailAddr(_toEmail);
        sysEmailBatch.parmMessageBody(_text);
        sysEmailBatch.parmPriority(priority);
        sysEmailBatch.parmSubject(_subject);
        sysEmailBatch.parmAttachmentfileName(attachmentPath);

        sysEmailBatch.run();
    }
    catch
    {
    }
}
Прописал в SysEmailParameters настройки почтового сервера (Exchange).

Все прекрасно работает для внутренней почты, а если попытаться отправить письмо на внешнюю почту - генерится исключение:

Метод 'SendMail' в COM-объекте класса 'Dundas.mailer' возвратил код ошибки 0x80004005 (E_FAIL), который означает: The RCPT command failed. The specified account does not exsist.

Поискал в интернете - нашел:
http://www.mail-archive.com/developm.../msg12537.html

We figured this out. On the Exchange server we had the IP addresses
of the AOS's in the SMTP Default Virtual Server properties (Relay
restrictions) but that does not work if you are emailing a report
because the ip address of the client is used. From our
understanding the AOS ip address is used when a batch job or if it
is running on the server side. So we entered in the range of our
Networks IP addresses and now it works great!

Передал админу - он не поймет как решить.

Не поможете разобраться?
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Нет русского языка в e-mail отсылаемых через Batch kostass DAX: Программирование 19 18.01.2012 13:28
Отправка письма при помощи SysEmailBatch. Проблема с прикреплением файла PSerg DAX: Программирование 11 22.10.2009 10:21
SysMailer и отправка сообщений через Axapta chanchala DAX: Программирование 9 11.02.2009 13:27
Отправка почты через Outlook... lev DAX: Программирование 9 12.12.2008 13:27
Проблема с отсылкой писем через Outlook zelibobis DAX: Программирование 11 26.02.2008 19:27

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 03:45.