Skip to content
лого - блог 1с программиста

Блог 1С программиста

Наработки, заметки и другая информация по 1С

  • Главная
  • Типовые конфигурации
    • ЗУП 3.1
      • Разработка
        • Обработки
        • Отчеты
        • Печатные формы
        • Расширения
      • Инструкции
      • Ответы техподдержки 1С
      • Общие вопросы
    • ДО 2.1
    • УХ 3.2
    • УПП 1.3
  • Интеграции и обмены
  • Шаблоны и заготовки
    • Типовые приемы
    • Отчеты
    • Обработки
    • Печатные формы
    • Расширения
  • Платформа 1С
  • Разработки
    • Контакты
  • Toggle search form

Пример использования функции ВычислитьВыражениеСГруппировкойМассив в отчете на СКД

Posted on 29 апреля 25 г.29 апреля 25 г. By Алексей Комментариев к записи Пример использования функции ВычислитьВыражениеСГруппировкойМассив в отчете на СКД нет

Содержание:

  • Постановка задачи
  • Реализация
  • Файлы материала

Появилась задача в которой в отчете на СКД на разных уровнях Группировки необходимо использовать разные агрегатные функции. А именно, на нижнем уровне Группировки рассчитать Ресурс как Максимум(), а на последующих группировках как Сумма().

Данная задача была решена с помощью внутренней функции СКД ВычислитьВыражениеСГруппировкойМассив.

Функция возвращает массив, каждый элемент которого содержит результат вычисления выражения для группировки по указанному полю.

Синтаксис:

ВычислитьВыражениеСГруппировкойМассив (Выражение, ВыраженияПолейГруппировки, ОтборЗаписей, ОтборГруппировок)

● Выражение – тип Строка. Выражение, которое нужно вычислить. Например, Сумма(СуммаОборот);

● ВыраженияПолейГруппировки – выражения полей группировки, перечисленные через запятую. Например, «Контрагент, Партия»;

● ОтборЗаписей – выражение, применяемое к детальным записям. Например, ПометкаУдаления = Ложь. Если в данном параметре используется агрегатная функция, то при выполнении компоновки данных возникнет ошибка;

● ОтборГруппировок – отбор, применяемый к групповым записям. Например: Сумма(СуммаОборот) > &Параметр1.

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

Более подробно о функциях языка выражений СКД можно почитать на ИТС.

Постановка задачи

Предположим у нас есть две таблицы с разным уровнем детализации данных, которые мы свели в одну:

Постановка задачи для отчета на СКД ВычислитьВыражениеСГруппировкойМассив

Нам нужно на основании этих данных сформировать такой отчет на СКД:

Результат отчета на СКД ВычислитьВыражениеСГруппировкойМассив

т.е. «Рабочие дни» по группировке «Месяц» рассчитать, как Максимум(), а по группировкам «Сотрудник» и «Общие итоги» Сумма().

Реализация

Получим сводные данные запросом и настроим отчет следующим образом:

1. На вкладке «Настройки» создадим отчет нужной структуры:

Структура отчета СКД

2. На владке «Ресурсы» для «Рабочих дней» установим следующее выражение:

Выражение ресурса отчета СКД

Сумма(ВычислитьВыражениеСГруппировкойМассив(«Максимум(РабочихДней)», «Сотрудник, Месяц»))

Т.е. мы на каждом уровне группировки нашу сводную таблицу СГРУППИРОВАЛИ ПО Сотрудник, Месяц вычислив Максимум(РабочихДней) и далее Суммируем получившийся массив в рамках своих группировок.

3. Для группировки «ВидРасчета» на вкладке «Выбранные поля» удаляем «авто» и набираем нужные поля. Чтобы избежать повторного вывода ресурса «Рабочие дни», исключаем его из списка.

И получаем нужный нам результат. Пример с отчетом можно скачать ниже.

Файлы материала
Отчет СКД с примером функции «ВычислитьВыражениеСГруппировкойМассив» (УФ)Скачать
Отчет СКД с примером ВычислитьВыражениеСГруппировкойМассив

Рекомендации

  • Как переименовать итоги в отчете СКД
  • Как упорядочить динамические колонки СКД
  • Отбор по дополнительному реквизиту в отчете на СКД через Характеристики
Отчеты, Шаблоны и заготовки Tags:СКД

Навигация по записям

Previous Post: Программное заполнение документа «Перенос данных»
Next Post: Связь табличных частей по ключевым полям

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *

ДзенTelegram

Разработки

  • Печатная форма "Расходный кассовый ордер" для ЗУП 3.1 Печатная форма "Расходный кассовый ордер" ЗУП 3.1 650,00 ₽
  • Отчет "План-факт отпусков сотрудников в виде диаграммы Ганта Отчет "План-факт по отпускам сотрудников" ЗУП 3.1 650,00 ₽
  • Приказ об отмене трудового договора (рис 1) Печатная форма "Отмена приема на работу" ЗУП 3.1 650,00 ₽
  • Обработка “Выплата сотруднику через банк” ЗУП 3.1 Обработка “Выплата сотруднику через банк” ЗУП 3.1 0,00 ₽
  • Тестирование API Яндекс GPT Обработка "Работа с API YandexGPT" 650,00 ₽

MDM web-сервис XML БСП ЕФС-1 ИИ КД 2.0 НДФЛ СЗВ-СТАЖ СЗВ-ТД СКД СТД-Р СФР СЭДО ФСС ФСС НС больничные листы взносы вычеты длительная операция запрос интерфейс кадровая история кадровые данные кадровые переводы легкий труд мастер-данных обмен данными общий модуль отбор отпуска печать без проверки печать с диалогом пользователи представление прием на работу резервы отпусков сверхурочные синхронизация ЗУП и БП средний заработок табель таблица периодов табличный документ фотография штатное расписание

Яндекс.Метрика

© 2022-2026 myblog-1c.ru

Пользовательское соглашение

Контакты