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

Справочники и Данные · 13 мин

Как изменить структуру подчиненности в 1С

Как изменить структуру подчиненности в 1С: перенос элементов между группами, смена владельца подчинённого справочника, настройка иерархии в конфигураторе.

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

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

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

Что такое подчиненность в 1С и какие её виды существуют

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

Второй вид — подчинённые справочники: один справочник является владельцем другого. Классический пример — справочник «Договоры контрагентов», подчинённый справочнику «Контрагенты»: каждый договор жёстко привязан к конкретному контрагенту и не существует отдельно от него. То же относится к единицам измерения номенклатуры, банковским счетам организаций, контактным лицам партнёров.

Третий вид — подчиненность документов: структура, в которой один документ вводится «на основании» другого (счёт на оплату → реализация → счёт-фактура). Эта цепочка отображается в панели «Структура подчиненности» и определяется настройками конфигурации, а не данными. Менять её в пользовательском режиме нельзя — только через конфигуратор.

Как перенести элемент справочника в другую группу

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

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

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

Перенос элемента в другую группу
  1. 1
    Откройте список справочника и найдите нужный элемент через поиск или отбор
  2. 2
    Выделите один или несколько элементов
  3. 3
    Нажмите правую кнопку мыши и выберите «Переместить в группу»
  4. 4
    Укажите целевую группу и подтвердите действие
  5. 5
    Обновите список и проверьте, что элементы отображаются в новой папке

Как изменить владельца подчинённого справочника

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

Здесь есть важное ограничение: если подчинённый элемент уже используется в документах, смена владельца может привести к несоответствиям. Например, в реализации указан контрагент А и его договор; если договор перепривязать к контрагенту Б, документ станет внутренне противоречивым, и при перепроведении программа может выдать ошибку. Перед сменой владельца найдите все документы, где используется элемент (команда «Найти ссылки» или отчёт по местам использования), и оцените последствия.

Для массовой перепривязки при объединении контрагентов в типовых конфигурациях часто есть штатные обработки поиска и удаления дублей (раздел «Администрирование» → «Обслуживание» → «Корректировка данных» → «Поиск и удаление дублей»). Они переносят и подчинённые объекты, и ссылки в документах — это безопаснее ручной правки каждого элемента.

Как изменить подчиненность документов и цепочки «ввод на основании»

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

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

Изменение схемы подчиненности в конфигураторе

Когда недостаточно переставить данные и нужно изменить саму структуру — например, включить иерархию у справочника, который раньше был плоским списком, или сделать существующий справочник подчинённым другому, — работа ведётся в конфигураторе. Откройте конфигурацию (меню «Конфигурация» → «Открыть конфигурацию»), найдите нужный справочник и перейдите на закладки «Иерархия» и «Владельцы».

На закладке «Иерархия» включается иерархичность и выбирается её вид: «Иерархия групп и элементов» (как у номенклатуры — папки и элементы разного вида) или «Иерархия элементов» (как у подразделений — любой элемент может быть родителем другого). На закладке «Владельцы» добавляются справочники-владельцы, после чего у подчинённого справочника появляется обязательный реквизит «Владелец».

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

Массовое изменение подчиненности через групповую обработку

Когда перенастроить нужно не несколько, а сотни или тысячи элементов, ручной перенос непрактичен. В типовых конфигурациях на БСП (Библиотека стандартных подсистем) есть обработка «Групповое изменение реквизитов» (обычно в разделе «Администрирование» → «Обслуживание» → «Корректировка данных»). С её помощью можно отобрать элементы по условию и пакетно установить им новую группу или нового владельца.

Порядок работы: выберите тип объекта (справочник), задайте отбор — например, все элементы конкретной группы или созданные определённым пользователем. Затем в списке реквизитов отметьте «Родитель» (группа) или «Владелец», укажите новое значение и выполните изменение. Обработка покажет, сколько элементов будет изменено, — сверьте это число с ожиданиями до подтверждения.

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

Массовая смена группы через групповое изменение реквизитов
  1. 1
    Сделайте резервную копию базы
  2. 2
    Откройте «Администрирование» → «Обслуживание» → «Корректировка данных» → «Групповое изменение реквизитов»
  3. 3
    Выберите справочник и задайте отбор нужных элементов
  4. 4
    Отметьте реквизит «Родитель» или «Владелец» и укажите новое значение
  5. 5
    Проверьте количество изменяемых элементов и выполните обработку
  6. 6
    Откройте справочник и убедитесь, что структура изменилась корректно

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

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

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

Контрольные точки

Как проверить результат

Отображение в дереве групп
Норма

Элементы находятся в целевых папках, старые папки не содержат перенесённых позиций

Тревожный признак

Элементы видны в старой группе или пропали из списка

Владелец подчинённых элементов
Норма

У всех договоров, счетов, контактных лиц владелец заполнен и верен

Тревожный признак

Есть элементы с пустым владельцем или владельцем-дублём

Отчёты с группировкой
Норма

Обороты и остатки распределились по новым группам

Тревожный признак

Суммы «повисли» на старых группах или появились неучтённые позиции

Документы с изменёнными элементами
Норма

Документы открываются и перепроводятся без ошибок

Тревожный признак

Ошибки вида «договор не соответствует контрагенту» при проведении

Типичные ошибки
01
Перенос элементов без резервной копии — при ошибке откатить массовое изменение штатными средствами нельзя
02
Смена владельца у элемента, используемого в проведённых документах, без анализа ссылок — документы становятся противоречивыми и не перепроводятся
03
Ручное удаление групп с элементами вместо переноса — элементы либо удаляются вместе с группой, либо остаются с битыми ссылками
04
Изменение иерархии в конфигураторе рабочей базы в разгар рабочего дня — реструктуризация требует монопольного доступа и блокирует пользователей
05
Использование сторонних обработок переподчинения без теста на копии — прямая запись в базу может нарушить связанные данные

Когда стоит привлечь специалиста

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

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

Итог

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

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

Частые вопросы

Можно ли перенести элемент справочника в другую группу, если он используется в документах?

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

Как переподчинить сразу все договоры одного контрагента другому?

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

Что будет, если удалить группу справочника вместе с элементами?

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

Можно ли изменить подчиненность документов без конфигуратора?

Нет. Состав документов, вводимых на основании друг друга, задан в метаданных конфигурации. В пользовательском режиме доступно только удаление или замена конкретных связанных документов. Для изменения схемы ввода на основании нужен конфигуратор или расширение конфигурации.

Почему после смены владельца договора документ выдаёт ошибку при проведении?

Документ хранит и контрагента, и договор. Если договор перепривязан к другому контрагенту, программа при проведении видит несоответствие и блокирует операцию. Нужно либо вернуть договору прежнего владельца, либо исправить документ — выбрать договор, соответствующий указанному в нём контрагенту.

Обязательно ли делать резервную копию перед переносом элементов?

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