Цитата:
Сообщение от
timaluhs
SomeOne
просто весь интернет пестрит сообщениями что можно послать email без прикреплённого файла, а если с файлом то только код dot.net и все любезно предлагают образцы кода. Попробую посмотреть класс. Спасибо
Можно пример или ссылку msdn очень скуп.
server static void sendMail(
SysEmailSystemId _emailId,
LanguageId _language,
str _emailAddr,
Map _mappings = null,
FilenameOpen _attachmentfileName = '',
str _xmlData = '',
boolean _isTraceable = false,
userId _userId = '',
boolean _isWithRetries = false)
откуда берётся SysEmailSystemId _emailId? где сохраняется body, subject, to, from...
пока не очень понятно
Что то про это было написано тут
http://axapta.mazzy.ru/lib/email/
Если кратко - то так:
1. Настраиваем параметры почтового сервера в форме – администрирование – настройки – параметры электронной почты
2. Создаем шаблон почтового сообщения в форме основное – настройка – шаблоны сообщений эл. Почты. Установить бокс «показать электронную почту системы»
При этом поле «код электронной почты» - и будет SysEmailSystemId. Если на закладке «Разное» в поле «Группа пакетов» указать код группы пакетов – сообщение будет отправляться сервером пакетной обработки, а не в режиме «онлайн».
Это удобно, например, когда рассылка осуществляется, например, при обновлении записи таблицы. Позволяет отделить процесс отправки сообщения в отдельный поток, и пользователю не придется ожидать окончание отправки сообщения, например при обновлении записи.
В нижнем гриде так же добавляем новую запись – там можно указывать шаблоны, каждый для отдельного языка. При нажатии кнопки «шаблон» - открывается окно редактора, где вводится шаблон самого сообщения.
В шаблоне тела сообщения можем использовать макросы типа:
“Уважаемый %User%, запрашиваемый вами файл с отчетом %ReportName% в прикрепленном файле”.
Кстати, так же шаблоном можно указать и тему сообщения, например '%subject%' в поле "тема"
3. Сам код отправки сообщения:
X++:
static server void mail_testServer(Args _args)
{
map mappings;
;
mappings = new map(Types::String, Types::String);
mappings.insert("User", "Василий Пупкин");
mappings.insert("ReportName", "Отчет о движении денежных средств");
mappings.insert("subject", "Тестовое сообщение");
SysEmailSystemTable::sendMail('test', "ru", 'pupkin@mail.ru', mappings);
}
Если не использовать шаблоны сообщений - то все проще.
Вот код отправки сообщения через сервер пакетной обработки
X++:
static void Job25(Args _args)
{
SysEmailBatch SysEmailBatch;
;
SysEmailBatch = new SysEmailBatch();
SysEmailBatch.parmEmailAddr("im@mail.ru");
SysEmailBatch.parmMessageBody("test");
SysEmailBatch.addAttachmentfileName("C:\\boot.ini");
SysEmailBatch.parmSenderAddr("ss@mail.ru");
SysEmailBatch.sendToBatch("mail"); //имя пакетной группы, нужно создать такую е
}
Если нужна отправка онлайн - то последняя строка - SysEmailBatch.run();