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

В этой статье мы разберем три основных способа получения среднего заработка: через стандартные отчеты 1С, с помощью универсального отчета «Анализ начислений» и посредством SQL-запроса (для опытных пользователей). Каждый метод подходит для разных версий платформы — от 1С:ЗУП 2.5 до актуальной 1С:ЗУП 3.1 и 1С:Бухгалтерия 3.0. Также вы узнаете, как исключить из расчета уволенных сотрудников, учесть премиальные выплаты и экспортировать данные в Excel для дальнейшего анализа.

Особое внимание уделим скрытым настройкам отчетов, которые позволяют получить точные цифры без искажений от больничных, отпусков или авансов. Если вы работаете с крупной базой данных (1000+ сотрудников), в конце статьи найдете рекомендации по оптимизации запросов для ускорения обработки.

1. Стандартный отчет «Анализ фонда оплаты труда»: быстрый способ

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

Чтобы открыть его:

  • 📊 Перейдите в раздел Зарплата → Отчеты по зарплате → Анализ фонда оплаты труда1С:ЗУП 3.1).
  • 📅 Укажите период анализа (например, 01.01.2026–31.12.2026) в поле «Период».
  • 👥 В настройках отчета («Показатели») отметьте галочкой пункт Средний заработок или Средняя зарплата по организации.
  • 📤 Нажмите «Сформировать» и дождитесь обработки данных.

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

💡

Если в отчете нет колонки «Средний заработок», проверьте настройки группировки. Иногда этот показатель скрыт в разделе «Дополнительные поля» или «Показатели по сотрудникам».

⚠️ Внимание: В некоторых версиях 1С:ЗУП 2.5 отчет «Анализ фонда оплаты труда» может не показывать средние значения по умолчанию. В этом случае используйте альтернативный отчет «Сводные данные по зарплате» или переходите к следующему методу.

2. Универсальный отчет «Анализ начислений»: гибкая настройка

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

Инструкция по настройке:

  1. Откройте раздел Зарплата → Отчеты → Анализ начислений.
  2. В поле «Период» укажите диапазон дат (например, квартал или год).
  3. Вкладка «Группировки»: добавьте группировку по Организация или Подразделение, если нужно разделить данные.
  4. Вкладка «Показатели»: найдите и добавьте показатель Средний заработок (расчетный) или Среднемесячная зарплата.
  5. Вкладка «Фильтры»: при необходимости исключите уволенных сотрудников, стажеров или другие категории.

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

Указать корректный период|Добавить показатель «Средний заработок»|Исключить уволенных сотрудников (если нужно)|Проверить группировки по подразделениям|Сохранить настройки как шаблон-->

Параметр отчета Рекомендуемое значение Пояснение
Период Квартал или год Слишком короткий период (месяц) может искажать средние значения из-за сезонных премий или больничных.
Группировка По подразделениям Позволяет сравнить зарплаты между отделами и выявить диспропорции.
Фильтр по сотрудникам Только действующие Исключение уволенных повышает точность анализа текущего ФОТ.
Показатели Средний заработок (расчетный) Этот показатель учитывает все начисления, включая премии и компенсации.

3. SQL-запрос для опытных пользователей: максимальная точность

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

Пример запроса для получения среднего заработка по всем сотрудникам за год (для 1С:ЗУП 3.1 на платформе 8.3):

ВЫБРАТЬ

СРЕДНЕЕ(Зарплата.Сумма) КАК СреднийЗаработок

ИЗ

Документ.НачислениеЗарплаты.Сотрудники КАК Зарплата

ГДЕ

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

И НЕ Зарплата.Сотрудник.Уволен

Чтобы выполнить этот запрос:

  1. Откройте Все функции → Режим 1С:Предприятие → Отладка → Запрос (Ctrl+Shift+Q).
  2. Вставьте код запроса и укажите параметры &НачалоПериода и &КонецПериода (например, '20260101' и '20261231').
  3. Нажмите «Выполнить» и дождитесь результата.
⚠️ Внимание: Неправильно составленный SQL-запрос может привести к ошибкам в базе или длительной блокировке ресурсов. Перед выполнением сделайте резервную копию данных и протестируйте запрос на копии базы.

Для ускорения обработки крупных баз добавьте в запрос индексируемые поля, например:

ИНДЕКСИРОВАТЬ ПО Зарплата.Период, Зарплата.Сотрудник

Стандартные отчеты|Универсальный отчет «Анализ начислений»|SQL-запросы|Экспорт в Excel с последующей обработкой-->

4. Как исключить искажающие факторы: больничные, отпуска, авансы

Средний заработок может искажаться из-за временных выплат, не связанных с основной зарплатой: больничные, отпускные, авансы или разовые премии. Чтобы получить «чистую» среднюю зарплату, нужно настроить фильтры в отчетах или модифицировать запрос.

Способы очистки данных:

  • 🩺 В отчете «Анализ начислений» на вкладке «Фильтры» исключите виды начислений:
    • Больничный лист
    • Отпускные
    • Аванс
    • Материальная помощь
  • 📊 В SQL-запросе добавьте условие по виду начисления:
    И Зарплата.ВидНачисления НЕ В (
    

    ВЫБРАТЬ ССЫЛКУ ИЗ Справочник.ВидыНачислений

    ГДЕ Наименование В ('Больничный', 'Отпускные', 'Аванс')

    )

  • 📅 Используйте периоды без сезонных выплат (например, избегайте декабря из-за новогодних премий).

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

Что делать, если в отчете нет колонки «Вид начисления»?

