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

Отчеты и Аналитика · 10 мин

Как вывести список в 1С: инструкция для пользователя и разработчика

Как вывести список в 1С: способы печати списков документов и справочников, вывод через табличный документ и Сообщить, настройка колонок, типичные ошибки.

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

Базовый инструмент пользователя — кнопка «Ещё» в форме списка и команда «Вывести список». Она превращает текущий список с учётом отбора и сортировки в табличный документ, который можно напечатать или сохранить в Excel. Разработчику доступны объект «СписокЗначений», построитель отчётов, схема компоновки данных и методы вывода в табличный документ.

Ниже разобраны оба подхода: от простого вывода списка номенклатуры в пару кликов до программного формирования списка с группировками и итогами.

Вывод списка через команду «Ещё → Вывести список»

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

Платформа предложит диалог выбора колонок: отметьте флажками те поля, которые должны попасть в итоговую таблицу — наименование, артикул, цена, остаток и другие доступные реквизиты. После нажатия «ОК» сформируется табличный документ, который можно отправить на принтер, сохранить в формате Excel, PDF или mxl через «Файл → Сохранить как».

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

Порядок действий
  1. 1
    Откройте список документов или справочника
  2. 2
    Настройте отбор и сортировку, если нужна выборка
  3. 3
    Нажмите «Ещё → Изменить форму» или настройте видимые колонки
  4. 4
    Выберите «Ещё → Вывести список» и отметьте нужные поля
  5. 5
    Проверьте табличный документ и сохраните или распечатайте его

Настройка отбора и колонок перед выводом

Чтобы список содержал именно те данные, которые нужны, перед выводом настройте отбор. В форме списка нажмите «Ещё → Настроить список» и добавьте условия: например, документы только за текущий месяц, только проведённые, по конкретной организации или складу. Условия можно комбинировать по «И» и «ИЛИ», группировать.

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

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

Вывод списка через отчёты и универсальные инструменты

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

Универсальный вариант — отчёт «Универсальный отчёт» (в БСП-конфигурациях) или консоль запросов для разработчика. Универсальный отчёт позволяет выбрать любой справочник или документ, указать период, список выводимых полей и получить таблицу без программирования. Результат так же сохраняется в Excel или печатается.

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

Сравнение вариантов

Ещё → Вывести список

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

Типовой отчёт

Гибкие отборы, итоги, группировки, сохранение вариантов. Требует времени на настройку, не всякий список имеет готовый отчёт.

Программный вывод (СКД, табличный документ)

Полный контроль над составом и оформлением. Требует навыков разработки и изменения конфигурации или внешней обработки.

Программный вывод списка: СписокЗначений и табличный документ

Разработчику для хранения и передачи перечня значений служит объект «СписокЗначений». Он поддерживает добавление элементов с представлением и картинкой, сортировку, отбор по пометкам, выгрузку в массив. Типичное применение — список выбора в поле ввода, перечень отмеченных документов, параметры запроса.

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

Запрос = Новый Запрос("ВЫБРАТЬ Наименование, Код ИЗ Справочник.Номенклатура");

Выборка = Запрос.Выполнить().Выбрать();

ТабДок = Новый ТабличныйДокумент;

Макет = ПолучитьМакет("МакетСписка");

ОбластьСтрока = Макет.ПолучитьОбласть("Строка");

Пока Выборка.Следующий() Цикл

ОбластьСтрока.Параметры.Заполнить(Выборка);

ТабДок.Вывести(ОбластьСтрока);

КонецЦикла;

Альтернатива ручному выводу — система компоновки данных. СКД сама строит таблицу по запросу и настройкам, включая группировки, итоги и оформление. Для программного формирования используется «КомпоновщикМакетаКомпоновкиДанных» и «ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент». Это предпочтительный способ для отчётов, которые пользователи будут перенастраивать.

bsl
Сообщить("Найдено элементов: " + СписокТоваров.Количество());

Вывод списка в сообщения и на форму

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

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

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

Типичные ошибки и ограничения

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

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

Ограничение производительности: вывод табличного документа на сотни тысяч строк потребляет много памяти и времени. Для таких объёмов формируйте выгрузку в CSV или Excel построчно, либо ограничивайте выборку отбором. Также помните, что «Сообщить» не предназначен для вывода больших списков — панель сообщений переполняется, и информация теряется.

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

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

Полнота списка
Норма

Количество строк совпадает с количеством элементов в форме при снятом отборе

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

Строк меньше — проверьте отбор и настройки списка

Читаемость печатной формы
Норма

Все значения видны целиком, колонки не обрезаны

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

Текст усечён, часть колонок не помещается на страницу

Программный вывод
Норма

Все параметры макета заполнены, итоги сходятся с выборкой

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

Пустые ячейки, неверные итоги, разрывы строк посередине

Частые вопросы

Как вывести список номенклатуры с ценами в 1С?

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

Как сохранить выведенный список в Excel?

После формирования табличного документа откройте «Файл → Сохранить как» (или «Ещё → Сохранить как») и выберите формат «Лист Excel» (.xlsx). Структура колонок и оформление сохранятся, файл можно редактировать и отправлять по почте.

Почему в выведенном списке не хватает строк?

Чаще всего в форме списка установлен отбор или выполнен поиск — команда выводит только видимые строки. Сбросьте отбор через «Ещё → Настроить список» или кнопку отмены поиска и повторите вывод. Также проверьте, не ограничен ли список правами доступа.

Чем СписокЗначений отличается от ТаблицыЗначений?

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

Можно ли вывести список документов с итогами по сумме?

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

Итог

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

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