1с как узнать имя таблицы в sql
Перейти к содержимому

1с как узнать имя таблицы в sql

  • автор:

Как узнать имена таблиц 1С в SQL

Как известно базы 1С могут существовать в двух вариантах: файловом и серверном. И для серверного варианта они в большинстве своем разворачиваются на MS-SQL сервере (поэтому далее для простоты буду везде подразумевать MS-SQL сервер под словом SQL).
Таким образом каждому объекту метаданных 1С (документ, справочник, регистр) соответствует одна или несколько таблиц на SQL сервере. Но имена таблиц в 1С и на SQL сервере различаются. При решении ряда задач может возникнуть необходимость сопоставить имена таблиц 1С, а также их полей с именами таблиц и полей SQL сервера.

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

Что касается серверного варианта баз 1С версии 8, то там файловой части базы нет в принципе. Но тем не менее сопоставить имена таблиц и полей 1С с именами таблиц и полей на SQL сервере можно. И эта возможность реализована в самой платформе 1С 8. Делается это при помощи функции ПолучитьСтруктуруХраненияБазыДанных().
Подробно описывать эту функцию не буду, это можно посмотреть в синтакс-помощнике. Скажу лишь, что в качестве параметра в эту функцию передается массив с описанием объектов метаданных, а возвращает она таблицу значений в которой описаны имена таблиц и полей на SQL сервере.

Рассмотрим небольшой пример.

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

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

Размещение данных 1С:Предприятия 8. Таблицы и поля

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

Имена полей

Состав полей каждой таблицы базы данных и их имена определяется соответствующим ей объектом метаданных. Имена полей могут различаться в зависимости от их назначения и типа хранящихся в них данных. Каждое имя поля может содержать:

  • префикс из латинских букв ( ), определяющий назначение данных, содержащихся в этом поле. Префикс присутствует в имени любого поля;
  • числовой номер ( , или ), позволяющий отличить поля, содержащие похожие по назначению данные. Существуют поля, имена которых не содержат номера;
  • суффикс из латинских букв, зависящий от типа данных, хранимых в полях (suff>). Существуют поля, имена которых не содержат суффикса.

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

Состав полей

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

Константы

Для каждой константы создается таблица (_Const ) со следующими полями:

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

Если хотя бы одна константа участвует в обмене данными, то создается таблица регистрации изменений констант (_ConstsChngR) со следующими полями:

  • _Node — ссылка на узел плана обмена;
  • _MessageNo — номер сообщения обмена данными, в которое было выгружено это изменение или NULL, если оно еще не было выгружено;
  • _ConstID — идентификатор константы, значение которой изменилось.
  • _Fld — общие реквизиты

Табличная часть

Каждой табличной части соответствует таблица базы данных (_VT ), содержащая следующие поля:

  • _ID — ссылка на объект базы данных, которому принадлежит запись табличной части;
  • _KeyField — ключ записи табличной части в рамках одного объекта базы данных
  • _LineNo — номер записи табличной части
  • _Fld — реквизит табличной части (для каждого реквизита, определенного в конфигурации). Для реквизита составного типа создается несколько полей с одинаковыми префиксом и номером и различными суффиксами.
  • _Fld — общие реквизиты

Планы обмена

Для каждого плана обмена создается таблица (_Node ) со следующими полями:

  • _ID — идентификатор узла;
  • _Version — версия записи (изменяется после каждого обновления данной записи);
  • _Marked — признак того, что узел помечен на удаление;
  • _Code — код узла;
  • _Description — наименование узла;
  • _SentNo — номер последнего отправленного сообщения обмена данными в адрес этого узла;
  • _ReceivedNo — номер последнего сообщения обмена данными, полученного от этого узла;
  • _Fld — реквизит плана обмена (для каждого реквизита, определенного в конфигурации);
  • _PredefinedID — ccылка на предопределенное в метаданных значение;
  • _LastUpdate — Дата крайнего обмена мобильного клиента с автономным режимом
  • _Fld — общие реквизиты

Справочники

Для каждого справочника создается таблица (_Reference ) со следующими полями:

  • _ID — идентификатор элемента справочника;
  • _Version — версия записи (изменяется после каждого обновления данной записи);
  • _Marked — признак того, что элемент справочника помечен на удаление;
  • _PredefinedID — ccылка на предопределенное в метаданных значение;
  • _ParentID — идентификатор элемента справочника или группы, которому подчинен данный элемент справочника. Поле определяется только для иерархических справочников;
  • _OwnerID — идентификатор владельца данного элемента справочника. Поле определено, если в конфигурации для справочника указаны владельцы;
  • _Folder — признак того, что запись представляет группу. Поле определено, если справочник иерархический и в иерархию входят группы;
  • _Code — код элемента справочника;
  • _Description — наименование элемента справочника;
  • _Fld — реквизит справочника (для каждого реквизита, определенного в конфигурации).
  • _Fld — общие реквизиты

Если конфигурация содержит хотя бы один справочник, то создается одна таблица опций справочника (_RefOpt) с полями:

  • _MDID — идентификатор объекта метаданных
  • _PDUpdMode — режим обновления предопределенных данных

Если у справочника есть предопределенные данные, то создается таблица проинициализированных областей (_RefSInf) с полями:

  • _PDInitialized – признак того, что область проинициализирована;
  • _Fld — общие реквизиты данного объекта.

Если справочник участвует в обмене данными, то для него определяется таблица регистрации изменений (_ReferenceChngR ) со следующими полями:

  • _Node — ссылка на узел плана обмена;
  • _MessageNo — номер сообщения обмена данными, в которое было выгружено это изменение или NULL, если оно еще не было выгружено;
  • _ID — идентификатор измененного элемента справочника;
  • _Fld — общие реквизиты.

Документы

Для каждого документа создается таблица (_Document ) со следующими полями:

  • _ID — идентификатор документа;
  • _Version — версия записи (изменяется после каждого обновления данной записи);
  • _Marked — признак того, что документ помечен на удаление;
  • _Date_Time — дата/ время документа;
  • _NumberPrefix — начало периода уникальности номера. Поле определено, если в конфигурации для документа задана поддержка уникальности номера в пределах периода;
  • _Number — номер документа;
  • _Posted — документ проведен;
  • _Fld — реквизит документа (для каждого реквизита, определенного в конфигурации);
  • _Fld — общие реквизиты.

Если документ участвует в обмене данными, то создается таблица регистрации изменений (_DocumentChngR ), поля которой аналогичны полям таблицы регистрации изменений справочника.

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

Для каждой последовательности документов создаются две таблицы: таблица регистрации документов и таблица границ последовательности. Таблица регистрации документов (_Seq ) содержит поля:

  • _Period — дата/ время документа;
  • _Recorder — ссылка на документ;
  • _Fld — измерение последовательности (для каждого измерения, определенного в конфигурации);
  • _Fld — общие реквизиты.

Таблица границ последовательности (_SeqB ) содержит поля:

  • _Fld — измерение последовательности (для каждого измерения, определенного в конфигурации);
  • _Period — дата/ время последнего документа по текущему набору значений измерений;
  • _Recorder — ссылка на последний документ по текущему набору значений измерений;
  • _Fld — общие реквизиты.

Если последовательность участвует в обмене данными, то еще создается таблица регистрации изменений (_SeqChngR ) с полями:

  • _Node — ссылка на узел плана обмена;
  • _MessageNo — номер сообщения обмена данными, в которое было выгружено это изменение или NULL, если оно еще не было выгружено;
  • _Recorder — ссылка на документ, которому соответствует измененная запись в таблице регистрации документов;
  • _Fld — общие реквизиты.

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

Каждому журналу документов соответствует таблица (_DocumentJournal ) со следующими полями:

  • _Document — ссылка на документ;
  • _Date_Time — дата/ время документа;
  • _Marked — признак того, что документ помечен на удаление;
  • _Posted — признак того, что документ проведен;
  • _Number — номер документа;
  • _Fld — графа журнала (для каждой графы, определенной в конфигурации).
  • _Fld — общие реквизиты

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

Для каждого перечисления создается таблица (_Enum ) с полями:

  • _ID — идентификатор элемента перечисления;
  • _EnumOrder — числовое значение элемента перечисления.

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

Для каждого плана видов характеристик создается таблица (_Chrc ) со следующими полями:

  • _ID — идентификатор вида характеристик;
  • _Version — версия записи (изменяется после каждого обновления данной записи);
  • _Marked — признак того, что вид характеристик помечен на удаление;
  • _PredefinedID — ccылка на предопределенное в метаданных значение;
  • _ParentID — идентификатор вида характеристик (или группы видов характеристик), которому подчинен данный. Поле присутствует только для иерархического плана видов характеристик;
  • _Folder — признак того, что запись является группой видов характеристик. Поле присутствует только для иерархического плана видов характеристик;
  • _Code — код вида характеристик;
  • _Description — наименование вида характеристик;
  • _Type — тип значения характеристики этого вида характеристик;
  • _Fld — реквизит вида характеристик (для каждого реквизита, определенного в конфигурации).
  • _Fld — общие реквизиты

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

  • _MDID — идентификатор объекта метаданных
  • _ExtID — идентификатор расширения конфигурации
  • _PDUpdMode — режим обновления предопределенных данных

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

  • _PDInitialized – признак того, что область проинициализирована
  • _Fld — общие реквизиты

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

Планы счетов

Для каждого плана счетов создается таблица (_Acc ) со следующими полями:

  • _ID — идентификатор счета;
  • _Version — версия записи (изменяется после каждого обновления данной записи);
  • _Marked — признак того, что счет помечен на удаление;
  • _PredefinedID — ccылка на предопределенное в метаданных значение;
  • _ParentID — идентификатор счета, которому подчинен данный;
  • _Code — код счета;
  • _Description — наименование счета;
  • _OrderField — поле сортировки, содержит данные, по которым фактически выполняется сортировка по коду. Поле присутствует, если в конфигурации определен автопорядок по коду;
  • _Kind — код вида счета (активный/ пассивный/ активный-пассивный);
  • _OffBalance — забалансовый счет;
  • _Fld — реквизит или признак учета (для каждого реквизита и для каждого признака учета).
  • _Fld — общие реквизиты

Если в конфигурации определено отличное от 0 максимальное количество субконто, то создается таблица видов субконто (_Acc_ExtDim ), которая содержит поля:

  • _Acc_ID — ссылка на счет, которому принадлежит характеристика субконто;
  • _KeyField — ключ характеристики субконто;
  • _LineNo — номер характеристики субконто;
  • _DimKind — ссылка на вид характеристики;
  • _DimIsMetadata — предопределенная (определенная в конфигурации) характеристика субконто;
  • _TurnoverOnly — эта характеристика участвует только при подсчете оборотов;
  • _Fld — общие реквизиты.

Если конфигурация содержит хотя бы один план счетов, то создается одна таблица опций плана счетов (_AccOpt) с полями:

  • _MDID — идентификатор объекта метаданных;
  • _ExtID — идентификатор расширения конфигурации;
  • _PDUpdMode — режим обновления предопределенных данных.

Если у плана счетов есть предопределенные данные, то создается таблица проинициализированных областей (_AccSInf) с полями:

  • _PDInitialized – признак того, что область проинициализирована;
  • _Fld — общие реквизиты.

Если план счетов участвует в обмене данными, то создается таблица регистрации изменений (_AccChngR ) с такими же полями, как у таблицы регистрации изменений справочника.

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

Для каждого плана видов расчета создается таблица (_CKind ) с полями:

  • _ID — идентификатор вида расчета;
  • _Version — версия записи (изменяется после каждого обновления данной записи);
  • _Marked — признак того, что вид расчета помечен на удаление;
  • _PredefinedID — ccылка на предопределенное в метаданных значение;
  • _Code — код вида расчета. Поле присутствует, если в конфигурации указана отличная от нуля длина кода;
  • _Description — наименование вида расчета. Поле присутствует, если в конфигурации указана отличная от нуля длина описания;
  • _BaseAsAct — базовый период как период действия. Поле присутствует, если план видов расчета использует период действия;
  • _Fld — реквизит (для каждого реквизита, определенного в конфигурации);
  • _Fld — общие реквизиты.

Еще для каждого плана видов расчета создается таблица ведущих видов расчета (_CKind_LeadingCK) с полями:

  • _CalcKind_ID — ссылка на вид расчета, которому принадлежит таблица ведущих видов расчета;
  • _KeyField — ключ ведущего вида расчета;
  • _LeadingCKLineNo — номер ведущего вида расчета;
  • _LeadingCKLeadingCK — ссылка на ведущий вид расчета;
  • _PredefinedLeadingCKTableLine — признак того, что ведущий вид расчета является предопределенным (определенным в конфигурации);
  • _Fld — реквизит (для каждого реквизита, определенного в конфигурации);
  • _Fld — общие реквизиты.

Если значение свойства Зависимость от базы плана видов расчета отличается от Не зависит, то создается таблица базовых видов расчета (_CKind_BaseCK) с поля:

  • _CalcKind_ID — ссылка на вид расчета, которому принадлежит таблица базовых видов расчета;
  • _KeyField — ключ базового вида расчета;
  • _BaseCKLineNo — номер базового вида расчета;
  • _BaseCKBaseCK — ссылка на базовый вид расчета;
  • _PredefinedBaseCKTableLine — признак того, что базовый вид расчета является предопределенным (определенным в конфигурации).
  • _Fld — реквизит (для каждого реквизита, определенного в конфигурации).
  • _Fld — общие реквизиты

