Флажки в 1С 8.3: от галочки в форме до функциональных опций

· 9 мин

Содержание

Чтобы активировать флажок в 1С, щёлкните по нему мышью или выделите и нажмите Пробел. Флажки, которые включают целые разделы программы, в Бухгалтерии 3.0 собраны в Администрирование → Функциональность, их меняет пользователь с правами администратора.

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

Что такое функциональные опции и при чём тут флажки

В 1С 8.3 есть два разных «флажка», и их часто путают.

  • ☑️ Флажок в форме — обычное поле типа «Булево»: «Оплачено», «Проведён», «Пометка» в строке табличной части. Он хранит одно значение «Да/Нет» для конкретного документа или элемента справочника.
  • 🧩 Флажок функциональности — переключатель, который включает или скрывает целый кусок программы: учёт по нескольким складам, валютные операции, производство. За ним стоит функциональная опция.

Функциональная опция — объект конфигурации, который связывает значение (обычно константу типа «Булево») с набором объектов, реквизитов и команд. Опция выключена — платформа прячет из интерфейса всё, что к ней привязано. Включили — разделы, поля и команды появляются.

Что вы видитеГде хранится значениеКто меняет
Галочка в документе или справочникеРеквизит объектаЛюбой пользователь с правом на изменение объекта
Галочка в строке таблицыРеквизит табличной частиТак же, как сам документ
Галочка в разделе «Функциональность» или «Настройки»Константа, к которой привязана функциональная опцияАдминистратор
Галочка в персональных настройкахНастройки пользователяСам пользователь

От того, к какой строке относится ваш флажок, зависит и способ его включить.

Как включить флажок в интерфейсе программы

Флажок в документе, справочнике или таблице

  1. Откройте документ или элемент справочника.
  2. Щёлкните по квадратику слева или справа от подписи. Щелчок по самой подписи тоже переключает флажок.
  3. С клавиатуры: переведите курсор на поле клавишей Tab и нажмите Пробел.
  4. Нажмите «Записать» или «Провести и закрыть». Без записи значение не сохранится.

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

Тот же флажок сразу в десятке документов

Открывать каждый документ не нужно.

  1. Откройте список, выделите нужные строки (Ctrl + щелчок или Shift + щелчок).
  2. В командной панели нажмите Ещё → Изменить выделенные….
  3. Добавьте нужный реквизит, поставьте ему значение «Да» и нажмите «Изменить реквизиты».

Ту же обработку в Бухгалтерии 3.0 можно открыть через Администрирование → Обслуживание → Корректировка данных → Групповое изменение реквизитов. Там удобнее задать отбор, например «все контрагенты без признака…».

Групповое изменение перезаписывает объекты. В проведённых документах это может затронуть движения. Сначала проверьте результат на 2–3 строках, потом запускайте на всём списке.

Флажки в отборах отчётов и списков

В отчётах галочка слева от строки отбора включает или выключает сам отбор. Строку можно оставить заполненной, но не применять.

  1. В отчёте нажмите «Настройки».
  2. На вкладке «Отборы» найдите нужную строку.
  3. Поставьте флажок в первой колонке — отбор начнёт работать. Снимите — отчёт сформируется без него.
  4. Нажмите «Закрыть и сформировать».

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

Флажки функциональности программы

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

КонфигурацияГде искать флажки функциональности
Бухгалтерия предприятия 3.0Администрирование → Функциональность (вкладки по разделам учёта)
Бухгалтерия предприятия 3.0, параметры учётаАдминистрирование → Настройки программы → Параметры учета
ЗУП 3.1Настройка → Кадровый учет, Настройка → Расчет зарплаты
Управление торговлей 11НСИ и администрирование → Настройка НСИ и разделов

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

Порядок действий одинаковый:

  1. Откройте форму настроек по пути из таблицы.
  2. Найдите вкладку нужного раздела: «Банк и касса», «Запасы», «Производство» и т.д.
  3. Поставьте флажок. В большинстве форм значение записывается сразу, без отдельной кнопки.
  4. Закройте форму и проверьте, появились ли новые команды. Если нет — перезапустите программу.

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

Права доступа: кто может переключать опции

Флажки функциональности хранятся в константах. Чтобы их менять, пользователю нужно право на изменение этих констант. В типовых конфигурациях оно входит в профиль «Администратор». У рядового бухгалтера раздел «Администрирование» обычно недоступен или открывается только на просмотр.

Как дать доступ, если пользователи настроены через профили групп доступа (БП 3.0, ЗУП 3.1, УТ 11):

  1. Под администратором откройте Администрирование → Настройки пользователей и прав.
  2. Перейдите в «Группы доступа» или откройте карточку пользователя и нажмите «Права доступа ».
  3. Включите пользователя в группу с профилем «Администратор».
  4. Пусть пользователь перезапустит программу: новые права применяются при следующем входе.

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

