Имя: Пароль:
1C
1С v8
Отправка таблицы в теле письма.
0 lirt82
 
12.07.23
14:18
Конфа УТ, необходимо в теле письма отправить таблицу, ниже код

*************************
Процедура ОтправитьСообщение(Выборка)
    
    Кому = Новый Массив;
    Кому.Добавить(Новый Структура("Адрес, Представление", Выборка.ЭлПочтаДилераДляБаланса, Выборка.Дилер));
        
    Тема = "" + Строка(Выборка.Дилер.tmkz_КодДилера) + ", промежуточный результат закупки аксессуаров и запасных частей на " + Формат(Выборка.Период, "ДФ=dd.MM.yyyy");
    
    Письмо = Новый ИнтернетПочтовоеСообщение;
    
    //таблица +
    Текст = Письмо.Тексты.Добавить();      
    Текст.ТипТекста = ТипТекстаПочтовогоСообщения.HTML;
    Текст.Текст =
    "<table border=""1"">
    |<tbody>
    |<tr>
    |<td><strong>Дилер</strong></td>
    |<td><strong>Сумма</strong></td>
    |<td><strong>Валюта</strong></td>
    |</tr>
    |<tr>
    |<td>"+ Строка(Выборка.Дилер) +"</td>
    |<td>" + Выборка.Сумма +"</td>
    |<td>" + Выборка.Валюта +"</td>
    |</tr>
    |</tbody>
    |</table>";
    //таблица -
    
    Тело = "Уважаемые коллеги,
    |Ниже в таблице ваши результаты по фактическому балансу на " + Формат(Выборка.Период, "ДФ=dd.MM.yyyy") +"
    |
    |
    |" + Текст.Текст + "
    |
    |
    |Желаем хорошего дня!
    |Это автоматическая рассылка. Пожалуйста, не отвечайте на данное сообщение.";
    
    УчетнаяЗапись = РаботаСПочтовымиСообщениями.СистемнаяУчетнаяЗапись();
    ПараметрыОтправки = Новый Структура("Кому, Тема, Тело", Кому, Тема, Тело);
    
    Попытка
        РаботаСПочтовымиСообщениями.ОтправитьПочтовоеСообщение(УчетнаяЗапись, ПараметрыОтправки);
    Исключение
        КодОсновногоЯзыка = ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка();
        ЗаписьЖурналаРегистрации(НСтр("ru = 'Отправка баланса по дилерам'", КодОсновногоЯзыка),
        УровеньЖурналаРегистрации.Ошибка, , , ОбработкаОшибок.ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));        
    КонецПопытки;    
    
КонецПроцедуры
************************************
получаю следующее сообщение

Уважаемые коллеги,
Ниже в таблице ваши результаты по фактическому балансу на 12.07.2023


<table border="1">
<tbody>
<tr>
<td><strong>Дилер</strong></td>
<td><strong>Сумма</strong></td>
<td><strong>Валюта</strong></td>
</tr>
<tr>
<td>Эн-Уай-Кей Ауто Лоджистикс (Казахстан) ТОО</td> <td>1</td> <td>KZT</td> </tr> </tbody> </table>


Желаем хорошего дня!
Это автоматическая рассылка. Пожалуйста, не отвечайте на данное сообщение.
----------------------------------
что не так в коде?)
1 Greeen
 
12.07.23
14:21
тип письма HTML надо указать
2 Greeen
 
12.07.23
14:22
в параметрах отправки
3 lirt82
 
12.07.23
14:24
Код подсмотрел отсюда
https://infofront.su/1c-otpravit-pismo-html-programmno/
4 Мультук
 
12.07.23
14:28
(0)

Вопрос
Переменная "Письмо" где-то дальше используется в вашем примере ?

===

  Письмо = Новый ИнтернетПочтовоеСообщение;
    
    //таблица +
    Текст = Письмо.Тексты.Добавить();      
    Текст.ТипТекста = ТипТекстаПочтовогоСообщения.HTML;
    Текст.Текст =
    "<table border=""1"">
5 lirt82
 
12.07.23
14:32
(4) нет, я сделал так потому что в самом теле не получается таблицу разместить
6 Ногаминебить
 
12.07.23
14:36
Может Письмо.ОбработатьТексты();?
7 lirt82
 
12.07.23
14:39
(2) получилось, одна строчка кода))
ПараметрыОтправки = Новый Структура("Кому, Тема, Тело, ТипТекста", Кому, Тема, Тело, Перечисления.ТипыТекстовЭлектронныхПисем.HTML);
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан