Проектирование пользовательских свойств инфоблоков 1С-Битрикс

Наша компания занимается разработкой, поддержкой и обслуживанием решений на Битрикс и Битрикс24 любой сложности. От простых одностраничных сайтов до сложных интернет магазинов, CRM систем с интеграцией 1С и телефонии. Опыт разработчиков подтвержден сертификатами от вендора.
Предлагаемые услуги
Показано 1 из 1 услугВсе 1626 услуг
Проектирование пользовательских свойств инфоблоков 1С-Битрикс
Средняя
~2-3 рабочих дня
Часто задаваемые вопросы
Наши компетенции:
Этапы разработки
Последние работы
  • image_website-b2b-advance_0.png
    Разработка сайта компании B2B ADVANCE
    1163
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Разработка веб-сайта для компании ФИКСПЕР
    811
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Разработка на базе Битрикс, Битрикс24, 1С для компании Development of an Online Appointment Booking Widget for a Medical Center
    563
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    743
  • image_crm_dolbimby_434_0.webp
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    653
  • image_crm_technotorgcomplex_453_0.webp
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    976

Проектирование пользовательских свойств инфоблоков 1С-Битрикс

Через 2 года после запуска типичного интернет-магазина на Битрикс инфоблок каталога выглядит так: 60 свойств, из которых 20 не заполнено ни у одного товара, 15 — строковые с повторяющимися значениями, 8 — с названиями вроде PROP_123 или MY_FIELD. Это результат органического роста без проектирования. Добавить свойство в Битрикс легко — в три клика. Удалить или переименовать без потери данных и поломки импорта из 1С — значительно сложнее.

Пространство имён и соглашения об именовании

Символьный код свойства (CODE) должен отражать семантику, быть уникальным в рамках инфоблока и совпадать с идентификатором в комплекте обмена с 1С (если он есть). Практические правила:

  • Только латиница, цифры, подчёркивание
  • Верхний регистр: BRAND, COLOR, WEIGHT_KG
  • Составные названия через подчёркивание: TECH_PROCESSOR, TECH_RAM_GB
  • Группировка по префиксу для тематических блоков: SEO_H1, SEO_DESCRIPTION, BADGE_NEW, BADGE_SALE

Символьный код после создания свойства изменить нельзя без прямого обращения к b_iblock_property — стандартный интерфейс редактирования кода не предоставляет. Поэтому правильное именование на старте критично.

Обязательные vs. опциональные свойства

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

Свойства для фасетного фильтра

Не все свойства должны участвовать в фасетном индексе. Фасет строится по свойствам типа «Список» и «Справочник» — добавление в индекс ненужных свойств увеличивает время пересоздания индекса и размер таблицы b_iblock_{ID}_index.

Стратегия: свойства делятся на три категории:

  1. Фасетные — участвуют в фильтре пользователя (бренд, цвет, размер, материал). Тип: Список или Справочник (HL-блок). Добавляются в фасетный индекс.
  2. Информационные — отображаются на карточке товара, не участвуют в фильтре (описание технологии, состав, инструкция). Тип: Строка, HTML/текст, Файл.
  3. Системные — используются программно (флаги, идентификаторы для интеграций). Тип: Строка или Число. В фасет не добавляются.

Множественные свойства: когда да, когда нет

Множественное свойство создаёт по одной строке в b_iblock_element_property на каждое значение. Это оправдано для:

  • Цветов (товар выпускается в нескольких цветах)
  • Тегов (статья относится к нескольким темам)
  • Совместимых моделей (запчасть подходит к нескольким устройствам)

Не оправдано, когда значение одно и множественность добавлена «на всякий случай» — это увеличивает объём b_iblock_element_property без пользы.

Свойства-агрегаты и вычисляемые значения

Иногда в свойство инфоблока записывают вычисляемые данные: рейтинг товара, количество отзывов, «минимальная цена среди торговых предложений». Технически это работает, но создаёт задачу синхронизации: при добавлении нового отзыва нужно обновить свойство RATING через обработчик события. Альтернатива — вычислять значение в момент запроса через arResult компонента без хранения в свойстве. Что выбрать — зависит от частоты чтения vs. частоты изменения: если данные читаются 10 000 раз в сутки и обновляются 20 раз — хранение в свойстве и кеш оправданы.

Кейс: аудит и реструктуризация 78 свойств инфоблока

Магазин автозапчастей. Инфоблок «Каталог» с 78 свойствами. Задача — подготовить к обмену с новой конфигурацией 1С и включить фасетный индекс.

Аудит показал:

  • 18 свойств не имели ни одного заполненного значения за всё время
  • 12 строковых свойств-справочников (марка, модель, производитель) — кандидаты на HL-блоки
  • 5 свойств с нечитаемыми кодами (PROP_47, FIELD_2019) — невозможно сопоставить с полями 1С без дополнительного исследования
  • 3 дублирующихся свойства с разными кодами и одинаковым смыслом

После реструктуризации:

  • 18 пустых свойств удалены (после проверки, что они не используются в коде)
  • 12 свойств переведены на 4 HL-блока
  • Проведена миграция данных в HL-блоки, старые строковые свойства очищены
  • Символьные коды переименованы через прямое обновление b_iblock_property
  • Итоговый инфоблок: 45 свойств, из них 14 в фасетном индексе

Состав работы по проектированию свойств

  • Аудит существующих свойств (если рефакторинг)
  • Проектирование схемы свойств с типами, кодами, настройками
  • Распределение свойств по категориям: фасетные / информационные / системные
  • Планирование HL-блоков для справочных свойств
  • Документирование маппинга свойств инфоблока и полей 1С
  • Написание скриптов миграции (при рефакторинге)

Срок: 3–7 рабочих дней для каталога до 100 свойств.