Имя: Пароль:
1C
 
Документ ЭлектронноеПисьмоИсходящее
,
0 НедоОдинЭсНик
 
20.10.23
10:40
1с 8.3 УТ 11.5 Документ ЭлектронноеПисьмоИсходящее.
Как добавить получателей программно?
1 lubitelxml
 
20.10.23
10:44
(0) там есть ТЧ - ПолучателиПисьма, вот туда и добавляй строки
2 НедоОдинЭсНик
 
20.10.23
11:06
ТЧ есть. Добавляю, но добавляется в виде строки, а нужна строка и адрес. И письмо не отправляется. Не могу разобраться, как добавить в группу "Кому".
3 lubitelxml
 
20.10.23
11:10
(2) ну так ты адрес заполни
4 НедоОдинЭсНик
 
20.10.23
11:14
УчетнаяЗапись = Справочники.УчетныеЗаписиЭлектроннойПочты.НайтиПоНаименованию("Системная учетная запись");
        ЭлПисьмо = Документы.ЭлектронноеПисьмоИсходящее.СоздатьДокумент();
        ЭлПисьмо.Важность = Перечисления.ВариантыВажностиВзаимодействия.Обычная;
        ЭлПисьмо.ЕстьВложения = Ложь;
        ЭлПисьмо.УчетнаяЗапись = УчетнаяЗапись;
        ЭлПисьмо.Автор = ПараметрыСеанса.ТекущийПользователь;
        ЭлПисьмо.Дата = ТекущаяДата();
        ЭлПисьмо.ДатаОтправления = ТекущаяДата();
        ЭлПисьмо.ДатаКогдаОтправить = ТекущаяДата();
        ЭлПисьмо.Ответственный = ПараметрыСеанса.ТекущийПользователь;
        ЭлПисьмо.Кодировка = "utf-8";
        ЭлПисьмо.ТипТекста = Перечисления.ТипыТекстовЭлектронныхПисем.HTML;
        ЭлПисьмо.Тема = ЭтаФорма.Тема;
        ЭлПисьмо.ТекстHTML = ЭтаФорма.СообщениеПользователям;
        ЭлПисьмо.СтатусПисьма = Перечисления.СтатусыИсходящегоЭлектронногоПисьма.Исходящее;
        ЭлПисьмо.УдалятьПослеОтправки = Истина;
        НоваяСтр = ЭлПисьмо.ПолучателиПисьма.Добавить();
        Для Каждого Элемент Из СписокПолучателей Цикл
            НоваяСтр.Адрес = Строка(Элемент);
            Сообщить(НоваяСтр.Адрес);
        КонецЦикла;
        ЭлПисьмо.Записать();
        Сообщить("Письмо отправлено");
5 PuhUfa
 
20.10.23
11:17
(2)
Вариант 1. Создаешь письмо руками, потом открываешь его и в отладчике смотришь как заполнена ТЧ получатели
Вариант 2. Смотришь в этой же УТ как ТЧ заполняется в типовых модулях
Вариант 3. Идешь на Мисту и создаешь пятничную ветку -)

Ты уже опробовал первые два варианта? -)
6 Мимохожий Однако
 
20.10.23
11:21
(4) НоваяСтр = ЭлПисьмо.ПолучателиПисьма.Добавить();
    Для Каждого Элемент Из СписокПолучателей Цикл
НоваяСтр.Адрес = Строка(Элемент);

Этим фрагментом кода ты добавляешь в одну новую строки последний элемент из перечня. Отладчиком посмотри
7 НедоОдинЭсНик
 
20.10.23
12:58
(6)
Да, спасибо, это поправил.
Для Каждого Элемент Из СписокПолучателей Цикл
            НоваяСтр = ЭлПисьмо.ПолучателиПисьма.Добавить();
            НоваяСтр.Адрес = Строка(Элемент);
            Сообщить(НоваяСтр.Адрес);
        КонецЦикла;

У меня не получается выбрать в строке "Кому" пользователей. Пользователи добавляются в данную строку, но адрес почты не подтягивается. А если открыть письмо, сформированное программно, и активировать поле "Кому", с попавшими туда пользователями, то и адрес подтягивается. Не могу разобраться, как это сделать программно.
8 НедоОдинЭсНик
 
20.10.23
17:36
Подскажите, что передавать и откуда взять в строку
"НоваяСтр.Адрес"?
9 lubitelxml
 
20.10.23
17:39
(8) посмотри какой тип у поля - там вроде строка, вот и передавай туда строкой адрес эл. почты
10 НедоОдинЭсНик
 
20.10.23
17:54
(9) Делаю так, но письмо висит в исходящих. Другие письма уходят, а это - нет. Хотя почта в поле "Кому" стоит правильная.
11 lubitelxml
 
20.10.23
18:09
(10) было такое, посмотри регламент, видимо какое-то поле не заполнено, поэтому не уходит. На всикдку не могу вспомнить какое конкретно
Независимо от того, куда вы едете — это в гору и против ветра!