0

Как выгрузить колонку таблицы значений в список значений?

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

Предположим, у нас есть таблица значений вида:

Наименование Цена
Стол деревянный 10000
Стол деревянный 9500
Стул деревянный 3500
Шкаф для одежды 15500
Шкаф для одежды 14000

Для того, чтобы предложить пользователю выбрать одно из значений колонки Наименование, напишем следующий код:

//создадим список значений
сзМенюВыбора = Новый СписокЗначений;
//загрузим значения колонки
сзМенюВыбора.ЗагрузитьЗначения(тз.ВыгрузитьКолонку("Наименование"));
//предложим пользователю выбрать значение из списка
ВыбЭлт = сзМенюВыбора.ВыбратьЭлемент();
Если НЕ ВыбЭлт = Неопределено Тогда
	Сообщить("Ваш выбор = " + ВыбЭлт.Значение);
КонецЕсли;

Только вот незадача: элементы «Стол деревянный» и «Шкаф для одежды» будут показываться дважды. Чтобы пользователь видел только уникальные значения, в наш код необходимо внести небольшие правки:

//скопируем колонку таблицы в новую таблицу
тзНаименование = тз.Скопировать(,"Наименование");
//свернем по значениям в колонке
тзНаименование.Свернуть("Наименование");
//загрузим полученные значения в список значений
сзМенюВыбора = Новый СписокЗначений;
сзМенюВыбора.ЗагрузитьЗначения(тзНаименование.ВыгрузитьКолонку("Наименование"));
//предложим пользователю выбрать значение
ВыбЭлт = сзМенюВыбора.ВыбратьЭлемент();
Если НЕ ВыбЭлт = Неопределено Тогда
	Сообщить("Ваш выбор = " + ВыбЭлт.Значение);
КонецЕсли;

Читайте также:

  1. СписокЗначений.ЗагрузитьЗначения()
  2. ТаблицаЗначений.ВыгрузитьКолонку()

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *