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