Структура и название таблиц использыемых для хранения данных в БД 1С 8.х

Источник: https://helpf.pro/faq/view/673.html

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

* Встроенную в 1С:Предприятие 8.1 (файловый вариант информационной базы). В этом случае все данные информационной базы хранятся в файле с именем 1Cv8.1CD. Этот файл имеет двоичный формат и по сути является базой данных для встроенной в 1С:Предприятие 8.1 СУБД.

* Microsoft SQL Server (клиент-серверный вариант информационной базы). Все данные информационной базы хранятся в базе данных Microsoft SQL Server.

* PostgreSQL (клиент-серверный вариант информационной базы). Все данные информационной базы хранятся в базе данных PostgreSQL.

* IBM DB2 (клиент-серверный вариант информационной базы). Все данные информационной базы хранятся в базе данных IBM DB2.

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

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

* Config - основная конфигурация информационной базы. Эта конфигурация соответствует реальной структуре данных и используется 1С:Предприятием 8.0 в режиме Предприятия.

* ConfigSave - конфигурация, редактируемая Конфигуратором. Конфигурация из ConfigSave переписывается в Config при выполнении "Обновления конфигурации базы данных" в Конфигураторе, а наоборот - при выполнении в Конфигураторе операции "Конфигурация - Конфигурация базы данных - Вернуться к конфигурации БД".

* Files содержит служебную информацию, например, о работе с хранилищем конфигурации.

* Params содержит параметры информационной базы. Среди них:

=> Список пользователей информационной базы.

=> Национальные настройки информационной базы.

=> Таблица соответствия объектов метаданных и объектов базы данных (таблиц, полей, индексов).

=> Некоторая другая информация.

* _YearOffset - смещение дат в базе данных. Эта таблица создается только при использовании Microsoft SQL Server.

* DBSchema содержит информацию о структуре базы данных 1С:Предприятия и определяет другие объекты базы данных, используемые данной информационной базой.

При старте 1С:Предприятие проверяет наличие в информационной базе перечисленных таблиц и в случае отсутствия какой-нибудь из них выдается сообщение "информационная база разрушена". Отсутствие всех перечисленных таблиц означает, что информационная база пустая. В последнем случае эти таблицы будут созданы.

Перечень и структура других таблиц базы данных определяется конкретной конфигурацией, а именно, определенными в ней объектами метаданных. Имя каждой таблицы состоит из буквенного префикса и следующего за ним номера. Префикс определяет назначение таблицы, а номер позволяет различать таблицы одинакового назначения, относящиеся к разным объектам метаданных. Если в качестве СУБД используется IBM DB2, то описанную структуру имеют не имена таблиц, а их псевдонимы.

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

* _ConfigChangeRec - таблица регистрации изменений объектов конфигурации.

* _ConfigChangeRec_ExtProps - таблица имен файлов измененных внешних свойств объектов конфигурации.

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

* Константы

=> _Consts содержит текущие значения всех констант, определенных в конфигурации.

=> _ConstsChangeRec - таблица регистрации изменений констант. Создается, если хотя бы одна константа участвует хотя бы в одном плане обмена.

* Планы обмена

=> _Node<n> - таблица плана обмена.

=> _Node<n>_VT<k> - табличная часть плана обмена, создается для каждой табличной части.

* Справочники

=> _Reference<n> - таблица справочника.

=> _Reference<n>_VT<k> - табличная часть справочника - для каждой табличной части.

=> _ReferenceChangeRec<n> - таблица регистрации изменений справочника. Создается, если справочник участвует хотя бы в одном плане обмена.

* Документы

=> _Document<n> - таблица документов для каждого объекта метаданных "документ".

=> _Document<n>_VT<k> - табличная часть документа - для каждой табличной части каждого документа.

=> _DocumentChangeRec<n> - таблица регистрации изменений объекта метаданных типа "документ". Создается для каждого объекта метаданных типа "документ", если он участвует хотя бы в одном плане обмена.

* Последовательности документов

=> _Sequence<n> - таблица регистрации документов - для каждой последовательности.

=> _SequenceBoundary<n> - таблица границ последовательности - для каждой последовательности.

=> _SequenceChangeRec<n> - таблица регистрации изменений последовательности. Создается для каждой последовательности, которая участвует хотя бы в одном плане обмена.

* Журналы документов.

=> _DocumentJournal<n> - таблица журнала документов, создается для каждого журнала документов.

* Перечисления

=> _Enum<n> - таблица перечисления - по одной для каждого перечисления.

* Планы видов характеристик

=> _Chrc<n> - основная таблица плана видов характеристик.

=> _Chrc<n>_VT<k> - табличная часть плана видов характеристик - для каждой табличной части.

=> _ChrcChangeRec<n> - таблица регистрации изменений плана видов характеристик. Создается, если план видов характеристик участвует хотя бы в одном плане обмена.

* Планы счетов

=> _Acc<n> - основная таблица плана счетов.

