Регистры бухгалтерии. Общая информация

08 марта 2016

Введение

Регистр бухгалтерии с самой распостраненной когфигурациейВот мы и добрались до регистров бухгалтерии платформы 1С:Предприятие 8.x. Ранее мы говорили о регистрах накопления и регистрах сведений, подробно рассматривали их устройство и принцип работы с ними со стороны платформы. В этом плане регистры бухгалтерии интереснее и сложнее, т.к. имеют большее количество настроек, а сама специфика бухгалтерского учета усложняет их структуру хранения в базе данных, а также SQL-запросы платформы для получения этих данных.

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

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

Итак, приступим!

Назначение

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

Ручная операция. Записи регистра бухгалтерии

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

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

Структура хранения в базе

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

Настройки регистра

Итак, у нас есть регистр бухгалтерии со следующей структурой:

Настройки полей регистра

Опишем каждую из настроек:

  1. Настройки регистра
    • План счетов - указание на объект метаданных "План счетов", который используется регистром бухгалтерии.
    • Корреспонденция - флаг, указывающий используется ли корреспонденция счетов при создании записей в регистре. Регистр бухгалтерии может работать в двух режимах:
      1. С корреспонденцией - в этом случае используется механизм двойной записи, когда каждая запись регистра содержит поля "СчетДт" (счет дебета) и "СчетКт" (счет кредита).
      2. Без корреспонденции - в этом случае механизм двойной записи использоваться не будет. В каждой записи будет использоваться только одно измерение для указания счета - "Счет"
  2. Измерения
    • Организация - ссылка на справочник "Организации". Не используется признак учета, т.е. измерение будет использоваться для всех записей. Установлена настройка "Балансовый", которая определяет поддержку двойной записи для этого измерения и, соответственно, схождение баланса для него. Другими словами регистр бухгалтерии в нашем случае сконфигурирован таким образом, чтобы баланс можно было сводить в разрезе организации.
    • Валюта - ссылка на справочник "Валюты". Измерение ссылается на признак учета "Валютный". Это означает, что измерение будет использоваться только в том случае, если у счета установлен признак учета "Валютный".
  3. Ресурсы
    • Сумма - балансовый показатель, используемый для всех счетов. Признак учета субконто "Суммовой" указывает ведется ли учет по этому ресурсу для указанных в счете субконто. Подробнее об этом еще поговорим и рассмотрим работы этой настройки на примерах.
    • ВалютнаяСумма - не балансовый ресурс, используемый только для счетов с признаком учета "Валютный", а также используемый только для тех субконто, у которых признак учета субконто "Валютный" установлен в Истина.
    • Количество - также, как и ресурс "ВалютнаяСумма", не является балансовым. Используется только для счетов с признаком учета "Количественный", а также только для тех субконто, у которых в Истина установлен признак учета субконто "Количественный".
  4. Реквизиты
    • Содержание - реквизит с типом "Строка" (макс. длина 150) для хранения справочной информации записей регистра.

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

Настройки счета

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

Таблицы регистра

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

  1. Основная таблица (_AccRg[внутренний номер]) - основная таблица регистра, в которой хранятся данные аналогично той структуре регистра, которая задана в конфигураторе (измерения + ресурсы + реквизиты). В нашем примере она выглядит следующим образом:

    Основная таблица регистра

    Заметим, что значения доп. аналитики, а именно субконто, не хранятся в основной таблице регистра. Для их хранения используется отдельная таблица, которая содержит все поля регистра, включая стандартные (период, регистратор, номер записи). Также присутствует поле "Активность" булевого типа, которое влияет на то, будет ли запись влиять на таблицы итогов (если Истина, то запись учитывается в таблицах итогов).

  2. Значения субконто (_AccRgED[внутренний номер]) - таблица создается, если для плана счетов регистра бухгалтерии используются субконто. Она нужна для хранения значений субконто записей основной таблицы регистра. В нашем примере таблица имеет следующую структуру:

    Таблица субконто

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

  3. Таблицы итогов.  К таблицам итогов регистра накопления относят:
    • Таблица остатков (или таблица итогов по счетам)  (_AccRgAT[внутренний номер])

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

    • Таблица оборотов (или таблица итогов между счетами) (_AccRgCT[внутренний номер])

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

    • Таблицы итогов субконто (или итоги по счетам с субконто) (_AccRgAT[количество субконто][внутренний номер])

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

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

  4. Настройки хранения итогов (_AccRgOpt[внутренний номер]) - таблицы с настройками итогов регистра бухгалтерии. Имеют следующую структуру:

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

    Примечание: аналогичная таблица есть и у регистров накопления. Когда мы рассматривали эту тему ранее (еще на платформе 8.2), таких настроек как макс. и мин. хранимый период итогов не было. Это нововведение платформы 8.3. На примере регистра бухгалтерии мы проанализируем работу этих настроек, который будет актуальным и для регистров накопления.

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

Вместо заключения

Общее назначение и структуру таблиц регистра бухгалтерии мы рассмотрели.

В последующих статьях будут рассмотрены следующие темы:

  • Виртуальные таблицы регистра и SQL-запросы платформы
  • Настройки хранения итогов
  • Влияние количества субконто на производительность
  • Запросы платформы при записи в регистр бухгалтерии
  • Запросы обновления итогов
  • Проблемные ситуации при записи в регистр бухгалтерии
На этом все, до скорых встреч! И спасибо за внимание! =)


comments powered by Disqus