|
|
#1 |
|
Участник
|
Коллеги, день добрый.
Никто не сталкивался с ситуацией когда нужно создать из Navision html письмо с форматированием и с картинками. С помощью codeunit 397 Mail письма в Outlook создаются прекрасно, но они в текстовом формате... Буду очень благодарен, если кто подкинет идею. |
|
|
|
|
#2 |
|
Участник
|
Цитата:
А html стандартизированный или постоянно его стуктура меняется? |
|
|
|
|
#3 |
|
Участник
|
Стандартизированный. Просто письмо должно быть красивое, с форматированием и картинками
|
|
|
|
|
#4 |
|
Участник
|
|
|
|
|
|
#5 |
|
Участник
|
Это получится письмо с вложением, а нужно html письмо.
Еще нужно что бы ушедшее письмо осталось в папке "Исходящее" Ох...
|
|
|
|
|
#6 |
|
Участник
|
Возможно так поможет:
OutlookMsg:=OutlookApp.CreateItem(0); OutlookAttach:=OutlookMsg.Attachments; OutlookAttach.Add(lFileName, 1); OutlookMsg.Display; |
|
|
|
|
#7 |
|
Участник
|
А чуть поподробней плиз...
Какой Automation, какой метод. |
|
|
|
|
#8 |
|
Участник
|
OutlookApp Automation 'Microsoft Outlook 11.0 Object Library'.Application
OutlookMsg Automation 'Microsoft Outlook 11.0 Object Library'.MailItem OutlookAttach Automation 'Microsoft Outlook 11.0 Object Library'.Attachments Методы собственно в коде. |
|
|
|
|
#9 |
|
Участник
|
rmv, спасибо большое!!! Все получилось.
Возникла ещё проблемка, в получившимся html письме нужно произвести вставку, например, имени клиента. Сам шаблон, на основании которого формируется письмо, имени не содержит. То есть шаблон выглядит так: Уважаемый %1! Ваш заказ № %2 бла, бла... Всего наилучшего! В письмо этот шаблон затягивается, всё прекрасно. А вот как теперь вместо %1 и %2 подставить значения из заказа? Формировать новый шаблон, путем копирования оригинального шаблона, модифицировать налету, вставлять созданный шаблон в файл, а после отправки удалять... Наверняка есть более корректный метод. |
|
|
|
|
#10 |
|
Участник
|
А пришлите код, которым заполняете Body сообщения
|
|
|
|
|
#11 |
|
Участник
|
Цитата:
Сообщение от .rejector.
rmv, спасибо большое!!! Все получилось.
Возникла ещё проблемка, в получившимся html письме нужно произвести вставку, например, имени клиента. Сам шаблон, на основании которого формируется письмо, имени не содержит. То есть шаблон выглядит так: Уважаемый %1! Ваш заказ № %2 бла, бла... Всего наилучшего! В письмо этот шаблон затягивается, всё прекрасно. А вот как теперь вместо %1 и %2 подставить значения из заказа? Формировать новый шаблон, путем копирования оригинального шаблона, модифицировать налету, вставлять созданный шаблон в файл, а после отправки удалять... Наверняка есть более корректный метод. При использовании шаблонов возможно лучший вариант использовать методы Replace (если таковые есть) текстового редактора Outlook'a. |
|
|
|
|
#12 |
|
Участник
|
Написал с подсказки rmv следующую функцию
Код: SendMessage(From : Text[100];To : Text[1024];ToName : Text[250];Subject : Text[250];TextBody : Text[1024];Attachment : Text[500])
IF ISCLEAR(OutlookApp) THEN
CREATE(OutlookApp);
OutlookMsg:=OutlookApp.CreateItem(0);
OutlookMsg."To"("To");
OutlookMsg.Subject(Subject);
OutlookAttach:=OutlookMsg.Attachments;
OutlookAttach.Add(Attachment, 1);
OutlookMsg.Display; |
|
|
|
|
#13 |
|
Участник
|
|
|
|
|
|
#14 |
|
Участник
|
Цитата:
Сообщение от .rejector.
Написал с подсказки rmv следующую функцию
Код: SendMessage(From : Text[100];To : Text[1024];ToName : Text[250];Subject : Text[250];TextBody : Text[1024];Attachment : Text[500])
IF ISCLEAR(OutlookApp) THEN
CREATE(OutlookApp);
OutlookMsg:=OutlookApp.CreateItem(0);
OutlookMsg."To"("To");
OutlookMsg.Subject(Subject);
OutlookAttach:=OutlookMsg.Attachments;
OutlookAttach.Add(Attachment, 1);
OutlookMsg.Display;Цитата:
OutlookMsg.HTMLBody := STRSUBSTNO('Шаблон', Параметры);
|
|
|
|
|
#15 |
|
Участник
|
Цитата:
Цитата:
. Полагаю впрочем, что автора топика этот вопрос пока сильно не волнует.
|
|
|
|
|
#16 |
|
Участник
|
Да, действительно шаблон письмо больше 1024 символов.
Вопрос с запущенным Outlook действительно не волнует, те кому нужно эта функция, имею запущенный Outlook по умолчанию. |
|
|
|
|
#17 |
|
Участник
|
А в каком виде хранится шаблон сообщения? - В записях таблицы в Нав или как отдельный файл на сервере?
Ограничение в длине переменной в 1024 символа здесь вообще ни при чем. HTMLBody не ограничена этим значеним. |
|
|
|
|
#18 |
|
Участник
|
Шаблон хранится как отдельный файл на сервере.
|
|
|
|
|
#19 |
|
Участник
|
Тогда можно же этот файл построчно записать в HTMLBody письма. Через STRSUBSTNO заменить параметры на значения.
|
|
|
|
|
#20 |
|
Участник
|
Да, блин, так уже и сделал. Но мне не нравится, как то это через костыли получается.
|
|
|