К статье
Практический материал

Разработка и Конфигурация · 9 мин

Как создать колонку в 1С: инструкция для конфигуратора и режима предприятия

Как добавить колонку в табличную часть документа, на форму и в отчёт 1С. Пошаговые инструкции для конфигуратора и пользовательского режима, типичные ошибки и проверка результата.

Задача «создать колонку» в 1С возникает в нескольких разных ситуациях: нужно добавить реквизит в табличную часть документа, вывести колонку на форму списка, расширить набор полей отчёта или настроить вид таблицы в пользовательском режиме. Порядок действий зависит от того, где именно должна появиться колонка и есть ли у вас доступ к конфигуратору.

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

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

Определите, где именно нужна колонка

Перед началом работы ответьте на три вопроса. Первый: колонка должна хранить новые данные (например, «Процент скидки» в таблице товаров) или только отображать уже существующие? Второй: у вас есть доступ к конфигуратору и права на изменение конфигурации? Третий: изменение нужно всем пользователям или только вам?

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

Маршрут решения

Как выбрать действие

Нужно хранить новое значение в каждой строке таблицы документаДобавьте реквизит табличной части в конфигураторе
Колонка нужна в списке документов или справочникаНастройте форму списка через «Изменить форму» или в конфигураторе
Колонка нужна только в отчётеОткройте настройки варианта отчёта и добавьте поле
Колонка нужна только вам в текущем сеансеИспользуйте «Ещё — Изменить форму» в режиме предприятия

Создание колонки-реквизита в табличной части через конфигуратор

Это самый частый сценарий доработки: например, в табличную часть «Товары» документа нужно добавить колонку «Срок годности» или «Комментарий». Работа выполняется в конфигураторе и требует монопольного доступа к базе на этапе обновления.

Откройте конфигуратор, найдите нужный документ в дереве конфигурации, раскройте его и перейдите на ветку «Табличные части». Выберите нужную табличную часть, откройте контекстное меню и нажмите «Добавить реквизит». В палитре свойств задайте имя (без пробелов, латиница или кириллица), синоним — именно он будет виден пользователям как заголовок колонки, и тип данных: строка, число, дата, булево или ссылка на справочник.

Для строковых реквизитов укажите разумную длину: слишком большая длина без необходимости увеличивает размер хранения, а неограниченная строка имеет ограничения при использовании в запросах и индексах. Для чисел задайте длину и точность: например, для количества обычно достаточно 15 знаков с тремя после запятой, для сумм — два знака.

Порядок действий в конфигураторе
  1. 1
    Откройте конфигуратор и найдите объект: документ, справочник или обработку
  2. 2
    Раскройте ветку «Табличные части» и добавьте реквизит в нужную табличную часть
  3. 3
    Задайте имя, синоним, тип и длину реквизита в палитре свойств
  4. 4
    Откройте форму документа и добавьте новый реквизит в дерево элементов таблицы
  5. 5
    Сохраните конфигурацию и выполните «Обновить конфигурацию базы данных» (F7)
  6. 6
    Откройте документ в режиме предприятия и проверьте, что колонка видна и данные сохраняются

Вывод колонки на форму документа

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

Проверьте свойства элемента формы: заголовок, ширину, видимость и режим редактирования. Если колонка должна быть доступна только для просмотра, установите «Только просмотр» или настройте доступность программно. Для колонок с вычисляемыми значениями (например, сумма = количество × цена) добавьте обработчики событий «ПриИзменении» у исходных колонок.

Добавление колонки в форму списка

Форма списка документов или справочника — это таблица, где колонки соответствуют реквизитам объекта. В режиме «Предприятие» пользователь с правами администратора может нажать «Ещё — Изменить форму» и отметить галочками нужные поля. Изменение применяется только к текущему пользователю и не требует конфигуратора.

Если колонка нужна всем пользователям, изменение вносят в конфигураторе: откройте форму списка объекта и добавьте реквизит в дерево элементов таблицы «Список». Учтите, что вывод в список реквизитов табличной части невозможен напрямую — список показывает только шапочные реквизиты объекта. Для данных из табличной части потребуется динамический список с произвольным запросом.

Колонка в отчёте через настройки варианта

Отчёты на системе компоновки данных позволяют добавлять колонки без конфигуратора. Откройте отчёт, нажмите «Настройки» (или «Ещё — Изменить вариант»), перейдите на вкладку «Поля» или «Выбранные поля» и перенесите нужное поле из доступных в список выбранных. Порядок полей в списке определяет порядок колонок в отчёте.

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

Прежде чем просить разработчика добавлять колонку в отчёт, проверьте расширенные настройки: в типовых отчётах многие поля просто не выведены в текущий вариант, но доступны в списке полей. Это экономит время и исключает лишнюю доработку.
ПЗ
Практическое замечание

Проверка результата и типичные ошибки

После обновления конфигурации откройте объект в режиме «Предприятие» и проверьте: колонка видна в таблице, заголовок соответствует синониму, введённое значение сохраняется после записи и проведения документа. Для числовых колонок проверьте, что итог по колонке (если включён) считается корректно.

Если колонка не появилась, чаще всего причина в том, что реквизит добавлен в табличную часть, но не выведен на форму, либо форма не обновилась из-за кэша. Если при обновлении конфигурации базы данных возникла ошибка реструктуризации, проверьте, не занята ли база пользователями, и изучите сообщения в окне служебных сообщений.

Типичные ошибки
01
Добавление реквизита без вывода его на форму — колонка есть в данных, но пользователи её не видят
02
Слишком маленькая длина строки — значения обрезаются при вводе
03
Неограниченная строка в реквизите, который потом используют в отборах — ошибки в запросах и отчётах
04
Обновление рабочей базы без резервной копии — при сбое реструктуризации данные могут быть потеряны
05
Доработка типовой конфигурации напрямую вместо расширения — сложности при обновлении релиза
Контрольные точки

Как проверить результат

Видимость колонки
Норма

Колонка отображается в таблице с заданным заголовком

Тревожный признак

Колонки нет — реквизит не выведен на форму или форма закэширована

Сохранение данных
Норма

Значение остаётся после записи и повторного открытия документа

Тревожный признак

Значение пропадает — реквизит не связан с данными табличной части

Поведение других пользователей
Норма

У всех пользователей колонка видна одинаково

Тревожный признак

У части пользователей старый вид — настройки формы сохранены персонально

Частые вопросы о создании колонок в 1С

Можно ли добавить колонку в табличную часть без конфигуратора?

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

Почему после добавления реквизита колонка не появилась на форме?

На формах, созданных вручную, новые реквизиты не выводятся автоматически. Откройте форму в конфигураторе и перетащите реквизит из панели реквизитов в таблицу дерева элементов, затем обновите конфигурацию базы данных.

Как добавить колонку в список документов только для себя?

В режиме «Предприятие» откройте список, нажмите «Ещё — Изменить форму», отметьте нужные поля галочками и сохраните. Настройка применится только к вашей учётной записи и не затронет остальных пользователей.

Чем опасно добавление реквизита в типовую конфигурацию?

Прямая доработка типовых объектов усложняет обновление: при установке нового релиза изменения могут конфликтовать или потеряться. Безопаснее использовать механизм расширений конфигурации, который сохраняет поддержку типового решения.

Можно ли вывести в список документов колонку из табличной части?

Стандартная форма списка показывает только реквизиты шапки. Для данных из табличной части нужно настроить динамический список с произвольным запросом, соединяющим документ с его табличной частью, — это делается в конфигураторе.

Итог

Что важно запомнить

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