Рассмотрим задачу, когда колонку СКД нужно выводить в зависимости от выполнения какого-то условия.
Рассмотрим на примере внешнего отчета (без формы отчета, только СКД), условие вывода колонки задано в параметре СКД с типом Булево. Все доступные параметры выведены на форму отчета с помощью свойства параметров Включать в пользовательские настройки (правой кнопкой мышки по параметру Свойства элемента пользовательских настроек) (рис. 1):
Рис. 1. Свойства параметра отчета
В списке выбранных полей отчета присутствует колонка Себестоимость, выводом которой нужно управлять (рис. 2):
Рис. 2. Выбранные поля отчета
У параметра Себестоимость, отвечающего за вывод колонки отчета СКД Себестоимость, на закладке Параметры в СКД задаем свойству Использование значение Всегда, чтобы пользователи выбирали только значение параметра и не могли управлять использованием параметра (рис. 3):
Рис. 3. Свойство параметра Использование
Далее в модуле объекта отчета определяем процедуру ПриКомпоновкеРезультата(), в функции КолонкаСебестоимостьДоступна() прописываем возможные дополнительные условия вывода колонки:
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
Для Каждого ПараметрОтчета Из ПараметрыОтчета Цикл
Если ТипЗнч(ПараметрОтчета) = Тип("ЗначениеПараметраНастроекКомпоновкиДанных") И ПараметрОтчета.Параметр = Новый ПараметрКомпоновкиДанных("Себестоимость") Тогда
Если НЕ (КолонкаСебестоимостьДоступна() И ПараметрОтчета.Значение) Тогда
//убирем из выводимых колонок
Для Каждого ЭлКолонки Из КомпоновщикНастроек.Настройки.Выбор.Элементы Цикл
Если ЭлКолонки.Поле = Новый ПолеКомпоновкиДанных("Себестоимость") Тогда
//добавляем, если нет
Для Каждого ЭлКолонки Из КомпоновщикНастроек.Настройки.Выбор.Элементы Цикл
Если ЭлКолонки.Поле = Новый ПолеКомпоновкиДанных("Себестоимость") Тогда
В этом ролике специалист организации Profession Store Павел Шемякин создаст отчет на СКД с гибкой нумерацией колонок.
В процессе создания отчета, мы разберем следующие моменты:
- Работа с характеристиками в СКД
- Постобработка отчета на СКД: программное изменение результата вывода отчета.
Изучайте программирование в 1С в месте с моей книги «Программировать в 1С за 11 шагов»
- Книга написана понятным и простым языком — для новичка.
- Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
- Научитесь понимать архитектуру 1С;
- Станете писать код на языке 1С;
- Освоите основные приемы программирования;
- Закрепите полученные знания при помощи задачника;
Отличное пособие по разработке в управляемом приложении 1С, как для начинающих разработчиков, так и для опытных программистов.
- Очень доступный и понятный язык изложения
- Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
- Поймете идеологию управляемого приложения 1С
- Узнаете, как разрабатывать управляемое приложение;
- Научитесь разрабатывать управляемые формы 1С;
- Сможете работать с основными и нужными элементами управляемых форм
- Программирование под управляемым приложением станет понятным
Промо-код на скидку в 15% — 48PVXHeYu
Если Вам помог этот урок решить какую-нибудь проблему, понравился или оказался полезен, то Вы можете поддержать мой проект, перечислив любую сумму:
можно оплатить вручную:
Яндекс.Деньги — 410012882996301
Web Money — R955262494655
Сворачивает таблицу значений по указанным колонкам группировки
Синтаксис
Метод Свернуть() имеет следующий синтаксис:
А также альтернативный англоязычный синтаксис:
Параметры
Описание параметров метода Свернуть() :
Имя параметра | Тип | Описание |
---|---|---|
КолонкиГруппировок | Строка | Имена колонок, разделенные запятыми, по которым необходимо группировать строки таблицы значений |
КолонкиСуммирования (необязательный) | Строка | Имена колонок, разделенные запятыми, по которым необходимо суммировать значения для сгруппированных строк |
Жирным шрифтом выделены обязательные параметры |
Описание
Метод Свернуть() сворачивает таблицу значений по указанным колонкам группировки. При этом, строки, у которых совпадают сочетания значений в колонках, указанных в параметре КолонкиГруппировок , сворачиваются в одну строку, а значения этих строк, хранящиеся в колонках, указанных параметре КолонкиСуммирования , суммируются. Колонки, не вошедшие ни в один из списков колонок, после выполнения метода удаляются из таблицы значений.
Доступность
Сервер, толстый клиент, внешнее соединение, мобильное приложение(сервер).
Пример использования
Пример кода с использованием метода Свернуть() :