Если в вашей версии 1С колонка «Вид начисления» отсутствует в настройках отчета, попробуйте:

1. Обновить конфигурацию до последней версии (в 1С:ЗУП 3.1.20+ эта колонка есть по умолчанию).

2. Использовать отчет «Расчетная ведомость» с детализацией по видам начислений.

3. Создать пользовательский отчет через Конструктор отчетов (раздел Администрирование → Печатные формы, отчеты и обработки).

5. Экспорт данных в Excel: дальнейший анализ

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

Как экспортировать:

  1. Сформируйте отчет со средними зарплатами (любым из описанных выше способов).
  2. Нажмите кнопку Еще → Выгрузить → В файл Excel (или Сохранить как... в старых версиях).
  3. Выберите формат .xlsx и укажите путь для сохранения.
  4. Откройте файл в Excel и используйте функции СУММ, СРЗНАЧ или СЧЁТЕСЛИ для дополнительного анализа.

Пример формулы для расчета средней зарплаты по отделам в Excel:

=СРЗНАЧЕСЛИ(ДиапазонЗарплат; ДиапазонОтделов; "Отдел маркетинга")

Если вам нужно регулярно обновлять данные, настройте автоматический экспорт через Планировщик заданий 1С (раздел Администрирование → Обслуживание → Планировщик заданий). Это позволит получать актуальные отчеты, например, каждое 1-е число месяца.

💡

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

6. Частые ошибки и как их избежать

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

  • 🔢 Ошибка 1: Учет уволенных сотрудников
    Если не исключить уволенных, средняя зарплата будет занижена (так как их начисления за последний месяц обычно ниже). Всегда добавляйте фильтр Дата увольнения = Пусто.
  • 📅 Ошибка 2: Неправильный период
    Слишком короткий период (например, 1 месяц) может не отражать реальной средней зарплаты из-за разовых премий. Оптимальный период — 3–12 месяцев.
  • 💰 Ошибка 3: Игнорирование НДФЛ
    Отчеты 1С по умолчанию показывают начисления до вычета налогов. Если вам нужна «чистая» зарплата, настройте показатель Сумма к выдаче.
  • 🔄 Ошибка 4: Дублирование данных
    При использовании SQL-запросов проверьте, чтобы один и тот же документ начисления не учитывался дважды (например, из-за ошибок в периодизации).

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

⚠️ Внимание: В 1С:ЗУП 2.5 и более ранних версиях отчет «Анализ фонда оплаты труда» может округлять средние значения до целых чисел. Для точных расчетов используйте отчет «Свод по зарплате» или экспортируйте данные в Excel.

FAQ: Ответы на частые вопросы

Можно ли посчитать средний заработок только по определенной должности (например, только по менеджерам)?

Да, для этого в отчете «Анализ начислений» на вкладке «Фильтры» добавьте условие по должности:

  1. В поле «Должность» выберите нужную должность из справочника.
  2. Либо используйте фильтр по Подразделению, если менеджеры сгруппированы в одном отделе.

В SQL-запросе добавьте условие:

И Зарплата.Сотрудник.Должность = &Должность

где &Должность — параметр с ссылкой на справочник должностей.

Почему средний заработок в отчете отличается от данных в расчетных ведомостях?

Расхождения обычно возникают из-за:

  • Разных периодов анализа (например, отчет за квартал, а ведомость за месяц).
  • Исключения/включения определенных видов начислений (премии, больничные).
  • Округления значений в отчетах (в ведомостях данные точнее).

Чтобы найти причину, сравните настройки фильтров в отчете и ведомости или экспортируйте обе выборки в Excel для детального анализа.

Как посчитать средний заработок за последние 3 месяца, исключая текущий?

В отчете «Анализ начислений» укажите период с 1-го числа месяца, предшествующего текущему до последнего дня третьего месяца назад. Например, если сегодня июнь 2026, укажите период 01.03.2026–31.05.2026.

В SQL-запросе используйте функцию НАЧАЛОПЕРИОДА:

ГДЕ Зарплата.Период МЕЖДУ

НАЧАЛОПЕРИОДА(ДОБАВИТЬМЕСЯЦ(ТЕКУЩАЯДАТА(), -3), МЕСЯЦ)

И КОНЕЦПЕРИОДА(ДОБАВИТЬМЕСЯЦ(ТЕКУЩАЯДАТА(), -1), МЕСЯЦ)

Можно ли автоматизировать расчет среднего заработка и отправку отчета по email?

Да, это можно сделать с помощью Планировщика заданий 1С:

  1. Создайте обработку, которая формирует отчет и сохраняет его в файл.
  2. Настройте задание в планировщике (раздел Администрирование → Обслуживание → Планировщик заданий).
  3. Добавьте действие «Отправить email» с прикрепленным файлом отчета.

Для этого потребуются права администратора и настроенная почта в 1С.

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

Эти данные можно получить через отчет «Анализ начислений» с дополнительными группировками:

  1. На вкладке «Группировки» добавьте поля Пол и/или Дата рождения (с функцией вычисления возраста).
  2. Настройте показатель Средний заработок.

В SQL-запросе используйте конструкцию:

ВЫБРАТЬ

Зарплата.Сотрудник.Пол КАК Пол,

СРЕДНЕЕ(Зарплата.Сумма) КАК СреднийЗаработок

ИЗ ...

ГРУППИРОВАТЬ ПО Зарплата.Сотрудник.Пол

Для возраста используйте функцию РАЗНОСТЬДАТ().