Если у плана видов расчета установлен флаг «Использует период действия», то создается таблица вытесняемых видов расчета (_CKind_DisplacedCK) с полями:

  • _CalcKind_ID — ссылка на вид расчета, которому принадлежит таблица вытесняемых видов расчета;
  • _KeyField — ключ вытесняемого вида расчета;
  • _DisplacedCKLineNo — номер вытесняемого вида расчета;
  • _DisplacedCKDisplCK — ссылка на вытесняемый вид расчета;
  • _PredefinedDisplCKTableLine — предопределенный (определенный в конфигурации) вытесняемый вид расчета.
  • _Fld — общие реквизиты

Если у плана видов расчета установлен флаг Использует период действия то создается таблица порядка вытеснения (_KindDN ) с полями:

  • _CKRef — ссылка на вид расчета;
  • _DisplNumber — номер, определяющий место этого расчета в порядке вытеснения.
  • _Fld — общие реквизиты

Если конфигурация содержит хотя бы один план видов расчета, то создается одна таблица опций плана видов расчета (_CKindsOpt) с полями:

  • _MDID — идентификатор объекта метаданных
  • _ExtID — идентификатор расширения конфигурации
  • _PDUpdMode — режим обновления предопределенных данных

Если у плана видов расчета есть предопределенные данные, то создается таблица проинициализированных областей (_CKindsSInf) с полями:

  • _PDInitialized – признак того, что область проинициализирована,
  • _Fld — общие реквизиты данного объекта

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

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

Для каждого регистра сведений создается таблица движений (_InfoRg ) с полями:

  • _Period — момент времени движения. Поле присутствует, если значение свойства «Периодичность» отлично от «Непериодический»;
  • _Recorder — ссылка на регистратор. Поле присутствует, если значением свойства «Режим записи» является «Подчинение регистратору»;
  • _LineNo — номер движения по данному регистратору. Поле присутствует, если значением свойства «Режим записи» является «Подчинение регистратору»;
  • _Active — движение активно (участвует в вычислении среза последних). Поле присутствует, если значением свойства «Режим записи» является «Подчинение регистратору»;
  • _Fld — измерение, ресурс или реквизит (для каждого измерения, каждого ресурса и каждого реквизита);
  • _Fld — общие реквизиты.

Для каждого периодического регистра сведений, с включенным признаком РазрешитьИтогиСрезПоследних создается таблица срез последних (_InfoRgSL ) с полями:

  • _Period — момент времени движения;
  • _Recorder — ссылка на регистратор. Поле присутствует, если значением свойства «Режим записи» является «Подчинение регистратору»;
  • _Fld — измерение, ресурс или реквизит (для каждого измерения, каждого ресурса и каждого реквизита).

Для каждого периодического регистра сведений, с включенным признаком РазрешитьИтогиСрезПервых создается таблица срез последних (_InfoRgSF ) с полями:

  • _Period — момент времени движения;
  • _Recorder — ссылка на регистратор. Поле присутствует, если значением свойства «Режим записи» является «Подчинение регистратору»;
  • _Fld — измерение, ресурс или реквизит (для каждого измерения, каждого ресурса и каждого реквизита).

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

  • _Node — ссылка на узел плана обмена;
  • _MessageNo — номер сообщения обмена данными, в которое было выгружено это изменение или NULL, если оно еще не было выгружено;
  • _Period — момент времени движения. Поле присутствует, если значение свойства регистра «Периодичность» отлично от «Непериодический» и установлен флаг «Основной отбор по периоду»;
  • _Fld — измерение регистра, входящее в основной отбор (для каждого изменения с установленным флагом «Основной отбор»);
  • _Fld — общие реквизиты.

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

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

Для каждого регистра накопления создается таблица движений (_AccumRg ) с полями:

  • _Period — момент времени движения;
  • _Recorder — ссылка на регистратор;
  • _LineNo — номер движения по данному регистратору;
  • _Active — признак того, что движение активно (участвует в подсчете остатков и оборотов);
  • _RecordKind — вид движения (приход/ расход);
  • _Fld — измерение, ресурс или реквизит (для каждого измерения, каждого ресурса и каждого реквизита);
  • _DimHash — хеш-функция измерений. Поле присутствует, если количество измерений не позволяет организовать уникальный индекс по измерениям;
  • _Fld — общие реквизиты.

Если регистр поддерживает остатки, то создается таблица остатков (_AccumRgT ) с полями:

  • _Period — момент времени, на который посчитаны остатки;
  • _Fld — измерение или остаток по ресурсу (для каждого измерения и каждого ресурса).
  • _Splitter — разделитель итогов (для обеспечения параллельности проведения документов);
  • _DimHash — хеш-функция измерений. Поле присутствует, если количество измерений не позволяет организовать уникальный индекс по измерениям;
  • _Fld — общие реквизиты.

Если регистр поддерживает обороты, то создается таблица оборотов (_AccumRgTn ) с полями:

  • _Period — момент времени, на который посчитаны обороты;
  • _Fld — измерение или оборот по ресурсу (для каждого измерения и каждого ресурса).
  • _Splitter — разделитель итогов (для обеспечения параллельности проведения документов);
  • _DimHash — хеш-функция измерений. Поле присутствует, если количество измерений не позволяет организовать уникальный индекс по измерениям;
  • _Fld — общие реквизиты.

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

Если конфигурация содержит хотя бы один регистр накопления, то создается одна таблица настроек хранения итогов (_AccumRgOpt) с полями:

  • _RegID — идентификатор регистра;
  • _Period — периодичность хранения итогов. Не используется;
  • _ActualPeriod — хранение актуальных итогов;
  • _Periodicity — периодичность регистра;
  • _RepetitionFactor — кратность. Не используется;
  • _UseTotals — использовать итоги;
  • _MinPeriod — минимальный период с которого надо пересчитывать итоги;
  • _MinCalculatedPeriod — минимальный период, по которому нужно насчитывать итоги;
  • _UseSplitter — использовать разделитель итогов (для обеспечения параллельности проведения документов);
  • _Fld — общие реквизиты.

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

Для каждого регистра накопления создается таблица агрегатов (_AccumRgAgg ).

Для каждого регистра накопления создается таблица статистики регистра накопления (_AccumRgSt ).

Для каждого регистра накопления создается таблица буфера новых оборотов регистра накопления (_AccumRgBf ).

Для каждого регистра накопления создается таблица новых оборотов регистра накопления (_AccumRgDl ).

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

  • Таблица опций сети агрегатов (_AccumRgAggOpt),
  • Таблица кодов измерений регистра накопления (_AccumRgAggDims),
  • Таблица сети агрегатов (_AccumRgAggGrid).

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

