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

Разработка и Конфигурация · 13 мин

Что такое ПВХ в 1С: план видов характеристик простыми словами

План видов характеристик (ПВХ) в 1С: назначение, структура, типы значений, примеры применения для свойств товаров и аналитики, типичные ошибки настройки.

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

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

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

Как устроен план видов характеристик

Структурно ПВХ напоминает план видов расчёта или план счетов: это список предопределённых и пользовательских элементов, каждый из которых описывает один вид характеристики. У элемента ПВХ есть наименование (например, «Цвет») и тип значения (например, строка, число, булево, ссылка на справочник «Значения свойств»).

Ключевая особенность — составной тип данных. Одно и то же поле «Значение» может хранить данные разных типов в зависимости от вида характеристики. Для свойства «Цвет» значением будет строка или ссылка, для «Вес» — число, для «Сертифицирован» — булево. Разработчик задаёт допустимый состав типов при создании ПВХ в конфигураторе.

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

Где ПВХ применяется в типовых конфигурациях

Самый массовый сценарий — дополнительные реквизиты и дополнительные сведения. В «Управлении торговлей», ERP, «Комплексной автоматизации» почти у каждого справочника и документа в форме есть команда «Дополнительные реквизиты», а на панели навигации — «Дополнительные сведения». Всё это построено на ПВХ «ДополнительныеРеквизитыИСведения».

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

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

Как добавить дополнительный реквизит через ПВХ

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

Порядок действий
  1. 1
    Откройте карточку объекта (например, номенклатуры) и выполните команду «Ещё — Изменить состав дополнительных реквизитов» или перейдите в «Администрирование — Общие настройки — Дополнительные реквизиты и сведения».
  2. 2
    Выберите набор реквизитов для нужного вида объектов, например «Номенклатура» или «Контрагенты».
  3. 3
    Создайте новый реквизит: укажите наименование («Материал»), тип значения (строка, число, список значений, дополнительное значение).
  4. 4
    Если тип — список, заполните допустимые значения заранее, чтобы пользователи выбирали из списка, а не вводили текст вручную.
  5. 5
    Откройте карточку объекта и проверьте, что реквизит появился на вкладке «Дополнительные реквизиты» и значение сохраняется.

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

ПВХ в конфигураторе: создание собственного механизма

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

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

Работа с ПВХ из встроенного языка стандартна: элементы создаются через ПланыВидовХарактеристик.ИмяПВХ.СоздатьЭлемент(), поиск — по наименованию или коду, значения записываются в регистр сведений обычным набором записей. Предопределённые виды характеристик задаются в конфигураторе и доступны по имени через менеджер объекта.

1c
Свойство = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("Материал");
НовыйЭлемент = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.СоздатьЭлемент();
НовыйЭлемент.Наименование = "Условия хранения";
НовыйЭлемент.Записать();

Как проверить, что механизм работает корректно

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

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

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

Отображение в карточке
Норма

Реквизит виден на вкладке дополнительных реквизитов, значение сохраняется после записи

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

Поле отсутствует или значение пропадает после перепроведения/закрытия формы

Отбор в списке
Норма

Список фильтруется по значению реквизита через «Ещё — Настроить список»

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

Реквизита нет в списке доступных полей отбора

Отчёты
Норма

Поле доступно в настройках СКД-отчёта и выводит значения

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

Поле не находится или выводится пустым при заполненных данных

Если значения хранятся в регистре сведений самописного механизма, проверьте индексирование измерений: при большом количестве объектов запросы к регистру без индексов по «Объект» и «Свойство» будут работать медленно, а отчёты — зависать.

Типичные ошибки и ограничения

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

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

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

Типичные ошибки
01
Создание свойства свободным текстом вместо списка значений — получаете дубли («Красный», «красный») и неработающие отборы.
02
Использование ПВХ для обязательных учётных данных — нет контроля заполнения и типизации, данные расходятся.
03
Дублирование одного свойства в нескольких наборах с разными наименованиями — пользователи заполняют разные поля, аналитика распадается.
04
Игнорирование прав: пользователь видит объект, но не видит значения дополнительных сведений из-за настроек RLS и ролей.

ПВХ или обычный реквизит: как выбрать

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

Сравнение вариантов

Реквизит справочника

Строгая типизация, контроль заполнения, быстрые запросы. Требует изменения конфигурации и обновления базы.

Дополнительный реквизит (ПВХ)

Добавляется пользователем без конфигуратора, отображается в карточке и отборах. Медленнее в запросах, слабее контроль.

Дополнительное сведение (ПВХ)

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

Собственный ПВХ + регистр сведений

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

Маршрут решения

Как выбрать действие

Свойство нужно только части элементов справочника и список свойств растётИспользуйте дополнительные реквизиты на базе типового ПВХ
Свойство обязательно для всех элементов и участвует в расчётах или проведенииДобавьте обычный реквизит объекта через расширение конфигурации
Нужна справочная информация, которая редко просматриваетсяИспользуйте дополнительные сведения, чтобы не перегружать карточку
Строите собственный блок учёта с произвольной аналитикойСоздайте отдельный ПВХ и регистр сведений для хранения значений

Ограничения и влияние на производительность

ПВХ — не универсальное хранилище. Составной тип значения усложняет индексирование: поиск по значению свойства медленнее поиска по типизированному реквизиту. На базах с сотнями тысяч объектов и десятками свойств отчёты, соединяющие регистр значений свойств несколько раз, становятся узким местом.

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

Практическая рекомендация: периодически ревизуйте список созданных свойств. Неиспользуемые реквизиты с пустыми значениями удаляйте или помечайте как недоступные, дубли объединяйте, перенося значения обработкой. Это сохраняет внятную структуру данных и упрощает настройку отчётов.

Перед созданием нового свойства поищите существующее по наименованию в списке дополнительных реквизитов. В большинстве баз со временем накапливаются дубли вроде «Цвет», «Цвет товара» и «Цвет (новый)», заполненные частично — объединение таких свойств занимает больше времени, чем их создание.
ПЗ
Практическое замечание
Итог

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

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

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

Чем ПВХ отличается от плана счетов и плана видов расчёта?

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

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

Нет. Создание и изменение состава дополнительных реквизитов и сведений требует права на изменение наборов свойств — обычно это роль администратора или настройщика. Обычный пользователь может только заполнять значения уже созданных свойств в карточках объектов.

Почему дополнительный реквизит не виден в отчёте?

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

Что произойдёт со значениями при удалении вида характеристики?

При удалении элемента ПВХ связанные значения в регистрах сведений и табличных частях останутся, но потеряют смысл — в них будет ссылка на несуществующий объект (битая ссылка). Перед удалением очищайте значения обработкой или помечайте свойство как недоступное вместо физического удаления.

Переносятся ли дополнительные реквизиты при обновлении конфигурации?

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

Когда вместо ПВХ лучше использовать расширение конфигурации?

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