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

В этой статье мы разберём 5 рабочих методов, как посчитать контрагентов в 1С, включая нюансы для Бухгалтерии 3.0, Управления торговлей 11, ERP 2 и других популярных конфигураций. Вы узнаете, как исключить помеченные на удаление записи, отфильтровать только активных партнёров или получить данные по группам. А для продвинутых пользователей — приведём готовые SQL-запросы и примеры кода на встроенном языке.

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

1. Самый простой способ: стандартный отчёт «Справочники»

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

Инструкция:

  • 📊 Откройте меню Отчёты → Стандартные отчёты → Справочники (в некоторых версиях путь может немного отличаться, например, Все функции → Отчёты → Справочники).
  • 🔍 В поле «Справочник» выберите Контрагенты.
  • 📌 Нажмите кнопку «Сформировать».
  • 📊 Внизу отчёта будет строка «Итого», где и указано общее количество записей.

Этот способ показывает всех контрагентов, включая помеченные на удаление, если не применять дополнительные фильтры. Чтобы исключить «мусорные» записи, перед формированием отчёта нажмите Ещё → Настройки → Отбор и добавьте условие ПометкаУдаления = Ложь.

💡

В Бухгалтерии 3.0 отчёт «Справочники» можно вызвать через панель «Все функции» (Ctrl+Shift+F12), если его нет в основном меню.

2. Через список справочника: быстрый визуальный подсчёт

Когда нужно оценить количество контрагентов в конкретной группе или с определёнными признаками (например, только поставщики), удобнее работать непосредственно со списком справочника. Этот метод подходит для оперативного анализа без формирования отчётов.

Как это сделать:

  • 📋 Откройте справочник Контрагенты через меню Справочники → Контрагенты.
  • 🔎 Примените нужные фильтры (например, по группе, виду контрагента или статусу).
  • 📊 Внизу окна справочника отображается строка состояния с количеством отобранных записей (например, «Записей: 452»).
  • 📤 Для экспорта списка в Excel нажмите Ещё → Выгрузить в Excel — в файле будет точная цифра.

Обратите внимание: в некоторых конфигурациях (например, в УТ 11) строка состояния может не показывать количество записей по умолчанию. В этом случае:

  1. Нажмите на заголовок любой колонки (например, «Наименование») правой кнопкой мыши.
  2. Выберите Настройки списка.
  3. На вкладке «Прочее» отметьте галочку «Показывать количество строк».
Почему количество в списке и в отчёте может отличаться?

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

3. Использование отчёта «Анализ справочников» (для администраторов)

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

Пошаговая инструкция:

  • 🛠️ Перейдите в Администрирование → Обслуживание → Анализ справочников (в некоторых версиях путь может быть Все функции → Стандартные → Анализ справочников).
  • 📋 В списке справочников выберите Контрагенты.
  • 🔧 Настройте параметры:
    • 📌 Установите флаг «Показывать помеченные на удаление», если нужно их учесть.
    • 📌 Отметьте «Показывать группы», чтобы увидеть иерархию.
    • 📌 Включите «Показывать реквизиты», если нужна детализация по полям (например, по ИНН или виду контрагента).
  • 📊 Нажмите «Сформировать».

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

📊 Как часто вы проводите аудит справочника контрагентов?
Раз в квартал
Раз в год
Только перед миграцией
Никогда не проводил
По мере необходимости
Параметр отчёта Что показывает Когда пригодится
Помеченные на удаление Количество записей с флагом удаления Оценка «мусора» в базе перед очисткой
Группы справочника Распределение контрагентов по папкам Анализ структуры хранения данных
Реквизиты (например, ИНН) Количество уникальных значений в поле Поиск дублей или некорректных данных
Дата изменения Когда запись редактировалась последний раз Выявление неактуальных контрагентов

4. SQL-запрос для точного подсчёта (для IT-специалистов)

Если вам нужно получить данные напрямую из базы (например, для интеграции с другими системами или сложной аналитики), используйте SQL-запрос. Этот метод требует доступа к серверу 1С и знания структуры базы данных.

Пример запроса для 1С:Предприятие 8.3 (работает на SQL-сервере):

SELECT COUNT(*) AS КоличествоКонтрагентов

FROM [dbo].[_Reference16] AS Контрагенты

WHERE Контрагенты._Marked = 0 -- Исключаем помеченные на удаление

Где:

  • _Reference16 — стандартное имя таблицы для справочника «Контрагенты» в большинстве конфигураций (но может отличаться!).
  • _Marked = 0 — фильтр для исключения помеченных на удаление записей.

Для Управления торговлей 11 или ERP 2 таблица может называться иначе (например, _Reference64). Чтобы узнать точное имя:

  1. Откройте конфигуратор 1С (режим «Конфигуратор»).
  2. Перейдите в Объекты → Справочники → Контрагенты.
  3. В панели свойств найдите параметр «Имя таблицы» (или «TableName» для англоязычных версий).

Уточнить имя таблицы справочника в конфигураторе

Проверить права доступа к базе данных

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

Учесть особенности СУБД (MS SQL, PostgreSQL и т.д.)

-->

⚠️ Внимание: Не выполняйте SQL-запросы на рабочей базе без резервной копии! Ошибка в запросе может привести к повреждению данных. Для тестирования используйте копию базы.

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

