Почта из 1с

Версия для печатиPDF-версия

Платформа:

Конфигурация:

Вот что написала

 ОтправитьПоПочте(АдресПолучателя, Файл) 
Если ЗагрузитьВнешнююКомпоненту(КаталогИБ() + "v7plus.dll") <> 1 Тогда 
   Предупреждение("Компонента v7plus.dll не найдена!"); 
   Возврат 0; 
КонецЕсли; 
Попытка 
   Почта = СоздатьОбъект("AddIn.V7Mail"); 
Исключение 
   Предупреждение("Не удалось создать объект Addin.V7Mail!"); 
   Возврат 0; 
КонецПопытки; 
Попытка 
   Почта.Подключиться(); 
   Почта.НовоеСообщение(); 
   Если ПустоеЗначение(АдресПолучателя) = 0 Тогда 
      Почта.ДобавитьАдрес(СокрЛП(АдресПолучателя)); 
   Иначе 
      Предупреждение("У филиала не задан адрес получателя!"); 
      Возврат 0; 
   КонецЕсли; 
   Если ФС.СуществуетФайл(Файл) = 0 Тогда 
      Предупреждение("Файл не существует – " + СокрЛП(Файл)); 
      Возврат 0; 
   КонецЕсли; 
      Почта.ДобавитьФайл(Файл); 
   Почта.Заголовок = "Выгрузка реализации"; 
   Почта.Текст = "Выгрузка реализации от " + ДатаДок; 
   Почта.Послать(0); 
   Почта.Отключиться(); 
Исключение 
   Предупреждение("Неудачная попытка! Отправка письма по эл. почте не произведена!"); 
   Возврат 0; 
КонецПопытки; 
Возврат 1; 
КонецФункции
Метод подключиться выдает ошибку. Я указала без параметров. Может их попробовать указать и как это сделать я настройки электронки не знаю?

А какую ошибку выдаёт?

"Ошибка подключения: "  и все. Пробовала прописать ящик с паролем все равно ошибка. На Подключиться () спотыкаеться. Тут пишут что есть необходимость установки почтовой программы. Это как? 

Нужна установленная почтовая программа (Outlook, The Bat и т.д.).

Попробуйте вот эту компоненту. Ей почтовый клиент не нужен.

Спасибо! Попробую, завтра уже надо чтобы ребята на сервер кинули, у меня удаленка.

Пишу

Если ЗагрузитьВнешнююКомпоненту("ROM-Mail.dll")=0 Тогда

    Сообщить("Не удалось загрузить внешнюю компоненту ROM-Mail.dll");
    Возврат;
  Конецесли; 
ВК = СоздатьОбъект("AddIn.AddInMail"); 
ВК.СерверОтправки = "smtp.mail.ru"; 
ВК.ПортОтправки = "2525"; 
Если ВК.Подключиться("Отправка")=0 Тогда 
  Предупреждение("Не удалось подключиться к серверу!"); 
  Возврат; 
КонецЕсли; 
ВК.АдресОтправителя = "khmelinina2016@bk.ru"; 
ВК.ИмяОтправителя = "1С:Предприятие 7.7"; 
ВК.АдресПолучателя = АдресПолучателя; 
ВК.ТипПисьма = 2; 
ВК.Тема = "Реализация"; 
ВК.Тело = "Выслана реализация"; 
ВК.Вложения = файл; 
ВК.Кодировка ="windows-1251"; 
ВК.НеКодироватьТему = 0; 
ВК.ПодтверждениеДоставки = 0; 
ВК.ПодтверждениеПрочтения = 0; 
Если ВК.Отправить() = 1 Тогда 
  Предупреждение("Письмо успешно отправлено получателю"); 
Иначе 
  Предупреждение("Не удалось отправить письмо!"); 
КонецЕсли; 
ВК.Отключиться();
 Программа очень долго думает, подвисает на отправка сообщения и в конце выдает "Не удалось отправить письмо!". Может в коде что не так?
