1с8.3, конфигурация самописная, дописываю обработку для массовой рассылки сообщений, письма отправляются корректным адресатам, но почему-то из процедуры формирования письма передается только тема, которая вылезает и вместо текста сообщения, вложение так же отсутствует, помогите пожалуйста найти косяки..
Процедура отправки:
Процедура ОтправитьНажатие()
КоличествоСтрок = ЭлементыФормы.ВыбДилеры.Значение.Количество();
Если КоличествоСтрок <> 0 тогда
Для каждого строкаТаблицы из ВыбДилеры цикл
ВыбФайл="";
КонецЦикла;
КонецЕсли;
Для каждого строкаТаблицы из ВыбФайлы цикл
Если Выбфайл=0 тогда
ВыбФайл=ВыбФайл+";";
Выбфайл=ВыбФайл+ВыбФайлы.Путь;
КонецЕсли;
КонецЦикла;
ТемаОтправки=ТемаПисьма;
ФайлТекстаСообщения=ТекстПисьма;
фс=ВыбФайл;
глОтправитьОтчетПоПочте(ФайлТекстаСообщения,ВыбДилер,ТемаОтправки,0,ВыбФайл,2);
КонецПроцедуры
Процедура почтового клиента:
Процедура глОтправитьПисьмоДиллерам(ТаблицаОтправки,Получатель,ТемаПисьма,Сообщения=1,ТелоПисьма="",ТипПисьма=0) Экспорт
//
// если ТипЗначенияСтр(ТаблицаОтправки)="Таблица" Тогда
Если ТипЗнч(ТаблицаОтправки)=Тип("ТабличныйДокумент") или ТипЗнч(ТаблицаОтправки)=Тип("ПолеТабличногоДокумента") тогда
// ИмяФайла=КаталогПользователя()+"Отчет"+СтрЗаменить(СокрЛП(ТекущаяДата()),".","")+"_"+СтрЗаменить(СокрЛП(ТекущееВремя()),":","")+".xls";
ИмяФайла=КаталогВременныхФайлов()+"Отчет"+Формат(ТекущаяДата(),"ДФ=""ддммгггг'_'ЧЧммсс""")+".xls";
// ТаблицаОтправки.Записать(ИмяФайла,1);
ТаблицаОтправки.Записать(ИмяФайла,ТипФайлаТабличногоДокумента.XLS);
//иначеесли ТипЗначенияСтр(ТаблицаОтправки)="Строка" тогда
ИначеЕсли ТипЗнч(ТаблицаОтправки)=Тип("Строка") тогда
// поз=Найти(ТаблицаОтправки,";");
поз=СтрНайти(ТаблицаОтправки,";");
ИмяФайла=Новый Массив;//"";
пока поз<>0 цикл
тестфайла=Лев(ТаблицаОтправки,поз-1);
фс=Новый Файл(тестфайла);
// если фс.СуществуетФайл(тестфайла)=1 тогда
Если фс.Существует() тогда
// если Пустоезначение(ИмяФайла)=0 тогда
// ИмяФайла=ИмяФайла+";";
// конецесли;
// ИмяФайла=ИмяФайла+тестфайла;
ИмяФайла.Добавить(фс);
конецесли;
ТаблицаОтправки=Сред(ТаблицаОтправки,поз+1);
поз=Найти(ТаблицаОтправки,";");
конеццикла;
//
фс=Новый Файл(ТаблицаОтправки);
// если фс.СуществуетФайл(ТаблицаОтправки)=1 тогда
Если фс.Существует() тогда
//если Пустоезначение(ИмяФайла)=0 тогда
// ИмяФайла=ИмяФайла+";";
//конецесли;
//ИмяФайла=ИмяФайла+ТаблицаОтправки;
ИмяФайла.Добавить(фс);
конецесли;
иначе
ИмяФайла="";
конецесли;
//
АдресЭл=Константы.ЭлПочта.Получить();
Профиль=Новый ИнтернетПочтовыйПрофиль;
Профиль.АдресСервераSMTP=АдресЭл.Сервер;
Профиль.АдресСервераPOP3=АдресЭл.Сервер;
Профиль.Таймаут=60;
Профиль.ПортSMTP=?(НЕ ЗначениеЗаполнено(АдресЭл.Порт),"25",Строка(АдресЭл.Порт));
Профиль.ПортPOP3=110;
Профиль.ПользовательSMTP=АдресЭл.Логин;
Профиль.ПарольSMTP=АдресЭл.Пароль;
Профиль.Пользователь=АдресЭл.Логин;
Профиль.Пароль=АдресЭл.Пароль;
Профиль.АутентификацияSMTP=СпособSMTPАутентификации.Login;
Сообщение=Новый ИнтернетПочтовоеСообщение;
Сообщение.Отправитель=АдресЭл.АдресОтправителя;
Сообщение.ИмяОтправителя=АдресЭл.Отправитель;
Сообщение.Получатели.Добавить(СокрЛП(Получатель.ЭлПочта));
Сообщение.Тема=ТемаПисьма;
Если НЕ ЗначениеЗаполнено(ТелоПисьма) тогда
Сообщение.Тексты.Добавить(ТемаПисьма,ТипТекстаПочтовогоСообщения.ПростойТекст);
ИначеЕсли лев(ТелоПисьма,5)="file:" тогда
// ВК.ЗагрузитьИзФайла(СокрЛП(сред(ТелоПисьма,6)));
ТекстСообщения="";
ФайлТекстаСообщения=Новый ТекстовыйДокумент;
ФайлТекстаСообщения.Прочитать(СокрЛП(сред(ТелоПисьма,6)));
ТекстСообщения=ФайлТекстаСообщения.ПолучитьТекст();
Сообщение.Тексты.Добавить(ТекстСообщения,ТипТекстаПочтовогоСообщения.HTML);
Иначе
Сообщение.Тексты.Добавить(ТелоПисьма,ТипТекстаПочтовогоСообщения.ПростойТекст);
КонецЕсли;
Если ТипЗНЧ(ИмяФайла)=Тип("Строка") и ЗначениеЗаполнено(ИмяФайла) тогда
ФайлСообщения=Новый Файл(ИмяФайла);
Сообщение.Вложения.Добавить(ИмяФайла,ФайлСообщения.Имя);
ИначеЕсли ТипЗнч(ИмяФайла)=Тип("Массив") тогда
Для каждого МЗнач из ИмяФайла Цикл
Сообщение.Вложения.Добавить(ИмяФайла.ПолноеИмя,ИмяФайла.Имя);
КонецЦикла;
КонецЕсли;
Почта=Новый ИнтернетПочта;
Попытка
Почта.Подключиться(Профиль);
Исключение
Сообщить("Ошибка отправки файла: "+ИмяФайла);
Сообщить(ОписаниеОшибки());
Возврат;
КонецПопытки;
Попытка
Почта.Послать(Сообщение,ОбработкаТекстаИнтернетПочтовогоСообщения.НеОбрабатывать,ПротоколИнтернетПочты.SMTP);
//СообщенияОтправки=Почта.Послать(Сообщение,ОбработкаТекстаИнтернетПочтовогоСообщения.НеОбрабатывать,ПротоколИнтернетПочты.SMTP);
Исключение
Сообщить(Получатель.ЭлПочта);
Сообщить(ОписаниеОшибки());
КонецПопытки;
УдалитьФайлы("file:G Bases2\Balance.htm");
Сообщить(Получатель.Наименование);
Сообщить(ТемаПисьма);
Почта.Отключиться();
КонецПроцедуры