Для каждого регистра бухгалтерии создается таблица движений (_AccRg ), содержащая поля:

  • _Period — момент времени движения;
  • _Recorder — ссылка на регистратор;
  • _LineNo — номер движения по данному регистратору;
  • _Active — признак того, что движение участвует в подсчете итогов;
  • _Correspond — вид движения. Поле присутствует в регистрах без корреспонденции;
  • _Account — ссылка на счет. Поле присутствует в регистрах без корреспонденции;
  • _AccountDt — ссылка на счет дебета. Поле присутствует в регистрах с корреспонденцией;
  • _AccountCt — ссылка на счет кредита. Поле присутствует в регистрах с корреспонденцией;
  • _Fld — измерение, ресурс или реквизит (для каждого измерения, каждого ресурса и каждого реквизита);
  • _EDHash — хеш-функция измерений. Поле присутствует, если количество измерений не позволяет организовать уникальный индекс по измерениям;
  • _Fld — общие реквизиты.

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

  • _Period — момент времени движения;
  • _Recorder — ссылка на регистратор;
  • _LineNo — номер движения по данному регистратору;
  • _Correspond — вид движения. Поле присутствует в регистрах без корреспонденции;
  • _Kind — ссылка на характеристику субконто;
  • _Value — значение характеристики;
  • _Fld — общие реквизиты.

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

  • _Period — момент на который подсчитаны итоги;
  • _Account — ссылка на счет;
  • _Value — значение субконто (для i от 1 до k);
  • _Fld — измерение или ресурс (для каждого измерения и каждого ресурса);
  • _TurnoverDt — дебетовые обороты ресурса (для каждого ресурса);
  • _TurnoverCt — кредитовые обороты ресурса (для каждого ресурса);
  • _Turnover — общие обороты ресурса (для каждого ресурса). Используются при подсчете оборотов по субконто;
  • _Splitter — разделитель итогов (для обеспечения параллельности проведения документов);
  • _Fld — общие реквизиты.

Для регистра бухгалтерии, поддерживающего корреспонденцию, создается таблица итогов оборотов между счетами (_AccRgCT ) с полями:

  • _Period — момент на который подсчитаны итоги;
  • _AccountDt — дебетовый счет;
  • _AccountCt — кредитовый счет;
  • _Fld — измерение или ресурс (для каждого балансового измерения и каждого балансового ресурса);
  • _FldDt — дебетовая составляющая измерения или ресурса (для каждого небалансового измерения и каждого небалансового ресурса);
  • _FldCt — кредитовая составляющая измерения или ресурса (для каждого небалансового измерения и каждого небалансового ресурса);
  • _Splitter — разделитель итогов (для обеспечения параллельности проведения документов);
  • _Fld — общие реквизиты.

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

Если конфигурация содержит хотя бы один регистр бухгалтерии, то создается одна таблица настроек хранения итогов (_AccRgOpt) с полями:

  • _RegID — идентификатор регистра бухгалтерии;
  • _Period — периодичность хранения итогов. Не используется;
  • _ActualPeriod — хранение актуальных итогов;
  • _Periodicity — периодичность регистра;
  • _RepetitionFactor — кратность. Не используется;
  • _UseTotals — признак использования итогов;
  • _MinPeriod — минимальный период, с которого нужно пересчитывать итоги;
  • _UseSplitter — признак использования разделителя итогов;
  • _MinCalculatedPeriod — минимальный период, по которому нужно насчитывать итоги;
  • _Fld — общие реквизиты.

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

Для каждого регистра расчета создается таблица движений (_CRg ) с полями:

  • _Period — момент времени движения;
  • _Recorder — ссылка на регистратор;
  • _LineNo — номер движения по данному регистратору;
  • _CalcKind — ссылка на вид расчета;
  • _ActionPeriod — период действия. Поле присутствует, если в конфигурации у регистра установлен флаг «Период действия»;
  • _APDateFrom — момент начала периода действия. Поле присутствует, если в конфигурации у регистра установлен флаг «Период действия»;
  • _APDateTill — момент окончания периода действия. Поле присутствует, если в конфигурации у регистра установлен флаг «Период действия»;
  • _BPDateFrom — момент начала базового периода. Поле присутствует, если в конфигурации у регистра установлен флаг «Базовый период»;
  • _BPDateTill — момент окончания базового периода. Поле присутствует, если в конфигурации у регистра установлен флаг «Базовый период»;
  • _Active — признак того, что движение активно (участвует в расчете);
  • _Storno — признак того, что движение является сторно-записью;
  • _Fld — измерение, ресурс или реквизит (для каждого измерения, каждого ресурса и каждого реквизита);
  • _Fld — общие реквизиты.

Если у регистра расчета установлен флаг «Период действия», то создается таблица фактических периодов действия (_CRgActPer ), в которой имеются поля:

  • _Recorder — ссылка на регистратор;
  • _LineNo — номер движения по данному регистратору;
  • _APDateFrom — момент начала фактического периода действия;
  • _APDateTill — момент окончания фактического периода действия;
  • _Fld — общие реквизиты.

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

Для каждого перерасчета создается таблица (_CRgRecalc ) с полями:

  • _Recorder — ссылка на регистратор;
  • _CalcKind — ссылка на вид расчета;
  • _Fld — измерение (для каждого измерения);
  • _Fld — общие реквизиты.

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

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

Для каждого бизнес-процесса создается таблица (_BPr ) с полями:

  • _ID — идентификатор бизнес-процесса;
  • _Version — версия записи (изменяется после каждого обновления данной записи);
  • _Marked — бизнес-процесс помечен на удаление;
  • _Date_Time — дата/ время бизнес-процесса;
  • _Completed — признак того, что бизнес-процесс завершен;
  • _Number — номер бизнес-процесса;
  • _HeadTask — ведущая задача;
  • _Started — признак того, что бизнес-процесс стартован;
  • _Fld — реквизит (для каждого реквизита);
  • _Fld — общие реквизиты.

Для каждого бизнес-процесса создается таблица точек маршрута (_BPrPoints ) с полями:

  • _ID — идентификатор точки маршрута;
  • _RoutePointOrder — номер точки маршрута.

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

Задачи

Для каждой задачи создается таблица (_Task ) с полями:

  • _ID — идентификатор задачи;
  • _Version — версия записи (изменяется после каждого обновления данной записи);
  • _Marked — задача помечена на удаление;
  • _BusinessProcess — ссылка на бизнес-процесс;
  • _Point — ссылка на точку маршрута;
  • _Date_Time — дата/ время задачи;
  • _Number — номер задачи;
  • _Name — имя задачи;
  • _Executed — задача выполнена;
  • _Fld — реквизит (для каждого реквизита);
  • _Fld — общие реквизиты.

Если задача входит хотя бы в один план обмена, то создается таблица регистрации изменений (_TaskChngR ) с полями, аналогичными полям таблицы регистрации изменений справочника.

