Удаление элементов коллекции изменяет только собственный объект письма. Оно не удаляет файлы с диска и не снимает письма с почтового сервера.
Где и как запускать
Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.
Подготовка
В учебной базе выполните код на сервере. Письмо создаётся и разбирается в памяти; профиль почты, пароль, SMTP/IMAP и вызов Послать не нужны.
Все адреса заданы на учебном домене example.invalid. Не заменяйте их реальными адресами и не добавляйте отправку при первой проверке.
Письмо о двух учебных товарах не содержит персональных данных, реальных заказов и внешних HTML-ресурсов. Его текст не является счётом или подтверждением доставки.
Письмо = Новый ИнтернетПочтовоеСообщение;
Письмо.Кодировка = "UTF-8";
Письмо.Отправитель = "guide@example.invalid";
Письмо.ИмяОтправителя = "Учебный магазин";
Письмо.Получатели.Добавить("student@example.invalid");
Письмо.Тема = "Учебные товары";
Письмо.Тексты.Добавить("Книга: 3; Ручка: 1", ТипТекстаПочтовогоСообщения.ПростойТекст);
ПервыеДанные = ПолучитьДвоичныеДанныеИзСтроки("Книга", КодировкаТекста.UTF8, Ложь);
ВторыеДанные = ПолучитьДвоичныеДанныеИзСтроки("Ручка", КодировкаТекста.UTF8, Ложь);
Первое = Письмо.Вложения.Добавить(ПервыеДанные, "book.txt");
Письмо.Вложения.Добавить(ВторыеДанные, "pen.txt");
Сообщить(Письмо.Вложения.Количество() = 2);
Письмо.Вложения.Удалить(Первое);
Сообщить(Письмо.Вложения.Количество() = 1);
Оставшееся = Письмо.Вложения.Получить(0);
Сообщить(ПолучитьСтрокуИзДвоичныхДанных(Оставшееся.Данные, КодировкаТекста.UTF8) = "Ручка");
Письмо.Вложения.Очистить();
Сообщить(Письмо.Вложения.Количество() = 0);Разбор по шагам
Два вложения создаём из собственных байтов, а не по адресам файлов.
Удалить принимает элемент коллекции или индекс: здесь используем Первое.
После удаления проверяем количество до Получить(0); Очистить убирает оставшуюся коллекцию.
Как проверить результат
Четыре сообщения Истина: 2, 1, осталась Ручка, затем 0.
Ни УдалитьФайлы, ни почтовое удаление сообщений не выполняется.
Ожидаемый результат
Изменён набор вложений собственного письма без внешнего удаления.
На что обратить внимание
Объект письма и успешный разбор MIME не доказывают отправку, доставку, подлинность отправителя или прочтение.
Позиции коллекции меняются после удаления; прежний индекс нельзя считать идентификатором вложения.
Оставшиеся переменные-ссылки на объект не означают, что он снова входит в коллекцию письма.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.