Документы и Печать · 9 мин
Как работать с табличной частью документа в 1С
Как работать с табличной частью документа в 1С: добавление строк, подбор, копирование, сортировка, групповое изменение и обработка табличных частей в коде.
Табличная часть — это список строк внутри документа 1С: товары в накладной, услуги в акте, сотрудники в ведомости. Именно в табличной части хранится основное содержимое документа, поэтому умение быстро добавлять, редактировать и проверять строки напрямую влияет на скорость и точность учёта. Ошибка в одной строке табличной части приводит к неверным суммам, остаткам на складе и проводкам.
Работа с табличной частью доступна в двух режимах: пользовательском — через форму документа кнопками и командами контекстного меню, и программном — через встроенный язык 1С для доработок и обработок. Ниже разобраны оба подхода: от базового добавления строк до групповой обработки и типовых ошибок.
Что такое табличная часть и где она находится
Табличная часть — это коллекция строк, привязанных к конкретному документу. У одного документа может быть несколько табличных частей: например, в «Реализации товаров и услуг» это «Товары», «Услуги» и «Агентские услуги». Каждая строка хранит набор реквизитов: номенклатуру, количество, цену, сумму, ставку НДС, склад.
На форме документа табличная часть выглядит как таблица с колонками. Над ней расположена командная панель с кнопками «Добавить», «Скопировать», «Удалить», «Подбор», «Ещё». Состав кнопок зависит от конфигурации, но базовый набор в типовых решениях совпадает. Данные табличной части сохраняются в базе только при записи документа — до записи строки существуют лишь в открытой форме.
Добавление и заполнение строк
Простейший способ — кнопка «Добавить» (или клавиша Insert): в таблице появляется пустая строка, курсор встаёт в первую редактируемую колонку. Дальше выбирается номенклатура из справочника, а цена, ставка НДС и счета учёта подставляются автоматически по данным карточки и настройкам документа. Количество и цену можно изменить вручную — сумма пересчитается.
Когда строк много, быстрее работает кнопка «Подбор». Открывается форма подбора номенклатуры с остатками и ценами: двойной щелчок по позиции добавляет её в корзину подбора, после нажатия «Перенести в документ» все выбранные позиции попадают в табличную часть одним действием. Это снижает число ошибок при вводе десятков строк.
Ещё три полезных способа заполнения: копирование существующей строки (F9 или кнопка «Скопировать»), команда «Заполнить» для автоматического заполнения по основанию (например, по заказу или счёту) и вставка из буфера обмена — во многих типовых конфигурациях табличную часть можно заполнить вставкой скопированного диапазона из Excel через сочетание Ctrl+V или специальную команду.
- 1Откройте документ и перейдите на вкладку с нужной табличной частью
- 2Нажмите «Подбор» и выберите позиции двойным щелчком, укажите количество
- 3Нажмите «Перенести в документ» — строки добавятся в таблицу
- 4Проверьте цены, количество и ставки НДС в каждой строке
- 5Запишите и проведите документ, сверьте итоговые суммы в подвале таблицы
Редактирование, сортировка и навигация по строкам
Ячейки редактируются прямо в таблице: щелчок по ячейке, ввод значения, Enter. Перемещаться по строкам удобно клавишами со стрелками и Tab — Tab переводит фокус на следующую колонку. Для поиска нужной строки в длинной табличной части используйте Ctrl+F или начните вводить значение в колонке при включённом режиме поиска.
Строки можно перемещать кнопками со стрелками на командной панели или перетаскиванием мышью — порядок строк влияет на печатную форму документа. Сортировка по колонке выполняется щелчком по её заголовку, но учтите: в части конфигураций сортировка на форме не меняет реальный порядок строк, а лишь отображение. Для фиксации порядка после сортировки проверьте нумерацию строк в первой колонке.
Настройка видимости колонок делается через меню «Ещё — Изменить форму» или «Настройка списка»: лишние колонки можно скрыть, нужные вывести. Это удобно, когда табличная часть широкая и важные колонки уходят за край экрана.
Групповое изменение строк
Когда нужно изменить значение сразу в нескольких строках — например, заменить склад, ставку НДС или процент скидки, — не редактируйте каждую строку вручную. Выделите строки (Ctrl+щелчок или Shift+стрелки), затем в меню «Ещё» выберите команду «Изменить» (в некоторых конфигурациях — «Изменить выделенные»). В открывшейся форме отметьте реквизиты, которые нужно поменять, задайте новые значения и выполните обработку.
Команда пересчитает зависимые поля: при изменении ставки НДС пересчитаются суммы налога и итоги. После выполнения обязательно сверьте итоговую сумму документа с ожидаемой — групповые операции применяются ко всем выделенным строкам без дополнительных вопросов.
Работа с табличной частью программно
Для разработчиков и при доработках табличная часть доступна как коллекция: ДокументОбъект.Товары. Добавление строки выполняется методом Добавить(), обход — циклом Для Каждого, удаление — методами Удалить() или Очистить(). После изменений объект нужно записать.
Док = Документы.РеализацияТоваровУслуг.НайтиПоНомеру(НомерДок, ДатаДок).ПолучитьОбъект();
Док.Товары.Очистить();
НоваяСтрока = Док.Товары.Добавить();
НоваяСтрока.Номенклатура = НоменклатураСсылка;
НоваяСтрока.Количество = 10;
НоваяСтрока.Цена = 1500;
Для Каждого СтрокаТовара Из Док.Товары Цикл
СтрокаТовара.Сумма = СтрокаТовара.Количество * СтрокаТовара.Цена;
КонецЦикла;
Док.Записать(РежимЗаписиДокумента.Проведение);
При программном заполнении важно помнить: интерактивные пересчёты, которые срабатывают на форме (подстановка цены, расчёт суммы, НДС), в коде автоматически не выполняются. Их нужно либо вычислять вручную, либо вызывать экспортные процедуры пересчёта из модуля объекта или общих модулей конфигурации — иначе строки будут с пустыми суммами.
Типичные ошибки и как их избежать
Самая распространённая ошибка — правка строк без перезаписи документа: пользователь изменил количество, закрыл форму крестиком и потерял изменения. Вторая — дубли строк при повторном переносе из подбора или повторном заполнении по основанию: команда «Заполнить» в ряде конфигураций добавляет строки к существующим, а не заменяет их.
Третья группа ошибок связана с итогами: после ручной правки суммы в строке итог по документу может не совпасть с суммой по цене и количеству, что вызовет расхождения с контрагентом. Также опасно удалять строки в проведённом документе, по которому уже выписаны связанные документы (счёт-фактура, корректировка) — цепочка учёта развалится.
Проверка результата
После любых массовых операций с табличной частью сверьте три контрольные точки: количество строк, итоговую сумму документа и сумму НДС. Итоги отображаются в подвале табличной части или в полях под таблицей. Если документ основан на другом (заказ, счёт), сравните итоги с документом-основанием — они должны совпадать или отличаться на понятную величину.
Для проведённого документа дополнительно откройте движения (кнопка «Дт/Кт» или «Показать проводки») и убедитесь, что проводки соответствуют строкам табличной части: каждая товарная позиция списана с нужного склада, суммы совпадают.
Как проверить результат
Совпадает с числом позиций в основании или подборе
Строк больше — вероятны дубли после повторного заполнения
Равна сумме по основанию или ожидаемому расчёту
Расхождение — проверяйте ручные правки цен и сумм
Каждая строка отражена в движениях с верными суммами
Проводки не по всем строкам или с нулевыми суммами
Что важно запомнить
Табличная часть заполняется кнопками «Добавить», «Подбор» и «Заполнить», массовые правки — командой «Изменить» для выделенных строк. После любых групповых операций сверяйте количество строк и итоги, а в проведённых документах — проводки. Программно строки добавляются методом Добавить() с обязательным пересчётом сумм в коде.
Частые вопросы
Как скопировать строки из одного документа в другой?
Выделите строки в исходном документе, скопируйте их через Ctrl+C или контекстное меню, затем в табличной части целевого документа выполните вставку Ctrl+V. Если конфигурация не поддерживает прямую вставку, создайте второй документ вводом на основании первого — табличная часть перенесётся автоматически.
Почему кнопка «Подбор» неактивна или отсутствует?
Команда подбора есть не во всех документах и может быть скрыта настройкой формы. Проверьте меню «Ещё» над табличной частью. Также подбор недоступен, если у пользователя нет прав на просмотр справочника номенклатуры — это проверяется у администратора.
Как удалить сразу все строки табличной части?
Выделите все строки сочетанием Ctrl+A внутри таблицы и нажмите Delete или кнопку «Удалить». Программно используется метод Очистить(): Док.Товары.Очистить(). Перед очисткой убедитесь, что документ не проведён, иначе сначала отмените проведение.
Почему после заполнения по основанию строки задвоились?
В ряде конфигураций команда «Заполнить» добавляет строки к уже существующим, а не заменяет табличную часть. Перед повторным заполнением очистите таблицу или используйте вариант команды с перезаполнением, если он предусмотрен. Дубли проще всего найти сортировкой по колонке номенклатуры.
Как изменить порядок колонок в табличной части?
Откройте меню «Ещё — Изменить форму», найдите в дереве элементов табличную часть и перетащите нужные колонки выше или ниже. Изменения сохраняются в настройках формы для текущего пользователя и не влияют на данные документа.