Регламентные задания

Если в конфигурации определено хотя бы одно регламентное задание, то создается таблица регламентных заданий (_ScheduledJobs) с полями:

  • _ID — идентификатор регламентного задания;
  • _Description — наименование;
  • _JobKey>- ключ регламентного задания (для предотвращения одновременного запуска);
  • _MetadataID — идентификатор объекта метаданных;
  • _Predefined — признак того, что регламентное задание является предопределенным (определенным в конфигурации);
  • _Parameters — параметры регламентного задания;
  • _UserName — имя пользователя, от которого запускается регламентное задание;
  • _ActivationCondition — расписание;
  • _Use — признак того, что задание включено;
  • _RestartCount — количество перезапусков при ошибке;
  • _RestartPeriod — период времени между перезапусками при ошибке;
  • _RestartAttemptNumber — номер последней предпринятой попытки перезапуска;
  • _State — признак того, что задание выполняется;
  • _StartTime — время последнего запуска;
  • _FinishTime — время последнего завершения;
  • _Version — версия;
  • _Fld — общие реквизиты.

Сервисы интеграции

Для каждого сервиса интеграции создается таблица настроек сервиса интеграции (_IntegServiceSettings ) с полями:

  • _Active – активность сервиса интеграции;
  • _Content — содержимое настроек сервиса интеграции;
  • _Fld — разделители сервиса интеграции.

Для каждого канала сервиса интеграции, для которого направление сообщения установлено отправка, создается таблица очереди отправки канала сервиса интеграции (_IntegChannelOutQueue ) с полями:

  • _MessageId – идентификатор сообщения;
  • _Position — позиция сообщения в очереди;
  • _ExpirationDate — дата и время устаревания сообщения;
  • _MessageHeader — заголовок сообщения;
  • _MessageBody — тело сообщения;
  • _Fld — разделители сервиса интеграции.

Для каждого канала сервиса интеграции, для которого направление сообщения установлено получение, создается таблица очереди получения канала сервиса интеграции (_IntegChannelInQueue ) с полями:

  • _MessageId – идентификатор сообщения;
  • _Position — позиция сообщения в очереди;
  • _ExpirationDate — дата и время устаревания сообщения;
  • _MessageHeader — заголовок сообщения;
  • _MessageBody — тело сообщения;
  • _Processed — сообщение обработано;
  • _Fld — разделители сервиса интеграции.

Хранилища поименованных двоичных данных (файлов)

1С:Предприятие создает в базе данных несколько таблиц, которые содержат конфигурацию, профайлы и некоторые другие данные в виде набора поименованных двоичных данных (файлов). К ним относятся таблицы: Config (конфигурация базы данных), ConfigSave (сохраненная конфигурация), ConfigCAS (системное хранилище конфигураций расширений), ConfigCASSave (сохраненное системное хранилище конфигураций расширений), DepotFiles (работа с хранилищем конфигурации), Files (работа с хранилищем конфигурации на платформе версии 8.3.9 и ниже, профайлы и т.п.), Params (служебные параметры информационной базы).

Все они имеют одинаковый набор полей:

  • FileName — имя файла;
  • Creation — момент времени создания файла;
  • Modified — момент времени последней модификации файла;
  • Attributes — атрибуты файла;
  • DataSize — длина файла в байтах;
  • BinaryData — данные, хранимые в файле.

Хранилища непоименованных двоичных данных

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

Эти таблицы содержат единственное поле:

  • SerializedData — двоичные данные.
Список пользователей

Таблица _v8users содержит следующие поля:

  • ID — Уникальный идентификатор пользователя информационной базы;
  • Name — Имя пользователя;
  • Descr — Полное имя пользователя;
  • OSName — Имя пользователя ОС или NULL, если аутентификация ОС не задана;
  • Changed — Момент времени, когда пользователь был изменен в последний раз;
  • RolesID — Идентификатор совокупности ролей пользователя;
  • Show — Показывать пользователя в списке для диалога аутентификации;
  • Data — Все данные о пользователе;
  • AdmRole — Пользователь имеет право Администратор;
  • UsSprH — Числовое хеш-значение совокупности значений разделителей;
  • EAuth — Пользователю разрешена аутентификация паролем.

История работы пользователей

Таблица _UsersWorkHistory содержит следующие поля:

  • _ID — Уникальный идентификатор пользователя информационной базы;
  • _UserID — ID пользователя — владельца настройки;
  • _URL — URL;
  • _Date — Дата-время;
  • _URLHash — Хеш по URL;
  • _DataSeparationUse – использование разделения данных;
  • _Fld — общие реквизиты.

Таблицы хранилищ настроек

  • Хранилище системных настроек таблица _SystemSettings
  • Xранилищe настроек отчетов — таблица _RepSettings
  • Хранилище настроек вариантов отчетов — таблица _RepVarSettings
  • Хранилище общих настроек — таблица _CommonSettings
  • Хранилище настроек данных форм — таблица _FrmDtSettings
  • Xранилищe настроек динамических списков — таблица _DynListSettings
  • Хранилище настроек обработки ошибок — таблица _ErrorProcessingSettings
  • Хранилище внешних данных навигационных ссылок — таблица _URLExternalData
  • Хранилище внутренних настроек — таблица _InternalSettings

содержат следующие поля:

  • _UserId — ID пользователя — владельца настройки;
  • _ObjectKey — имя предмета настройки;
  • _SettingsKey — имя множественной (именованной) настройки;
  • _Version — версия объекта;
  • _SettingsPresentation — представление настройки;
  • _SettingsData – настройка;
  • _ChangeDate Дата и время изменения данных;
  • _UserIdHash хэш значения из колонки UserId;
  • _SettingsKeyHash хэш значения из колонки SettingsKey;
  • _DataSeparationUse – использование разделения данных;
  • _Fld — общие реквизиты.

Хранилище настроек стандартного интерфейса OData

Таблица ODataSettings содержит следующие поля:

  • _DataSeparationUse – Использование разделения данных,
  • _Fld — разделитель,
  • _MetadataObjectUUID – идентификатор объекта метаданных,
  • _DataSeparationUse – использование разделения данных,
  • _Fld — общие реквизиты.

История данных

Таблица очереди истории данных _DataHistoryQueue

  • _MetadataId – Идентификатор объекта метаданных
  • _DataId – Идентификатор данных
  • _Position – Позиция сообщения в очереди. Ведется в разрезе _MetadataId, _DataId
  • _Content – Содержимое сообщения.

