Оценить размер исходящего электронного письма. Оценивает размер электронного письма.
// Оценивает размер электронного письма.
//
// Параметры:
// Письмо - ДокументСсылка.ЭлектронноеПисьмоВходящее,
// ДокументСсылка.ЭлектронноеПисьмоИсходящее - письмо для которого будет проведена оценка.
//
// Возвращаемое значение:
// Число - оценка размера письма в байтах.
//
Функция ОценитьРазмерИсходящегоЭлектронногоПисьма(Письмо) Экспорт
Размер = 0;
Запрос = Новый Запрос;
Запрос.Текст = "
|ВЫБРАТЬ
| СУММА(ЕСТЬNULL(ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Размер, 0) * 1.5) КАК Размер
|ИЗ
| Справочник.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы КАК ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы
|ГДЕ
| ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.ВладелецФайла = &Письмо
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| ВЫБОР
| КОГДА ЭлектронноеПисьмоИсходящее.ТипТекста = ЗНАЧЕНИЕ(Перечисление.ТипыТекстовЭлектронныхПисем.ПростойТекст)
| ТОГДА ЭлектронноеПисьмоИсходящее.Текст
| ИНАЧЕ ЭлектронноеПисьмоИсходящее.ТекстHTML
| КОНЕЦ КАК Текст,
| ЭлектронноеПисьмоИсходящее.Тема
|ИЗ
| Документ.ЭлектронноеПисьмоИсходящее КАК ЭлектронноеПисьмоИсходящее
|ГДЕ
| ЭлектронноеПисьмоИсходящее.Ссылка = &Письмо";
Запрос.УстановитьПараметр("Письмо",Письмо);
Результат = Запрос.ВыполнитьПакет();
Если НЕ Результат[0].Пустой() Тогда
Выборка = Результат[0].Выбрать();
Выборка.Следующий();
Размер = Размер + ?(Выборка.Размер = Null, 0, Выборка.Размер);
КонецЕсли;
Если НЕ Результат[1].Пустой() Тогда
Выборка = Результат[1].Выбрать();
Выборка.Следующий();
Размер = Размер + СтрДлина(Выборка.Текст) + СтрДлина(Выборка.Тема);
КонецЕсли;;
Возврат Размер;
КонецФункции
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
СформироватьТекстHTMLДляИсходящегоПисьма (БСП)
ПолучитьПараметрыРаботыПользователяДляИсходящегоЭлектронногоПисьма (БСП)
ОткрытьФормуОтправкиПисьма (БСП)
СформироватьЭлементДанныхШапкиПисьма (БСП)
УстановитьПапкуЭлектронногоПисьма (БСП)
ПолучитьВложенияЭлектронногоПисьма (БСП)
ЗаписатьВложениеЭлектронногоПисьмаСкопировавВложениеДругогоПисьма (БСП)