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