Новости экономики и финансов. Курсы валют, ситуация на биржах, акции, котировки, аналитика: 💫 💫 💫 💫 💫 читайте на сайте

1C Скд Объединить Заголовок Группировки Колонок • Трюк 3 шапка-невидимка

При разработке схемы в предопределённом макете оформления добавьте макет группировки, с определением по имени группировки Невидимка так, как показано на скриншоте.

Мнение эксперта
1С:Эксперт по технологическим вопросам
Задавайте мне вопросы, и я помогу разобраться!
Данное значение может быть рассчитано только на данном уровне группировки, так как, выше или ниже, отсутствуют значения для расчета. Настройка итогов в СКД 1С 8.3 Обращайтесь в форму связи

Трюки и уловки при работе с отчетами на базе СКД (часть 1)

Дабы избежать комментариев типа «тоже мне открытие!», оговорюсь сразу: статья рассчитана на неискушённых СКД-разработчиков, тем кто это и так знает не обязательно высказывать своё «фи!», поймите, то что очевидно для вас — не всегда бывает очевидно остальным.

Пример.
В качестве примера я не стал изобретать велосипед, а взял самую обычную оборотно-сальдовую ведомость по счету 60 из демо-версии 1С:Бухгалтерии (я использую ред. 2.0.). Кто не знает, начиная с редакции 2.0 этот отчёт сделан на базе СКД.

Итак, зададим прямо в ней отбор для строк с условием «БУ Дт (оборот)» Равно «БУ Кт (оборот)», а также применим к отчёту условное оформление, подсветив жёлтым цветом ячейки строк, где «БУ Кт (кон. сальдо)» Больше «БУ Кт (оборот)». Если кто не знает, как включить панель «Оформление» — найдите кнопку «Параметры панели настроек» справа от надписи «Панель настроек».

Конечный результат должен получиться примерно таким:

Каталог 1C решений
Предлагаю Вам три типовые задачки на СКД, которые решаются средствами, описанными в данной публикации.
Прикладываю скрин. Текущий вид отчета слева. Требуемый вид отчета – справа.
Прикладываю прототип отчета с результатом как на скрине слева.

Программное объединение ячеек табличного документа в 1С

Трюк №2. Отбор на группировках.

Пример.
Цель примера: отобразить ОСВ, в которой для взаиморасчетных счетов (60,62,76) показать расшифровку по контрагентам, а для затратных (20,23,25,26) — по статьям затрат.

Сама СКД реализована в виде набора данных, где используется запрос к виртуальной таблице остатков и оборотов регистра бухгалтерии «Хозрасчетный».
Размещаем вложенные группировки «Организация» и «Счет». В группировке «Счет» параллельно размещаем 2 группировки «Субконто1» и «Субконто2», для которых задаем соответствующие отборы.
Иллюстрацию настройки привожу в скриншоте:

Если в основных настройках отчёта на закладке «Другие настройки» вы не отключали вывод отборов, то это обязательно нужно будет сделать в «других настройках» наших группировок «Субконто1» и «Субконто2»

Возвращает количество объединяемых ячеек Функция ОбъединятьЯчейки ТабДок, индСтр, индКол, ТекстДляОбъединения Ячейка ТабДок.

Мнение эксперта
1С:Эксперт по технологическим вопросам
Задавайте мне вопросы, и я помогу разобраться!
При формировании в колонках таблицы вложенных группировок, родительский заголовок группировки, не объединяет заголовки дочерних группировок. 1C Скд Объединить Заголовок Группировки Колонок Обращайтесь в форму связи

Дополнительный функционал СКД

Иногда случаются такие ситуации, когда нам необходимо отразить несколько итогов по одним группировкам. К примеру, показать количество номенклатуры на складе и ее процент по отношению к общему количеству. Для этого наиболее удобно использовать дополнительное вычисляемое поле. Его мы можем добавить на вкладке «Вычисляемые поля».

Какую часть дохода тратите на еду?
До 50%Больше 50%

При запуске отчета мы видим, что наша колонка добавилась и ассортимент подсчитывается верно. Однако, не совсем красиво то, что наименования номенклатуры дублируются в сгруппированных строках. Чтобы убрать наименование номенклатуры из столбца, который задумывался как числовой, необходимо изменить настройку вывода отчета.

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

В систему компоновки данных заложены широкие возможности и гибкие настройки, позволяющие создать практически любой отчет. Естественно, что существуют и настройки внешнего вида – группировки, общие и промежуточные итоги, выделения цветом и прочее. Остается лишь понять и запомнить, где и что настраивается в СКД.

Настройка итогов в СКД 1С 8.3

Настройка итогов в СКД 1С 8.3

Отчеты в системах 1С используются для вывода информации пользователям в требуемом виде. Чаще всего для этого используется система компоновки данных – специальный механизм платформы, позволяющий писать достаточно сложные отчеты без написания кода. Если вы хотите быстро и грамотно писать отчеты в 1С, то вам придется изучить основные приемы работы с СКД.

Одной из самых частых просьб пользователей является автоматический подсчет итогов по определенным критериям. Это действительно удобно и позволяет моментально оценить общий результат работы, чтобы не разбирать детально каждую строку отчета. СКД в 1С 8.3 поддерживает достаточно гибкие настройки, чтобы удовлетворить любые разумные требования пользователей.

Рассматривать вывод итогов оптимально на конкретных примерах с отчетом на СКД.

