Добавляем две собственные заметки, удаляем одну по объекту и вторую по индексу. Очистить относится только к нашей коллекции.
Где и как запускать
Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.
Подготовка
Используйте отдельную учебную базу. Фрагмент без директив вставьте в тело серверной процедуры ВыполнитьПример() Экспорт общего модуля УчебныеЗадачи.
Все исходные байты создаются самим примером в памяти. Файлы, сеть, справочники и документы не нужны.
Запускайте задачи отдельно. После закрытия ЧтениеДанных/ЗаписьДанных не используйте этот экземпляр повторно.
Вложения = Новый КоллекцияВложенийPDF;
ТекстJSON = "{""товар"":""Книга"",""количество"":3}";
БайтыJSON = ПолучитьДвоичныеДанныеИзСтроки(ТекстJSON, КодировкаТекста.UTF8, Ложь);
Вложения.Добавить("товар.json", БайтыJSON, "application/json", ТипСвязиВложенияPDF.Данные);
Заметка = Вложения.Добавить("заметка.txt", ПолучитьДвоичныеДанныеИзСтроки("Учебный документ", КодировкаТекста.UTF8, Ложь));
Сообщить(Заметка.ТипСодержимого = "application/octet-stream");
Сообщить(Заметка.ТипСвязи = ТипСвязиВложенияPDF.НеУстановлено);
Сообщить(Вложения.Количество() = 2);
Вложения.Удалить(Заметка);
Сообщить(Вложения.Количество() = 1);
Сообщить(Вложения.Найти("заметка.txt") = Неопределено);
Вложения.Удалить(0);
Сообщить(Вложения.Количество() = 0);
Вложения.Добавить("повтор.json", БайтыJSON, "application/json", ТипСвязиВложенияPDF.Дополнение);
Сообщить(Вложения.Количество() = 1);
Вложения.Очистить();
Сообщить(Вложения.Количество() = 0);Разбор по шагам
У второго вложения не задаём MIME-тип и связь: получаем документированные значения по умолчанию.
Удалить принимает либо объект собственного вложения, либо индекс. После первого удаления известно, что остался ровно один элемент.
Индекс 0 здесь допустим только после проверки собственного количества; в произвольной коллекции так делать нельзя.
Повторное добавление и Очистить показывают отличие удаления одного элемента от очистки всех элементов.
Как проверить результат
Восемь сравнений Истина, конечное количество 0.
Никакой вызов УдалитьФайлы не выполняется; коллекция не является каталогом файлов.
Ожидаемый результат
Отработаны оба варианта удаления и очистка собственной коллекции вложений.
На что обратить внимание
Удаление из этой коллекции не переписывает уже существующий PDF: для этого есть отдельный метод ЗаписьPDF.
После удаления объект Заметка не нужно выдавать за элемент коллекции, даже если переменная ещё содержит его.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.