Перейти к содержимому

Как система 1с предприятие 8 может хранить итоги для оборотного регистра накопления

  • автор:

Что такое итоги регистров накопления?

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

Немного теории

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

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

Представление архитектуры метаданных вида "Регистр накопления" в СУБДПредставление архитектуры метаданных вида «Регистр накопления» в СУБД

Для регистра вида «Обороты» в итоговой таблице содержатся итоговые записи оборотов за месяц, а для регистров накопления вида «Остатки» итоговая таблица содержит итоги на конец месяца и так называемые «текущие итоги» (итоги на +∞, в 1С:Предприятие за +∞ формально принят конец 3999 года). Еще одним важным условием наличия итоговых записей в остаточных регистрах является установленный период рассчитанных итогов: итоговых записей по периоду больше этой даты в таблице итогов не будет, сделано это для оптимизации проведения документов (ускорения и увеличения параллельности работы).

Полагаю, многим известны приведенные факты, но, на мой взгляд, куда интереснее увидеть это «вживую».

Подготовка базы данных

Создадим новую информационную базу, в которую добавим:

  1. Перечисление «ПриходРасход» с двумя значениями: «Приход», «Расход»
  2. Документ «ДокументПриходРасход» с реквизитами: «ПриходРасход» (перечисление «ПриходРасход»), «Измерение1» (строка, длина 10), «Измерение2» (строка, длина 10), «Сумма» (число, длина 15, точность 2)
  3. Регистр накопления вида «Остатки» с измерениями «Измерение1» и «Измерение2» и ресурсом «Сумма». Их типы аналогичны реквизитам документа «ДокументПриходРасход», который будет регистратором данного регистра
  4. Регистр накопления вида «Обороты» с измерениями «Измерение1» и «Измерение2» и ресурсом «Сумма». Их типы аналогичны реквизитам документа «ДокументПриходРасход», который будет регистратором данного регистра

Документ должен делать движения в регистры накопления по соответствующим измерениям и ресурсам. Вид движения (для остаточного регистра) и знак суммы (для оборотного регистра) должны соответствовать значению реквизита «ПриходРасход» из документа.

Метаданные конфигурации

Метаданные конфигурации

Хранение в базе данных

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

Структура хранения регистров накопления в СУБД

Структура хранения регистров накопления в СУБД

Далее, в информационной базе проведем несколько документов в разных месяцах, например, так:

Проведенные документы

Проведенные документы

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

Разбор тестирования 1С:Профессионал и PMP

Если разделение включено, то в таблицу итогов регистра будет доставлена дополнительная колонка со значением типа Число, которая будет играть роль разделителя остатков данных в случае одновременной записи в регистр двумя документами. Разделение данных увеличивает параллельность вычислений за счет уменьшения времени блокировки регистра на чтение. Оправданно на нагруженных системах. Подробнее на ИТС: https://its.1c.ru/db/metod8dev/content/1393/hdoc

  1. Документ
  2. Регистры сведений
  3. Регистры накопления
  4. Справочники
  1. Объектами конфигурации
  2. Объектами встроенного языка
  3. Объектами информационной базы
  1. Регистры остатков
  2. Регистры оборотов
  3. Регистры состояний
  4. Верны ответы 1, 2 и 3
  5. Верны ответы 1 и 2

Правильный ответ пятый, никаких «регистров состояний» не существует, а об остаточных и оборотных см. в посте.

  1. Период не должен быть пустым
  2. Период должен быть равен дате документа-регистратора
  3. Документ-регистратор не должен быть помечен на удаление
  4. Верны все варианты
  1. Активность может устанавливаться для каждой записи своя в рамках документа- регистратор
  2. Активность не может устанавливаться для каждой записи индивидуально в рамках документа-регистратора
  3. Документ-регистратор не должен быть помечен на удаление
  4. Верны все варианты

Правильный ответ второй. Стандартный реквизит Активность отвечает за попадание записей регистра накопления в виртуальные таблицы. Он может быть выставлен минимум для набора записей.

  1. Можно определить измерение Склад с отключением запрета незаполненных значений. При этом для организаций ведущих учет товара по складам заполнять склад, а для организаций, не ведущих учет по складам – не заполнять поле Склад
  2. Можно определить измерение Склад с включением запрета незаполненных значений. При этом для организаций ведущих учет товара по складам заполнять склад, а для организаций, не ведущих учет по складам – устанавливать пустую ссылку на Склад
  3. Измерение Склад в данном случае не нужно, Склад будет ресурсом
  4. Измерение Склад в данном случае не нужно, Склад будет реквизитом
  1. Всегда привязана к оси времени
  2. Не привязана к оси времени
  3. Привязана к оси времени если установлен режим записи — «Подчинение регистратору»
  4. Привязка регистра накопления к оси времени определяется пользователем в режиме 1С:Предприятие
  1. Полем «Ссылка»
  2. Комбинацией значений измерений регистра
  3. Полем «Период» и комбинацией значений измерений регистра
  4. Полями «Регистратор» и «Номер строки»
  5. Полями «Период», «Регистратор» и «Номер строки»
  1. Хотя бы одно измерение
  2. Хотя бы один ресурс
  3. Хотя бы один реквизит
  4. Обязательно одно измерение и один ресурс
  1. Форма списка регистра накопления
  2. Форма набора записей регистра накопления
  3. Форма записи регистра накопления
  4. Верны варианты 1 и 2
  5. Верны все варианты