Если раздела «Настройки пользователей и прав» нет совсем, права в базе раздаются ролями напрямую. Тогда нужную роль назначают в Конфигураторе: Администрирование → Пользователи, карточка пользователя, вкладка «Прочие».

Флажки в Конфигураторе: поле флажка и функциональная опция

Эта часть — для тех, кто дорабатывает конфигурацию или расширение.

Как добавить флажок на форму

  1. Создайте реквизит типа Булево — у объекта (вкладка «Данные») или у самой формы (вкладка «Реквизиты» в редакторе формы).
  2. Перетащите реквизит в дерево «Элементы» формы. Для булевых реквизитов платформа сама создаёт поле флажка.
  3. Если появилось поле ввода, откройте свойства элемента и смените «Вид» на «Поле флажка».

Полезные свойства элемента:

  • Вид флажка — обычная галочка или выключатель-тумблер. Значение «Авто» отдаёт выбор платформе.
  • Положение заголовка — подпись слева, справа или скрыта. Для колонок таблицы обычно «Нет».
  • Три состояния — третье, «неопределённое» положение. Работает, если реквизит числовой: 0, 1 и 2.
  • Только просмотр и Доступность — запрещают менять флажок. Первое оставляет его читаемым, второе делает серым.

Как сделать флажок, который включает функциональность

  1. В ветке Общие → Константы создайте константу типа Булево, например «ИспользоватьПроекты».
  2. В ветке Общие → Функциональные опции создайте опцию. В свойстве «Хранение» укажите эту константу.
  3. В свойстве «Состав» отметьте объекты, реквизиты и команды, которые должны появляться при включённой опции.
  4. Выведите константу на форму настроек: на форму обработки или на форму констант.
  5. Нажмите F7 («Обновить конфигурацию базы данных»).

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

У объектов, реквизитов и команд есть свойство «Функциональные опции». Это обратная сторона того же «Состава»: там видно, от каких опций зависит конкретный объект.

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

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

Программное управление флажками

Поставить или снять флажок в форме

Значение флажка — это значение реквизита. Его меняют присваиванием:

&НаКлиенте
Процедура ОтметитьВсе(Команда)
    Для Каждого Строка Из Объект.Товары Цикл
        Строка.Пометка = Истина;
    КонецЦикла;
КонецПроцедуры

Здесь Товары — табличная часть, Пометка — её булев реквизит. Подставьте свои имена. Для «Снять все» замените Истина на Ложь.

Сделать одно поле доступным только при включённом флажке

Частая задача: поле «Дата оплаты» доступно, только если стоит «Оплачено».

&НаКлиенте
Процедура ОплаченоПриИзменении(Элемент)
    УстановитьДоступность();
КонецПроцедуры

&НаКлиенте
Процедура ПриОткрытии(Отказ)
    УстановитьДоступность();
КонецПроцедуры

&НаКлиенте
Процедура УстановитьДоступность()
    Элементы.ДатаОплаты.Доступность = Объект.Оплачено;
КонецПроцедуры

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

Включить функциональную опцию из кода

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

&НаСервереБезКонтекста
Процедура ВключитьПроектыНаСервере()
    Константы.ИспользоватьПроекты.Установить(Истина);
КонецПроцедуры

&НаКлиенте
Процедура ВключитьПроекты(Команда)
    ВключитьПроектыНаСервере();
    ОбновитьИнтерфейс();
КонецПроцедуры

Прочитать текущее значение опции можно функцией ПолучитьФункциональнуюОпцию("ИспользоватьПроекты"). Передают имя функциональной опции, а не константы. Если имена совпадают, как здесь, это удобно, но не обязательно.

💡 Если в конфигурации есть модули с повторным использованием возвращаемых значений и они читают эту константу, после записи вызовите ОбновитьПовторноИспользуемыеЗначения(). Иначе часть кода будет видеть старое значение до перезапуска.

Почему флажок не активируется и что делать

Диагностика: выберите симптом

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

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

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

Можно ли включить флажок функциональности только для одного пользователя?
Нет. Функциональная опция на константе действует на всю базу. Чтобы скрыть раздел у конкретных людей, настраивают права или интерфейс этих пользователей.
Опции у каждой организации свои?
Флажки в «Функциональности» общие для базы. Отдельные настройки по организациям — учётная политика, налоги — ведутся в своих формах с датой начала действия.
Влияет ли включение опций на скорость работы?
Почти нет. Новые реквизиты и разделы немного усложняют формы, но заметного замедления от одной-двух опций не бывает.
Что будет, если отключить опцию, по которой уже есть данные?
Типовая форма обычно этого не позволит. Если отключить удалось, данные остаются в базе, но команды для работы с ними пропадают из интерфейса.
Чем «Только просмотр» отличается от «Доступность» у флажка?
При «Только просмотр» флажок выглядит обычно, но не меняется. При снятой «Доступности» он серый и не меняется. Значение реквизита в обоих случаях можно изменить из кода.