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