Таблица версий данных истории данных _DataHistoryVersions

  • _HistoryDataId – Внутренний идентификатор в подсистеме история данных.
  • _VersionNumber – Номер версии данных
  • _MetadataVersionNumber – Номер версии метаданных, актуальный на момент создания версии данных
  • _Date – Дата создания версии
  • _ChangeType – Тип изменения данных
  • _UserId – Идентификатор пользователя изменившего данные
  • _UserName — Имя пользователя изменившего данные
  • _UserFullName – Полное имя пользователя изменившего данные
  • _Comment – Комментарий к версии
  • _Transaction – Номер транзакции, используемый в журнале регистрации
  • _Node – Ссылка на узел обмена, из которого получены изменения
  • _Content — Данные версии

Таблицы последних версий истории данных _DataHistoryLatestVersions

  • _MetadataId – Идентификатор объекта метаданных
  • _DataId – Идентификатор данных
  • _HistoryDataId – Внутренний идентификатор в подсистеме история данных.
  • _VersionNumber – Номер последней версии данных
  • _Content — Данные последней версии
  • _Fld — Общие реквизиты

Таблица версий метаданных истории данных _DataHistoryMetadata

  • _MetadataId – Идентификатор объекта метаданных
  • _IsSettings – Флаг версия метаданных сформирована при изменении настроек
  • _IsActual – Флаг версия метаданных является актуальной
  • _MetadataVersionNumber – Номер актуальной версии метаданных
  • _Content – Метаданные объекта
  • _Fld — Общие реквизиты

Таблица настроек истории данных _DataHistorySettings

  • _MetadataId – Идентификатор объекта метаданных
  • _Content – Настройки объекта метаданных
  • _Fld — Общие реквизиты

Таблица очереди обработки после записи версии истории данных _DataHistoryAfterWriteQueue

  • _MetadataId – Идентификатор объекта метаданных
  • _HistoryDataId – Внутренний идентификатор в подсистеме история данных.
  • _VersionNumber – Номер версии данных
  • _Fld — Общие реквизиты

Копии базы данных

Таблица копий _ DbCopies содержит следующие поля:

  • _CopyId – идентификатор копии
  • _CopyName – имя копии, уникальное в пределах инфобазы
  • _UseIntAccelerator – использование Дата акселератора
  • _ReplType – вид репликации
  • _DbType – тип СУБД копии
  • _DbServer – адрес сервера базы данных копии
  • _DbName – имя базы данных копии на сервере
  • _DbUser – имя пользователя базы
  • _DbPassword – пароль пользователя базы в зашифрованном виде
  • _CreateDb – создавать базу
  • _Version – версия

Таблица настроек копий _DbCopiesSettings содержит следующие поля:

  • _CopyId – идентификатор копии
  • _CopyContent – состав копии
  • _CopySchema – схема базы данных копии
  • _Version – версия

Таблица состояний таблиц копий _DbCopiesTablesStates содержит следующие поля:

  • _CopyId – идентификатор копии
  • _TableName – имя таблицы SDBL
  • _TableState – состояние таблицы
  • _TrNum – номер первой транзакции состояния

Таблица изменений в процессе первоначального копирования _DbCopiesTrChanges содержит следующие поля:

  • _CopyId – идентификатор копии
  • _TableName – имя таблицы SDBL
  • _TrNum – номер транзакции
  • _ChId – идентификатор объекта изменений

Таблица объектов изменений _DbCopiesTrChObj содержит следующие поля:

  • _ChId – идентификатор объекта изменений
  • _ChObj – объект изменений в сериализованном виде

Таблица c информацией по блокам первоначального копирования _DbCopiesInitialLast содержит следующие поля:

  • _CopyId – идентификатор копии
  • _TableName – имя таблицы SDBL
  • _BlockNum – номер блока
  • _FirstKey – ключи первой записи блока
  • _LastKey – ключи последней записи блока
  • _BlockState – состояние блока

Таблица журналов транзакций _DbCopiesTrLogs содержит следующие поля:

  • _TrNum – номер транзакции
  • _TrTime – время транзакции
  • _TrId – идентификатор транзакции
  • _TrLog – объект журнала транзакции в сериализованном виде

Таблица с измененными в транзакциях таблицах _DbCopiesTrTables содержит следующие поля:

  • _TrNum – номер транзакции
  • _TrTime – время транзакции
  • _TableName – имя таблицы SDBL

Таблица перенесенных транзакций _DbCopiesUpdates содержит следующие поля:

  • _CopyId – идентификатор копии
  • _TrNum – номер последней перенесенной в копию транзакции
  • _TrTime – время транзакции

Таблица временных файлов для обмена с мобильным клиентом с автономным режимом _MobileClientDataExchange содержит следующие поля:

  • _ID – идентификатор записи
  • _Version – версия записи
  • _Type – тип данных
  • _Data – данные
  • _Date – дата создания

Табличные пространства базы данных

Таблица табличных пространств_DbSegments содержит следующие поля:

  • _SegmentId – идентификатор табличного пространства
  • _SegmentName – имя табличного пространства, уникальное в пределах инфобазы
  • _Path – путь к каталогу табличного пространства на сервере СУБД

Таблица элементов состава табличных пространств _DbSegmentsItems содержит следующие поля:

  • _ItemId – идентификатор объекта метаданных
  • _SegmentId – идентификатор табличного пространства
  • _ForIndex – признак назначения элемента состава табличного пространства (истина — для индексов, ложь — для данных)
  • _Applied – признак размещения данных (истина — данные объекта метаданных физически размещены в табличном пространстве, ложь — элемент записан, но обновление размещения таблиц в Конфигураторе еще не выполнено)

Другие таблицы

Если в качестве СУБД используется Microsoft SQL Server, то в таблице _YearOffset хранится смещение дат в единственном поле:

  • Offset — смещение дат в годах.

ПРИМЕЧАНИЕ
Если в качестве СУБД используется IBM DB2, то символ ‘_’ (подчеркивание) в начале имен таблиц и полей отсутствует.

Как узнать имя таблицы 1с в sql

Как известно базы 1С могут существовать в двух вариантах: файловом и серверном. И для серверного варианта они в большинстве своем разворачиваются на MS-SQL сервере (поэтому далее для простоты буду везде подразумевать MS-SQL сервер под словом SQL).

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

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

Что касается серверного варианта баз 1С версии 8, то там файловой части базы нет в принципе. Но тем не менее сопоставить имена таблиц и полей 1С с именами таблиц и полей на SQL сервере можно. И эта возможность реализована в самой платформе 1С 8. Делается это при помощи функции ПолучитьСтруктуруХраненияБазыДанных().

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

Рассмотрим небольшой пример.

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

Стоит заметить, что данный код будет работать и на файловом варианте базы. Правда какого-то практического применения в этом случае я не вижу.

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

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

Структура в языке программирования 1С 8.3 и 8.2 — набор пар «Ключ» и «Значение». Поле «Ключ» имеет строковый тип, «Значение» же может принимать любой тип данных. Обычно используется для хранения и передачи между процедурами набора каких-либо параметров.

