helpf.pro
Регистрация
 0 
Распечатать

1С 8.x : Создание сводной таблицы

В специальном окне «Поля сводной таблицы», которое отображается при активизации сводной таблицы, можно включать и выключать измерения и ресурсы. Если оно не отображается, то щелкните правой кнопкой на ячейке сводной таблицы и в контекстном меню выберите пункт «Отображать поля».

У табличного документа есть свойство-коллекция ВстроенныеТаблицы, которое позволяет обращаться к сводным таблицам, расположенным на нем. Через эту коллекцию можно добавлять и удалять сводные таблицы при выполнении программы.

Самое главное свойство сводной таблицы — это ИсточникДанных, которое имеет тип РезультатЗапроса или ПостроительОтчета (см. ниже). Это свойство определяет, откуда сводная таблица будет черпать данные для отображения. При использовании результата запроса его итоги становятся ресурсами (отображаются в области данных), а группировочные поля, по которым они подсчитываются, становятся измерениями.

Следующий пример выбирает данные из регистра накопления Продажи, подсчитывает общее количество и сумму по каждому контрагенту (с учетом иерархии), номенклатуре (с учетом иерархии), периодам и странам. Результат запроса помещается в сводную таблицу для анализа:
Код 1C v 8.х
 Запрос = Новый Запрос("
| ВЫБРАТЬ
| ПродажиОбороты.Контрагент КАК Контрагент,
| ПродажиОбороты.Номенклатура КАК Номенклатура,
| ПродажиОбороты.КоличествоОборот КАК КоличествоОборот,
| ПродажиОбороты.СуммаОборот КАК СуммаОборот
|ИЗ
| РегистрНакопления.Продажи.Обороты(ПериодС, ПериодПо,
| Месяц,,(Контрагент, Номенклатура))
|КАК ПродажиОбороты
|ИТОГИ СУММА(КоличествоОборот) , СУММА(СуммаОборот) ПО
| Контрагент ИЕРАРХИЯ,
| Номенклатура ИЕРАРХИЯ,
| ПродажиОбороты.Период,
| ПродажиОбороты.Номенклатура.СтранаПроисхождения КАК Страна
| АВТОУПОРЯДОЧИВАНИЕ") ;
Запрос.УстановитьПараметр("ПериодС", Периоде);
Запрос.УстановитьПараметр("ПериодПо", КонецДня(ПериодПо));
Результат = Запрос.Выполнить();

ПолеТабДок = ЭлементыФормы.ПолеТабличногоДокумента;
СводнаяТаблица = ПолеТабДок.ВстроенныеТаблицы.СводнаяТаблица!;
СводнаяТаблица.ИсточникДанных = Результат;
СводнаяТаблица.ОтображатьПоля = Истина;

Если СводнаяТаблица.Колонки.Количество() = 0 И
СводнаяТаблица.Строки.Количество() = 0 И
СводнаяТаблица.Данные.Количество() = 0 Тогда
СводнаяТаблица.Обновление = Ложь;
// Зададим начальное расположение измерений на осях
СводнаяТаблица.Колонки.Добавить("Контрагент");
СводнаяТаблица.Строки.Добавить("Номенклатура");
СводнаяТаблица.Данные.Добавить("КоличествоОборот");
СводнаяТаблица.Данные.Добавить("СуммаОборот");
СводнаяТаблица.Обновление = Истина;
КонецЕсли;
Разместил:   Версии: | 8.x |  Дата:   Прочитано: 8222
 0 
Распечатать
Возможно, вас также заинтересует
1Cv8.1CD - Файл данных достиг максимального размера! 3
1С выдает предупреждение " Файл данных достиг максимального размера" . Подскажите из - за чего это и как можно решить ? Превышен размер файла, обычно это сообщение возникает, когда размер файла 1Cv8.1CD приближается к 10...
Excel файл как Внешний источник данных 4
Подключимся и загрузим из файла Excel данные в таблицу значений 1С. Сделать теперь это очень просто. 1. В конфигурации добавляет новый объект метаданных типа " Внешние источники данных" и назовем его просто " Excel" . ...
Автоматическая установка ширины колонки табличного документа. 0
Процедура, которая " примерно" делает автоширину колонок (навроде, как если бы выделить все колонки и дважды щелкнуть мышкой по границе заголовка колонки). Привожу текст, работает неахти, но лучше чем ничего: Процедура...
Вертикальная автофиксация для СКД 0
В СКД очень не хватает возможности автофиксации строк. Обусловлено это невозможностью однозначно определить их количество в общем случае. Однако в большинстве случаев это можно сделать Обращаю ваше внимание, что...
Внешние источники данных 0
Почему данная возможность вызывает такой интерес? Любой человек, который программировал в 1С при этом достаточно неплохо знаком с SQL и хотя бы в общих чертах знаком с архитектурой и принципами разработки других...
Посмотреть все результаты поиска похожих
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.