Быстрый старт · 7 мин
Как добавить новую строку в таблицу 1С
Как добавить строку в табличную часть документа, таблицу значений и динамический список в 1С через интерфейс и кодом. Горячие клавиши, ошибки, FAQ.
Работа со строками таблиц — одна из самых частых операций в 1С: товары в накладной, сотрудники в ведомости, услуги в акте. Способ добавления строки зависит от того, где находится таблица: это может быть табличная часть документа, список справочника или таблица значений в программном коде.
В интерфейсе пользователя существует несколько способов добавить строку: кнопка «Добавить», клавиша Insert, контекстное меню и подбор из справочника. Программно строки добавляются методом Добавить() у табличной части или таблицы значений. Ниже разобраны все варианты с пошаговыми действиями.
Как добавить строку в табличную часть документа через интерфейс
Табличная часть — это блок с колонками внутри документа: «Товары» в реализации, «Начисления» в зарплатном документе. Чтобы добавить строку, откройте документ и установите курсор в нужную таблицу. Над таблицей расположена командная панель с кнопкой «Добавить» — она создаёт пустую строку в конце списка.
Быстрее всего работает клавиша Insert: нажмите её, когда фокус находится в таблице, и новая строка появится сразу. Если нужно вставить строку не в конец, а выше текущей, используйте контекстное меню (правый клик по строке) → «Вставить» или сочетание Shift+Insert в ряде конфигураций.
После добавления заполните обязательные поля: номенклатуру, количество, цену. Поля, отмеченные в конфигурации как обязательные, подсвечиваются, если оставить их пустыми, — документ не проведётся без их заполнения.
- 1Откройте документ и перейдите на вкладку с нужной табличной частью
- 2Нажмите кнопку «Добавить» на панели таблицы или клавишу Insert
- 3Заполните обязательные поля строки: номенклатуру, количество, цену
- 4Проверьте итоги документа и запишите или проведите его
Добавление строки через подбор и копирование
Если строк много, добавлять их по одной неудобно. Кнопка «Подбор» открывает форму справочника номенклатуры, где можно двойным щелчком или кнопкой переносить позиции в таблицу. При повторном выборе той же позиции количество обычно увеличивается, а не создаётся дубль — поведение зависит от настроек конфигурации.
Для похожих строк удобно копирование: выделите строку и нажмите F9 (или «Ещё → Скопировать»). Появится новая строка с теми же значениями — останется изменить только отличающиеся поля. Множественное выделение с Ctrl и Shift позволяет копировать сразу несколько строк.
Как программно добавить строку в табличную часть
В модуле объекта или формы строка добавляется методом Добавить(). Метод возвращает ссылку на созданную строку, через которую заполняются реквизиты. Типовой фрагмент выглядит так:
НоваяСтрока = Объект.Товары.Добавить();
НоваяСтрока.Номенклатура = НайденнаяНоменклатура;
НоваяСтрока.Количество = 2;
НоваяСтрока.Цена = 1500;
Если данные уже есть в виде структуры или другой таблицы, можно использовать ЗаполнитьЗначенияСвойств(НоваяСтрока, Источник) — совпадающие по именам поля заполнятся автоматически. После добавления строк в цикле не забудьте пересчитать итоги документа, если они хранятся в шапке.
НоваяСтрока = Объект.Товары.Добавить();
НоваяСтрока.Номенклатура = Справочники.Номенклатура.НайтиПоКоду("000001");
НоваяСтрока.Количество = 1;
НоваяСтрока.Цена = 100;
НоваяСтрока.Сумма = НоваяСтрока.Количество * НоваяСтрока.Цена;Добавление строки в таблицу значений в коде
Таблица значений — программный объект, не привязанный напрямую к базе данных. Строки в неё добавляются тем же методом Добавить(), но сначала таблицу нужно создать и описать колонки через Колонки.Добавить() с указанием типа.
ТЗ = Новый ТаблицаЗначений;
ТЗ.Колонки.Добавить("Наименование", Новый ОписаниеТипов("Строка"));
ТЗ.Колонки.Добавить("Количество", Новый ОписаниеТипов("Число"));
Строка = ТЗ.Добавить();
Строка.Наименование = "Услуга";
Строка.Количество = 1;
Если таблица значений выведена на управляемую форму как реквизит, добавление строки пользователем происходит стандартно — через Insert и кнопку «Добавить», дополнительная настройка обычно не требуется.
Почему кнопка «Добавить» недоступна или строка не сохраняется
Если кнопка добавления серая, чаще всего документ уже проведён, а конфигурация запрещает редактирование, либо у пользователя нет прав на изменение объекта. Также таблица может быть открыта в режиме просмотра без возможности редактирования — например, в форме с установленным свойством «ТолькоПросмотр».
Вторая типичная ситуация — строка добавляется, но после записи исчезает. Причины: не заполнены обязательные поля и строка отклоняется проверкой, либо в коде события «ПередЗаписью» табличная часть программно очищается. Проверьте сообщения об ошибках внизу окна — 1С показывает там причину отказа.
Как проверить, что строка добавлена корректно
После добавления строки в интерфейсе проверьте нумерацию: новая строка получает следующий номер в колонке «№». Убедитесь, что итоговые суммы документа пересчитались, а сам документ записывается и проводится без сообщений об ошибках.
При программном добавлении полезно проверить количество строк до и после операции через Объект.Товары.Количество(). Если число не изменилось, метод Добавить() не выполнился — например, из-за исключения в коде выше по стеку.
Как проверить результат
Присвоен следующий порядковый номер
Номер пустой или строка отсутствует после записи
Суммы пересчитались с учётом новой строки
Итоги не изменились
Проводится без сообщений об ошибках
Ошибки о незаполненных полях строки
FAQ
Какая клавиша добавляет строку в таблицу 1С?
Insert добавляет новую строку в конец таблицы. F9 копирует текущую строку, а Shift+F9 или команда контекстного меню «Вставить» позволяет вставить строку в произвольную позицию.
Как вставить строку не в конец, а между существующими?
Кликните правой кнопкой по строке, выше которой нужно вставить новую, и выберите «Вставить» в контекстном меню. В ряде конфигураций работает сочетание Shift+Insert.
Почему после записи документа добавленная строка пропадает?
Чаще всего не заполнены обязательные поля, и строка отклоняется проверкой, либо в коде события записи табличная часть перезаполняется. Проверьте панель сообщений и логику процедуры «ПередЗаписью».
Как добавить сразу много строк из справочника?
Используйте кнопку «Подбор» над табличной частью: в открывшейся форме можно выбирать позиции списком, и каждая будет добавляться отдельной строкой. В некоторых конфигурациях доступна загрузка из файла через «Ещё → Загрузить».
Чем отличается Добавить() для табличной части и таблицы значений?
Синтаксис одинаковый, но табличная часть хранится в базе вместе с документом, а таблица значений существует только в памяти, пока выполняется код, и требует предварительного описания колонок.
Можно ли добавить строку в проведённый документ?
Стандартно редактирование проведённого документа заблокировано. Нужно отменить проведение (кнопка «Отмена проведения»), внести изменения и провести документ заново с учётом возможного сдвига последовательности документов.
Что важно запомнить
В интерфейсе строку добавляют кнопкой «Добавить», Insert, подбором или копированием (F9). В коде — методом Добавить() с заполнением полей и пересчётом итогов. Если строка не сохраняется, проверяйте права, обязательные поля и режим проведения документа.