Почему Вы не обслуживаете итоги?

12.08.20

База данных - Инструменты администратора БД

Небольшая заметка по обслуживанию итогов. Все ли Вы делаете правильно?

И снова об итогах

Вы сотрудник франчайзи "1С"? Может быть, Вы даже обновляете клиентов и следите за работоспособностью их информационных баз? Или Вы работаете в штате компании и работоспособность систем на базе платформы "1С" лежит на Ваших плечах? Если ответа "ДА" хотя бы на один вопрос, то эта статья для Вас!

Сегодня мы рассмотрим, с одной стороны, очень простой вопрос обслуживания итогов в регистрах. Но с другой стороны - вопрос простой, но настраивать подобающее обслуживание итогов часто никто не торопится.

Не могу точно сказать для кого эта статья - для новичков или опытных программистов. Или администраторов? Думаю, что решать только Вам!

Как они работают

Платформа "1С" использует механизм итогов для оптимизации получения данных в запросах за большой период. Механизм итогов доступен в регистрах накопления, бухгалтерии и сведений. Именно благодаря ему мы можем формировать отчеты достаточно быстро за большой период времени. Не всегда, конечно, но это уже другая история :).

Но, прежде чем говорить об обслуживании итогов, давайте поверхностно рассмотрим их работу для каждого вида регистра. Мы не будем погружаться в особенности их работы на стороне СУБД, аспекты блокировок и другие связанные темы. Только принцип работы, только суть!

Регистры сведений

Начнем с простого - итогов регистров сведений. С некоторого момента, платформа поддерживает итоги среза первых / последних записей. Например, в последних типовых конфигурациях для регистра "Курсы валют" включены итоги среза последних. Под спойлером Вы найдете пример как данные в регистре отражаются на итогах этого регистра.

 
 Итоги среза последних

Все логично - срез последних записей хранит последние по периоду записи в разрезе измерений регистра. При этом в итогах хранятся данные как измерений, так и ресурсов, и реквизитов.

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

Регистры накопления

Итоги регистров накопления уже интересней, чем у регистров сведений. О внутренних механизмах платформы и принципа работы с итогами Вы можете узнать здесь и вот тут, а также на сайте ИТС. А сейчас рассмотрим лишь основное. Во-первых, регистры накопления бывают двух видов: оборотов и остатков. От вида регистра также зависит принцип построения и использования итогов.

Регистр оборотов

Для примера возьмем регистр накопления "Реализация услуг" из типовой конфигурации "Бухгалтерия предприятия 3.0". Под спойлером пример данных в регистре и полученные итоги.

 
 Итоги оборотного регистра накопления

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

Регистр остатков

В качестве примера остаточного регистра возьмем "НДС предъявленный". Пример снова под спойлером.

 
 Итоги остаточного регистра

Итоги по остаткам используются очень часто и позволяют эффективно получать информацию о текущем состоянии каких-либо показателей (остатки номенклатуры, состояние взаиморасчетов и другое).

Регистры бухгалтерии

Не менее интересным объектом с поддержкой хранения итогов является регистр бухгалтерии. Это настоящий рекордсмен по количеству таблиц с итогами. Возьмем для рассмотрения типовой регистр "Хозрасчетный" в той же "Бухгалтерии предприятия 3.0". Всего в регистре можно насчитать 5 таблиц с итогами:

  • Итоги между счетами - для хранения итогов оборотов между корреспондирующими счетами

  • Итоги по счетам - для хранения итогов по счету в целом
  • Итоги по счетам с субконто 1 - итоги по счетам с 1 субконто
  • Итоги по счетам с субконто 2 - итоги по счетам с 2 субконто
  • Итоги по счетам с субконто 3 - итоги по счетам с 3 субконто

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

Теперь Вы знаете на сколько большим по размеру и тяжелым по использованию может быть регистр бухгалтерии. Ведь при формировании проводок платформе требуется поддерживать большое количество таблиц с итогами. А представьте что бы было, если план счетов поддерживал не три, а пять субконто!

Более подробную информацию об особенностях работы итогов регистра бухгалтерии Вы можете прочитать здесь.

Что же с обслуживанием

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

