ПараметрыВыбораКомпоновкиДанных.Удалить

Методы · Delete

Удаляет элемент из коллекции.

Синтаксис

Удалить(<Элемент>)
Полное описание, параметры и ограничения

ПараметрыВыбораКомпоновкиДанных.Удалить (DataCompositionChoiceParameters.Delete)

ПараметрыВыбораКомпоновкиДанных (DataCompositionChoiceParameters)

Удалить (Delete)

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

Синтаксис:
Удалить(<Элемент>)
Параметры:

<Элемент> (обязательный)
Тип: ПараметрВыбораКомпоновкиДанных.
Удаляемый элемент.
Описание:

Удаляет элемент из коллекции.

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

Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение.

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

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

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

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

Изменить коллекцию параметров выбора своей СКД

Настоящая коллекция получена из доступного параметра собственной схемы. В ней добавляются два учебных параметра, затем выполняются поиск, перестановка, удаление и очистка.

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

Серверный общий модуль своей учебной базы. Коллекция получена от доступного параметра собственной программной схемы СКД.

Подготовка

  1. Серверный общий модуль УчебныеПараметры в своей учебной базе: Сервер = Истина, Глобальный = Ложь. Функцию дополнительного блока поместите на уровне модуля, основной код — в тело Процедура ВыполнитьПример() Экспорт.

  2. Вызовите УчебныеПараметры.ВыполнитьПример() из серверной команды своей учебной обработки. Схема и редактор настроек создаются в памяти из собственных констант, никаких таблиц рабочей конфигурации не читается.

  3. УчебнаяНижняяГраница / УчебнаяВерхняяГраница — демонстрационные имена элементов коллекции. Они не заявлены как стандартные параметры открытия формы и не применяются к вычислению отчёта. Это урок методов коллекции, не готовый интерфейс выбора.

Параметры = СоздатьУчебныеПараметрыВыбора();
Параметры.Очистить();
Нижний = Параметры.Добавить();
Нижний.Имя = "УчебнаяНижняяГраница";
Нижний.Значение = 1;
Верхний = Параметры.Вставить(0);
Верхний.Имя = "УчебнаяВерхняяГраница";
Верхний.Значение = 10;
Сообщить("Количество: " + Строка(Параметры.Количество()));
Найденный = Параметры.Найти("УчебнаяНижняяГраница");
Сообщить("Индекс нижней: " + Строка(Параметры.Индекс(Найденный)));
Параметры.Сдвинуть(Найденный, -1);
Сообщить("Первый параметр: " + Параметры.Получить(0).Имя);
Параметры.Удалить(Верхний);
Сообщить("После удаления: " + Строка(Параметры.Количество()));
Параметры.Очистить();
Сообщить("После очистки: " + Строка(Параметры.Количество()));
Тот же серверный модуль: настоящий источник коллекции из собственной схемы
Функция СоздатьУчебныеПараметрыВыбора()
    Схема = Новый СхемаКомпоновкиДанных;
    Источник = Схема.ИсточникиДанных.Добавить();
    Источник.Имя = "УчебныйИсточник";
    Источник.ТипИсточникаДанных = "Local";
    Набор = Схема.НаборыДанных.Добавить(Тип("НаборДанныхЗапросСхемыКомпоновкиДанных"));
    Набор.Имя = "УчебныеТовары";
    Набор.ИсточникДанных = Источник.Имя;
    Набор.АвтоЗаполнениеДоступныхПолей = Истина;
    Набор.Запрос = "ВЫБРАТЬ 3 КАК Количество ГДЕ 3 > &МинимальноеКоличество";
    Порог = Схема.Параметры.Добавить();
    Порог.Имя = "МинимальноеКоличество";
    Порог.ТипЗначения = Новый ОписаниеТипов("Число");
    Порог.Значение = 1;
    Порог.Использование = ИспользованиеПараметраКомпоновкиДанных.Всегда;
    Редактор = Новый КомпоновщикНастроекКомпоновкиДанных;
    Редактор.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(Схема));
    Редактор.ЗагрузитьНастройки(Схема.НастройкиПоУмолчанию);
    Доступные = Редактор.Настройки.ПараметрыДанных.ДоступныеПараметры;
    Описание = Доступные.НайтиПараметр(Новый ПараметрКомпоновкиДанных("МинимальноеКоличество"));
    Если Описание = Неопределено Тогда
        ВызватьИсключение "Не получен параметр своей схемы";
    КонецЕсли;
    Возврат Описание.ПолучитьПараметрыВыбора();
КонецФункции

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

  1. Источник создаёт свою схему, параметр МинимальноеКоличество и инициализирует редактор. ПолучитьПараметрыВыбора возвращает коллекцию именно этого доступного параметра.

  2. Очистить задаёт известное начальное состояние. Добавить ставит нижнюю границу в конец, Вставить(0) помещает верхнюю перед ней.

  3. Найти ищет по имени; Индекс показывает 1. Сдвинуть принимает объект элемента и смещение -1, а не индекс.

  4. Получить(0) после перестановки возвращает нижнюю границу. Удалить удаляет переданный верхний элемент, затем Очистить удаляет оставшийся элемент собственной коллекции.

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

  1. Вывод: количество 2, индекс нижней 1, первый параметр УчебнаяНижняяГраница, после удаления 1, после очистки 0.

  2. Это состояние своей коллекции в памяти. Запрос СКД не выполняется, формы выбора и рабочие данные не изменяются.

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

Все методы коллекции показаны на настоящем объекте с известными элементами и порядком.

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

  1. Индексы начинаются с 0. Перед Сдвинуть найденный элемент действительно присутствует в собственной коллекции.

  2. Параметры выбора и значения параметров данных — разные коллекции: эти изменения не меняют Порог.Значение = 1.

  3. Не создавайте эту коллекцию несуществующим конструктором Новый ПараметрыВыбораКомпоновкиДанных: источник показан дополнительным кодом.

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

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

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

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

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