Система компоновки данных позволяет настраивать отображение общих итогов по горизонтали и по вертикали в отчете. Для управления расположением общих итогов используются настройки компоновки данных. При использовании конструктора схемы компоновки данных необходимо перейти на вкладку Настройки , а затем выбрать вкладку Другие настройки . На данной вкладке находятся параметры Расположение общих итогов по горизонтали и Расположение общих итогов по вертикали , позволяющие управлять расположением общих итогов в отчете.
Параметр Расположение общих итогов по горизонтали имеет смысл только для таблиц, а параметр Расположение общих итогов по вертикали – для группировок и таблиц.
Существуют следующие варианты расположения общих итогов :
- Нет – не отображать итоги. Для группировок не отображаются только итоги по вертикали, а для таблиц и тоги по вертикали и по горизонтали ;
Пример группировки, для которой параметр Расположение общих итогов по вертикали установлен в значение Нет :
Пример таблицы, для которой параметры Расположение общих итогов по горизонтали и Расположение общих итогов по вертикали установлены в значение Нет :
- Начало – отображать итоги в начале. Для группировок и строк таблицы общие итоги отображаются перед строками группировки, а для колонок таблицы перед колонками группировки ;
Пример группировки, для которой параметр Расположение общих итогов по вертикали установлен в значение Начало :
Пример таблицы, для которой параметры Расположение общих итогов по горизонтали и Расположение общих итогов по вертикали установлены в значение Начало :
- Конец – отображать итоги в конце. Для группировок и строк таблицы общие итоги отображаются после строк группировки, а для колонок таблицы после колонок группировки ;
Пример группировки, для которой параметр Расположение общих итогов по вертикали установлен в значение Конец :
Пример таблицы, для которой параметры Расположение общих итогов по горизонтали и Расположение общих итогов по вертикали установлены в значение Конец :
- Начало и конец – отображать итоги в начале и конце. Для группировок и строк таблицы общие итоги отображаются перед и после строк группировки, а для колонок таблицы перед и после колонок группировки ;
Пример группировки, для которой параметр Расположение общих итогов по вертикали установлен в значение Начало и конец :
Пример таблицы, для которой параметры Расположение общих итогов по горизонтали и Расположение общих итогов по вертикали установлены в значение Начало и конец :
- Авто – расположение общих итогов определяется автоматически. Для группировок верхнего уровня общие итоги отображаются в конце, для остальных группировок общие итоги не отображаются.
Стоит заметить что параметры Расположение общих итогов по горизонтали и Расположение общих итогов по вертикали можно использовать и для вложенных группировок. Например, в указанном ниже отчете для группировки Контрагент общие итоги отображаются в конце, а для группировки Номенклатура в начале и в конце.
Также стоит заметить, что отбор, применяемый в группировке, влияет на отображение общего итога по данной группировке. Например, в указанном ниже отчете для группировки Номенклатура установлен отбор. Соответственно, в общем итоге по группировке Номенклатура указаны количество и стоимость с учетом отбора, тогда как для вышестоящей группировки Номенклатура.Основной поставщик указывается количество и стоимость без учета отбора.
Отчеты в системах 1С используются для вывода информации пользователям в требуемом виде. Чаще всего для этого используется система компоновки данных – специальный механизм платформы, позволяющий писать достаточно сложные отчеты без написания кода. Если вы хотите быстро и грамотно писать отчеты в 1С, то вам придется изучить основные приемы работы с СКД.
Как рассчитать и вывести итоги в СКД
Одной из самых частых просьб пользователей является автоматический подсчет итогов по определенным критериям. Это действительно удобно и позволяет моментально оценить общий результат работы, чтобы не разбирать детально каждую строку отчета. СКД в 1С 8.3 поддерживает достаточно гибкие настройки, чтобы удовлетворить любые разумные требования пользователей.
Рассматривать вывод итогов оптимально на конкретных примерах с отчетом на СКД.
Расчет итогов настраивается на вкладке «Ресурсы», где слева у нас расположены все поля из запроса, а справа – настроечная таблица. Если не задерживаться на этой вкладке, то 1С не будет ничего рассчитывать и выведет данные, полученные после выполнения запроса. Попробуем сделать простой расчет общего количества номенклатуры на каждом складе. Для этого переместим поле в правую часть и установим в качестве выражения сумму.
Кроме суммы в СКД заложены и другие операции, которые можно указывать в поле «Выражение» в правой таблице. Причем они отличаются в зависимости от типа данных поля. Для нечисловых полей вы не сможете вывести в итоги их сумму или узнать среднее значение. С числами вы можете использовать полный набор арифметических операций:
- Сумма;
- Среднее;
- Максимум;
- Минимум;
- Количество;
- Количество различных.
Следует упомянуть, что никто не запрещает нам комбинировать вышеперечисленные функции в поле «Выражение». У нас есть возможность прописать там целые формулы и даже обращаться к функциям общих модулей. В поле «Рассчитывать по…» задают группировки, по которым необходим расчет итогов. То есть вы можете в одном столбце получить различную информацию по отдельным группировкам.
Разберем в качестве примера ситуацию, когда нужно показать информацию, сколько единиц товаров находится на каждом складе. Дополнительно с помощью оператора «Вычислить» в СКД отразим процент единиц номенклатуры определенного цвета от общего количества товаров. Так как для первого запроса нам нужна группировка по складам и общая, а для цветовой дифференциации – лишь по цвету, то мы можем вывести итоги в одну колонку. Дополнительно воспользуемся оператором «Формат», чтобы округлить проценты, и получим такую картину:
Дополнительный функционал СКД
Иногда случаются такие ситуации, когда нам необходимо отразить несколько итогов по одним группировкам. К примеру, показать количество номенклатуры на складе и ее процент по отношению к общему количеству. Для этого наиболее удобно использовать дополнительное вычисляемое поле. Его мы можем добавить на вкладке «Вычисляемые поля».
Нам необходима номенклатура, чтобы в итогах по группировкам отразить ее ассортимент. Для этого в столбец «Выражение» мы пропишем данные из поля запроса «Номенклатура». Таким образом, мы добавляем копию столбца, но с другим именем и возможностью настраивать другие итоги по колонкам. В ресурсах добавляем нужные операции с вычисляемым полем и на вкладке «Настройка» также добавляем его в перечень детальных записей.
При запуске отчета мы видим, что наша колонка добавилась и ассортимент подсчитывается верно. Однако, не совсем красиво то, что наименования номенклатуры дублируются в сгруппированных строках. Чтобы убрать наименование номенклатуры из столбца, который задумывался как числовой, необходимо изменить настройку вывода отчета.
В системе компоновки данных на вкладке «Настройка» в верхней половине нам нужно найти «Детальные записи». Нажав на них, в центре настроек можно будет выбрать управляющую конструкцию под аналогичным именем. В нижней половине откройте вкладку «Выбранные поля» и увидите единственную запись с названием «Авто». Нажмите на нее правой кнопкой мыши и выберите «Развернуть». Появятся все поля, среди которых нужно найти «АссортиментНоменклатуры», и отключить его.
Сохраняем отчет, обновляем конфигурацию, если это встроенный отчет, и запускаем 1С в режиме предприятия. В результате после сделанных настроек числовые показатели на всех уровнях группировки, включая общие итоги, остаются, а наименования номенклатуры отсутствуют. Таким способом можно отключить отображение данных поля на конкретном уровне.
В систему компоновки данных заложены широкие возможности и гибкие настройки, позволяющие создать практически любой отчет. Естественно, что существуют и настройки внешнего вида – группировки, общие и промежуточные итоги, выделения цветом и прочее. Остается лишь понять и запомнить, где и что настраивается в СКД.
Hohlova Вопрос-ответ Отзывов (4) В закладки
Всем здравствуйте) Есть отчет по остаткам инструментов на складах, в нем выводится какие остатки на какой период были, как сделать что бы в итогах по номенклатуре выводились остатки на последний период? Пробовала прописать на закладке ресурсы следующее: Сумма(ВычислитьВыражениеСГруппировкойМассив(“ОстатокНаСкладе”, “Максимум(Период)”)); Но так не срабатывает. Пробовала писать: ВЫБОР КОГДА Период = &КонецПериода ТОГДА ОстатокНаСкладе КОНЕЦ; тоже не помогает.
Нет похожих статей
Задача сводится к правильной настройке ролей полей: измерение, период.
Запрос по таблице остатки и обороты в СКД вернет то что вы хотите.
Какая конфигурация?
Выложите свою схему, посмотрю
ВЫБРАТЬ
СпрНоменклатура.НазначениеИспользования КАК НормыНаСписание,
УчетИнструментовОстаткиИОбороты.Номенклатура КАК Наименование,
УчетИнструментовОстаткиИОбороты.Склад,
УчетИнструментовОстаткиИОбороты.Номенклатура.БазоваяЕдиницаИзмерения КАК ЕдиницаИзмерения,
УчетИнструментовОстаткиИОбороты.КоличествоКонечныйОстаток КАК ОстатокНаСкладе,
УчетИнструментов.Регистратор,
КОНЕЦПЕРИОДА(УчетИнструментовОстаткиИОбороты.ПериодДень, ДЕНЬ) КАК Период
ПОМЕСТИТЬ ВТ
ИЗ
РегистрНакопления.УчетИнструментов.ОстаткиИОбороты(&ДатаНач, &ДатаКон, Авто, , ) КАК УчетИнструментовОстаткиИОбороты
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК СпрНоменклатура
ПО УчетИнструментовОстаткиИОбороты.Номенклатура = СпрНоменклатура.Ссылка
ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.УчетИнструментов КАК УчетИнструментов
ПО УчетИнструментовОстаткиИОбороты.Номенклатура = УчетИнструментов.Номенклатура
И УчетИнструментовОстаткиИОбороты.Склад = УчетИнструментов.Склад
СГРУППИРОВАТЬ ПО
СпрНоменклатура.НазначениеИспользования,
УчетИнструментовОстаткиИОбороты.Номенклатура.БазоваяЕдиницаИзмерения,
УчетИнструментов.Регистратор,
УчетИнструментовОстаткиИОбороты.Номенклатура,
УчетИнструментовОстаткиИОбороты.Склад,
УчетИнструментовОстаткиИОбороты.КоличествоКонечныйОстаток,
КОНЕЦПЕРИОДА(УчетИнструментовОстаткиИОбороты.ПериодДень, ДЕНЬ)
;
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
ВТ.НормыНаСписание,
ВТ.Наименование,
ВТ.Склад,
ВТ.ЕдиницаИзмерения,
ВТ.ОстатокНаСкладе КАК ОстатокНаСкладе,
ВЫБОР
КОГДА ЗначенияТочкиЗаказаСрезПоследних.ДатаНач = &КонецПериода
ТОГДА ВЫБОР
КОГДА ЗначенияТочкиЗаказаСрезПоследних.Подразделение.Наименование ПОДОБНО “Цех металлоконструкций”
ТОГДА ЗначенияТочкиЗаказаСрезПоследних.МинимальныйСтраховойЗапас
КОНЕЦ
КОНЕЦ КАК ТЗЦМК,
ВЫБОР
КОГДА ЗначенияТочкиЗаказаСрезПоследних.ДатаНач = &КонецПериода
ТОГДА ВЫБОР
КОГДА ЗначенияТочкиЗаказаСрезПоследних.Подразделение.Наименование ПОДОБНО “Цех энергомеханический”
ТОГДА ЗначенияТочкиЗаказаСрезПоследних.МинимальныйСтраховойЗапас
КОНЕЦ
КОНЕЦ КАК ТЗЦЭМ,
ВТ.Регистратор,
ВТ.Период
ПОМЕСТИТЬ Итог
ИЗ
ВТ КАК ВТ
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияТочкиЗаказа.СрезПоследних(, ) КАК ЗначенияТочкиЗаказаСрезПоследних
ПО ВТ.Наименование = ЗначенияТочкиЗаказаСрезПоследних.Номенклатура
И ВТ.Склад = ЗначенияТочкиЗаказаСрезПоследних.Склад
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
Итог.Наименование,
Итог.Склад,
Итог.ЕдиницаИзмерения,
Итог.ОстатокНаСкладе КАК ОстатокНаСкладе,
Итог.НормыНаСписание,
СУММА(Итог.ТЗЦМК) КАК ТЗЦМК,
СУММА(Итог.ТЗЦЭМ) КАК ТЗЦЭМ,
Итог.Регистратор,
Итог.Период
ИЗ
Итог КАК Итог
СГРУППИРОВАТЬ ПО
Итог.Наименование,
Итог.Склад,
Итог.ЕдиницаИзмерения,
Итог.НормыНаСписание,
Итог.Регистратор,
Итог.ОстатокНаСкладе,
Итог.Период