Самым "самообслуживаемым" объектом в части итогов является регистр сведений. Включили итоги по срезу последних и забыли. Ничего настраивать и обслуживать не нужно.

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

Во всех типовых конфигурациях имеется регламентное задание "Установка периода рассчитанных итогов" с расписанием на запуск каждое 5 число месяца в 01:00. Вот алгоритм обновления периода рассчитанных итогов.

 
 Установка периода рассчитанных итогов

Как проверить, что у Вас установлен актуальный период рассчитанных итогов? Самый простой способ - зайти в обработку "Управление итогами" через "Все функции -> Стандартные -> Управление итогами". Там выбрать полные возможности и в показанной таблице проверить дату в колонке "Период итогов".

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

Но и это еще не все! Есть еще как минимум две операции, которые необходимо планировать для итогов:

  • Пересчет итогов - помогает не только исправить "странные" возникающие ошибки в отчетах (хоть это и очень редко), но и исправить возможные проблемы с производительностью. Периодичность работ нужно выбирать по ситуации, но можно для начала запланировать их выполнение раз в квартал.
  • Двигать минимальный период хранимых итогов. Здесь речь идет о настройке минимального периода хранимых итогов, который позволяет задать точный период "От" и "До", за который итоги будут рассчитаны.

Зачем их устанавливать? Если в базе хранятся данные за 10 лет, то вряд ли они все используются. Целесообразно проанализировать какие данные действительно используются и за какой период (например, только последние 5 лет) и ограничить период хранения итогов нужным значением. Данный подход похож на метод скользящего окна, который упрощает сопровождение больших объемов данных.

Вот и все основные операции обслуживания.

Заключение

Мы быстро пробежались по принципу работы механизма итогов платформы "1С" и рассмотрели основные направления работ по обслуживанию итогов. Список получился коротким:

  • Ежемесячное обновление периода рассчитанных итогов для регистра бухгалтерии и остаточных регистров накопления.
  • Пересчет итогов для поддержки корректности данных и предотвращения проблем с производительностью.
  • Актуализация периода хранения итогов, чтобы итоги хранились за действительно необходимый период времени.

Мы не коснулись таких вопросов как:

  • Обслуживание индексов и статистик базы данных для таблиц итогов
  • Влияние этого механизма на производительность
  • Особые настройки таблиц итогов
  • И другое.

Но цели такой и не ставилось.

Проверьте свои итоги! Улучшите производительность отчетов!

Другие ссылки

итоги регистры накопления бухгалтерии обслуживание

См. также

Автоподбор ролей для профилей и групп доступа в любых типовых базах 1С УТ 11, КА 2, ERP2, Розница 2/3, УНФ 16/3, БП 3, ЗУП 3 и подобных (УФ, Платформа 8.3.14+)

Инструменты администратора БД Роли и права 8.3.14 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Документооборот 1С:Зарплата и кадры государственного учреждения 3 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Роли… Вы тратите много времени и сил на подбор ролей среди около 2400 в ERP или 1500 в Рознице 2, пытаясь понять какими правами они обладают? Вы все время смотрите права в конфигураторе или отчетах чтоб создать нормальные профили доступа? Вы хотите наглядно видеть какие права дает профиль и редактировать все в простом виде? А может хотите просто указать подсистему и дать права на просмотр и добавление на объекты и не лезть в дебри прав и чтоб обработка сама подобрала нужные роли? Все это теперь стало возможно! Обновление от 15.12.2023, версия 1.1.

12000 руб.

06.12.2023    2763    11    1    

30

Infostart УДиФ: Управление данными и формами

Инструменты администратора БД Инструментарий разработчика Роли и права Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

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

10000 руб.

10.11.2023    3251    10    1    

31

SALE! 30%

PowerTools

Инструментарий разработчика Инструменты администратора БД Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Россия Платные (руб)

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

3600 2520 руб.

14.01.2013    177350    1070    0    

846

Ускоренное проведение документов (x4), устранение ошибок 60/62 счетов и зачет авансов (Бухгалтерия 3.0)

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

