Разработка и Конфигурация · 8 мин
Как добавить таблицу в 1С: все рабочие способы
Как добавить таблицу в 1С: табличная часть документа, таблица в печатной форме, таблица значений в коде и работа с внешними данными. Пошаговые инструкции.
Фраза «добавить таблицу в 1С» означает несколько разных задач: вставить строки в табличную часть документа, вывести таблицу в печатную форму, создать таблицу значений в коде или загрузить данные из Excel. Каждый сценарий решается своим инструментом, и путаница между ними — главная причина ошибок у начинающих пользователей и разработчиков.
В типовых конфигурациях (1С:Бухгалтерия, 1С:Управление торговлей, 1С:ЗУП) большинство таблиц уже существует в виде табличных частей документов и справочников. Добавлять «новую таблицу» в структуру базы данных вручную не нужно — платформа сама создаёт физические таблицы при описании объектов в конфигураторе.
Ниже разобраны четыре практических сценария: заполнение табличной части в пользовательском режиме, добавление колонки или табличной части через конфигуратор, программное создание таблицы значений и вывод таблицы в макет печатной формы. Отдельно рассмотрена загрузка табличных данных из внешних файлов.
Как добавить строки в табличную часть документа
Табличная часть — это таблица внутри документа или справочника: список товаров в накладной, сотрудники в приказе, проводки в операции. Это самый частый сценарий, с которым сталкивается обычный пользователь.
Откройте документ и найдите таблицу на форме. Нажмите кнопку «Добавить» (или клавишу Insert) — появится новая строка. Заполните колонки: номенклатуру, количество, цену. Колонки, отмеченные подчёркиванием или обязательные по логике конфигурации, система не даст оставить пустыми при проведении.
Для массового заполнения используйте кнопку «Подбор» — она открывает форму выбора номенклатуры с переносом сразу нескольких позиций. Во многих документах доступна загрузка из буфера обмена: скопируйте строки из Excel, встаньте на табличную часть и нажмите Ctrl+V либо выберите «Вставить строки» в меню «Ещё».
- 1Откройте документ и перейдите на вкладку с таблицей
- 2Нажмите «Добавить» или Insert для новой строки
- 3Заполните обязательные колонки
- 4Для нескольких позиций используйте «Подбор» или вставку из буфера
- 5Проведите документ и убедитесь, что нет сообщений об ошибках
Как добавить табличную часть объекту в конфигураторе
Если таблицы не хватает в структуре объекта — например, нужен список комплектующих у номенклатуры — её добавляют в конфигураторе. Для этого нужны права на изменение конфигурации и, в типовых решениях, понимание последствий снятия объекта с поддержки.
Откройте конфигуратор, найдите нужный объект (документ или справочник) в дереве конфигурации, откройте его свойства и перейдите на вкладку «Данные». В разделе «Табличные части» нажмите «Добавить», задайте имя (например, «Комплектующие») и добавьте реквизиты-колонки с нужными типами: ссылка на справочник, число, строка.
После обновления конфигурации базы данных (F7) платформа создаст физическую таблицу автоматически. Затем добавьте табличную часть на форму объекта: в редакторе формы перетащите её из панели реквизитов в дерево элементов формы.
Как создать таблицу значений программно
Таблица значений — объект встроенного языка для промежуточного хранения и обработки данных в оперативной памяти. Она не сохраняется в базу сама по себе, но используется для отчётов, обработок, обмена данными.
Таблица = Новый ТаблицаЗначений;
Таблица.Колонки.Добавить("Номенклатура", Новый ОписаниеТипов("СправочникСсылка.Номенклатура"));
Таблица.Колонки.Добавить("Количество", Новый ОписаниеТипов("Число"));
НоваяСтрока = Таблица.Добавить();
НоваяСтрока.Номенклатура = СсылкаНаТовар;
НоваяСтрока.Количество = 10;После заполнения таблицу можно вывести на форму (через реквизит формы типа «ТаблицаЗначений»), передать в запрос как временную таблицу, свернуть по группировкам методом «Свернуть» или отсортировать методом «Сортировать». Для выгрузки в файл используют методы сериализации или построчную запись.
Как добавить таблицу в печатную форму
Чтобы документ печатался с таблицей товаров, в макете печатной формы создают область со строкой таблицы. Откройте макет (в конфигураторе — у объекта, в пользовательском режиме — через «Администрирование → Печатные формы, отчеты и обработки», если макет редактируемый).
В табличном документе макета выделите область-шапку таблицы и область строки с параметрами вида [Товар], [Количество]. В коде формирования печатной формы циклом по табличной части документа выводится область строки с подстановкой параметров через ОбластьСтрока.Параметры.Заполнить(СтрокаТаблицы).
Проверьте результат на тестовом документе: таблица должна корректно переноситься на несколько страниц, а итоги — выводиться после последней строки, а не на каждой странице (если это не задумано).
Как загрузить таблицу из Excel или CSV
Для переноса таблиц из внешних файлов в типовых конфигурациях есть встроенные обработки: «Загрузка данных из табличного документа», «Загрузка номенклатуры из файла» и подобные. Найдите их через поиск в разделе «Администрирование» или «Покупки/Склад» в зависимости от конфигурации.
Общий порядок: откройте обработку, укажите файл или вставьте данные из буфера, сопоставьте колонки файла полям объекта 1С, запустите загрузку и проверьте протокол. Ошибки сопоставления типов (текст вместо числа, неверный формат даты) — самая частая причина неполной загрузки.
Сравнение способов добавления таблицы
Подходит для разового ввода пользователем; не требует прав разработчика, но медленно при больших объёмах
Нужен, когда таблицы нет в структуре объекта; требует прав и осторожности с обновлениями
Для расчётов и промежуточных данных; не сохраняется в базе
Для массового переноса данных; требует аккуратного сопоставления колонок
Частые ошибки и ограничения
Не пытайтесь добавлять таблицы напрямую в СУБД (MS SQL, PostgreSQL) в обход платформы — это нарушает структуру метаданных и приводит к ошибкам при обновлении и даже к повреждению базы. Все структурные изменения выполняются только через конфигуратор.
При загрузке из Excel помните об ограничениях: объёмные файлы обрабатываются медленно, а объединённые ячейки и многострочные шапки ломают сопоставление колонок. Подготовьте файл заранее: одна строка заголовков, без объединений, единый формат данных в колонке.
Как проверить результат
После любого способа убедитесь, что таблица работает: строки сохраняются, итоги считаются, документ проводится без ошибок, печатная форма выводится корректно. В конфигураторе дополнительно проверьте права доступа к новой табличной части у ролей пользователей.
Как проверить результат
После записи документа строки на месте
Строки пропадают или документ не записывается
Таблица выводится со всеми строками и итогами
Пустые строки, съехавшие колонки, итоги на каждой странице
Пользователь видит и редактирует таблицу
Ошибка «Нарушение прав доступа»
Что важно запомнить
Определите задачу: заполнение табличной части, изменение структуры в конфигураторе, программная таблица значений или загрузка из файла. Структуру меняйте только через конфигуратор или расширение, перед доработкой делайте копию базы, после — проверяйте заполнение, проведение и печать.
Частые вопросы
Можно ли добавить таблицу в 1С без конфигуратора?
Да, если речь о заполнении существующей табличной части или загрузке данных из файла штатной обработкой. Изменить структуру объекта (добавить новую табличную часть или колонку) без конфигуратора нельзя — это проектная работа разработчика.
Чем табличная часть отличается от таблицы значений?
Табличная часть хранится в базе данных вместе с документом и доступна пользователям на форме. Таблица значений существует только в памяти во время выполнения кода и после завершения процедуры удаляется.
Почему после добавления табличной части её не видно в документе?
Новая табличная часть не появляется на форме автоматически — её нужно вручную перетащить из панели реквизитов в дерево элементов формы в конфигураторе. Также проверьте права доступа у роли пользователя.
Как загрузить в табличную часть сразу несколько сотен строк?
Используйте подбор, вставку из буфера обмена (Ctrl+V на табличной части) или обработку загрузки из табличного документа. Ручной ввод больших объёмов неэффективен и чреват ошибками.
Опасно ли менять типовую конфигурацию ради новой таблицы?
Риск есть: доработанные объекты могут конфликтовать при обновлении. Безопасный путь — расширение конфигурации, которое добавляет данные поверх типовой поставки и не мешает обновлениям.