Дополнительные «уникальные» итоги. Реализация в СКД.

05.03.15

Разработка - СКД

Иногда Заказчику требуется расчет итоговых значений по данным, не подпадающим под правило формирования строки «ИТОГО» в отчете СКД.

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
отображение дополнительного столбца 9 месяцев
.erf 6,79Kb
17 2 500 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Надеюсь, кому-нибудь пригодится. Иногда Заказчику требуется расчет итоговых значений по данным, не подпадающим под правило формирования строки «ИТОГО» в отчете.

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

Естественно, думаю, можно реализовать и «кодированием», но я пошел другим путем.

 

Итак, пример:

Исходные данные

Имеем отчет (который реализован в СКД "отчет-таблица"):

Наименование

1(янв)

2(февр)

12(дек)

Итого

ГруппаТовара1

 

 

 

 

Сумма по строке

ГруппаТовара2

 

 

 

 

Сумма по строке

ГруппаТовара3

 

 

 

 

Сумма по строке

 

 

 

 

Сумма по строке

ГруппаТовараN

 

 

 

 

Сумма по строке

Итого

Сумма по столбцу

Сумма по столбцу

Сумма по столбцу

Сумма по столбцу

Сумма по столбцу

 

Необходимо

Добавить итоги (именно в конце таблицы, группировку «наименований» не меняем), которые считает значение только определенных Групп Товаров (например, «услуг»).

 

Показатель

1(янв)

2(февр)

12(дек)

Итого

ГруппаТовара1

 

 

 

 

Сумма по строке

ГруппаТовара2

 

 

 

 

Сумма по строке

ГруппаТовара3

 

 

 

 

Сумма по строке

 

 

 

 

Сумма по строке

ГруппаТовараN

 

 

 

 

Сумма по строке

Итого

Сумма по столбцу

Сумма по столбцу

Сумма по столбцу

Сумма по столбцу

Сумма по столбцу

Итого услуги

Сумма по услугам

Сумма по услугам

Сумма по услугам

Сумма по услугам

Сумма по услугам

 

Реализация

  1. В запросе «Набора Данных» должно быть поле для дальнейшей группировки, позволяющее явно выделить данные относящиеся к «итого услуги» («ГруппаУслуги»)
  2. В настройках макета к строкам добавляем группировку по полю «ГруппаУслуги»
  3. Для нее настраиваем отбор ГруппаУслуги = «услуги»
  4. Для нее в настройках отключаем «Расположение общих итогов» и «Выводить отбор».

 

Также реализуется, например, возможность добавить столбец «Итого за 9 месяцев» (накладывается условие на «дату», ограничивающее 9 месяцев), т.е. при отображения данных всего года, имеем возможность отобразить итог за 9 месяцев.

 

Примечание: если полетят «камни»:

  1. Это первая статья тут, бум дополнять и править
  2. Не позиционирую себя как «программист 1С»
  3. 1С использую потому, что необходимо, поэтому информация в некоторых случаях поверхностная и не претендующая на статус «гуру»
  4. Не думаю, что изобрел «самолет»  
 
Дополнено 12.03.2015 
 - приложил файл + скриншот, в котором выполнена демонстрация отображения данных за 9 месяцев  
 

Вступайте в нашу телеграмм-группу Инфостарт

СКД Итоги 9 месяцев

См. также

Инструментарий разработчика Роли и права Запросы СКД Программист Руководитель проекта 1С:Предприятие 8 Платные (руб)

Инструменты для разработчиков 1С 8.3: Infostart Toolkit. Автоматизация и ускорение разработки на управляемых формах. Легкость работы с 1С.

16500 руб.

02.09.2020    248625    1379    421    

1135

Инструментарий разработчика СКД Программист 1С 8.3 Бесплатно (free)

В этой статье представлен СКДБилдер — общий модуль-обёртка над объектной моделью СКД, который сокращает код в 3-4 раза и делает его читаемым.

29.01.2026    5506    298    shapa_pro    25    

66

СКД Программист 1С:Предприятие 8 Бесплатно (free)

