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

Быстрый старт · 10 мин

Как вывести список документов в 1С

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

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

В этой статье разобраны оба подхода. Сначала — пользовательские сценарии в режиме «Предприятие» (управляемые формы, интерфейс «Такси»), затем — программные методы для тех, кто дорабатывает конфигурацию. Примеры ориентированы на типовые конфигурации вроде «Бухгалтерии предприятия» и «Управления торговлей», но логика одинакова для большинства решений на платформе 1С:Предприятие 8.3.

Как открыть список документов в пользовательском режиме

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

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

Обратите внимание на период: по умолчанию многие журналы показывают документы только за текущий месяц или квартал. Если список пуст, хотя документы точно есть, первым делом проверьте установленный интервал дат — кнопка периода обычно находится на панели над списком.

Порядок действий
  1. 1
    Откройте раздел, соответствующий виду документа (Продажи, Покупки, Банк и касса)
  2. 2
    Выберите журнал нужного вида документов
  3. 3
    Установите период просмотра кнопкой над списком
  4. 4
    При необходимости настройте отбор по организации, контрагенту или складу
  5. 5
    Проверьте, что в списке появились ожидаемые документы

Настройка отборов и сортировки списка

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

Для быстрого поиска по номеру или комментарию подойдёт строка поиска в командной панели списка. Учтите, что поиск ищет только по видимым колонкам и текущему отбору: если нужный документ не находится, сначала снимите ограничения.

Сортировка настраивается кликом по заголовку колонки или в том же окне «Настроить список» на закладке «Сортировка». Полезно добавить в список дополнительные колонки — например, «Сумма», «Состояние» или «Ответственный» — через команду «Изменить форму», если они не выведены по умолчанию.

Как вывести список на печать или в файл

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

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

При выгрузке в Excel проверьте, что суммы и даты распознаны корректно: в некоторых случаях числа выгружаются как текст, и формулы в Excel с ними не работают. Лечится преобразованием формата ячеек уже в Excel.

Программный вывод списка документов на форме

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

Если нужен отбор, который пользователь менять не должен, задайте его в свойствах динамического списка через «Настройку списка» или программно в обработчике «ПриСозданииНаСервере»:

ЭлементОтбора = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));

ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Организация");

ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;

ЭлементОтбора.ПравоеЗначение = Организация;

ЭлементОтбора.Использование = Истина;

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

Запрос = Новый Запрос;

Запрос.Текст =

"ВЫБРАТЬ

| Реализация.Ссылка КАК Документ,

| Реализация.Дата,

| Реализация.Контрагент,

| Реализация.СуммаДокумента

|ИЗ

| Документ.РеализацияТоваровУслуг КАК Реализация

|ГДЕ

| Реализация.Дата МЕЖДУ &НачалоПериода И &КонецПериода

| И Реализация.Проведен

|

|УПОРЯДОЧИТЬ ПО

| Реализация.Дата";

Выбор способа под конкретную задачу

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

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

Журнал документов с отбором

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

Отчёт «Реестр документов»

Подходит для печати и сверки. Даёт готовую печатную форму, но состав полей зависит от конфигурации.

Динамический список на форме

Подходит для доработки интерфейса. Требует прав доступа разработчика, зато гибко настраивается.

Запрос к таблице документа

Подходит для обработок, выгрузок и печатных форм. Максимальная гибкость, но требует знания языка запросов 1С.

Если стандартные возможности журнала не закрывают задачу — например, нужна колонка с остатком по заказу или признак оплаты — не пытайтесь решить это отборами. Такие поля выводятся только доработкой: произвольным запросом динамического списка или собственным отчётом на СКД.

Типичные ошибки и как их избежать

Чаще всего «пропавшие» документы объясняются не ошибкой программы, а настройками просмотра. Проверьте период, активные отборы и права доступа: при ограничении на уровне записей (RLS) пользователь видит только документы своей организации или подразделения, и список для него объективно неполный.

Типичные ошибки
01
Забытый период просмотра: журнал показывает только текущий месяц, и документы за прошлый квартал кажутся потерянными — расширьте интервал дат
02
Активный скрытый отбор: ранее настроенный отбор по контрагенту фильтрует список — откройте «Настроить список» и снимите лишние условия
03
Поиск среди непроведённых документов в отчёте, который учитывает только проведённые — проверьте статус проведения
04
Выгрузка списка с отбором и передача его как полного реестра — перед выводом убедитесь, что все фильтры сняты или зафиксируйте их в шапке документа
05
Доработка типового журнала вместо создания своей формы списка — при обновлении конфигурации изменения могут быть утеряны

Отдельная группа проблем — производительность. Запрос без отбора по периоду к таблице документа с сотнями тысяч записей может выполняться минутами и блокировать работу других пользователей. Всегда ограничивайте выборку периодом и выбирайте только нужные поля, а не «ВЫБРАТЬ *».

Контрольные точки

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

Количество строк в списке
Норма

Совпадает с ожидаемым числом документов за период

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

Список пуст или неполный — проверьте период, отборы и права

Статус проведения документов
Норма

Видны и проведённые, и непроведённые (если отбор по статусу не задан)

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

Часть документов не отображается без явной причины

Данные в выгруженном файле
Норма

Суммы и даты распознаются как числа и даты в Excel

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

Числа выгружены как текст, формулы не считаются

Скорость программной выборки
Норма

Запрос с отбором по периоду выполняется за секунды

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

Запрос без ограничений «подвешивает» сеанс

Часто задаваемые вопросы

Почему журнал документов пуст, хотя документы точно вводились?

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

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

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

Как вывести список только непроведённых документов?

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

Как добавить в список колонку, которой нет по умолчанию?

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

Чем вывод списка через запрос отличается от динамического списка?

Динамический список — интерактивный элемент формы: пользователь может сортировать, отбирать и открывать документы двойным кликом. Запрос возвращает статичную таблицу значений для обработки, печати или выгрузки. Для интерфейса используйте динамический список, для расчётов и отчётов — запрос.

Опасно ли менять настройки списка — можно ли что-то испортить?

Настройки отбора, сортировки и состава колонок влияют только на отображение и не изменяют данные документов. Испортить что-то можно только доработкой конфигурации без резервной копии — поэтому любые изменения в конфигураторе делайте после выгрузки базы и желательно через расширение.

Итог

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

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