Структуру в языке программирования 1С можно создать двумя способами с помощью конструкции «Новый».

Структура = Новый Структура;
Структура.Вставить(«КлючПараметра1», «Значения параметра №1»);
Структура.Вставить(«КлючПараметра2», «Значения параметра №2»);

Структура = Новый Структура(«КлючПараметра1, КлючПараметра2», «Значения параметра №1», «Значения параметра №2»);

Оба способа создадут структуру, которую видно на скриншоте из отладки:

Получите 267 видеоуроков по 1С бесплатно:

Изменение

Добавить или изменить структуру можно, используя метод «Вставить()».

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

Чтобы удалить элемент коллекции, нужно воспользоваться методом «Удалить», куда передать имя ключа:

Возможна также очистка всех объектов коллекции:

Обход структуры

Чтобы перебрать коллекцию структуры, нужно использовать конструкцию «Для Каждого КлючИЗначение Из Структура Цикл».

Для Каждого КлючИЗначение Из Структура Цикл
…… //обрабатываем, например, изменяем значения
КонецЦикла;

В каждом цикле будет видно, что нам доступны следующие поля:

Данные, которые определяют логику функционирования системы на базе 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 — таблица плана обмена.
=> _Node _VT — табличная часть плана обмена, создается для каждой табличной части.
* Справочники
=> _Reference — таблица справочника.
=> _Reference _VT — табличная часть справочника — для каждой табличной части.
=> _ReferenceChangeRec — таблица регистрации изменений справочника. Создается, если справочник участвует хотя бы в одном плане обмена.
* Документы
=> _Document — таблица документов для каждого объекта метаданных «документ».
=> _Document _VT — табличная часть документа — для каждой табличной части каждого документа.
=> _DocumentChangeRec — таблица регистрации изменений объекта метаданных типа «документ». Создается для каждого объекта метаданных типа «документ», если он участвует хотя бы в одном плане обмена.
* Последовательности документов
=> _Sequence — таблица регистрации документов — для каждой последовательности.
=> _SequenceBoundary — таблица границ последовательности — для каждой последовательности.
=> _SequenceChangeRec — таблица регистрации изменений последовательности. Создается для каждой последовательности, которая участвует хотя бы в одном плане обмена.
* Журналы документов.
=> _DocumentJournal — таблица журнала документов, создается для каждого журнала документов.
* Перечисления
=> _Enum — таблица перечисления — по одной для каждого перечисления.
* Планы видов характеристик
=> _Chrc — основная таблица плана видов характеристик.
=> _Chrc _VT — табличная часть плана видов характеристик — для каждой табличной части.
=> _ChrcChangeRec — таблица регистрации изменений плана видов характеристик. Создается, если план видов характеристик участвует хотя бы в одном плане обмена.
* Планы счетов
=> _Acc — основная таблица плана счетов.
=> _Acc _ExtDim — таблица видов субконто плана счетов, создается для плана счетов в том случае, если максимальное количество субконто больше нуля.
=> _Acc _VT — табличная часть плана счетов, создается для каждой табличной части плана счетов.
=> _AccChangeRec — таблица регистрации изменений плана счетов. Создается, если план счетов участвует хотя бы в одном плане обмена.
* Планы видов расчета
=> _CalcKind — основная таблица плана видов расчета.
=> _CalcKind _BaseCK — таблица базовых видов расчета, создается для плана видов расчета в случае, если его свойство «Зависимость от базы» имеет значение, отличное от «Не зависит».
=> _CalcKind _DisplacedCK — таблица вытесняемых видов расчета, создается для плана видов расчета в случае, если у него установлен флаг «Использует период действия».
=> _CalcKind _LeadingCK — таблица ведущих видов расчета — для каждого плана видов расчета.
=> _CalcKindDN — вспомогательная таблица для порядка вытеснения, создается, если у плана видов расчета установлен флаг «Использует период действия».
=> _CalcKind _VT — табличная часть плана видов расчета, создается для каждой табличной части.
=> _CalcKindChangeRec — таблица регистрации изменений плана видов расчета. Создается, если план видов расчета участвует хотя бы в одном плане обмена.
* Регистры сведений
=> _InfoReg — таблица движений регистра сведений.
=> _InfoRegChangeRec — таблица регистрации изменений регистра сведений. Создается, если регистр сведений участвует хотя бы в одном плане обмена.
* Регистры накопления
=> _AccumReg — таблица движений регистра накопления.
=> _AccumRegTotals — таблица итогов регистра накопления, если регистр поддерживает остатки.
=> _AccumRegTurnovers — таблица оборотов регистра накопления, если регистр поддерживает обороты.
=> _AccumRegChangeRec — таблица регистрации изменений регистра накопления. Создается, если регистр накопления участвует хотя бы в одном плане обмена.
=> _AccumRegOptions — таблица настроек хранения итогов регистров накопления одна на все регистры накопления.
* Регистры бухгалтерии
=> _AccntReg — таблица движений регистра бухгалтерии.
=> _AccntRegED — таблица значений субконто регистра бухгалтерии, создается в том случае, если он ссылается на план счетов, у которого максимальное количество субконто больше нуля.
=> _AccTtl0 — таблица итогов по счету.
=> _AccTtl — где i от 1 до максимального количества субконто. Таблица итогов по счету с количеством видов субконто равным i.
=> _AccTtlC — таблица итогов оборотов между счетами, только для регистра бухгалтерии поддерживающего корреспонденцию.
=> _AccntRegChangeRec — таблица регистрации изменений регистра бухгалтерии. Создается, если регистр бухгалтерии участвует хотя бы в одном плане обмена.
=> _AccntRegOptions — таблица настроек хранения итогов одна на все регистры бухгалтерии.
* Регистры расчета
=> _CalcReg — таблица движений регистра расчета.
=> _CalcRegActPer — таблица фактических периодов действия для регистра расчета, создается, если у регистра расчета установлен флаг «Период действия».
=> _CalcRegChangeRec — таблица регистрации изменений регистра расчета. Создается для каждого регистра расчета, участвующего хотя бы в одном плане обмена.
=> _CalcRegRecalc — таблица перерасчета регистра расчета, создается для каждого перерасчета.
=> _CalcRegRecalcChangeRec — таблица регистрации изменений перерасчета. Создается, если перерасчет участвует хотя бы в одном плане обмена.
* Бизнес-процессы
=> _BPRoutePoint — таблица точек маршрута бизнес-процесса для каждого бизнес-процесса.
=> _BusinessProcess — основная таблица бизнес-процесса.
=> _BusinessProcess _VT — табличная часть бизнес-процесса для каждой табличной части.
=> _BusinessProcessChangeRec — таблица регистрации изменений бизнес-процесса. Создается для каждого бизнес-процесса, участвующего хотя бы в одном плане обмена.
* Задачи
=> _Task — основная таблица задачи.
=> _Task _VT — табличная часть задачи для каждой табличной части.
=> _TaskChangeRec — таблица регистрации изменений в задачах. Создается для каждого объекта метаданных типа «задача», который участвует хотя бы в одном плане обмена.

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

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

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

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

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

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

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

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

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