Статья написана по результатам проведенного внутреннего обучающего вебинара для разработчиков ГК «СофтБаланс». Если осилить 25 000 знаков - задача для вас непосильная, где-то на бескрайних просторах интернета видео есть (или будет). Но здесь информация точнее. Разберем, чем запрос для СКД принципиально отличается от обычного запроса и как модифицируется в зависимости от настроек. Изучим «базовый рецепт» написания запроса для СКД, сформируем чек-лист. Полезно будет всем – от стажеров до тех. лидов. Всем, кто не снимает галку «автозаполнение» и пишет запросы для отчетов в консоли запросов – читать (вдумчиво) обязательно.

29.10.2025    16643    ovetgana    112    

107

СКД Программист 1С:Предприятие 8 Бесплатно (free)

Описан способ заполнения списка доступных значений для полей наборов данных и параметров в схеме компоновки данных для любых конфигураций (с использованием БСП или без).

01.07.2025    9596    krasnoshchekovpavel    5    

67

СКД Программист Стажер 1С:Предприятие 8 Россия Бесплатно (free)

Несколько способов управления формами выбора параметров и отборов СКД.

10.04.2025    8866    Neti    0    

41

СКД Программист 1С:Предприятие 8 Бесплатно (free)

Хорошая отчетная форма - сродни искусству. Есть какое-то невероятное эстетическое удовольствие в том, чтобы разобраться в логике учета и анализируемых показателях, спроектировать архитектуру хранения данных так, чтобы оптимально собрать эти показатели вместе с аналитическими разрезами в запросе, а затем настроить отображение так, чтобы, глядя на результат, сразу было понятно, что это за отчет и какие задачи он призван решать. Система компоновки данных - это моя первая, главная и, наверное, единственная "рабочая" любовь. Ее я использую везде, где только можно и где нельзя тоже. Хочу поделиться с вами некоторыми практическими приемами в работе с отчетами на СКД, которые, надеюсь, будут полезны.

27.02.2025    15806    ovetgana    50    

93

СКД Программист 1С:Предприятие 8 Бесплатно (free)

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

24.12.2024    13394    Akcium    17    

46

СКД Механизмы типовых конфигураций Запросы Программист 1С:Предприятие 8 1С:Зарплата и кадры государственного учреждения 3 1С:Зарплата и Управление Персоналом 3.x Россия Бесплатно (free)

Работая с типовыми отчетами в конфигурациях «Зарплата и управление персоналом, редакция 3», «Зарплата и кадры государственного учреждения, редакция 3» и подобных, в схемах компоновки данных можно встретить конструкции запросов, которые обращаются к некоторым виртуальным таблицам.

20.08.2024    9921    AlexeyPROSTO_1C    1    

32
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Ekovichev 839 05.03.15 15:14 Сейчас в теме
Здравствуйте. Вы бы выложили пример еще реализации
2. graZy 16 05.03.15 16:05 Сейчас в теме
(1) Ekovichev,
ок.

Сделал простой пример для БП 2.0 (см.файл).

Отображаем справочник "Номенклатур", считаем Количество и Итог.

Дополнительно отображаем Итог который отображает количество "Групп" (назван "Да" - но это детали потому как на скорую руку лепил)

Пояснения к реализации .
1. В запросе «Набора Данных» должно быть поле для дальнейшей группировки (Номенклатура.ЭтоГруппа)
2. В настройках макета к строкам добавляем группировку по полю (ЭтоГруппа)
3. Для ЭтоГруппа настраиваем отбор (ЭтоГруппа = Истина)
4. Для ЭтоГруппа в настройках (см. другие настройки) отключаем ...

картинки если нужны может позже ...
Прикрепленные файлы:
ВнешнийОтчет1.erf
5. Ekovichev 839 06.03.15 06:33 Сейчас в теме
(2)

Так вы к публикации прикрепите отчет, вам за скачивание местная валюта капать будет.
8. graZy 16 10.03.15 09:38 Сейчас в теме
(5) Ekovichev, спасибо, просто мне стыдно такой отчет (что прикрепил выше) крепить к публикации ))) он просто мини демонстратор.

