Объект типа «СписокЗначений» — это средство языка (не сохраняемый в БД объект), которое позволяет строить «динамические массивы» и манипулировать ими (добавлять, редактировать, удалять элементы, сортировать). Список значений может быть наполнен значениями любого типа, т. е. в одном списке типы хранимых значений могут быть разными. Одним из примеров использования данного объекта может служить организация выбора конкретного документа из списка возможных документов, сформированного по сложному алгоритму.
Контекст работы со Списком Значений
Во всех программных модулях вызов соответствующих методов может выполняться при помощи переменной со ссылкой на объект типа «СписокЗначений». Такие объекты можно создавать при помощи функции СоздатьОбъект, ссылка на который присваивается переменной. Кроме того, если в форму диалога при помощи визуальных средств конфигуратора вставлены специальные элементы форм диалога «Список» и «Поле со списком», то идентификаторы этих элементов доступны в контексте программного модуля этой формы как уже существующие объекты типа «СписокЗначений».
Чтобы вызвать метод объекта, имя метода (с указанием необходимых параметров) пишется через точку после имени объекта.
При создании объекта типа «СписокЗначений» при помощи функции СоздатьОбъект, в качестве названия агрегатного типа данных обязательно Должно выступать ключевое слово СписокЗначений.
Англоязычный синоним ключевого слова СписокЗначений — ValueList.
Пример:
МойСписок = СоздатьОбъект("СписокЗначений");
Методы объекта Список Значений:
ДобавитьЗначение
Добавить значение в список.
Синтаксис:
ДобавитьЗначение(<Значение>, <Строка>)
Англоязычный синоним:
AddValue
Описание:
Метод ДобавитьЗначение добавляет значение и его символьное представление в конец списка. Представление используется в дальнейшем для удобства сортировки и выбора значений из списка (отображается в диалоговом окне выбора).
Пример:
// Объявляем переменные
Перем Список;
Перем ВР;
// процедура выбора значения
Процедура ВыбратьВР()
Если Список.ВыбратьЗначение(ВР, "Выбор дог: паты") = 1 Тогда
Расчет = ВР;
НазваниеВР = Расчет.Код;
КонецЕсли;
КонецПроцедуры
// инициализация переменных
Список = СоздатьОбъект("СписокЗначений");
Список.ДобавитьЗначение(ВидРасчета.ДоплатаЛроцентом, "Процентом");
Список.ДобавитьЗначение(ВидРасчета.ДоплатаСуммой, "Суммой");
// первоначальное значение
НазваниеВР = Расчет.Код;