25 комментариев:

Нет вопроса:
Что представляет собой набор записей регистра накопления?
1) Коллекцию записей регистра накопления в памяти
2) Коллекцию записей регистра накопления в информационной базе
3) Выборку записей, полученную методом Выбрать
Правильный ответ первый

Нет вопроса:
Для чего может использоваться набор записей регистра накопления?
1) Для изменения записей регистра накопления по определенному регистратору
2) Для добавления записей регистра накопления по определенному регистратору
3) Для удаления записей регистра накопления по определенному регистратору
4) Для считывания набора записей по определенному регистратору
5) Верны варианты 1 и 4
6) Верны все варианты
Правильный ответ шестой

Нет вопроса:
Чем определяется набор записей регистра накопления?
1) Свойством "основной отбор"
2) Набором измерений, указанных в структуре регистра накопления
3) Периодом
4) Регистратором
5) Верны ответы 3 и 4
6) Верны все ответы
Правильный ответ четвертый

Нет вопроса:
Что произойдет, если прочитать данные в набор записей регистра накопления с установкой отбора по регистратору и измерению?
1) В набор записей попадут записи с указанным отбором
2) Будет выдана ошибка при попытке установить отбор по измерению
3) Набор останется пустым
Правильный ответ второй

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

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

Нет вопроса:
Какое ограничение на размер набора записей существует в регистре накопления?
1) Количество записей в наборе записей не ограничено
2) Количество записей в наборе записей ограничено только возможностями СУБД в клиент-серверном варианте
3) Количество записей ограниченно только в учебной версии платформы
4) Набор записей ограничен 999999999 записями
Правильный ответ четвертый

Нет вопроса:
В какой момент времени могут формироваться записи в регистре накопления?
1) При проведении документа
2) При записи документа
3) При заполнении документа
4) Верны все ответы
Правильный ответ четвертый

Добавили ещё вариант "При закрытии". Да, при закрытии тоже можно

Нет вопроса:
Выберите обязательное условие по отношению к Регистратору при записи данных в регистр накопления
1) Документ-регистратор должен быть проведен
2) Документ-регистратор должен быть записан
3) Документ-регистратор не должен быть помечен на удаление
4) Верны все варианты
Правильный ответ второй

Этот комментарий был удален автором.

Выберите верное утверждение по отношению к полю Регистратор
1. Поле Регистратор может содержать пустую ссылку на любой документ
2. Поле Регистратор может содержать пустую ссылку только на документ регистратор
3. Поле Регистратор может содержать ссылку на любой документ
4. Поле Регистратор может содержать не пустую ссылку только на документ регистратор
Ответ 4.

Какой тип можно определить для поля "регистратор"?
1. СправочникСсылка
2. ДокументСсылка
3. ЛюбаяСсылка
4. ДокументСсылка.
Ответ 4

Чем отличается 2 от 4, кроме точки в конце?

Там еще(в 4-ом варианте ответа) имя документа должно быть ДокументСсылка.
он и есть правильный.

Полностью 4-й ответ выглядит так:
ДокументСсылка.
Он и есть правильный.

Полностью 4-й ответ выглядит так:
ДокументСсылка.< ИмяДокумента>
Он и есть правильный.

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

Таблиц-агрегатов в базе данных может быть много (они отличаются друг от друга набором измерений и периодичностью), в то время как таблица итогов (она хранит обороты в разрезе всех измерений регистра) – одна. За счет этого и обеспечивается более быстрый доступ к итоговым данным, если режим использования агрегатов включен.
Режим агрегатов/итогов — если установлен режим агрегатов, то при выполнении запросов будут использоваться данные агрегатов; если установлен режим итогов, то при выполнении запросов будут использоваться данные итогов.

При работе с регистром накопления выключение текущих итогов приводит к тому, что:
уменьшится скорость получения любых остатков
можно получить остатки на любой момент времени, но время получения оперативных остатков увеличится
не влияет на скорость получения остатков, а влияет на скорость получения оборотов

Ответ — 2. Проверено 1с тренажер.

Как система 1С:Предприятие 8 может хранить итоги для оборотного регистра накопления?
Только с помощью таблицы итогов
Только с помощью таблицы агрегатов
Одновременно в таблицах итогов и агрегатов
Либо в таблице итогов, либо в агрегатах

Какая часть не активных записей может не отображаться в таблицах итогов регистров накопления?
Данные измерений
Данные реквизитов
Данные ресурсов
Верны все варианты
Верны варианты 1 и 2

Ответ — 4.Проверено 1с тренажер.

В каком из событий может производиться запись данных в регистр накопления?
При проведении документа
При записи документа
При заполнении документа
При закрытии документа
Варианты 1 и 2
Верны все ответы

Ответ — 6.Проверено 1с тренажер.

