К статье
Практический материал

Администрирование · 11 мин

Как посмотреть таблицы в базе данных 1С

Как открыть и посмотреть таблицы в базе данных 1С: через конфигуратор, консоль запросов, СУБД и внешние инструменты. Инструкции и ограничения.

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

Важно понимать: 1С хранит данные не в виде привычных «таблиц Excel», а в структуре, зависящей от режима работы. В файловом варианте это единый файл 1Cv8.1CD с внутренним форматом, в клиент-серверном — таблицы СУБД (MS SQL Server, PostgreSQL, Oracle, IBM Db2). Способ просмотра зависит от того, какой вариант у вас используется, и от того, какие права есть у вашей учётной записи.

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

Как устроено хранение данных в 1С и что именно вы будете смотреть

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

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

Просмотр структуры таблиц через конфигуратор

Самый безопасный способ узнать, какие таблицы есть в базе и как они называются на уровне СУБД, — использовать конфигуратор. Откройте базу в режиме «Конфигуратор», затем перейдите в меню «Администрирование» и найдите пункт, связанный с параметрами информационной базы. В зависимости от версии платформы состав меню может немного отличаться.

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

Таб = ПолучитьСтруктуруХраненияБазыДанных();

Таб.Показать("Структура хранения базы данных");

bsl
Таб = ПолучитьСтруктуруХраненияБазыДанных();
Таб.Показать("Структура хранения БД");

Результат — таблица с колонками: имя таблицы хранения, назначение, имя объекта метаданных, поля и их типы. По ней можно найти, например, что справочник «Контрагенты» хранится в таблице _Reference84, а его реквизиты — в полях вида _Fld123. Эти сведения понадобятся, если позже вы будете смотреть данные напрямую в СУБД.

Просмотр данных через консоль запросов

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

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

ВЫБРАТЬ ПЕРВЫЕ 100

Контрагенты.Ссылка,

Контрагенты.Наименование,

Контрагенты.ИНН

ИЗ

Справочник.Контрагенты КАК Контрагенты

Ограничение «ПЕРВЫЕ 100» важно: без него запрос к большой таблице может выполняться долго и нагружать сервер. Для регистров сведений и накопления используйте таблицы вида «РегистрСведений.КурсыВалют» и «РегистрНакопления.Продажи.Обороты» — виртуальные таблицы итогов тоже доступны через запрос.

Порядок работы с консолью запросов
  1. 1
    Откройте консоль запросов в режиме 1С:Предприятие (штатную или внешнюю обработку)
  2. 2
    Напишите запрос с ограничением ПЕРВЫЕ N к нужному объекту
  3. 3
    Выполните запрос и проверьте, что вернулись ожидаемые строки
  4. 4
    Уточните отбор и список полей, если данных слишком много
  5. 5
    При необходимости выгрузите результат в табличный документ для сохранения

Просмотр данных штатными средствами без программирования

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

Для регистров сведений и накопления в разделе «Все функции» доступны формы списков, где видны записи в табличном виде. Дополнительно во многих конфигурациях есть «Универсальный отчёт», который позволяет вывести данные произвольного объекта с отборами и группировками — фактически это просмотр таблицы без написания запроса.

Полезный приём — команда «Вывести список» в любой табличной форме: она выгружает видимый список в табличный документ, который можно сохранить в Excel. Так можно быстро получить срез данных справочника или журнала документов без специальных инструментов.

Просмотр таблиц напрямую в СУБД (клиент-серверный вариант)

Если база работает в клиент-серверном режиме, данные физически лежат в СУБД, и их можно смотреть штатными средствами сервера баз данных. Для MS SQL Server это SQL Server Management Studio (SSMS), для PostgreSQL — pgAdmin или psql. Подключитесь к серверу, найдите базу с нужным именем и откройте список таблиц.

Физические имена таблиц будут техническими (_Reference84, _Document231, _InfoRg1234), поэтому сначала получите структуру хранения через конфигуратор, как описано выше. Пример запроса для просмотра данных справочника в SQL:

SELECT TOP 100 *

FROM _Reference84;

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

Файловый вариант: что можно и чего нельзя

В файловом режиме вся база — один файл 1Cv8.1CD. Прямого штатного способа открыть его как набор таблиц нет: формат закрытый, и платформа работает с ним монопольно. Пытаться открыть файл сторонними редакторами бессмысленно и опасно — любое изменение байтов повредит базу.

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

Сравнение способов просмотра

Конфигуратор + структура хранения

Показывает состав таблиц и полей, но не сами данные. Требует прав на конфигуратор.

Консоль запросов

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

Все функции / универсальный отчёт

Без программирования, но с ограниченными возможностями отбора и без доступа к служебным полям.

Прямой доступ к СУБД

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

Типичные ошибки и как проверить результат

Самая частая ошибка — попытка найти таблицу по имени объекта в СУБД. Запрос вида SELECT * FROM Номенклатура не сработает: физические имена служебные. Сначала получите структуру хранения и найдите соответствие. Вторая ошибка — забыть про помеченные на удаление объекты: в запросах 1С они отфильтровываются автоматически только по логике платформы, а при прямом чтении СУБД вы увидите их вместе с обычными записями.

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

Типичные ошибки
01
Искать таблицу в СУБД по имени объекта конфигурации — имена служебные, сначала получите структуру хранения
02
Выполнять запрос без ограничения ПЕРВЫЕ N к большой таблице — это надолго блокирует работу и грузит сервер
03
Править данные напрямую в СУБД — нарушается целостность базы, поддержка становится невозможной
04
Путать таблицу движений регистра и таблицу итогов — данные и назначение у них разные
05
Открывать файл 1Cv8.1CD сторонними редакторами — файл повреждается, база перестаёт запускаться

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

Итог

Что важно запомнить

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

Часто задаваемые вопросы

Можно ли посмотреть таблицы 1С без прав администратора?

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

Как узнать, в какой таблице хранится конкретный реквизит документа?

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

Почему в таблице СУБД ссылки выглядят как набор байт?

Ссылочные поля хранятся в бинарном виде (_IDRRef) — это внутренний формат платформы. Чтобы получить читаемое представление, используйте запрос на встроенном языке 1С, где платформа сама преобразует ссылки в наименования и представления объектов.

Можно ли открыть таблицы файловой базы 1С в Excel?

Напрямую — нет, формат файла 1Cv8.1CD закрытый. Обходной путь: выгрузите нужные данные через консоль запросов или команду «Вывести список» в табличный документ и сохраните его в формате Excel.

Опасно ли просто смотреть таблицы напрямую в SQL Server?

Чтение через SELECT безопасно и не меняет данные, хотя тяжёлый запрос может временно замедлить работу пользователей. Опасны любые операции изменения: UPDATE, DELETE, изменение структуры. Для регулярного анализа лучше делать запросы к копии базы или выполнять их в нерабочее время.