Объединяем ячейки с одинаковым текстом в шапке отчёта.
Допустим, мы разрабатываем отчёт, в котором в колонках таблицы могут отображаться несколько колонок с одинаковыми заголовками. Наша задача объединить ячейки с одинаковыми заголовками и оставить в объединённой области всего один заголовок.
В ячейках таблицы выводится реквизит «Остаток к оплате»:
Ячейки с повторяющимися заголовками реквизита мы и будем объединять, чтобы получить такой вид:
Для решения задачи в модуле объекта отчёта разместим следующие процедуры и функции:
В итоге получаем шапку отчёта, в которой объединены ячейки с указанными нами одинаковыми заголовками.
Платформа:
Добрый день! Нужен отчет вида:
кол-во—сумма—- —кол-во—сумма— кол-во—сумма—- —кол-во—сумма— кол-во—сумма—- —кол-во—сумма—
Номенклатура1 2 5,5 3 6 4 9 7 20 * * * *
Номенклатура1 4 9 7 20 2 5,5 3 6 * * * *
Делаю макет вручную (без программирования), на вкладке «Настройки» настроена кросс-таблица с группировками вида:
____* поставщики (имя1)
Как мне в макете настроить группировки таким образом, чтобы отчет формировался в указанном виде?
Рассмотрим задачу, когда колонку СКД нужно выводить в зависимости от выполнения какого-то условия.
Рассмотрим на примере внешнего отчета (без формы отчета, только СКД), условие вывода колонки задано в параметре СКД с типом Булево. Все доступные параметры выведены на форму отчета с помощью свойства параметров Включать в пользовательские настройки (правой кнопкой мышки по параметру Свойства элемента пользовательских настроек) (рис. 1):
Рис. 1. Свойства параметра отчета
В списке выбранных полей отчета присутствует колонка Себестоимость, выводом которой нужно управлять (рис. 2):
Рис. 2. Выбранные поля отчета
У параметра Себестоимость, отвечающего за вывод колонки отчета СКД Себестоимость, на закладке Параметры в СКД задаем свойству Использование значение Всегда, чтобы пользователи выбирали только значение параметра и не могли управлять использованием параметра (рис. 3):
Рис. 3. Свойство параметра Использование
Далее в модуле объекта отчета определяем процедуру ПриКомпоновкеРезультата(), в функции КолонкаСебестоимостьДоступна() прописываем возможные дополнительные условия вывода колонки:
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
Для Каждого ПараметрОтчета Из ПараметрыОтчета Цикл
Если ТипЗнч(ПараметрОтчета) = Тип(«ЗначениеПараметраНастроекКомпоновкиДанных») И ПараметрОтчета.Параметр = Новый ПараметрКомпоновкиДанных(«Себестоимость«) Тогда
Если НЕ (КолонкаСебестоимостьДоступна() И ПараметрОтчета.Значение) Тогда
//убирем из выводимых колонок
Для Каждого ЭлКолонки Из КомпоновщикНастроек.Настройки.Выбор.Элементы Цикл
Если ЭлКолонки.Поле = Новый ПолеКомпоновкиДанных(«Себестоимость«) Тогда
//добавляем, если нет
Для Каждого ЭлКолонки Из КомпоновщикНастроек.Настройки.Выбор.Элементы Цикл
Если ЭлКолонки.Поле = Новый ПолеКомпоновкиДанных(«Себестоимость«) Тогда