Выберите верное утверждение по отношению к регистрам накопления
Для одного регистра накопления может использоваться несколько таблиц итогов
Для одного регистра накопления может использоваться только одна таблица агрегатов
Для одного регистра накопления может использоваться несколько таблиц агрегатов
Варианты 1 и 2
Варианты 1 и 3

Ответ — 3.Проверено 1с тренажер.

Какие из нижеприведенных основных свойств существуют у измерений регистра бухгалтерии?
Запрет незаполненных значений
Использование в итогах
Основной отбор
Верны варианты 1 и 2
Верны все варианты

Ответ — 1.Проверено 1с тренажер.

Что обязательно надо определить в структуре регистра бухгалтерии для сохранения конфигурации?
Регистратор
Ресурс
Измерение
Варианты 1 и 2
Нет обязательных требований

Особенности использования регистров накопления

Объект 1С «Регистры накопления» — это прикладные объекты конфигурации, которые составляют основу механизма учета движения средств (финансов, товаров, материалов и т.д.) и позволяют автоматизировать такие направления, как складской учет, взаиморасчеты, планирование.

Регистр накопления представляет собой таблицу с информацией, в которой собраны все движения (поступления, списания или обороты) определенных документов.

Информация в регистре накопления хранится в виде записей, каждая из которых содержит:

  1. значения измерений (описывают разрезы, в которых хранится информация);
  2. соответствующие им значения ресурсов (накапливают нужные числовые количественные данные).

Подробнее о регистрах накопления см. Объект 1С «Регистры накопления»

Виды регистров накопления:
  1. регистры накопления остатков (хранит итоговые значения ресурсов — остатки);
  2. регистры накопления оборотов (хранит только изменения этих ресурсов — обороты).

В 1С возможно использование:

  • итогов, либо
  • использование агрегатов (более гибкий вариант).

Как остаточные, так и оборотные регистры накопления физически состоят из двух таблиц:

  1. таблицы движений;
  2. таблицы итогов.

Движения — это записи в регистрах, которые отражают изменения в учете, производимые документом. Как правило, движения создаются при проведении документа.

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

Для каждого отдельно взятого регистра текущие итоги могут быть отключены.

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

Для измерений регистра можно отключать использование итогов, это положительно сказывается на быстродействии базы:

Особенности использования регистров накопления:

  1. Итоги для регистров накопления остатков могут храниться, но ограничены периодом рассчитанных итогов. Если их не рассчитывали, то и не хранятся. Управлять рассчитанными итогами можно в режиме 1С:Предприятие.
  2. При работе с регистром накопления с видом «Остатки» выключение итогов приводит к тому, что можно получить остатки на любой момент времени, но время их получения увеличится. В случае включенных итогов, остатки доступны с периодичностью «Месяц».
  3. При пересчете текущих итогов пользователем будут пересчитаны все текущие итоги. Собственно пересчет итогов — это процедура перезаполнения таблиц итогов, т.к. со временем естественным путем в ней накапливаются строки с нулевыми значениями, что снижает быстродействие системы.
  4. При пересчете итогов пользователем будут пересчитаны все итоги.
  5. При записи данных в регистр накопления существует возможность:
    • отказаться от использования итогов (повышается параллельность записи наборов записей);
    • отказаться от использования текущих итогов (повышается параллельность записи наборов записей).

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

Как система 1с Предприятие может хранить итоги?

В режиме конфигуратора периодичность таблицы итогов регистра накопления не может быть выбрана: итоги всегда рассчитываются помесячно, на первое число следующего месяца. Как система 1С:Предприятие 8 может хранить итоги для оборотного регистра накопления: либо в таблице итогов, либо в агрегатах.Feb 14, 2019

Какие данные хранит таблица итогов регистра накопления?

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

Как работает регистр остатков?

Регистры остатков и регистры оборотов Регистр накопления остатков позволяет хранить как итоговые значения ресурсов — остатки, так и изменения этих ресурсов — обороты. Регистр накопления оборотов является более «специализированным» видом регистра накопления и позволяет хранить только изменения ресурсов — обороты.

Как работают виртуальные таблицы 1С?

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

Что такое текущие итоги?

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

Как система может хранить итоги для оборотного регистра накопления?

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

В чем разница между регистром сведений и регистром накопления?

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

Для чего нужны регистры в 1С?

Регистры бухгалтерии 1С. Предназначены для систематизации данных о бухгалтерских проводках, которые обязательно должны быть связаны со специальным объектом «План счетов».

Для чего нужен регистр сведений в 1с?

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

Для чего нужны виртуальные таблицы 1с?

Виртуальная таблица — это удобная вещь для обращения к данным регистра. Виртуальная таблица скрывает подробности своей работы, предоставляя понятный способ обращения к данным.

Как в 1с пересчитать итоги?

Откройте раздел Регламентные операции, выберите Управление итогами и агрегатами. В подвале формы нажмите на ссылку Полные возможности. Из списка выберите Журнал проводок (бухгалтерский и налоговый учет) (регистр бухгалтерии), нажмите Пересчет Пересчитать итоги за период.

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

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