Где искать регистры накопления, сведений и бухгалтерии в 1С 8.3 и как читать их записи
Содержание
Быстрее всего регистры в 1С 8.3 найти через меню «Все функции»: включите его в Главное меню → Сервис → Параметры флажком «Отображать команду “Все функции”», затем откройте Главное меню → Все функции и разверните ветку «Регистры накопления», «Регистры сведений», «Регистры бухгалтерии» или «Регистры расчета». Там видны все записи регистра списком, с отбором и сортировкой.
Если нужно не всё содержимое, а ответ на вопрос «откуда цифра», удобнее другие способы. Пользователю хватит движений документа и универсального отчёта. Разработчику — консоли запросов и дерева метаданных в Конфигураторе. Для регулярной выборки собирают отчёт на СКД. Ниже сравнение и разбор каждого способа.
| Способ | Кому подходит | Что показывает | Нужны права |
|---|---|---|---|
| «Все функции» | пользователю, бухгалтеру | сырые записи регистра | на чтение регистра |
| Движения документа | бухгалтеру | что записал конкретный документ | обычные |
| Универсальный отчёт | пользователю | остатки, обороты, срезы | обычные |
| Консоль запросов | разработчику, админу | любые выборки, виртуальные таблицы | полные или на внешние обработки |
| Конфигуратор | разработчику | структуру: измерения, ресурсы, регистраторы | администратор базы |
| Отчёт на СКД | разработчику | готовый отчёт с отборами | зависит от отчёта |
Как найти регистры в режиме Предприятия без программиста
Через «Все функции»
- Откройте
Главное меню → Сервис → Параметры. - Поставьте флажок «Отображать команду “Все функции”» и нажмите «Применить».
- Откройте
Главное меню → Все функции. - Разверните нужную ветку регистров и дважды щёлкните по имени.
Откроется стандартная форма списка. В регистре накопления и бухгалтерии в ней видны период, регистратор (документ), измерения и ресурсы. В меню Ещё формы списка есть настройка списка: там добавляют отбор, например по складу или организации, и выводят нужные колонки.
Если ветки нет вообще, в базе нет регистров этого вида или у вас нет прав на их чтение. Права проверяет администратор в профилях групп доступа.
Через движения документа
Это самый частый сценарий: отчёт показал странную сумму, и нужно понять, какой документ её дал.
- 📄 В БП 3.0 откройте документ и нажмите кнопку
ДтКтв командной панели. Откроется окно с вкладками: проводки и движения по всем регистрам, куда пишет документ. - 📑 В УТ 11, ЗУП 3.1 и других конфигурациях найдите в форме документа команду «Движения документа» в меню
Ещёили ссылки на регистры в панели навигации формы (раздел «Перейти»). - 🔍 В списке документов то же самое делают для выделенной строки: выделите документ и вызовите ту же команду.
Если вкладки пустые, документ не проведён или проведён с ошибкой. Перепроводите только после того, как разберётесь в причине.
Через стандартные отчёты
В БП 3.0 данные регистра бухгалтерии Хозрасчетный проще читать готовыми отчётами: оборотно-сальдовая ведомость, анализ счёта, карточка счёта. Они собраны именно по этому регистру.
Для регистров накопления и сведений в БП есть Отчеты → Стандартные отчеты → Универсальный отчет. В шапке выбираете тип объекта («Регистр накопления», «Регистр сведений
» и т.д.), имя регистра и вид данных — остатки, обороты или срез последних. Отчёт строится без программирования, отборы и группировки настраиваются в его настройках.
Консоль запросов: точная выборка из регистров для разработчика
Когда стандартного отчёта мало, берут консоль запросов. Это внешняя обработка: она входит в комплект поставки и распространяется через сайт поддержки, во многих конфигурациях её также встраивают как отдельную обработку. Открывается через Главное меню → Файл → Открыть, если у пользователя есть право на внешние обработки.
Главное отличие от «Все функции»: в консоли можно читать виртуальные таблицы регистров, а не только сырые записи. Платформа сама считает остатки на дату и обороты за период.
Пример: остатки по регистру накопления на дату.
ВЫБРАТЬ
Остатки.Номенклатура,
Остатки.Склад,
Остатки.КоличествоОстаток
ИЗ
РегистрНакопления.ИмяРегистра.Остатки(&НаДату, Склад = &Склад) КАК Остатки
ГДЕ
Остатки.КоличествоОстаток <> 0
Вместо ИмяРегистра подставьте имя из дерева конфигурации, а имена измерений сверьте со структурой регистра.
Курс валюты на дату — срез последних по регистру сведений:
ВЫБРАТЬ
Курсы.Валюта,
Курсы.Курс,
Курсы.Кратность
ИЗ
РегистрСведений.КурсыВалют.СрезПоследних(&НаДату, Валюта = &Валюта) КАК Курсы
Какие виртуальные таблицы есть у каждого вида регистра:
| Вид регистра | Виртуальные таблицы |
|---|---|
| Накопления (остатки) | Остатки, Обороты, ОстаткиИОбороты |
| Накопления (обороты) | только Обороты |
| Сведений периодический | СрезПервых, СрезПоследних |
| Сведений непериодический | виртуальных таблиц нет, читают основную |
| Бухгалтерии | Остатки, Обороты, ОстаткиИОбороты, ОборотыДтКт, ДвиженияССубконто |
В конструкторе запроса нажмите на виртуальную таблицу и выберите «Параметры виртуальной таблицы». Там задают период и условия — конструктор сам подставит правильный синтаксис.
Структура регистров в Конфигураторе: измерения, ресурсы, регистраторы
Чтобы понять, что хранит регистр, откройте Конфигуратор и дерево конфигурации (Конфигурация → Открыть конфигурацию). Регистры лежат в одноимённых ветках: «Регистры сведений», «Регистры накопления», «Регистры бухгалтерии», «Регистры расчета».
В окне редактирования регистра смотрите вкладки:
- 📐 Данные — измерения (разрезы: склад, номенклатура, организация), ресурсы (числа: количество, сумма) и реквизиты (дополнительная информация, по ней итоги не считаются).
- 📌 Основные — вид регистра накопления: «Остатки» или «Обороты». От этого зависит, какие виртуальные таблицы доступны.
- 🗓 Для регистра сведений — периодичность (непериодический, по дням, по месяцам, по позиции регистратора) и режим записи: «Независимый» или «Подчинение регистратору».
- 🔗 Регистраторы — список документов, которые пишут в регистр.
Обратная задача — узнать, в какие регистры пишет документ. Откройте документ в дереве, вкладку «Движения»: там отмечены регистры. Сам алгоритм движений — в модуле объекта, в обработке проведения, а в типовых конфигурациях на БСП он часто вынесен в модуль менеджера.
Ссылки на регистр и имена таблиц в СУБД
Щёлкните по регистру правой кнопкой и выберите «Найти ссылки на объект». Конфигуратор покажет документы, отчёты, роли и обработки, где регистр упоминается. Так быстро находят отчёт, который читает нужный регистр.
Если анализ идёт на уровне SQL Server или PostgreSQL, нужны физические имена таблиц. Их возвращает функция ПолучитьСтруктуруХраненияБазыДанных(). Регистры накопления хранятся в таблицах с префиксом _AccumRg, регистры сведений — _InfoRg, регистры бухгалтерии — _AccRg.
Структура = ПолучитьСтруктуруХраненияБазыДанных();
Для Каждого Строка Из Структура Цикл
Если СтрНайти(Строка.Метаданные, "РегистрНакопления.") > 0 Тогда
Сообщить(Строка.Метаданные + " -> " + Строка.ИмяТаблицы);
КонецЕсли;
КонецЦикла;
Читать таблицы СУБД можно, писать в них напрямую нельзя. Изменения в обход платформы ломают итоги и лишают поддержки типовой конфигурации.
Регистры в отчётах на СКД
Система компоновки данных — основной способ сделать из регистра постоянный отчёт с отборами, группировками и диаграммами. Схему можно собрать во внешнем отчёте, не трогая конфигурацию.
Порядок такой:
- Создайте внешний отчёт (
Файл → Новый → Внешний отчётв Конфигураторе) и откройте основную схему компоновки данных. - Добавьте набор данных «Запрос» и в конструкторе выберите виртуальную таблицу регистра, например
Обороты. - Параметры виртуальной таблицы не заполняйте вручную. СКД сама создаст параметры
НачалоПериодаиКонецПериодаи привяжет их к настройкам. - На вкладке «Ресурсы» отметьте числовые поля — по ним будут итоги.
- На вкладке «Настройки» задайте группировки: например, склад → номенклатура.
Для таблицы ОстаткиИОбороты у СКД есть приятная особенность. Если в запросе выбрать поле периода (Период, ПериодДень, ПериодМесяц), СКД сама дополнит записи начальными и конечными остатками по каждому периоду, даже если оборотов в нём не было.
Отбор по измерению ставьте в настройках отчёта, а не в ГДЕ запроса. СКД сама перенесёт его в параметры виртуальной таблицы, и отчёт будет работать быстрее.
Чем отличаются регистры бухгалтерии и расчета
Регистр бухгалтерии
Это проводки. В БП 3.0 он один — Хозрасчетный, связанный с планом счетов Хозрасчетный. Каждая запись — пара «счёт дебета — счёт кредита» с суммой и субконто.
На что смотреть при анализе:
- 🧾 Субконто хранятся отдельно от основной записи. В запросах их читают как
СубконтоДт1,СубконтоКт2и т.д. - 🔢 Остатки по счёту зависят от признаков учёта: если на счёте нет количественного учёта, ресурса количества в остатках не будет.
- 🧭 Таблица
ДвиженияССубконтонужна, когда важна каждая проводка с корреспонденцией, аОстаткииОбороты— когда нужны итоги.
Счёт в условии виртуальной таблицы задают с иерархией, иначе субсчета не попадут:
ВЫБРАТЬ
Ост.Счет,
Ост.Субконто1,
Ост.СуммаОстатокДт,
Ост.СуммаОстатокКт
ИЗ
РегистрБухгалтерии.Хозрасчетный.Остатки(&НаДату, Счет В ИЕРАРХИИ (&Счет), , ) КАК Ост
Регистр расчета
Его используют в зарплатных конфигурациях. Регистр расчета связан с планом видов расчета и хранит начисления и удержания с периодом действия, базовым периодом и периодом регистрации.
Отличия при анализе:
- 📅 Три периода вместо одного. Сумма за март может быть зарегистрирована в апреле, если начислили задним числом.
- ♻️ Есть перерасчёты: при исправлении прошлых периодов регистр помечает записи, требующие пересчёта.
- 🧮 Виртуальные таблицы:
ФактическийПериодДействия, таблицы базы, таблица данных графика (если к регистру подключён график), таблицы перерасчётов.
Пользователю ЗУП 3.1 сырые записи регистров расчета почти никогда не нужны. Начисления и удержания проверяют отчётами «Расчетный листок» и «Анализ начислений и удержаний» — они собраны поверх этих регистров и показывают данные в понятном виде.
Частые ошибки при поиске и анализе данных регистров
Остатки без параметра даты берёт текущий момент, а отчёт — дату из шапки. Задайте параметр явно.Новый Граница(Документ.МоментВремени(), ВидГраницы.Исключая) — остаток до документа, ВидГраницы.Включая — вместе с ним.ГДЕ вместо параметров виртуальной таблицы. Платформа сначала считает остатки по всем измерениям, потом фильтрует. Перенесите условие в параметры.Администрирование → Тестирование и исправление в Конфигураторе с флажком «Пересчёт итогов» или через управление итогами в режиме Предприятия.Тестирование и исправление требует монопольного доступа. Пользователи должны выйти из базы. Перед запуском сделайте резервную копию и выполняйте операцию вне рабочего времени.
Отдельно про регистры накопления вида «Обороты»: у них нет остатков в принципе. Если нужен остаток, а регистр оборотный, остаток считают сами — суммой оборотов с начала учёта, — либо ищут парный регистр остатков.
Ещё одна ловушка — непериодический регистр сведений. У него нет СрезПоследних: если в консоли не находится виртуальная таблица, сначала проверьте в Конфигураторе периодичность регистра.
Частые вопросы
Можно ли вручную исправить запись в регистре?
Как узнать, какой отчёт читает конкретный регистр?
Чем регистр сведений отличается от справочника?
Почему в консоли запросов не видно регистров из расширения?
Администрирование → Печатные формы, отчеты и обработки → Расширения.