Расширение «Оперативное проведение» в 4 раза уменьшает время проведения документов и закрытия месяца. Является комплексным решением проблем 62 и 60 счетов. Оптимизирует проведение при включенной функциональной опции «Раздельный учет НДС». Используется в более 10 организациях уже 2 года. Совместимо с конфигурацией Бухгалтерия 3.0 (+КОРП).

14400 руб.

29.04.2020    27171    78    146    

59

"Менеджер потоков 2.1": УПП: "Восстановление партий"

Инструменты администратора БД Платформа 1С v8.3 1С:Управление производственным предприятием Россия Бухгалтерский учет Управленческий учет Платные (руб)

Как оптимизировать то, что, считалось, не поддается оптимизации? Как повысить доступность базы данных? Как проводить самую «времяемкую» операцию не по паре раз в неделю, а по несколько раз в день*? Ответ есть!

20000 руб.

12.09.2019    11706    5    9    

7

Брандмауэр для сервера 1С Предприятие 8 - внешнее управление сеансами

Инструменты администратора БД Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

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

3600 руб.

06.02.2017    31041    31    18    

47

Система хранения присоединенных файлов в томах на диске

Инструменты администратора БД Платформа 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Управление производственным предприятием Платные (руб)

Конфигурация Комплексная автоматизация 1.1 (и УПП 1.3 тоже) хранит файлы и изображения в справочнике Хранилище дополнительной информации в реквизите Хранилище типа ХранилищеЗначений. Та же история с ВложениямиЭлектроннойПочты. Но при этом присоединенные файлы в Электронном документообороте хранит в томах на диске. Эта доработка позволяет использовать стандартный механизм хранения файлов, изображений и вложений электронных писем в томах на диске. При этом можно разделить тома хранения по объектам конфигурации.

4200 руб.

10.11.2015    61228    87    59    

72

Хранилище файлов на SQL

Инструменты администратора БД Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Управленческий учет Платные (руб)

Привязка файлов / сканов к объектам 1С с сохранением их на SQL-сервере

12000 руб.

09.10.2019    10895    5    8    

9
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. wowik 884 04.07.19 09:34 Сейчас в теме
+1. Читается все легко, все понятно!
kuzyara; alex-l19041; YPermitin; +3 Ответить
2. пользователь 04.07.19 09:35
3. wowik 884 04.07.19 09:37 Сейчас в теме
ссылка у меня не работает
Прикрепленные файлы:
YPermitin; +1 Ответить
4. пользователь 04.07.19 09:42
(3) точно, испраил в публикации.

Вот корректная: https://infostart.ru/public/177171/
5. Leon75 04.07.19 10:05 Сейчас в теме
(4)"Для регистров бухгалтерии это должен быть конец текущего месяца"
Простите, а на основании чего именно вы пришли к такому выводу?
YPermitin; +1 Ответить
6. пользователь 04.07.19 10:31
(5) Вы можете увидеть это в рекомендациях самой фирмы 1С, например здесь: https://its.1c.ru/db/bsp242doc#content:6289:1

*Установить период рассчитанных итогов – команда выполняет установку периода рассчитанных итогов для всех регистров накопления и бухгалтерии с включенными итогами. Для регистров накопления – на конец предыдущего месяца, для регистров бухгалтерии – на конец текущего месяца."

То же самое Вы можете увидеть в БСП, в задании "Установка периода рассчитанных итогов" (в листинге публикации такое тоже есть):
	РегистрНакопленияПериод  = КонецМесяца(ДобавитьМесяц(ДатаСеанса, -1));
	РегистрБухгалтерииПериод = КонецМесяца(ДатаСеанса);


Почему именно конец текущего месяца и именно для регистра бухгалтерии? Я думаю, чтобы итоги регистра работали корректно, ведь они хранятся в базе немного иначе, по сравнению с регистрами накопления.
geron4; maXon777; +2 Ответить
7. FreeArcher 158 05.07.19 08:02 Сейчас в теме
Спасибо за статью. Никогда не задумывался о сдвиге минимального периода итогов.
А в чем выигрыш при сдвиге, только в операции пересчета итогов?
YPermitin; +1 Ответить
8. пользователь 05.07.19 08:31
(7) если не сдвигать, то просто не будут использоваться итоги по остаткам для новых периодов. Отчеты будут работать менее эффективно и т.д.
9. FreeArcher 158 05.07.19 08:47 Сейчас в теме
(8) Про текущий сдвиг итогов вопросов нет. Я про абзац "Двигать минимальный период хранимых итогов". В чем выигрыш здесь?
10. пользователь 05.07.19 08:57
(9) понял.