Функционал обработки

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

В табличных частях работают стандартные команды поиска и вывода списка.

Отличия от существующих реализаций

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

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

UPD-2018-01-06 (v1.3). Исправлена ошибка, возникающая в режиме совместимости 8.3.7 и выше (изменилось поведение платформы).

UPD-2012-08-17 (v1.2). Сделан патч для корректной обработки регламентных заданий, исправлен пункт отображения планов видов расчета, исправлено поведение при переключении типа структуры в корне конфигурации.

Обработка показывающая имена SQL таблиц для объектов 1С

  • Снимок.JPG

Удаление и/или копирование сохраненных в 1С настроек (например настроек печати табличных форм) Промо

Иногда нужно удалить сохраненную в 1С «покореженную» настройку или скопировать «удачную» другому пользователю.

1 стартмани

01.09.2012 67874 1383 AnryMc 46

Доп. панель Alt+Z

Панель, вызываемая для объекта комбинацией клавиш Alt+Z (для документа, справочника, плана вида характеристик, плана счетов и т.д.). Возможности: Редактор всех реквизитов, таблиц и движений, Анализ прав к объекту, Поиск ссылок на объект с фильтрами, Сторно движений документа, Выгрузка/загрузка текущего объекта между базами. Подключается как Расширение.

2 стартмани

24.06.2021 8864 104 sapervodichka 57

Оптимизация размера изображений из присоединенных файлов УТ 11.4

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

5 стартмани

10.07.2020 9550 7 Neti 4

Создание *.dt файла из рабочей базы на сервере 1С без завершения работы пользователей

Предлагаемая обработка создает *.dt файл (выгрузку ИБ) из рабочей базы на сервере 1С:Предприятие 8.3 без завершения работы пользователей.

1 стартмани

19.01.2020 20474 101 Sedaiko 20

Очистка кэша 1С 8 (8.0, 8.1, 8.2, 8.3). Грамотная чистка кэша 1С с сохранением настроек. Промо

Эффективное средство для устранения ошибок, возникающих в локальном кэше 1С на клиенте, которым легко сможет воспользоваться пользователь с любым уровнем знаний. Wsf-скрипт, созданный на стандартном языке автоматизации Windows — «WSH JScript», очищает кэш 1С просто, быстро и безопасно. Кроме варианта, очищающего кэш текущего пользователя, имеется также вариант для чистки кэша 1С всех пользователей терминального-сервера.

1 стартмани

04.11.2018 55356 544 Eugen-S 36

Работа с базами данных 1С в SQL Server Management Studio (Расширение для SSMS)

Расширение позволяет просматривать связи объектов метаданных и таблиц БД, сгруппированные данные (по группам метаданных) об используемом дисковом пространстве и выполнять трансляцию SQL текста запроса в термины 1С. И бонусом — при наведении курсора мыши на таблицу или поле показывает назначение объекта в терминах 1С.

10 стартмани

27.11.2019 18136 46 akpaevj 46

Командный интерпретатор для 1С

Инструмент для выполнения команд CMD / PowerShell из 1С.

2 стартмани

15.11.2019 19376 36 YPermitin 41

Закрытие незавершенных сеансов

Как удалять потерянные сеансы пользователей, чтобы они не мешали работе. Обработка протестирована на платформе версии 8.3.13.1644.

1 стартмани

20.09.2019 29770 109 AnatolPopov 12

Блин, мы забыли включить регламентные задания… Промо

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

1 стартмани

08.04.2019 26052 19 slozhenikin_com 37

Кто уложил 1С, или мониторинг загрузки кластера в разрезе пользователей с помощью Grafana

Мониторингом различных параметров работы кластера 1С в zabbix сейчас уже никого не удивишь. Собственно потребление памяти, процов и места на серверах обычно настраивают первыми. Потом идет мониторинг в разрезе rphost’ов и различные метрики функционирования SQL сервера. Но вот когда уже все это есть, то временами возникает вопрос — какой же конкретно нехороший человек пытается съесть все (ну не все, но много) ресурсы сервера? Можно смотреть в консоль кластера и ловить редиску там. Можно анализировать журнал регистраций, включать технологический журнал или накапливать статистку в специализированных базах 1С. Но, «настоящим» сисадминам проще как-то с внешними скриптами, базами данных и, например, Grafana. Расскажу что у нас получилось.

Как узнать имена таблиц 1С в SQL

Сопоставляем имена таблиц базы SQL, именам объектов 1С.

&НаСервере
Процедура ПолучитьСтруктуруХраненияБДНаСервере ()

МассивОбъектов = Новый Массив ;
МассивОбъектов . Добавить ( «Перечисление . ЮрФизЛицо» );

ТаблицаСтруктуры = ПолучитьСтруктуруХраненияБазыДанных ( МассивОбъектов , Истина);

Построитель = Новый ПостроительОтчета ;
Построитель . ИсточникДанных = Новый ОписаниеИсточникаДанных ( ТаблицаСтруктуры );
Построитель . Вывести ( ТабДок );

В данный момент смотрят эту тему 1 гость.

wpforo-info Okolokompa Форум

Работает на wpForo version 1.9.6

Поиск по сайту

Okolokompa в Яндекс Дзен

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

Похожие публикации:

  1. Где в 1с зуп табель учета рабочего времени
  2. Где в 1с посмотреть среднесписочную численность работников
  3. Где зарегистрирован телеграм
  4. Для чего нужна программа 1с

Как узнать имена таблиц 1С в SQL

Сопоставляем имена таблиц базы SQL, именам объектов 1С.

&НаСервере
Процедура ПолучитьСтруктуруХраненияБДНаСервере ()

МассивОбъектов = Новый Массив ;
МассивОбъектов . Добавить ( «Перечисление . ЮрФизЛицо» );

ТаблицаСтруктуры = ПолучитьСтруктуруХраненияБазыДанных ( МассивОбъектов , Истина);

Построитель = Новый ПостроительОтчета ;
Построитель . ИсточникДанных = Новый ОписаниеИсточникаДанных ( ТаблицаСтруктуры );
Построитель . Вывести ( ТабДок );

Вход | Регистрация to reply to this topic.
Forum Jump:

В данный момент смотрят эту тему 1 гость.

Поделиться:
Иконки форумов: Форум не содержит непрочитанных сообщений Форум содержит непрочитанные сообщения
Иконки тем : Без ответа Отвеченный Активный Актуально Закреплено Не одобрен Решено Личное Закрыто

wpforo-info Okolokompa Форум

Работает на wpForo version 2.2.2

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

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

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