0

ТаблицаЗначений
Метод Свернуть()

Сворачивает таблицу значений по указанным колонкам группировки

Синтаксис

Метод Свернуть() имеет следующий синтаксис:

Свернуть(КолонкиГруппировок, [КолонкиСуммирования])

А также альтернативный англоязычный синтаксис:

GroupBy(GroupColumns, [TotalColumns])

Параметры

Описание параметров метода Свернуть():

Имя параметра Тип Описание
КолонкиГруппировок Строка Имена колонок, разделенные запятыми, по которым необходимо группировать строки таблицы значений
КолонкиСуммирования (необязательный) Строка Имена колонок, разделенные запятыми, по которым необходимо суммировать значения для сгруппированных строк
Жирным шрифтом выделены обязательные параметры

Описание

Метод Свернуть() сворачивает таблицу значений по указанным колонкам группировки. При этом, строки, у которых совпадают сочетания значений в колонках, указанных в параметре КолонкиГруппировок, сворачиваются в одну строку, а значения этих строк, хранящиеся в колонках, указанных параметре КолонкиСуммирования, суммируются. Колонки, не вошедшие ни в один из списков колонок, после выполнения метода удаляются из таблицы значений.

Внимание! Списки колонок не должны пересекаться, т.е. одна и та же колонка не может одновременно присутствовать в параметрах КолонкиГруппировок и КолонкиСуммирования

Доступность

Сервер, толстый клиент, внешнее соединение, мобильное приложение(сервер).

Пример использования

Пример кода с использованием метода Свернуть():

//создаем таблицу товаров
тз = Новый ТаблицаЗначений;
тз.Колонки.Добавить("Код");
тз.Колонки.Добавить("Наименование");
тз.Колонки.Добавить("Категория");
тз.Колонки.Добавить("Сумма", Новый ОписаниеТипов("Число"));

//добавляем товары и услуги
НоваяСтрока = тз.Добавить();
НоваяСтрока.Код = "001";
НоваяСтрока.Наименование = "Стул деревянный";
НоваяСтрока.Категория = "Товары";
НоваяСтрока.Сумма = 8000;

НоваяСтрока = тз.Добавить();
НоваяСтрока.Код = "002";
НоваяСтрока.Наименование = "Стол деревянный";
НоваяСтрока.Категория = "Товары";
НоваяСтрока.Сумма = 10000;

НоваяСтрока = тз.Добавить();
НоваяСтрока.Код = "101";
НоваяСтрока.Наименование = "Сборка мебели";
НоваяСтрока.Категория = "Услуги";
НоваяСтрока.Сумма = 1200;

//просуммируем таблицу по категориям товара
тз.Свернуть("Категория", "Сумма");

Для каждого СтрокаТЧ ИЗ тз Цикл
	Сообщить("" + СтрокаТЧ.Категория + " на сумму " + СтрокаТЧ.Сумма);
КонецЦикла;

//Товары на сумму 18 000
//Услуги на сумму 1 200

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

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