;) сама идея была накопана для другого отчета, но его сюда не впихнуть )))
11. пользователь 12.03.15 12:28
Сообщение было скрыто модератором.
...
12. fomix 33 12.03.15 15:04 Сейчас в теме
(2) Приложенный отчет - пустышка, в которой нет того о чем пишет в комментах автор! Попробовал наваять что-то подобное. Сделано для 1С:Бухгалтерия предприятия, редакция 3.0. Не показывает отдельно ИТОГОВ по выделенной группе. Что не так сделал?!
Прикрепленные файлы:
ДополнительныеИтогиВСКД (bpf).erf
13. graZy 16 12.03.15 15:30 Сейчас в теме
(12) fomix,

про ваш файл

если вы задаете (как доп группу по которой ограничиваем):

ВЫБОР
КОГДА ПоступлениеТоваровУслугТовары.Номенклатура.Родитель = &ГруппаУслуги
ТОГДА "Услуга"
ИНАЧЕ "Товар"
КОНЕЦ КАК ГруппаУслуги

то ...

в "настройки" (закладка) для "Группа Услуги" должны задать выражение ??? (пункт 3) а у Вас?! - Результат соответсвенно ...

измененный прикладываю
Прикрепленные файлы:
ДополнительныеИтогиВСКД (bpf).erf
14. fomix 33 12.03.15 17:26 Сейчас в теме
(13) Каюсь не досмотрел! Спасибо за наводку.
Не сообразил, что отбор делается в настройках на закладке "Отбор" для строки "ГруппаУслуги".
И еще у вас на рисунке Итоги по дополнительной строке печатаются сразу после ОбщихИтогов, а у меня еще и строка с отбором вылазит. Ее никак не убрать или надо делать постобработку табличного документа?
15. graZy 16 12.03.15 17:37 Сейчас в теме
(14) fomix,

Цитата 4. Для нее в настройках отключаем «Расположение общих итогов» и «Выводить отбор».

Наводка "Настройки"/(Ваша группа "Группа Услуги")/"Другие настройки"
3. husky 6 05.03.15 20:21 Сейчас в теме
Добрый вечер! Подскажите, а как в такой таблице вывести в самый низ строку "Нарастающий итог", чтобы показывала в первой колонке первую сумму, во второй 1+2, в третьей 1+2+3 и т.д.? Заранее спасибо. Очень нужна подобная реализация, сам пробовал никак не получается (
4. Bienko 216 05.03.15 22:06 Сейчас в теме
(3) husky, там есть функция ВычислитьВыражение

Пример:

Если требуется рассчитать сумму с накоплением, то можно использовать следующее выражение:

ВычислитьВыражение(“Сумма(СуммаОборот)”, , , “Первая”, “Текущая”)
6. husky 6 06.03.15 08:09 Сейчас в теме
(4) Bienko, она хорошо работает на строках (группировках и т.д.), но как сделать чтобы ресурсная колонка былабы с итогом внизу нарастающим?
7. Bienko 216 06.03.15 08:26 Сейчас в теме
(6) husky, кинь свой отчет на скд и файл в экселе как ты его хочешь видеть, плюс напиши для какой базы.
10. graZy 16 10.03.15 16:51 Сейчас в теме
(6) husky,
несколько колонок, и нужно чтобы под одним итогом получился другой (но с нарастающими) думаю прокатит

1. нужно рассчитать нарастающие (это через запрос перекрестив таблицу, с собой же)
2. ньюанс оба набора данных "обычный" и "нарастающий" помещаем в одно "поле", но добавляем еще "поле" позволяющее их разделить ("флажок" или "маркер" кому как удобней)
3. При настройках делаем группировку по "флажку" и ограничеваем вывод только "данных" (выводим включая деталку)
4. При настройках делаем группировку по "флажку" и ограничеваем вывод только "нарастающих" (без деталки)

вроде должно получиться (примера нет, но если пришлешь черновик - допилю и выложу)
9. graZy 16 10.03.15 09:41 Сейчас в теме
(3) husky, похоже это ты про то (ну очень близко) на что я сам ответ ищу ...
http://forum.infostart.ru/forum86/topic126553/

как пишут выход запрос (я бы рекомендовал этот подход, ну или программно считать)
другого решения я пока не видел (((

кто найдет пишите
Для отправки сообщения требуется регистрация/авторизация