ПочтовыеАдреса

Типы · MailAddresses

Представляет собой коллекцию объектов типа ПочтовыйАдрес.

Полное описание, параметры и ограничения

ПочтовыеАдреса (MailAddresses)

ПочтовыеАдреса (MailAddresses)

Доступен, начиная с версии 8.0.

Элементы коллекции:
ПочтовыйАдрес
Для объекта доступен обход коллекции посредством оператора Для каждого … Из … Цикл. При обходе выбираются элементы коллекции.
Возможно обращение к элементу коллекции посредством оператора [...]. В качестве аргумента передается индекс элемента коллекции (нумерация с 0).

Методы:
Добавить (Add)
Количество (Count)
Очистить (Clear)
Получить (Get)
Удалить (Delete)

Описание:

Представляет собой коллекцию объектов типа ПочтовыйАдрес.

Доступность:

Тонкий клиент, толстый клиент.

См. также:
ПочтовоеСообщение, свойство Получатели
ПочтовоеСообщение, свойство Копии
ПочтовоеСообщение, свойство СлепыеКопии

Использование в версии:

Доступен, начиная с версии 8.0.

Методическая информация

Практические примеры

Убрать адресатов из своего черновика по индексу и по объекту

Удалить и Очистить здесь меняют только коллекцию нового письма, не удаляют контакты или полученные письма.

Где и как запускать

Полный модуль своей управляемой формы. Настольный тонкий или толстый клиент. Только память, без MAPI-подключения.

Подготовка

  1. Используйте отдельную конфигурацию УчебнаяКонфигурацияСинтаксиса. Создайте внешнюю обработку с управляемой формой и командой ПроверитьЧерновик; обработчику команды назначьте процедуру из полного модуля выбранного урока.

  2. ПочтовоеСообщение — настольный клиентский тип семейства Почта/MAPI, не ИнтернетПочтовоеСообщение для SMTP/IMAP. Урок доступен тонкому и толстому клиенту, не веб-клиенту или серверу.

  3. Все адреса заканчиваются на example.invalid и являются учебными. Не используйте личные адреса, пароли, профили почтового клиента или реальные файлы.

  4. Объект Почта не создаётся и подключение не выполняется. Создание черновика в памяти не создаёт письмо в 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");
КонецПроцедуры

Разбор по шагам

  1. Добавить три собственных адреса; сохранить объект второго адресата.

  2. Скопировать строки адресов в новый массив: это независимый снимок, не ссылки на адресные объекты.

  3. Удалить индекс 0: второй адрес становится первым.

  4. Удалить сохранённый объект второго адресата независимо от изменившегося индекса.

  5. Очистить оставшуюся коллекцию нового письма и проверить, что снимок из трёх строк не изменён.

Как проверить результат

  1. Семь булевых сообщений Истина; последовательно 3→2→1→0 адресатов, снимок остаётся из трёх строк.

  2. Существующие письма и адресная книга не затронуты.

Ожидаемый результат

Есть реальный разбор двух способов удаления, сдвига индексов и независимой копии адресных строк.

На что обратить внимание

  1. Индексы меняются после удаления; не храните старый индекс для последующего удаления другого адресата.

  2. Объект для удаления должен принадлежать этой коллекции.

  3. Очистить коллекцию нового черновика не означает удалить почту на сервере.

Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.

Создать и исправить адрес покупателя двумя способами добавления

ПочтовыйАдрес создаётся коллекцией письма, а не собственным конструктором. Можно добавлять полный адрес или пару пользователь/сервер.

Где и как запускать

Полный модуль своей управляемой формы. Настольный тонкий или толстый клиент. Только память, без MAPI-подключения.

Подготовка

  1. Используйте отдельную конфигурацию УчебнаяКонфигурацияСинтаксиса. Создайте внешнюю обработку с управляемой формой и командой ПроверитьЧерновик; обработчику команды назначьте процедуру из полного модуля выбранного урока.

  2. ПочтовоеСообщение — настольный клиентский тип семейства Почта/MAPI, не ИнтернетПочтовоеСообщение для SMTP/IMAP. Урок доступен тонкому и толстому клиенту, не веб-клиенту или серверу.

  3. Все адреса заканчиваются на example.invalid и являются учебными. Не используйте личные адреса, пароли, профили почтового клиента или реальные файлы.

  4. Объект Почта не создаётся и подключение не выполняется. Создание черновика в памяти не создаёт письмо в Outlook, не отправляет его и не проверяет доставку.

&НаКлиенте
Процедура ПроверитьЧерновик(Команда)
    Письмо = Новый ПочтовоеСообщение;
    Письмо.Отправитель = "warehouse@example.invalid";
    Письмо.Тема = "Учебный заказ Книга, 3 шт.";
    Письмо.Текст = "Книга: 3 шт. по 250, итого 750. Это только объект в памяти.";
    Адрес = Письмо.Получатели.Добавить("buyer", "example.invalid");
    Резервный = Письмо.Получатели.Добавить("reserve@example.invalid");
    Сообщить(Адрес.Адрес = "buyer@example.invalid");
    Сообщить(Адрес.Пользователь = "buyer");
    Сообщить(Адрес.Сервер = "example.invalid");
    Сообщить(Резервный.Адрес = "reserve@example.invalid");
    Адрес.Адрес = "student@example.invalid";
    Адрес.Пользователь = "student2";
    Адрес.Сервер = "training.example.invalid";
    Сообщить(Письмо.Получатели.Получить(0).Адрес = "student2@training.example.invalid");
    Сообщить(Письмо.Получатели.Количество() = 2);
    Сообщить("Фактический адрес после правки частей: " + Адрес.Адрес);
КонецПроцедуры

Разбор по шагам

  1. Добавить buyer и example.invalid отдельными параметрами. Получить возвращённый ПочтовыйАдрес.

  2. Добавить резервный адрес одной строкой: это другая перегрузка того же метода.

  3. Прочитать полную запись, часть пользователя и часть сервера.

  4. Исправить собственный адрес сначала целиком, затем по частям; объект уже принадлежит коллекции и повторного Добавить не требует.

  5. Прочитать тот же адрес через Получить(0), проверить результат и вывести фактический адрес.

Как проверить результат

  1. Шесть булевых проверок Истина; первый итоговый адрес student2@training.example.invalid, коллекция содержит два объекта.

  2. Адреса используются только как учебные строки, DNS и доставка не проверяются.

Ожидаемый результат

Разобраны обе перегрузки добавления и изменение трёх настоящих свойств созданного адреса.

На что обратить внимание

  1. Не создавайте Новый ПочтовыйАдрес: у этого типа нет такого конструктора.

  2. Первый индекс равен нулю, второй — единице.

  3. Синтаксически заполненный адрес не подтверждает существование ящика.

Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.

Не хотите разбираться сами?

Адаптируем это решение под вашу базу. Оценка бесплатно.

Оставить задачу

1С, 1С:Предприятие — товарные знаки ООО «1С». Сайт не является официальным представительством фирмы «1С» и не аффилирован с ней.