Таблица значений в 1С:Предприятии 8.0, 8.1, 8.2
Таблица значений в 1С:Предприятии 8.0, 8.1, 8.2.
Таблица значений — набор разных по типу данных объектов, сгруппированных для выполнения какой-либо задачи. Набор представлен в виде двухмерной таблицы. Имеются колонки (столбцы) и строки. Сама таблица физически создается в оперативной памяти компьютера. Такой объект называют: не сохраняемый объект. Таблица значений не хранится на жестком диске. Ее данные теряются при выходе из 1С:Предприятии. Таблица значений создаются динамически в результате выполнения программного кода.
Таблица имеет свои методы, свойства — что позволяет добавлять, редактировать или удалять значения, а так же другие действия применимые к объекту 1С:Предприятие 8.0,8.1,8.2. Таблица значений в 1С:Предприятии 8.0, 8.1, 8.2 может создаваться при выполнении выгрузки из запроса или при помощи конструктора. Пример создания Таблицы значения путем выгрузки из результата выполнения запроса можно посмотреть здесь.
Рассмотрим свойства и методы Таблицы значений 1С:Предприятие 8.0, 8.1, 8.2. Создадим новую таблицу значений — с использованием конструктора.
Перепишем пример по другому, без использования метода Выгрузка() результата запроса.
Пример:
Процедура СозданиеТаблицыЗначенийКонструктор() Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | РеализацияТоваровУслугТовары.Номенклатура, | ПРЕДСТАВЛЕНИЕ(РеализацияТоваровУслугТовары.Номенклатура), | РеализацияТоваровУслугТовары.Количество, | РеализацияТоваровУслугТовары.Сумма |ИЗ | Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары |ГДЕ | РеализацияТоваровУслугТовары.Ссылка = &Ссылка"; Запрос.УстановитьПараметр("Ссылка",ВыбДокумент); Результат = Запрос.Выполнить(); ТЗО = Новый ТаблицаЗначений; ТЗО.Колонки.Добавить("Номенклатура",Новый ОписаниеТипов("СправочникСсылка.Номенклатура")); ТЗО.Колонки.Добавить("Количество",Новый ОписаниеТипов("Число", Новый КвалификаторыЧисла(15, 3, ДопустимыйЗнак.Любой))); ВыборкаДетальныеЗаписи = Результат.Выбрать(); Пока ВыборкаДетальныеЗаписи.Следующий() Цикл НоваяСтрока=ТЗО.Добавить(); НоваяСтрока.Номенклатура=ВыборкаДетальныеЗаписи.Номенклатура; НоваяСтрока.Количество=ВыборкаДетальныеЗаписи.Количество; КонецЦикла; КонецПроцедуры
Разберем строки примера:
В строке:
ТЗО = Новый ТаблицаЗначений;
Создаем объект Таблица значений под именем ТЗО.
В строках:
ТЗО.Колонки.Добавить("Номенклатура",Новый ОписаниеТипов("СправочникСсылка.Номенклатура")); ТЗО.Колонки.Добавить("Количество",Новый ОписаниеТипов("Число", Новый КвалификаторыЧисла(15, 3, ДопустимыйЗнак.Любой)));
В объекте Таблицы значений вводим колонки:
Номенклатура — в это колонке построчно будут размещены данные по номенклатуре. Поэтому тип СправочникСсылка.Номенклатура.
Количество — в это колонке будет размещено количество. Соответствено тип Число размерность 15, с тремя знаками после запятой.
Заполнение таблицы значение происходит в цикле.
В строке:
НоваяСтрока=ТЗО.Добавить();
Создатеся объект строка НоваяСтрока, соственно с ней работаем дальше в цикле.
НоваяСтрока.Номенклатура=ВыборкаДетальныеЗаписи.Номенклатура; НоваяСтрока.Количество=ВыборкаДетальныеЗаписи.Количество;
Возможно Вам интересно:
Функция СтрЧислоВхождений(ТекСтрока, ТекПодстрокаПоиска) в 1С.
Оператор ВЫБОР в запросе 1С.
Функция ПОДСТРОКА() в запросе 1С.
Как открыть общую форму в 1С 8.1, 8.2, 8.3?