Причин несколько:
1. Чем больше данных в таблице итогов, тем больше места она занимает. То есть, просто уменьшим размер таблицы итогов.
2. Чем больше записей в таблице, тем менее точная статистика может быть построена СУБД. Кратко описывал в предыдущих статьях. https://infostart.ru/public/975144/
3. При необходимости пересчета итогов может понвэадобиться большое технологическое окно, слишком много времени на пересчет. Даже если делать пересчет за период.
4. Большие таблицы сложнее обслуживать в части индексов и статистик по длительности ребилда и обновления, так и в части бэкапирования.

Это основное.
Senator_I; +1 Ответить
11. v3132 26 05.07.19 13:16 Сейчас в теме
Автору плюс. Действительно для больших и старых баз важно устанавливать минимальный период итогов.
YPermitin; +1 Ответить
12. пользователь 05.07.19 13:19
13. Cyberhawk 135 11.07.19 10:33 Сейчас в теме
Со ставками НДС в таблице итогов регистра остатков косячок
YPermitin; +1 Ответить
14. пользователь 11.07.19 13:24
(13) спасибо большое, поправил ошибки.
15. Cyberhawk 135 11.07.19 15:06 Сейчас в теме
(14) Ну и вдогонку: фраза "На начало июня сохраняется остаток с апрельской операции, а также добавляется строка с остатком от операции в мае. Именно поэтому в июньских остатках две записи" сбивает с толку. Ведь запись в таблицу итогов не потому добавилась, что движений прибавилось, а из-за того, что прибавилось движение по новой комбинации измерений.
Поэтому для большей наглядности и лучшего понимания кажется необходимым добавить в примеры документов-регистраторов еще один документ, который в мае делает движение по уже существующей (апрельской) комбинации измерений.
YPermitin; +1 Ответить
16. пользователь 11.07.19 15:09
(15) думаю пример можно оставить таким простейшим как он есть. А кому нужно подробнее - перейдет по ссылкам, которые я указал. Там есть более развернутые объяснения.
17. Yashazz 4707 31.10.19 10:51 Сейчас в теме
Жаль, автор совершенно забыл про обычные формы и обычный интерфейс. А там никаких, пардон, "минимальных хранимых периодов" нет, и вообще всё несколько иначе. В итоге статья неполная.
18. пользователь 31.10.19 11:19
(17) с полнотой все ОК.

Запустите в управляемом интерфейсе, все функции - стандартные - управление итогами.

В крайнем случае программно все можете настроить.
19. Yashazz 4707 31.10.19 17:03 Сейчас в теме
(18) Во-первых, для УФ приводится пользовательско-админский, а не программистский, подход, т.е. скриншоты интерфейсного доступа. И ничего не сказано, что в обычном интерфейсе сие несколько иначе. Во-вторых, чтобы переключить в запуск на УФ, иногда надо попрыгать несколько больше, да и про режим совместимости не следует забывать.
Ну и уж, чтоб упрёк был обоснованнее, два вопроса - где хоть пара слов про включение/выключение итогов, и где хоть упоминание про агрегаты, вещь не менее рекомендуемую?
user1274438; YPermitin; +2 Ответить
20. пользователь 31.10.19 17:07
(19)
запуск на УФ, иногда надо попрыгать несколько больше, да и про режим совместимости не следует забывать.


Раз это упрек, то Вам следует разбираться самому :)
Надеюсь, сообщества увидит от Вас более внятную и поучительную инструкцию, с которой не сравнится даже ИТС :)
user1371486; Kolzah; +2 Ответить
21. Yashazz 4707 31.10.19 18:03 Сейчас в теме
(20) Мдя, не ожидал. Слушайте, если все ваши статьи такие же "полные и исчерпывающие", то это грустно. Я, грешным делом, не читал, а все хвалят, а теперь вот подозрение закралось, так ли уж полно там всё изложено...

