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

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

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

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

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

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

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

Способ 1. Подсчёт через список документов и кнопку «Вывести список»

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

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

Альтернатива в том же окне вывода: выбрать вариант «Текстовый документ» и скопировать содержимое в Excel, где количество строк видно сразу. Этот же приём работает, если выделить все строки списка (Ctrl+A) и скопировать их в буфер обмена.

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

Способ 2. Подсчёт через консоль запросов

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

Простейший запрос для подсчёта проведённых документов одного вида выглядит так:

ВЫБРАТЬ

КОЛИЧЕСТВО(*) КАК КоличествоДокументов

ИЗ

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

ГДЕ

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

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

Перед выполнением задайте параметры периода в соответствующей вкладке консоли. Результат — одно число, полностью соответствующее заданным условиям. Если нужно посчитать сразу несколько видов документов, объедините запросы через ОБЪЕДИНИТЬ ВСЕ или выполните несколько запросов по очереди.

bsl
ВЫБРАТЬ КОЛИЧЕСТВО(*) КАК Количество ИЗ Документ.ПоступлениеТоваровУслуг ГДЕ Проведен

Способ 3. Подсчёт через универсальный отчёт

Во многих типовых конфигурациях (1С:Бухгалтерия, 1С:ERP, Управление торговлей) есть «Универсальный отчёт», который строится по любому объекту метаданных. Откройте его через раздел отчётов, выберите тип объекта «Документ», конкретный вид документа и период.

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

Этот способ удобен, когда консоль запросов недоступна, а простого списка недостаточно — например, нужно посчитать документы в разрезе организаций или складов одной таблицей.

Способ 4. Подсчёт программно через встроенный язык

Если у вас есть права разработчика или доступ к выполнению произвольного кода (внешние обработки, консоль кода), количество документов можно получить программно. Это удобно для регулярных проверок и пакетного подсчёта по всем видам документов сразу.

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

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

"ВЫБРАТЬ

| КОЛИЧЕСТВО(*) КАК Количество

|ИЗ

| Документ.ПриходныйКассовыйОрдер КАК ПКО";

Результат = Запрос.Выполнить().Выбрать();

Результат.Следующий();

Сообщить("Количество документов: " + Результат.Количество);

Для подсчёта по всем видам документов базы переберите коллекцию Метаданные.Документы и для каждого вида выполните запрос с КОЛИЧЕСТВО(*). Учтите, что на больших базах такой перебор может занять заметное время и создать нагрузку на сервер — выполняйте его в нерабочие часы.

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

Частая задача — узнать не общее число документов, а количество в определённом состоянии. В запросе для этого используются системные поля: Проведен (истина/ложь) и ПометкаУдаления. Например, условие ГДЕ НЕ Проведен И НЕ ПометкаУдаления покажет документы, которые существуют, но не участвуют в учёте.

Через список документов тот же результат получают отбором: в настройке списка добавьте условие по полю «Проведён» или «Пометка на удаление». В некоторых журналах помеченные на удаление документы скрыты по умолчанию — включите их отображение, иначе подсчёт будет неполным.

Подсчёт по нескольким организациям или складам

Добавьте в запрос группировку: СГРУППИРОВАТЬ ПО Организация — и получите таблицу с количеством документов по каждой организации. Аналогично работает группировка по складам, контрагентам, ответственным и любым другим реквизитам документа.

Маршрут решения

Как выбрать способ подсчёта

Нужно быстро посчитать документы одного вида без сложных условийИспользуйте список документов и «Вывести список»
Нужны условия по проведению, пометкам, нескольким реквизитамИспользуйте консоль запросов с КОЛИЧЕСТВО(*)
Нужен подсчёт в разрезе организаций или складов в виде таблицыИспользуйте универсальный отчёт или запрос с группировкой
Подсчёт нужен регулярно или по всем видам документов сразуНапишите обработку на встроенном языке и запускайте по расписанию

Проверка результата и типичные ошибки

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

Типичные ошибки
01
Не установлен период — в подсчёт попадают документы за все годы, число завышено
02
В списке скрыты помеченные на удаление — результат меньше реального
03
Сравниваются разные множества: в одном случае все документы, в другом только проведённые
04
В запросе перепутан вид документа: например, «Поступление товаров» вместо «Поступление товаров и услуг»
05
Граница периода задана без времени — документы последнего дня после 00:00 не попадают в выборку, используйте конец дня или функцию КОНЕЦПЕРИОДА
Контрольные точки

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

Период отбора
Норма

Начало и конец периода заданы, конец включает весь последний день

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

Период пуст или обрезает часть документов

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

Ясно, что посчитано: все, проведённые или помеченные

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

Статус не определён, число нельзя интерпретировать

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

Список и запрос дают одинаковое число

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

Результаты расходятся — условия заданы по-разному

Ограничения и что делать на больших базах

На базах с миллионами документов даже простой подсчёт может занимать минуты. В файловом варианте работы это блокирует базу для других пользователей, в клиент-серверном — создаёт нагрузку на СУБД. Практические рекомендации: всегда ограничивайте период, считайте по одному виду документов за раз и по возможности выполняйте массовые подсчёты вне пиковой нагрузки.

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

Итог

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

Для быстрого подсчёта используйте список документов с выводом в таблицу, для точного — консоль запросов с КОЛИЧЕСТВО(*) и условиями. Всегда ограничивайте период, учитывайте статус документов и сверяйте результат двумя независимыми способами.

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

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

Одной кнопкой — нет. Через консоль запросов можно объединить запросы по нескольким видам через ОБЪЕДИНИТЬ ВСЕ, а программно — перебрать коллекцию Метаданные.Документы и сложить результаты. Для разового подсчёта обычно достаточно поочерёдного подсчёта по нужным видам.

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

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

Как посчитать документы за конкретный день?

Установите период с начала до конца этого дня. В запросе используйте условие Дата МЕЖДУ &Начало И &Конец, где конец — 23:59:59 нужного дня, либо конструкцию с функцией КОНЕЦПЕРИОДА(&Дата, ДЕНЬ).

Нужны ли права администратора для подсчёта через список?

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

Как узнать, сколько документов загрузилось при обмене данными?

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

Влияет ли пометка на удаление на подсчёт в отчётах?

В стандартные учётные отчёты (оборотно-сальдовая ведомость, анализ счёта) помеченные и непроведённые документы не попадают. Но при подсчёте через список или запрос без условия по пометке они учитываются — это частая причина расхождений между «количеством в базе» и «количеством в учёте».