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