Имя: Пароль:
1C
 
Отсылка писем с помощью класса Outlook.Application
0 FOI1977
 
06.10.14
15:40
Здравствуйте коллеги.
надо сделать что бы документ делал письмо в аутлуке, и открывал его.

Привожу сокращённый код:

Outlook = Новый COMОбъект("Outlook.Application");
Письмо = Outlook.CreateItem(0);
Письмо.Subject = ТемаПисьма;
Письмо.BodyFormat = 2;// тут смотрим отладчиком Письмо.HTMLBody
ТекстПисьмаHTML = СтрЗаменить(Письмо.HTMLBody, "<DIV class=WordSection1>", "<DIV class=WordSection1> " + ТекстПисьма + "<br> ");
Письмо.HTMLBody = ТекстПисьмаHTML;
Письмо.Recipients.Add(Адрес);
Письмо.Display();

Что тут интересного, вернее чертовщина какая то?
там где коммент смотрим отладчиком Письмо.HTMLBody - строка, с пустым, без подписи текстом письма в HTML.
Тут же смотрим отдельно отладчиком Письмо, и О ЧУДО, будь оно не ладно, свойство HTMLBody уже содержит нормальный текст пустого письма с подписью. Как? Что происходит скрыто от глаз моих? И как это побороть?
Заранее благодарен за ответ.

ЗЫ Шеф требует письмо с подписью менеджера.
1 FOI1977
 
06.10.14
17:01
Так никто и не ответил.
2 FOI1977
 
06.10.14
17:02
Вот работающий код:


Процедура СоздатьПисьмоВOutlook(Адрес, ТемаПисьма, ТекстПисьма)
    
    Попытка
        Outlook = Новый COMОбъект("Outlook.Application");
        ЕстьОшибка = 0;
    Исключение
        Предупреждение("Не удалось создать объект Outlook.Application");
        ЕстьОшибка = 1;
    КонецПопытки;
    
    Если ЕстьОшибка = 0 Тогда
        
        Письмо = Outlook.CreateItem(0);
        Письмо.Recipients.Add(Адрес);
        Письмо.Subject = ТемаПисьма;
        Письмо.Display();
        
        ТекстПисьмаHTML = СтрЗаменить(Письмо.HTMLBody, "<div class=WordSection1><p class=MsoNormal><o:p>", "<div class=WordSection1><p class=MsoNormal><o:p>" + ТекстПисьма);
        Письмо.HTMLBody = ТекстПисьмаHTML;
        
    Иначе
        Тема = "Тема письма";
        ТекстПисьма = "Текст письма";
        СтрокаЗапуска = "mailto:"; + Адрес + "?subject=" + Тема + "&body=" + ТекстПисьма;
        ЗапуститьПриложение(СтрокаЗапуска);
    КонецЕсли;
    
КонецПроцедуры
3 FOI1977
 
06.10.14
17:12
пользуйтесь.