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