Для простоты дальнейшего изложения предположим, в отчете была создана таблица значений ТаблицаЗначенийОтчета с колонками колонка1, колонка2, колонка3,.
1C Скд Изменить Заголовок Колонки Таблицы
Итак: «Объектная» СКД – что это и зачем вам надо ее использовать?
Схема компоновки данных (СКД) – очень мощный и развитый механизм 1С, позволяющий строить сложные отчеты с гибким механизмом построения результирующих форм, установки всевозможных отборов и т.д. на стороне пользователя.
Не каждый разработчик «любит» использовать в своей работе СКД. На это есть несколько понятных причин. Например,
- Не каждый разработчик в совершенстве владеет всеми возможностями СКД, т.к. они на самом деле весьма обширны. В этом случае СКД выступает в виде «черного ящика», который у себя внутри делает неизвестно что.
- Существует ряд отчетов, которые не взять одним запросом. Порой требуется написать несколько (до нескольких десятков) запросов и обработать каждый из них по своей особенной схеме, прежде чем получить данные пригодные для отчета. При этом сами выходные формы отчетов достаточно просты. Этим «славятся» отчеты для управленческого персонала, который хочет видеть «все и сразу».
Получается, СКД, достаточно мощный механизм, используется разработчиками преимущественно для написания отчетов с довольно простыми «запросными» выборками данных из базы и не сложными выходными формами.
Но не стоит забывать об «Объектной» компоновке! О СКД, в которой в качестве набора данных выступает объект – произвольная таблица значений. Тем самым, мы можем использовать всю гибкость настроек СКД на уровне пользователей (свободу построения выходных форм, произвольные отборы, настройки,…) и очень сложные нетиповые выборки в качестве источника данных!
Опишем основные нюансы (и порядок) работы с «объектной» компоновкой, на которые стоит обратить внимание при разработке сложных отчетов.
ВНИМАНИЕ: все приведенные листинги написаны на 8.1.
Раз в СКД в качестве источника данных выступает объект – произвольная таблица значений, следовательно, в отчете надо эту таблицу значений создать и заполнить. Таблица значений произвольная: данные в нее могут попадать из любых источников и произвольным образом (из запросов, таблиц базы данных), могут быть расчетные поля и т.д.
Для простоты дальнейшего изложения предположим, в отчете была создана таблица значений «ТаблицаЗначенийОтчета» с колонками «колонка1, колонка2, колонка3, …».
1с скд объединить заголовок группировки колонок
Настройки СКД
Кратко опишем настройки СКД. Думаю, подробно заострять внимание на них не стоит.
Промокоды на Займер на скидки
В отчет добавляем новый макет типа «Схема компоновки данных».
В самой СКД в качестве набора данных добавляем набор данных «объект»
Затем, ОБЯЗАТЕЛЬНО, необходимо указать имя объекта, содержащего данные. Имя объекта МОЖЕТ НЕ СОВПАДАТЬ с именем таблицы значений с данными, которую мы уже создали в отчете (см. п. 1).
Допустим, у нас, имя объекта, содержащего данные, будет «ОбъектСДанными».
Заполнение полей СКД. Обращаем ваше внимание, поля СКД можно задать (описать) в СКД сейчас, когда мы создаем СКД, а можно позже, программно. Для простоты, добавим все наши поля непосредственно в СКД.
ВАЖНО! Имена полей в объектной СКД должны совпадать с именами колонок таблицы значений источника: у нас поля будут иметь имена «колонка1, колонка2, колонка3, …», также, как в таблице значений «ТаблицаЗначенийОтчета».
Теперь осталось только указать ресурсы компоновки, настроить выходную форму, указать отборы (здесь мы подробно расписывать не будем, — предполагаем, что читатель знает как это делается).
Все, работа с макетом СКД закончена. Теперь необходимо каким-то образом передать СКД сформированную нами таблицу значений «ТаблицаЗначенийОтчета», по сути, установить связь между «ТаблицаЗначенийОтчета» и «ОбъектСДанными» компоновки. Это нужно делать в самом отчете.
Добавим в отчет процедуру, которая передаст нашу таблицу значений в компоновку и выведет отчет. Назовем эту процедуру «Печать»
В нашем примере (см. картинки выше) макет со схемой компоновки данных назывался «Макет». Обращаем ваше внимание, что используемый макет СКД не обязательно должен быть основным.
Обращаем ваше внимание, таблица значений «ТаблицаЗначенийОтчета» не передается в процедуру параметром, а является переменной или реквизитом формы отчета в целом.
Некоторые пояснения к макету компоновки. Здесь появляется еще одна переменная: «ДанныеРасшифровкиОтчета». Эта переменная также должна быть переменной формы. В нее СКД поместит информацию о расшифровке.
Вывод результата. В нашем примере в качестве таблицы для вывода результата используется поле табличного документа формы «Результат».
Саму процедуру получения данных из внешнего файла мы описывать не будем, обратим внимание на ту часть кода, которая обязательно должна присутствовать в компоновке для того, чтобы мы могли получить данные для Набора данных 2 Рис.
Дополнительный функционал СКД
Иногда случаются такие ситуации, когда нам необходимо отразить несколько итогов по одним группировкам. К примеру, показать количество номенклатуры на складе и ее процент по отношению к общему количеству. Для этого наиболее удобно использовать дополнительное вычисляемое поле. Его мы можем добавить на вкладке «Вычисляемые поля».
При запуске отчета мы видим, что наша колонка добавилась и ассортимент подсчитывается верно. Однако, не совсем красиво то, что наименования номенклатуры дублируются в сгруппированных строках. Чтобы убрать наименование номенклатуры из столбца, который задумывался как числовой, необходимо изменить настройку вывода отчета.
Сохраняем отчет, обновляем конфигурацию, если это встроенный отчет, и запускаем 1С в режиме предприятия. В результате после сделанных настроек числовые показатели на всех уровнях группировки, включая общие итоги, остаются, а наименования номенклатуры отсутствуют. Таким способом можно отключить отображение данных поля на конкретном уровне.
В систему компоновки данных заложены широкие возможности и гибкие настройки, позволяющие создать практически любой отчет. Естественно, что существуют и настройки внешнего вида – группировки, общие и промежуточные итоги, выделения цветом и прочее. Остается лишь понять и запомнить, где и что настраивается в СКД.
1с скд объединить ячейки с одинаковыми значениями.
Настройка итогов в СКД 1С 8.3
Отчеты в системах 1С используются для вывода информации пользователям в требуемом виде. Чаще всего для этого используется система компоновки данных – специальный механизм платформы, позволяющий писать достаточно сложные отчеты без написания кода. Если вы хотите быстро и грамотно писать отчеты в 1С, то вам придется изучить основные приемы работы с СКД.
Одной из самых частых просьб пользователей является автоматический подсчет итогов по определенным критериям. Это действительно удобно и позволяет моментально оценить общий результат работы, чтобы не разбирать детально каждую строку отчета. СКД в 1С 8.3 поддерживает достаточно гибкие настройки, чтобы удовлетворить любые разумные требования пользователей.
Рассматривать вывод итогов оптимально на конкретных примерах с отчетом на СКД.
Кроме суммы в СКД заложены и другие операции, которые можно указывать в поле «Выражение» в правой таблице. Причем они отличаются в зависимости от типа данных поля. Для нечисловых полей вы не сможете вывести в итоги их сумму или узнать среднее значение. С числами вы можете использовать полный набор арифметических операций:
Следует упомянуть, что никто не запрещает нам комбинировать вышеперечисленные функции в поле «Выражение». У нас есть возможность прописать там целые формулы и даже обращаться к функциям общих модулей. В поле «Рассчитывать по…» задают группировки, по которым необходим расчет итогов. То есть вы можете в одном столбце получить различную информацию по отдельным группировкам.
Микрофинансирование → Микрокредиты → Специальные предложения → Скачать файлы → Обзор Быстроденег → Предмет договора → Ответственность сторон → Отличные наличные→ Экспресс займы