=> _Acc<n>_ExtDim<k> - таблица видов субконто плана счетов, создается для плана счетов в том случае, если максимальное количество субконто больше нуля.

=> _Acc<n>_VT<k> - табличная часть плана счетов, создается для каждой табличной части плана счетов.

=> _AccChangeRec<n> - таблица регистрации изменений плана счетов. Создается, если план счетов участвует хотя бы в одном плане обмена.

* Планы видов расчета

=> _CalcKind<n> - основная таблица плана видов расчета.

=> _CalcKind<n>_BaseCK - таблица базовых видов расчета, создается для плана видов расчета в случае, если его свойство "Зависимость от базы" имеет значение, отличное от "Не зависит".

=> _CalcKind<n>_DisplacedCK - таблица вытесняемых видов расчета, создается для плана видов расчета в случае, если у него установлен флаг "Использует период действия".

=> _CalcKind<n>_LeadingCK - таблица ведущих видов расчета - для каждого плана видов расчета.

=> _CalcKindDN<n> - вспомогательная таблица для порядка вытеснения, создается, если у плана видов расчета установлен флаг "Использует период действия".

=> _CalcKind<n>_VT<k> - табличная часть плана видов расчета, создается для каждой табличной части.

=> _CalcKindChangeRec<n> - таблица регистрации изменений плана видов расчета. Создается, если план видов расчета участвует хотя бы в одном плане обмена.

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

=> _InfoReg<n> - таблица движений регистра сведений.

=> _InfoRegChangeRec<n> - таблица регистрации изменений регистра сведений. Создается, если регистр сведений участвует хотя бы в одном плане обмена.

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

=> _AccumReg<n> - таблица движений регистра накопления.

=> _AccumRegTotals<n> - таблица итогов регистра накопления, если регистр поддерживает остатки.

=> _AccumRegTurnovers<n> - таблица оборотов регистра накопления, если регистр поддерживает обороты.

=> _AccumRegChangeRec<n> - таблица регистрации изменений регистра накопления. Создается, если регистр накопления участвует хотя бы в одном плане обмена.

=> _AccumRegOptions - таблица настроек хранения итогов регистров накопления одна на все регистры накопления.

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

=> _AccntReg<n> - таблица движений регистра бухгалтерии.

=> _AccntRegED<n> - таблица значений субконто регистра бухгалтерии, создается в том случае, если он ссылается на план счетов, у которого максимальное количество субконто больше нуля.

=> _AccTtl0<n> - таблица итогов по счету.

=> _AccTtl<i><n> - где i от 1 до максимального количества субконто. Таблица итогов по счету с количеством видов субконто равным i.

=> _AccTtlC<n> - таблица итогов оборотов между счетами, только для регистра бухгалтерии поддерживающего корреспонденцию.

=> _AccntRegChangeRec<n> - таблица регистрации изменений регистра бухгалтерии. Создается, если регистр бухгалтерии участвует хотя бы в одном плане обмена.

=> _AccntRegOptions - таблица настроек хранения итогов одна на все регистры бухгалтерии.

* Регистры расчета

=> _CalcReg<n> - таблица движений регистра расчета.

=> _CalcRegActPer<n> - таблица фактических периодов действия для регистра расчета, создается, если у регистра расчета установлен флаг "Период действия".

=> _CalcRegChangeRec<n> - таблица регистрации изменений регистра расчета. Создается для каждого регистра расчета, участвующего хотя бы в одном плане обмена.

=> _CalcRegRecalc<n> - таблица перерасчета регистра расчета, создается для каждого перерасчета.

=> _CalcRegRecalcChangeRec<n> - таблица регистрации изменений перерасчета. Создается, если перерасчет участвует хотя бы в одном плане обмена.

* Бизнес-процессы

=> _BPRoutePoint<n> - таблица точек маршрута бизнес-процесса для каждого бизнес-процесса.

=> _BusinessProcess<n> - основная таблица бизнес-процесса.

=> _BusinessProcess<n>_VT<k> - табличная часть бизнес-процесса для каждой табличной части.

=> _BusinessProcessChangeRec<n> - таблица регистрации изменений бизнес-процесса. Создается для каждого бизнес-процесса, участвующего хотя бы в одном плане обмена.

* Задачи

=> _Task<n> - основная таблица задачи.

=> _Task<n>_VT<k> - табличная часть задачи для каждой табличной части.

=> _TaskChangeRec<n> - таблица регистрации изменений в задачах. Создается для каждого объекта метаданных типа "задача", который участвует хотя бы в одном плане обмена.

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

Количество этих таблиц зависит от функциональности конфигурации и может быть достаточно большим. В штатном режиме 1С:Предприятие не выполняет проверку их наличия, а также целостности и непротиворечивости содержащихся в них данных. Поэтому важно, чтобы база данных, в которой размещена информационная база 1С:Предприятия 8.1, была защищена от несанкционированного доступа и ее модификация выполнялась только средствами 1С:Предприятия. Для проверки необходимо использовать функцию "Администрирование - Тестирование и исправление", встроенную в конфигуратор.

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

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