Справочники и Данные · 10 мин
Родитель в 1С: что это такое и как работать с иерархией
Родитель в 1С — это элемент-владелец в иерархическом справочнике. Разбираем, что означает поле «Родитель», как найти и сменить группу, типичные ошибки.
Открывая карточку элемента справочника в 1С, пользователи часто видят поле «Родитель» и не понимают, что оно означает и можно ли его менять. На самом деле это одно из базовых понятий платформы: «Родитель» — это ссылка на группу (папку) или элемент более высокого уровня, внутри которого находится текущий объект. Именно через это поле строится иерархия справочников: номенклатуры, контрагентов, подразделений, статей затрат и других классификаторов.
Понимание того, как устроен родитель в 1С, нужно не только программистам. Бухгалтеру это помогает правильно раскладывать товары по группам, аналитику — строить отчёты с группировками, администратору — исправлять ошибки, когда элемент оказался не в той папке. Ниже разберём, где хранится это поле, как его посмотреть и изменить, что делать, если родитель не отображается, и какие ошибки встречаются чаще всего.
Что означает поле «Родитель» в карточке элемента
В иерархических справочниках каждый элемент хранит системный реквизит «Родитель» (в языке конфигуратора — свойство Parent). Он содержит ссылку на группу, в которую входит элемент. Если элемент находится на верхнем уровне и не вложен ни в одну папку, значение родителя пустое — это нормальное состояние, а не ошибка.
Наглядный пример — справочник «Номенклатура». Группа «Молочные продукты» является родителем для товара «Молоко 3,2%», а сама может быть вложена в группу «Продукты питания». Получается дерево, где у каждого элемента, кроме корневых, есть ровно один родитель. Множественных родителей в типовой иерархии 1С не бывает: элемент не может одновременно лежать в двух папках — для таких задач используют дополнительные реквизиты, категории или свойства.
Какие виды иерархии бывают в справочниках
Платформа 1С поддерживает два вида иерархии, и от этого зависит, кем может быть родитель. Первый вид — «иерархия групп и элементов»: справочник делится на группы (папки) и элементы, при этом родителем элемента может быть только группа, а сами элементы не могут содержать вложенных объектов. Так устроены, например, «Номенклатура» и «Контрагенты» в типовых конфигурациях.
Второй вид — «иерархия элементов»: здесь любой элемент может содержать другие элементы, и специального типа «группа» нет. Родителем выступает обычный элемент того же справочника. Такой вариант встречается в самописных классификаторах и некоторых специализированных справочниках. Отличить вид иерархии просто: если в списке папки визуально отличаются от элементов и отдельная кнопка создаёт «группу» — это первый вид.
Сравнение видов иерархии
Родителем может быть только группа. Подходит для каталогов товаров, контрагентов, статей. Ограничение: элемент не может содержать вложенные элементы.
Любой элемент может быть родителем других элементов. Подходит для древовидных классификаторов без жёсткого деления на папки и объекты.
Поле «Родитель» отсутствует. Используется, когда группировка не нужна, например для простых перечислений значений.
Как посмотреть родителя элемента
Самый простой способ — открыть карточку элемента двойным щелчком: поле «Родитель» обычно находится в верхней части формы рядом с наименованием. В некоторых конфигурациях оно может называться «Группа» или «Входит в группу» — суть та же. Если поля на форме нет, это либо особенность настройки формы, либо справочник неиерархический.
Посмотреть родителя можно и прямо в списке. Включите древовидное представление (кнопка «Режим просмотра» или «Ещё» → «Дерево»): элементы внутри папок отображаются с отступом, и родитель виден по положению элемента. Дополнительно можно вывести колонку «Родитель» через настройку списка («Ещё» → «Изменить форму» или «Настроить список»), что удобно при массовой проверке.
- 1Откройте справочник и включите древовидный режим списка
- 2Найдите элемент и посмотрите, в какой папке он расположен
- 3Либо откройте карточку элемента и проверьте поле «Родитель» / «Группа»
- 4Если поле пустое — элемент находится на верхнем уровне справочника
Как изменить родителя и перенести элемент в другую группу
Есть три рабочих способа сменить родителя. Первый — через карточку: откройте элемент, в поле «Родитель» выберите нужную группу и запишите. Способ надёжен, но медленен при массовом переносе. Второй — перетаскивание мышью в древовидном списке: захватите элемент и бросьте его на целевую папку. Третий — команда «Переместить в группу» (обычно в меню «Ещё» списка), которая позволяет выделить сразу несколько элементов и перенести их пакетно.
При программной обработке родитель меняется присвоением свойства Parent с последующей записью объекта. Это используют в обработках массовой реорганизации справочников, но такие операции стоит выполнять только с резервной копией и пониманием структуры данных.
Объект = СсылкаНоменклатуры.ПолучитьОбъект();
Объект.Родитель = НоваяГруппа;
Объект.Записать();Важное ограничение: нельзя сделать родителем группу, которая сама вложена в текущий элемент, — платформа заблокирует циклическую ссылку. Также в ряде конфигураций перенос элементов между группами может быть ограничен правами или бизнес-логикой, если от группы зависят счета учёта, цены или настройки обмена.
Зачем родитель нужен в отчётах и отборах
Поле «Родитель» активно используется при построении отчётов. Группировка по родителю позволяет свернуть данные до уровня папок: например, увидеть продажи по группам номенклатуры, а не по каждому товару. В отборах доступен оператор «В группе» (в запросах — «В ИЕРАРХИИ»), который выбирает элементы указанной папки вместе со всеми вложенными подпапками.
Отсюда практическое следствие: неаккуратная структура групп напрямую портит аналитику. Если часть товаров лежит на верхнем уровне без родителя, а часть — в папках, отчёт с группировкой покажет разрозненную картину. Поэтому перед настройкой отчётов стоит привести иерархию в порядок: определить логику групп и разложить «бесхозные» элементы.
Типичные ошибки и проблемы с родителем
Чаще всего пользователи сталкиваются с ситуацией, когда элемент «потерялся» — его не видно в привычной папке. Причина почти всегда в том, что у элемента сменился или очистился родитель: при загрузке из файла, обмене или ручном редактировании. Найти такой элемент помогает отключение древовидного режима и поиск по наименованию в плоском списке.
Вторая распространённая проблема — дубли групп с одинаковыми названиями после обменов между базами. Элементы оказываются разбросаны по одноимённым папкам, и отчёты начинают «двоить» данные. Лечится свёрткой дублей: элементы переносятся в одну группу, лишняя помечается на удаление. Третья ошибка — попытка удалить группу, в которой есть элементы: платформа либо запретит удаление, либо потребует сначала перенести содержимое.
Как проверить корректность иерархии после изменений
После массового переноса или загрузки данных полезно выполнить контрольную проверку. Откройте справочник в древовидном режиме и убедитесь, что на верхнем уровне нет элементов, которые должны лежать в группах. Затем постройте простой отчёт с группировкой по родителю — количество и состав групп должны совпадать с ожиданиями.
Если справочник участвует в обмене с другой базой, дополнительно проверьте, что после изменения иерархии обмен проходит без ошибок сопоставления. Расхождения по родителям между базами — частый источник задвоений при следующей синхронизации.
Как проверить результат
Там находятся только элементы, которым группа не нужна
Среди корневых элементов есть те, что должны лежать в папках
Группы соответствуют структуре справочника, итоги не дублируются
Одни и те же данные попадают в разные одноимённые группы
Синхронизация завершается без новых дублей групп
После обмена появляются повторные папки или элементы вне групп
Частые вопросы о родителе в 1С
Может ли элемент быть сразу в двух группах?
Нет. У элемента иерархического справочника всегда один родитель или ни одного. Если нужно отнести объект к нескольким категориям, используют дополнительные реквизиты, свойства или механизм категорий, а не иерархию.
Почему поле «Родитель» пустое — это ошибка?
Нет, пустой родитель означает, что элемент находится на верхнем уровне справочника. Это нормально, если так задумано. Насторожиться стоит, только если элемент должен лежать в конкретной группе, но оказался в корне после загрузки или обмена.
Как массово перенести элементы в другую группу?
Выделите нужные элементы в списке (с Ctrl или Shift) и используйте команду «Переместить в группу» из меню «Ещё», либо перетащите выделение на целевую папку в древовидном режиме. Для очень больших объёмов применяют специальные обработки, но их запускают после резервного копирования.
Что будет, если удалить группу-родителя?
Платформа не даст удалить группу, пока в ней есть элементы, — сначала их нужно перенести или удалить. Если группа пустая, она удаляется обычным образом через пометку на удаление и штатное удаление помеченных объектов.
Чем родитель отличается от владельца?
Родитель задаёт иерархию внутри одного справочника (элемент внутри группы). Владелец — это связь между разными справочниками: подчинённый справочник хранит ссылку на элемент другого справочника, например единицы измерения принадлежат конкретной номенклатуре. Это разные механизмы, и путать их не стоит.
Что важно запомнить
Родитель в 1С — это ссылка на группу или элемент верхнего уровня, определяющая положение объекта в иерархии справочника. Поле влияет на отборы и группировки в отчётах, поэтому структуру групп стоит поддерживать в порядке. Менять родителя можно через карточку, перетаскивание или команду переноса, а после массовых операций — обязательно проверять результат.