Кроме суммы в СКД заложены и другие операции, которые можно указывать в поле «Выражение» в правой таблице. Причем они отличаются в зависимости от типа данных поля. Для нечисловых полей вы не сможете вывести в итоги их сумму или узнать среднее значение. С числами вы можете использовать полный набор арифметических операций:

Горящие товары с бесплатной доставкой
 «AliExpress Россия» работает отдельно от глобального «AliExpress» принадлежащего Alibaba. Он не зависит от мировых банковских систем и не попал под санкционный список со стороны США и Великобритании. Из Китая соответственно тоже можно заказывать ничего не опасаясь.

Следует упомянуть, что никто не запрещает нам комбинировать вышеперечисленные функции в поле «Выражение». У нас есть возможность прописать там целые формулы и даже обращаться к функциям общих модулей. В поле «Рассчитывать по…» задают группировки, по которым необходим расчет итогов. То есть вы можете в одном столбце получить различную информацию по отдельным группировкам.

Допустим, мы разрабатываем отчёт, в котором в колонках таблицы могут отображаться несколько колонок с одинаковыми заголовками.

Мнение эксперта
1С:Эксперт по технологическим вопросам
Задавайте мне вопросы, и я помогу разобраться!
В случае если в качестве имени группировки используется пустая строка, вычисление будет выполнено в контексте текущей группировки. 1С скд объединение ячеек – Обращайтесь в форму связи

Программное объединение ячеек табличного документа в 1С : 9 комментариев

Здорово! Спасибо. А я то думаю, как бы сделать такое же для колонок. Но там аналогично)

Кстати объединение можно делать не только в уже полностью сформированном табличном документе, но и в отдельных областях, которые только готовятся для вывода. Делается все аналогично, но так бывает даже удобнее.

Спасибо! Очень помогла статья! Вот чувствовала, что метод Объединить нужно использовать, а каким боком его применить…. Оказывается, все довольно просто. Респект автору!

О, супер! Спасибо большое! Помогло.
Однако в выражении ТабДок.Область(«R»+Строка+»C1») переменную «Строка» лучше форматировать. То есть:
Формат(Строка,»ЧГ=0″)
Иначе, на строке № 1000 вывалится ошибка из-за пробела между разрядами групп.

Хотя есть некоторые сомнения. Ведь мы переменную Строка берем не из экселевского файла, в котором могут быть разделители групп. Эта переменная образуется в цикле ДЛЯ, ей значения присваивает 1С, они и так будут без разделителей.

Спасибо большое! Этот пример очень помог.
Я бы сменил имя переменной Строка=2 на НомерСтроки=2, «Строка» как приведене к строке и как имя переменной не очень красиво.

А разве в условии Если ТабДок.Область(«R»+Строка+»C1»).Текст=ТабДок.Область(«R»+Строка(Строка-1)+»C1»).Текст
Не должно быть «» вместо «=»?

Думаю, нет. Мы же хотим объединить ячейки с одинаковым содержимым. Значит должно быть «равно».

Товар Склад Остаток
Яблоки Склад 1 6
Яблоки Склад 2 8
Яблоки Склад 3 9
Груши Склад 1 7
Груши Склад 2 2

1с компоновка данных объединить строки. СКД

Программное объединение ячеек табличного документа в 1С

Для объединения ячеек предназначена функция Объединить(). Функция применяется к прямоугольной область табличного документа.

В результате формирования отчета была получена таблица.

Товар Склад Остаток
Яблоки Склад 1 6
Яблоки Склад 2 8
Яблоки Склад 3 9
Груши Склад 1 7
Груши Склад 2 2

Необходимо объединить ячейки с одинаковыми товарами.

ОбъединениеНачало = 2 ;
Для Строка = 2 По ПоследняяСтрока Цикл
Если ТабДок . Область ( «R» + Строка + «C1» ) . Текст = ТабДок . Область ( «R» + Строка ( Строка — 1 ) + «C1» ) . Текст
ИЛИ ОбъединениеНачало = Строка Тогда Продолжить ;
Иначе
ТабДок . Область ( «R» + ОбъединениеНачало + «C1» + «:» + «R» + Строка ( Строка — 1 ) + «C1» ) . Объединить ( ) ;
ОбъединениеНачало = Строка ;
КонецЕсли ;
КонецЦикла ;

Товар Склад Остаток
Яблоки Склад 1 6
Склад 2 8
Склад 3 9
Груши Склад 1 7
Склад 2 2
  1. Создаем цикл, который будет обходить строки табличного документа со второй (заголовок нам не нужен) по последнюю. Переменную ПоследняяСтрока нужно каким-то образом рассчитать.
  2. Переменная ОбъединениеНачало содержит номер строки, с которой нужно будет начать объединение. Первоначально этот номер равен номеру строки начала обхода таблицы.
  3. Обходим последовательно каждую строку табличного документа. При этом проверяем, равен ли текст текущей строки и столбца 1 тексту предыдущей строки того же столбца. Если равно, продолжаем цикл.
  4. Если текст отличается от предыдущей строки, значит объединяем ячейки в первой колонке, начиная с ячейки начала объединения, по последнюю с тем же значением.
  5. После объединения меняем значение переменной НачалоОбъединения, чтобы следующее объединение начиналось уже со следующей строки.

💥Принимайте участие в опросе и получайте бесплатную консультацию

Related posts

Добавить комментарий

*