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

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

Как убрать стандартный реквизит в 1С

Как убрать или скрыть стандартный реквизит в 1С: способы через конфигуратор, расширение и настройку формы. Ограничения, риски и проверка результата.

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

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

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

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

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

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

Менять можно только некоторые свойства: длину кода и наименования, синоним (отображаемое имя), проверку заполнения, признак «Заполнение из данных заполнения». Сам реквизит останется в структуре объекта в любом случае.

Способ 1. Скрыть реквизит с формы через «Изменить форму»

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

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

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

Порядок действий
  1. 1
    Откройте форму объекта или списка в режиме 1С:Предприятие
  2. 2
    Выберите «Ещё» → «Изменить форму»
  3. 3
    Найдите стандартный реквизит в дереве элементов и снимите флажок
  4. 4
    Нажмите «ОК» и проверьте, что поле исчезло с формы

Способ 2. Скрыть поле программно в модуле формы

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

В обработчике «ПриСозданииНаСервере» формы установите свойство «Видимость» элемента в Ложь:

&НаСервере

Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)

Элементы.Код.Видимость = Ложь;

КонецПроцедуры;

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

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

bsl
Элементы.Комментарий.Видимость = Ложь; // скрыть поле на форме

Способ 3. Изменить свойства стандартного реквизита в конфигураторе

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

Доступные изменения зависят от реквизита. Для «Кода» и «Наименования» можно менять длину и синоним. Для «Даты» документа — состав (дата или дата и время). Для большинства стандартных реквизитов доступен синоним — например, поле «Код» можно отображать пользователям как «Артикул», не создавая нового реквизита.

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

Способ 4. Убрать реквизит из отчёта, списка и печатной формы

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

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

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

Способ 5. Ограничить доступ к реквизиту через права

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

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

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

Настройка формы пользователем

Быстро и безопасно, но сбрасывается при изменении формы разработчиком и действует только на конкретную настройку

Код в модуле формы или расширение

Надёжно и централизованно, требует навыков разработки; расширение сохраняет конфигурацию на поддержке

Изменение свойств в конфигураторе

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

Права и роли

Защищает данные на уровне доступа, а не только визуально; сложнее в настройке и диагностике

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

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

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

Вторая типичная ошибка — попытка удалить стандартный реквизит через загрузку/выгрузку конфигурации в XML с правкой файлов вручную. Такой приём приводит к ошибкам реструктуризации и повреждению конфигурации. Платформа восстановит стандартные реквизиты или откажется обновлять базу.

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

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

Форма объекта под обычным пользователем
Норма

Поле не отображается, форма открывается без ошибок

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

Поле видно или появляется ошибка обращения к элементу формы

Список и форма выбора
Норма

Колонка скрыта во всех списках объекта

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

Колонка осталась в динамическом списке или журнале

Отчёты и печатные формы
Норма

Реквизит отсутствует в выводе

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

Поле появляется в отчёте СКД или на печати

Итог

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

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

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

Можно ли полностью удалить стандартный реквизит «Код» у справочника?

Нет. Реквизит «Код» встроен в платформу и не удаляется. Можно установить его длину в ноль в свойствах справочника (если отключена серия кодов и автонумерация не требуется) — тогда поле фактически перестанет использоваться и отображаться, но в структуре объекта останется.

Как убрать поле «Комментарий» из документа?

«Комментарий» — не всегда стандартный реквизит: во многих типовых документах это обычный реквизит, добавленный разработчиком. Если он стандартный, скройте его через «Ещё» → «Изменить форму» или кодом в модуле формы. Если обычный — его можно удалить в конфигураторе, предварительно убедившись, что на него нет ссылок в коде и макетах.

Сбросятся ли настройки скрытых полей после обновления конфигурации?

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

Как скрыть реквизит сразу для всех пользователей?

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

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

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

Что делать, если скрытое поле снова появляется в отчёте?

Отчёты на СКД формируют список полей независимо от формы объекта. Откройте настройки варианта отчёта, снимите флажок с поля на вкладке выбранных полей и сохраните вариант. Если поле добавлено в набор данных запроса отчёта, потребуется правка схемы компоновки в конфигураторе или расширении.