И эта статья - "выбор экспертов". Дважды мдя.

А у меня нет времени статьи да инструкции писать, увы.
user1274438; YPermitin; +2 2 Ответить
22. пользователь 31.10.19 18:06
26. user1274438 20.12.19 15:45 Сейчас в теме
(21) Запомните, коллега: в рукопожатом ИТ-сообществе можно оценить вкус пирога только, если Вы сам пекарь. И примерно по такой же причине на ИС нельзя минусовать темы.
27. Yashazz 4707 22.12.19 23:43 Сейчас в теме
(26) поскольку я более чем пекарь, то что нельзя и что можно, решаю в рамках правил ИС сам
23. vpaoli 26 19.12.19 21:22 Сейчас в теме
Я так понимаю, картинка "итоги оборотного регистра накопления" не совсем верная и противоречит тому, что указано в вашей же ссылке https://its.1c.ru/db/metod8dev/content/2726/hdoc (регистратора в итогах не должно быть).
24. vpaoli 26 19.12.19 21:29 Сейчас в теме
25. пользователь 19.12.19 21:45
(24) да, уберите регистратор. Там не картинка, а табличка просто.
Видимо копировал таблицы и эти данные остались в результате "копипаста".

Поправлю по возможности.
28. thomY10 5 03.08.20 16:11 Сейчас в теме
(25) и колонка "номер строки" также лишняя
лучше поправить, а то вместо разъяснения получается запутывание, я даже перепроверять полез
YPermitin; +1 Ответить
29. пользователь 03.08.20 16:21
30. 27272 29.09.20 08:40 Сейчас в теме
Здравствуйте!
Не подскажите, а где в БГУ20, настроить минимальный хранимый период?
Прикрепленные файлы:
31. user1371486 29.09.20 09:41 Сейчас в теме
Какая интересная тема. Жаль, что яша своим флудом опять все испортил.
32. user1371486 29.09.20 09:44 Сейчас в теме
(27) Пекарь, блин.
Настоящему пекарю не составляет проблемы

переключить в запуск на УФ, иногда надо попрыгать
33. Азбука Морзе 104 29.09.20 12:42 Сейчас в теме
Тема важная, многими недооцененная. Особенно в свете современных тенденций разработки конфигураций - асинхронность, фоновые задания, отложенное проведение, которые в последнее время все чаще приводят к нарушению механизма итогов. Именно поэтому в инструментарии по анализу и корректировки регистров https://infostart.ru/public/1148094/ кроме всего прочего есть замечательная кнопочка, позволяющая пересчитать итоги не сходя с места по выбранному регистру и за указанный период. Пересчет займет самое минимальное время и позволит легко исправить множество самых странных и непонятных ошибок.
34. kulak1974 23.09.21 11:30 Сейчас в теме
Добавлю замечание, для тех кто столкнется с нехваткой дискового пространства и необходимостью сравнительно быстро и просто подрезать размер базы и решить этот вопрос сдвигом мин периода итогов по чрезмерно разросшемуся регистру. Оставшегося размера диска может просто не хватить. У нас операция сдвига мин периода итогов регистра накопления вызвала рост общего размера базы с 400Гб до 600Гб за счет роста журнала транзакции на 200Гб. Операция не смогла завершиться успешно с первого раза. Хотя финальный результат порадовал. подробности на прикрепленном скрине.
Прикрепленные файлы:
35. TMV 14 21.10.21 10:36 Сейчас в теме
(34) 10% - сомнительный выигрыш при таких телодвижениях.
36. kulak1974 29.10.21 15:05 Сейчас в теме
(35) Вы всерьез так считаете, коллега? Поработав с запущенным регистром (одним) получен выигрыш более 40 Гб дискового пространства, как Вы справедливо заметили, 10% профит. Чтобы мои аргументы выглядели более убедительными, привожу финальный результат. Собирался это сделать сразу, но в запарке подзабыл. Благодарю что напомнили. Размер базы уменьшился практически на 40% (160Гб) с 410Гб до 250 Гб.
Прикрепленные файлы:
Оставьте свое сообщение