iConf = CreateObject("CDO.Configuration");
 
iMsg = CreateObject("CDO.Message");
 
 
iMsg.Configuration = iConf;
iMsg.Configuration.Fields("http://schemas.microsoft.com/cdo/configuration/sendusing").Value = 2;
iMsg.From          = "Программист 1C";
iMsg.From            = "***************@mail.ru";
iMsg.To            = АдресПолучателя;
 
iMsg.Subject       = "Тема письма";
iMsg.textBody      = "Тело письма";
iMsg.BodyPart.Charset = "windows-1251";
 
iMsg.AddAttachment(файл);
 
iConf.Fields.Item("http:schemas.microsoft.com/cdo/configuration/sendusing").            Value = 2;
 
iConf.Fields.Item("http:schemas.microsoft.com/cdo/configuration/smtpserver").           Value = "smtp.mail.ru";
 
iConf.Fields.Item("http:schemas.microsoft.com/cdo/configuration/smtpserverport").       Value = "25";
 
iConf.Fields.Item("http:schemas.microsoft.com/cdo/configuration/smtpauthenticate").     Value = 1;
 
iConf.Fields.Item("http:schemas.microsoft.com/cdo/configuration/sendusername").         Value = "**************@yandex.ru";
 
iConf.Fields.Item("http:schemas.microsoft.com/cdo/configuration/sendpassword").         Value = "**********";
 
iConf.Fields.Item("http:schemas.microsoft.com/cdo/configuration/smtpusessl").           Value = 1;
 
iConf.Fields.Item("http:schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout").Value = 60;
 
 
iConf.Fields.Update();
 
Попытка
 
iMsg.Send();
 
Сообщить("Письмо отправлено.");
 
Исключение
 
Сообщить("Письмо не отправлено. Ошибка : "+ ОписаниеОшибки()+ "!");
 
КонецПопытки;
 

Пишет что вконфигурации не найден SMTP сервер.

Попробуйте сначала поля iConf заполнить, а потом уже iMsg создать.

Заметил нестыковку. Вы устанавливаете значение свойства smtpserver = "smtp.mail.ru", а sendusername = "**************@yandex.ru".

И значение свойств smtpserverport попробуйте установить 465.

И вроде бы значения iMsg.From и iConf.Fields.Item("http:schemas.microsoft.com/cdo/configuration/sendusername").Value должны совпадать.

Заработало, я неправильно ссылки указывала. Вот код. ,Отправляет.

iMsg.Configuration = iConf;
iMsg.Configuration.Fields("http://schemas.microsoft.com/cdo/configuration/sendusing").Value = 2;
iMsg.From          = "Программист 1C";
iMsg.From            = "khmelinina.2016@mail.ru";
iMsg.To            = АдресПолучателя;
 
iMsg.Subject       = "Реализация";
iMsg.textBody      = "Выслана реализация";
iMsg.BodyPart.Charset = "windows-1251";
 
iMsg.AddAttachment(файл);
 
iConf.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing").            Value = 2;
 
iConf.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate").value = cdoBasic;
iConf.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver").           Value = "smtp.mail.ru";
 
iConf.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport").       Value = "25";
 
iConf.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate").     Value = 1;
 
iConf.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusername").         Value ="khmelinina.2016@mail.ru";
 
iConf.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendpassword").         Value ="741852963q";
 
iConf.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl").           Value = 1;
 
iConf.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout").Value = 60;
 
 
iConf.Fields.Update();
 
Попытка
 
iMsg.Send();
 
Сообщить("Письмо отправлено.");
 
Исключение
 
Сообщить("Письмо не отправлено. Ошибка : "+ ОписаниеОшибки()+ "!");
 
КонецПопытки;
 

Пароли-то не стоит в явном виде публиковать.

Да ничего, в следующий раз какую-нибудь кракозябру оставлю. Там все равно ничего нет секретного. Это вспомогательный ящик.