Удаляет элемент из коллекции.
Синтаксис
Удалить(<ИндексЭлементаКоллекции>)Полное описание, параметры и ограничения
ПочтовыеАдреса.Удалить (MailAddresses.Delete)
ПочтовыеАдреса (MailAddresses)
Удалить (Delete)
Доступен, начиная с версии 8.0.
Синтаксис:
Удалить(<ИндексЭлементаКоллекции>)
Параметры:
<ИндексЭлементаКоллекции> (обязательный)
Тип: Число; элемент коллекции.
Индекс элемента коллекции или элемент коллекции.
Описание:
Удаляет элемент из коллекции.
Доступность:
Тонкий клиент, толстый клиент.
Использование в версии:
Доступен, начиная с версии 8.0.
Методическая информация
Практические примеры
Убрать адресатов из своего черновика по индексу и по объекту
Удалить и Очистить здесь меняют только коллекцию нового письма, не удаляют контакты или полученные письма.
Где и как запускать
Полный модуль своей управляемой формы. Настольный тонкий или толстый клиент. Только память, без MAPI-подключения.
Подготовка
Используйте отдельную конфигурацию УчебнаяКонфигурацияСинтаксиса. Создайте внешнюю обработку с управляемой формой и командой ПроверитьЧерновик; обработчику команды назначьте процедуру из полного модуля выбранного урока.
ПочтовоеСообщение — настольный клиентский тип семейства Почта/MAPI, не ИнтернетПочтовоеСообщение для SMTP/IMAP. Урок доступен тонкому и толстому клиенту, не веб-клиенту или серверу.
Все адреса заканчиваются на example.invalid и являются учебными. Не используйте личные адреса, пароли, профили почтового клиента или реальные файлы.
Объект Почта не создаётся и подключение не выполняется. Создание черновика в памяти не создаёт письмо в Outlook, не отправляет его и не проверяет доставку.
&НаКлиенте
Процедура ПроверитьЧерновик(Команда)
Письмо = Новый ПочтовоеСообщение;
Письмо.Отправитель = "warehouse@example.invalid";
Письмо.Тема = "Учебный заказ Книга, 3 шт.";
Письмо.Текст = "Книга: 3 шт. по 250, итого 750. Это только объект в памяти.";
Адреса = Письмо.Получатели;
Адреса.Добавить("first@example.invalid");
Удаляемый = Адреса.Добавить("second@example.invalid");
Адреса.Добавить("third@example.invalid");
СнимокАдресов = Новый Массив;
Для Каждого Адрес Из Адреса Цикл
СнимокАдресов.Добавить(Адрес.Адрес);
КонецЦикла;
Адреса.Удалить(0);
Сообщить(Адреса.Количество() = 2);
Сообщить(Адреса.Получить(0).Адрес = "second@example.invalid");
Адреса.Удалить(Удаляемый);
Сообщить(Адреса.Количество() = 1);
Сообщить(Адреса.Получить(0).Адрес = "third@example.invalid");
Адреса.Очистить();
Сообщить(Письмо.Получатели.Количество() = 0);
Сообщить(СнимокАдресов.Количество() = 3);
Сообщить(СнимокАдресов[0] = "first@example.invalid");
КонецПроцедурыРазбор по шагам
Добавить три собственных адреса; сохранить объект второго адресата.
Скопировать строки адресов в новый массив: это независимый снимок, не ссылки на адресные объекты.
Удалить индекс 0: второй адрес становится первым.
Удалить сохранённый объект второго адресата независимо от изменившегося индекса.
Очистить оставшуюся коллекцию нового письма и проверить, что снимок из трёх строк не изменён.
Как проверить результат
Семь булевых сообщений Истина; последовательно 3→2→1→0 адресатов, снимок остаётся из трёх строк.
Существующие письма и адресная книга не затронуты.
Ожидаемый результат
Есть реальный разбор двух способов удаления, сдвига индексов и независимой копии адресных строк.
На что обратить внимание
Индексы меняются после удаления; не храните старый индекс для последующего удаления другого адресата.
Объект для удаления должен принадлежать этой коллекции.
Очистить коллекцию нового черновика не означает удалить почту на сервере.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.