Related Posts Plugin for WordPress, Blogger...

21 апреля 2021 г.

Если в 1С:Бухгалтерия 3.0 не начисляется зарплата

Учет зарплаты в Бухгалтерии третьей редакции, хоть и имеет некоторое развитие, довольно простецкий. Тем сильнее было моё удивление, когда клиент пожаловался на нулевые суммы в расчёте зарплаты за Апрель. Проковырявшись несколько часов, нашёл решение проблемы.

Диспозиция такая: БП 3.0.91.36, в документе Начисление зарплаты с апреля перестали заполняться суммы оклада. Недавно база была обновлена с 3.0.89 до 3.0.91. Что это: ошибка в данных или кривое обновление?

Дни и часы есть, внутри ссылок Начислено имеется строка с окладом

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

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

#1C

Отработанные дни и часы в документе ставятся как надо. Значит ошибка не в графике работы или производственном календаре. Проверил их тоже (Зарплата - Справочники и настройки - Графики работы), проблем нет. На всякий случай перезаполнил, не помогло.

Провёл стандартный обряд: очистил кэш, ТиИ средствами конфигуратора, проверил файл базы утилитой chdbfl, выгрузил её в dt и загрузил обратно. Обновил на последнюю подверсию — результат нулевой.

Проверил регистр сведений Плановые начисления. Зайти в него можно через команду Все функции (Функции для технического специалиста) — суммы в нём стоят и они верные. В карточках сотрудников они также есть.

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

Осмотрел настройки кадрового учёта и зарплаты, каких-то проблем не нашёл. Смотреть как будто больше и нечего, всё относящееся к начислениям проверено... Остальные регистры — кадровые. И в одном из них засела проблема. 

В версии 3.0.90 добавлена возможность указывать количество занимаемых сотрудником ставок при неполном рабочем дне. Это можно сделать при приеме сотрудника на работу или при кадровом перемещении. Проблема только в том, что если в настройках кадрового учёта не включена нужная функциональность (Администрирование - Функциональность - Сотрудники, флаг Неполная ставка), то никаких ставок нигде не фигурирует и не заполняется — напоминаю,  я тестовый кадровый перевод сделал, и он не включал в себя дополнительных полей.

С версии 3.0.90 1С Бухгалтерия поддерживает работу с неполной ставкой. Это нужно, например, для корректного формирования статистической отчётности

За хранение ставки отвечает одноимённый реквизит в регистре сведений Кадровая история сотрудников. Если неполная ставка не используется, то приём на работу ставит сюда единицу, а дальше она просто кочует из перевода в перевод.

Кадровая история хранила пустую ставку. А должна стоять единица

В обсуждаемой базе учёт велся очень давно, с 2014 года. Тогда, ещё в ред. 2.0, тут были оформлены приёмы на работу. Которые пару лет назад успешно переехали на ред. 3.0 и спокойно лежали, пережив свёртку базы. Обновление на 3.0.91 по какой-то причине ничего не добавило в их движения. Как не актуализировало и регистр сведений. Поэтому реквизит Ставка оказался пустым, что давало нулевое начисление оклада. 

Пришлось добавлять запись регистра вручную через Операцию

Пришлось добавить ручную операцию (Операции - Операции, введенные вручную), в которой заполнить регистр сведений Кадровая история (Кнопка Ещё - Выбор регистров) по всем сотрудникам. 

Благо, их пять человек. Альтернативный способ —  включить флаг в настройках функциональности, и сделать кадровое перемещение. После установки ставки, оклад и аванс  снова стали считаться корректно.

9 комментариев:

  1. спаисибо огромное, очень помогло!!!

    ОтветитьУдалить
  2. Спасибо Большое!!!! очень помогло!!!

    ОтветитьУдалить
  3. Анонимный4 мая 2021 г., 00:04

    Огромное спасибо!!! очень помогли решить эту проблему

    ОтветитьУдалить
  4. Анонимный5 мая 2021 г., 18:34

    Огромная благодарность!

    ОтветитьУдалить
  5. Огромное спасибо! вот поди догадайся!))

    ОтветитьУдалить
    Ответы
    1. На здоровье ))
      При том, что сама 1С не велит писать код так, чтобы источник ошибки был неявным. И тут же такое в коробочном решении

      Удалить
  6. Очень помогла статья! Спасибо!

    ОтветитьУдалить

Поддержи блог рублём!