Отправка писем

1. user1619761 09.09.21 10:46 Сейчас в теме
Здравствуйте. Есть запрос из которого выбирается адрес электронной почты

Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| КонтактнаяИнформация.Представление
|ИЗ
| РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация
|ГДЕ
| КонтактнаяИнформация.Тип = &ВидКонтактнойИнформации
| И КонтактнаяИнформация.Объект В ИЕРАРХИИ(&СписокПользователей)";

Запрос.УстановитьПараметр("ВидКонтактнойИнформации",Перечисления.ТипыКонтактнойИнформации.АдресЭлектроннойПочты);

СписокПользователей= ОбслуживаниеОборудования.ПолучитьСписокПользователейСлужбаКонтроляКачества();
Запрос.УстановитьПараметр("СписокПользователей",СписокПользователей);


РезультатЗапроса = Запрос.Выполнить();

ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();

Если ВыборкаДетальныеЗаписи.Количество() = 0 тогда
Возврат;
КонецЕсли;

Пока ВыборкаДетальныеЗаписи.Следующий() Цикл


Адрес = ВыборкаДетальныеЗаписи.Представление;

Если не Сокрлп(Адрес) = "" тогда

Письмо.Получатели.Добавить(Адрес);

КонецЕсли;


КонецЦикла;

Подскажите, пожалуйста, как узнать, кому именно отправляется письмо, всем пользователям из списка СписокПользователей или на последний адрес из цикла. Прописывал Сообщить ("Письмо отправлено успешно."+Адрес); и в сообщения выводится именно текст с последним адресом электронной почты из цикла.
По теме из базы знаний
Найденные решения
6. ZergKRSK 129 09.09.21 11:14 Сейчас в теме
(5) ну так если Сообщить у вас после цикла какой еще адрес вы ожидаете увидеть кроме последнего???
7. slavyan_arena 09.09.21 11:25 Сейчас в теме
(4)
тут вот какая загвоздка... рассылка идет сразу всем адресатам почты...
конкретно кому отправлено отследить проблематично, потому что письмо отправляется не циклом

хотя...

можете написать циклом )))

СписокАдресов = новый массив;

Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
Адрес = ВыборкаДетальныеЗаписи.Представление;
Если не Сокрлп(Адрес) = "" тогда
СписокАдресов.Добавить(адрес);

КонецЕсли;
КонецЦикла;

пока СписокАдресов .Следующий() цикл
Письмо.Получатели.Добавить(СписокАдресов);
Подключение.Подключиться(ПараметрыПочты);
Подключение.Послать(Письмо);
сообщить("вот конкретно ему "+СписокАдресов+" письмо отправлено");
конецЦикла;
Показать


не знаю насколько это будет корректно )))
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. slavyan_arena 09.09.21 10:51 Сейчас в теме
(1)
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл


Адрес = ВыборкаДетальныеЗаписи.Представление;

Если не Сокрлп(Адрес) = "" тогда

Письмо.Получатели.Добавить(Адрес);

КонецЕсли;


КонецЦикла;
Показать


Здравствуйте.
если добавить сообщить() перед
Письмо.Получатели.Добавить(Адрес);
то вы узнаете список адресантов
но кому отправлено или нет это уже в другом куске кода
4. user1619761 09.09.21 11:11 Сейчас в теме
(2) Подключение.Подключиться(ПараметрыПочты);
Подключение.Послать(Письмо);
Сообщить ("Письмо отправлено успешно."+Адрес);

Вот кусок кода, где отправляется письмо.

Переписывал вот так
Сообщить ("Письмо отправлено успешно."+Адрес);
Подключение.Подключиться(ПараметрыПочты);
Подключение.Послать(Письмо);

Сообщение выводится так же, текст и последний адрес. А по факту отправляется списку людей, я зашел на почту, и посмотрел, письмо отправляется мне и копия еще нескольким людям, как раз которые в списке СписокПользователей. Где это отследить , в самом цикле конструкцию Сообщить прописать?
7. slavyan_arena 09.09.21 11:25 Сейчас в теме
(4)
тут вот какая загвоздка... рассылка идет сразу всем адресатам почты...
конкретно кому отправлено отследить проблематично, потому что письмо отправляется не циклом

хотя...

можете написать циклом )))

СписокАдресов = новый массив;

Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
Адрес = ВыборкаДетальныеЗаписи.Представление;
Если не Сокрлп(Адрес) = "" тогда
СписокАдресов.Добавить(адрес);

КонецЕсли;
КонецЦикла;

пока СписокАдресов .Следующий() цикл
Письмо.Получатели.Добавить(СписокАдресов);
Подключение.Подключиться(ПараметрыПочты);
Подключение.Послать(Письмо);
сообщить("вот конкретно ему "+СписокАдресов+" письмо отправлено");
конецЦикла;
Показать


не знаю насколько это будет корректно )))
8. user1619761 09.09.21 11:27 Сейчас в теме
(6)
(7) Всем спасибо,ребят ))
3. ZergKRSK 129 09.09.21 10:59 Сейчас в теме
(1)
Прописывал Сообщить ("Письмо отправлено успешно."+Адрес)

в цикле?
5. user1619761 09.09.21 11:13 Сейчас в теме
(3) нет, отправка письма происходит за циклом, соответственно и Сообщить ("Письмо отправлено успешно."+Адрес); я прописывал там же, до отправки, после отправки, результат всегда один. Выводит последний адрес эл почты из цикла. Видимо надо в цикле прописывать.
6. ZergKRSK 129 09.09.21 11:14 Сейчас в теме
(5) ну так если Сообщить у вас после цикла какой еще адрес вы ожидаете увидеть кроме последнего???
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот