Имя: Пароль:
1C
1С v8
Передача данных по Email через встроенный почтовый клиент 1С ☑
0 N-Hawk
 
14.03.12
✎
09:59
Добрый день коллеги!, у меня есть к Вам опытным программистам вопрос, сам с 1С знаком несколько недель.

использую 1С 8.2  конфу УТП

В документе "расходный ордер на товары" создал новую вкладку "Отгрузка"
создал там новые поля и кнопку "отправить по Еmail". Теперь мне нужно как то получить введенные данные из этих полей, и отправить по Email-у через встроенный почтовые клиент, чтобы эти данные легли в текст письма.Возможно кто нибудь уже реализовывал такой механизм. буду благодарен за любые советы.

СПАсИБо)
1 ptrtss
 
14.03.12
✎
10:10
Через встроенный почтовый клиент - это чтобы письма сохранились в 1С в виде документов. А чтобы просто отправить сообщение достаточно воспользоваться объектом ИнтернетПочта. Курим встроенную справку для начала
2 mikecool
 
14.03.12
✎
10:19
мой гений дарит вам (с) Гений 1с

Функция ОтправкаПочты(Параметры) Экспорт
   
   Если Параметры.Количество() = 0 Тогда
       Возврат Неопределено
   КонецЕсли;
   
   Сообщение = Новый ИнтернетПочтовоеСообщение;
   Сообщение.Тема = Параметры.Тема;
   Сообщение.Отправитель.Адрес = Параметры.ОтправительАдрес;
   
   ДобавитьПолучателей(Сообщение.Получатели, Параметры.Получатели);
   Если Сообщение.Получатели.Количество() = 0 Тогда
       Возврат Неопределено
   КонецЕсли;
   
   Если Параметры.Свойство("Копии") Тогда
       ДобавитьПолучателей(Сообщение.Копии, Параметры.Копии);
   КонецЕсли;
   Если Параметры.Свойство("СлепыеКопии") Тогда                                                    
       ДобавитьПолучателей(Сообщение.СлепыеКопии, Параметры.СлепыеКопии);
   КонецЕсли;
   Если Параметры.Свойство("ОбратныйАдрес") Тогда                                                    
       ДобавитьПолучателей(Сообщение.ОбратныйАдрес, Параметры.ОбратныйАдрес);
   КонецЕсли;
   
   Если Параметры.Свойство("ИменаФайловВложений") Тогда
       СписокФайловВложений = Параметры.ИменаФайловВложений;
       Для Каждого ИмяФайла Из СписокФайловВложений Цикл
           
           Если ТипЗнч(СписокФайловВложений) = Тип("СписокЗначений") Тогда
               Значение = ИмяФайла.Значение
           ИначеЕсли ТипЗнч(СписокФайловВложений) = Тип("Массив") Тогда
               Значение = ИмяФайла
           КонецЕсли;
           
           Если ПустаяСтрока(Значение) Тогда
               Продолжить;
           КонецЕсли;
           
           Сообщение.Вложения.Добавить(Значение);
       КонецЦикла;
   КонецЕсли;
   
   Сообщение.Тексты.Добавить(Параметры.Тело);
   
   Почта = Новый ИнтернетПочта;
   
   Профиль = Новый ИнтернетПочтовыйПрофиль;
   
   Профиль.АдресСервераSMTP = Параметры.АдресСервераSMTP;
   Профиль.ПользовательSMTP = Параметры.ПользовательSMTP;
   Профиль.ПарольSMTP = Параметры.ПарольSMTP;
   Если Параметры.Свойство("АутентификацияSMTP") Тогда
       Профиль.АутентификацияSMTP = Параметры.АутентификацияSMTP;
   КонецЕсли;
   Если Профиль.АутентификацияSMTP = Неопределено Тогда
       Профиль.АутентификацияSMTP = Ложь
   КонецЕсли;

   Попытка
       Почта.Подключиться(Профиль);
       Почта.Послать(Сообщение);
       Почта.Отключиться();
   Исключение
       
   КонецПопытки;
   
КонецФункции