Для автоматизации или интеграции в обработки можно написать код на встроенном языке 1С. Этот способ гибкий и позволяет учитывать специфические условия (например, только контрагентов с определённым видом или датой последнего документа).

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

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

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

"ВЫБРАТЬ

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

|ИЗ

| Справочник.Контрагенты КАК Контрагенты

|ГДЕ

| НЕ Контрагенты.ПометкаУдаления

| И Контрагенты.ЭтоГруппа = ЛОЖЬ"; // Исключаем группы

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

Количество = Результат.Выбрать().Следующий().Количество;

Сообщить("Активных контрагентов: " + Количество);

Дополнительные возможности:

  • 🔍 Фильтрация по ВидКонтрагента (например, только «Покупатель»): добавьте условие И Контрагенты.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтрагентов.Покупатель).
  • 📅 Учёт даты последнего документа: И СУЩЕСТВУЕТ (ВЫБРАТЬ 1 ИЗ Документ.ЗаказПокупателя ГДЕ Контрагент = Контрагенты.Ссылка).
  • 📊 Группировка по регионам или другим реквизитам.

Этот код можно вставить в обработку или внешнюю печатную форму. Для вывода результата в табличный документ используйте методы ТабличныйДокумент.ВывестиСтроку().

💡

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

6. Нюансы для разных конфигураций 1С

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

1С:Бухгалтерия 3.0:

  • 📌 В стандартном отчёте «Справочники» контрагенты отображаются вместе с Партнёрами (если включена интеграция с ЗУП).
  • 📌 Для раздельного подсчёта используйте фильтр по виду контрагента.

1С:Управление торговлей 11:

  • 📌 Здесь контрагенты делятся на Покупателей, Поставщиков и Прочих. В отчётах их можно считать отдельно.
  • 📌 В справочнике есть реквизит «Тип контрагента» — его можно использовать в запросах для точной фильтрации.

1С:ERP 2:

  • 📌 Контрагенты связаны с Бизнес-партнёрами. Для корректного подсчёта может потребоваться учёт этой иерархии.
  • 📌 В отчёте «Анализ справочников» доступны дополнительные аналитические разрезы (например, по сегментам бизнеса).

1С:Зарплата и управление персоналом:

  • 📌 Контрагенты здесь чаще всего представляют Физических лиц или Организации-работодатели. Их подсчёт ведётся отдельно от торговых партнёров.
⚠️ Внимание: В конфигурациях с интеграцией (например, Бухгалтерия + ЗУП) один и тот же контрагент может учитываться в нескольких справочниках. Перед подсчётом уточните, какие именно записи вам нужны!

FAQ: Частые вопросы о подсчёте контрагентов в 1С

Как посчитать только активных контрагентов (с которыми были документы за последний год)?

Используйте запрос на встроенном языке с условием по дате последнего документа:

ВЫБРАТЬ РАЗЛИЧНЫЕ Контрагенты.Ссылка

ИЗ Документ.ЗаказПокупателя КАК Док

ГДЕ Док.Дата > ДобавитьМесяц(ТекущаяДата(), -12)

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

Почему в отчёте «Справочники» и через SQL количество контрагентов разное?

Это происходит потому, что:

  • SQL-запрос может учитывать служебные записи (например, предопределённые элементы).
  • Отчёт «Справочники» по умолчанию исключает помеченные на удаление записи, если не настроен иначе.
  • В некоторых конфигурациях справочник «Контрагенты» может быть связан с другими объектами (например, «Партнёры» в ЗУП), что влияет на подсчёт.
Можно ли посчитать контрагентов по группам в одном отчёте?

Да, для этого:

  1. В отчёте «Анализ справочников» включите опцию «Показывать группы».
  2. Или используйте запрос на встроенном языке с группировкой:
ВЫБРАТЬ

Контрагенты.Родитель КАК Группа,

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

ИЗ

Справочник.Контрагенты КАК Контрагенты

ГДЕ

НЕ Контрагенты.ПометкаУдаления

СГРУППИРОВАТЬ ПО

Контрагенты.Родитель

Как экспортировать список контрагентов с количеством в Excel?

Способы:

  • Из справочника: нажмите Ещё → Выгрузить в Excel.
  • Из отчёта «Справочники»: сформируйте отчёт, затем Ещё → Выгрузить → В Excel.
  • Через запрос: используйте ЗаписьXML или ЗаписьJSON для выгрузки данных в файл.

Для автоматической выгрузки напишите обработку с использованием объекта ExcelДокумент.

Как посчитать контрагентов с уникальным ИНН?

Используйте запрос с группировкой по ИНН:

ВЫБРАТЬ

КОЛИЧЕСТВО(RAZR) КАК УникальныеИНН

ПОМЕСТИТЬ ВТУникальныеИНН

ИЗ

(ВЫБРАТЬ РАЗЛИЧНЫЕ

Контрагенты.ИНН КАК ИНН

ИЗ

Справочник.Контрагенты КАК Контрагенты

ГДЕ

НЕ Контрагенты.ПометкаУдаления

И НЕ Контрагенты.ИНН = ""

И НЕ Контрагенты.ИНН = "0") КАК УникальныеИНН

Затем получите количество записей из временной таблицы ВТУникальныеИНН.