Расчет разовых начислений (премий, материальной помощи и т.д.) пропорционально отработанному времени

Опубликовал Александр / (GeterX) в раздел Обработки - Обработка документов

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

Обработка тестировалась на конфигурации 1С: Зарплата и кадры бюджетного учреждения 8 релиз 1.0.71.2. 

Работает в документах:

- Премии;

- Регистрация разовых начислений / Дополнительные начисления;

Начисления могут быть рассчитаны из:

- фонда оплата труда (ФОТ), при этом учитываются проценты, ПКУ, классные чины, шкалы стажа;

- фиксированной суммы;

03.05.2014

- внесены изменения в аглоритмы расчета;

- добавлена возможность расчета базы премии из ФОТ;

- добавлена возможность расчета премии с учетом процента;

- добавлена возможность расчета при использовании графика работы с неполным рабочим временем;

- добавлена возможность сохранения настроек;

- исправлены ошибки;

- переработан интерфейс;

22.05.2014

- теперь обработка работает и в документе Регистрация разовых начислений;

- добавлена возможность расчете материальной помощь;

- добавлена возможность использования Оклада по ПКУ при расчете ФОТ;

- добавлена возможность использования начислений со шкалами при расчете ФОТ;

- исправлены ошибки;

11.06.2014

- добавлена поддержка классных чинов;

- исправлены выявленные ошибки;

23.06.2014

- добавлен возможность авторасчета в зависимости от вида времени основного начисления сотрудника. Теперь расчет по Дням и Часам можно проводить в одном документе;

18.08.2014

- внесены уточнения в алгоритмы расчета (учитываются даты приема и увольнения);

- добавлена поддержка заполнения отработанного времени из табеля;

- исправлены ошибки;

11.03.2015

- исправлены ошибки;

- добавлена поддержка начислений, применяемых в гос. службе;

23.04.2015

- исправлены ошибки;

11.04.2015

- теперь обработка работает и для табличной части "Основные начисления" документе "Регистрация разовых начислений";

- вместо ФОТ можно расчитывать расчетную базу;

- для расчета отработанного времени можно учитывать индивидуальный график работы;

- исправлены мелкие недочеты;

- можно выводить информацию о кадровых переводах в расчетном периоде;

18.12.2016

- обновлен алгоритм расчета ФОТ;

- исправлены ошибки;

!!! Если при расчете фактического отработанного времени не учитывается "Сохраняемое денежное содержание на период отпуска", то для этого вида расчета необходимо установить, то что это начисление является зависимым: "Зависимое третьего уровня". 

Если не хватает какого-либо функционала, могу доработать бесплатно. 

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

Скачать файлы

Наименование Файл Версия Размер
Расчет разовых начислений (премий, материальной помощи и т.д.) пропорционально отработанному времени
.epf 53,86Kb
18.12.16
3
.epf 3.1 53,86Kb 3 Скачать

См. также

Добавить вознаграждение
Комментарии
1. Slas (slas) 22 07.05.14 06:56 Сейчас в теме
Расчет премии (месячной, квартальной, годовой) производится процентом от расчетной базы. Расчетная база включает учет отработанного времени.
2. Александр / (GeterX) 42 07.05.14 09:48 Сейчас в теме
(1) slas, а если премия квартальная, то как это сделать?
Да и вообще расчет производится согласно положения в предприятии.
А если расчет идет не из ФОТ, а из фиксированной суммой?
3. mikhailovaew (mikhailovaew) 126 19.05.14 17:20 Сейчас в теме
(2) это от недостатка знаний типовых возможностей.
а если премия квартальная, то как это сделать?

легко и непринужденно. В документе "Премии сотрудников организации" указывается базовый период, и базовые начисления берутся именно из него.
А если расчет идет не из ФОТ, а из фиксированной суммой?

Тогда описывается формула вида Результат = Сумма / Норма времени за месяц в днях * Время в днях
jan27; ivnik; +2 Ответить 1
4. Александр / (GeterX) 42 19.05.14 18:43 Сейчас в теме
(3) mikhailovaew,
легко и непринужденно. В документе "Премии сотрудников организации" указывается базовый период, и базовые начисления берутся именно из него.

С этим я согласен.

Тогда описывается формула вида Результат = Сумма / Норма времени за месяц в днях * Время в днях

А Вы пробовали это сделать?
Премия у нас разовое начисление. А для разовых начислений невозможно выбрать такие показатели как "Норма времени за месяц в днях" и "Время в днях".
Если это можно было сделать, тогда бы и обработки не было бы.
teflon; DerGauf; +2 Ответить 1
5. mikhailovaew (mikhailovaew) 126 20.05.14 16:04 Сейчас в теме
(4) GeterX,
Премия у нас разовое начисление

Вы, наверное, имеете в виду "дополнительное начисление" (в отличие от "основного"). Действительно, там показатели времени ввести не получится. Зато документ "Регистрация разовых начислений" позволяет ввести и рассчитать произвольное основное начисление, в котором можно описать временные показатели формулы. Минус такого решения - премии не будут выделяться в справке по расчету среднего заработка для отпусков.
6. Алексей Дремучкин (super-drema) 21 18.06.14 15:28 Сейчас в теме
Необходима данная обработка. Но почему-то она не доступна для скачивания... Точнее нет никаких прикрепленных файлов к публикации. Исправьте, пожалуйста.
7. Александр / (GeterX) 42 19.06.14 09:28 Сейчас в теме
(6) super-drema, обработка загружена.
8. Алексей Дремучкин (super-drema) 21 19.06.14 18:29 Сейчас в теме
На модуле пароль... Мдааа...
9. Александр / (GeterX) 42 19.06.14 23:57 Сейчас в теме
(8) super-drema, а зачем вам модуль? не хватает функционала?
10. Алексей Дремучкин (super-drema) 21 20.06.14 13:24 Сейчас в теме
Хотел подправить модуль, т.к. 1. обработка некорректно проставляет отработанное время по сотрудникам, если были перерасчеты или сторно из-за отпуска или больничного 2. Не нравиться реквизит вид учета времени (хотелось бы убрать), т.к. у меня в организации учет времени ведется как по часам, так и по дням. Не хотелось бы из-за этого реквизита делать два документа по премии. Обработка хорошая, но под конкретно мою организацию нужно ее чуток подправить. Не хочется тратить время на написания ее с нуля. Буду признателен, если вышлите пароль от модуля личным письмом или на super-drema@mail.ru. Заранее спасибо.
11. Александр / (GeterX) 42 22.06.14 00:56 Сейчас в теме
(10) super-drema, отправил. В обработку включены изменения.
Буду признателен, если опишите конкретную ситуацию возникновения ошибки при расчете отработанного времени.
Проверял различные перерасчета, вроде все рассчитывается корректно.
12. Антон Назаров (crypton) 5 15.08.14 11:58 Сейчас в теме
Автора прошу пояснить.
Купил.При нажатии на кнопку "Заполнить время" выдает ошибку {ВнешняяОбработка.РасчетРазовыхНачисленийПропорциональноОтработанномуВремени.МодульОбъекта(237)}: Операции сравнения на больше-меньше допустимы только для значений совпадающих примитивных типов (Булево, Число, Строка, Дата)
Конфигурация ЗИКБУ (медицина) 74.1
13. Александр / (GeterX) 42 16.08.14 16:46 Сейчас в теме
(12) crypton, ошибка исправлена.
14. Slas (slas) 22 09.10.14 13:21 Сейчас в теме
(2) GeterX, Ваша обработка уменьшает размер месячной, квартальной, годовой премий. "А если расчет идет не из ФОТ, а из фиксированной суммой?" Фиксированная на то и фиксированная, премия без учета отработанного времени. Если нужна премия суммой с учетом времени, создаете начисление в "Основных начислениях", далее Показатель числовой и в поле Произвольная формула Показатель* ОтработаноВремениВЧасах /НормаВремениВЧасах
15. Александр / (GeterX) 42 09.10.14 15:27 Сейчас в теме
(14) slas, А если премия квартальная по итогам работы за 9 месяцев, то как Вы рассчитаете премию?
В основных начислениях можно указать только период в пределах месяца, но не как не 9 месяцев.
16. Slas (slas) 22 10.10.14 09:05 Сейчас в теме
(15) GeterX, квартальная премия считается за квартал следует из названия, квартальная премия считается процентом от базы, база учитывает отработанное время, можно рассчитать и даже за 9 месяцев.
17. Александр / (GeterX) 42 10.10.14 10:30 Сейчас в теме
(16) slas, а можно поподробнее рассказать порядок расчета премии за 9 месяцев, как это сделать в программе?
А вот скажем такая ситуация: приходит к нам руководитель и просит рассчитать сумму премии исходя из окладов сотрудников за отработанное время с учетом процента к примеру 200%.
И при этом надо чтобы эта премия была именно за 9 месяцев и правильно отражалась при расчете среднего.
18. Slas (slas) 22 10.10.14 11:45 Сейчас в теме
(17) GeterX, Шутка такая? Читайте книги там все есть.
19. Александр / (GeterX) 42 10.10.14 13:23 Сейчас в теме
(18) slas, а вы сами это делали? Или только все в теории?
А вообще, не нравится, не используйте, к чему весь этот разговор, если вы даже не хотите поделиться информацией?
20. Slas (slas) 22 13.10.14 09:24 Сейчас в теме
(19) GeterX, Весь этот разговор к тому, что если использовать вашу обработку, то типовая квартальная, По итогам работы за год, Месячная премии начисляются неправильно. А вы, так и бесплатно делитесь своей обработкой.
21. tonychidze 18.11.14 10:03 Сейчас в теме
Купили. ЗБУ 1.0.74.1. Подключил как дополнительную обработку по заполнению табличных частей. При вызове обработки (как из документа премии, так и из документа регистрация разовых начислений) появляется ошибка:
Заполнение ТЧ не произведено!
Ошибка при вызове метода контекста (ПолучитьФорму): {Форма.Форма.Форма(179,31)}: Переменная не определена (Аналит): {Форма.Форма.Форма(179,31)}


Нашел эту часть кода в модуле формы "Форма"

Если ?(Метаданные.Имя = "МедицинаЗарплатаИКадрыБюджетногоУчреждения", ВыборкаДетальныеЗаписи.ВидРасчета = ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.ОкладПоПКГ, Ложь) Тогда
СведенияПКГ_Сотрудника = Аналит.ПолучитьАктуальныеСведенияПоСотруднику(Элемент.Сотрудник, ПериодРегистрации);
Оклад = СведенияПКГ_Сотрудника[0].Оклад;
ИначеЕсли ?(Метаданные.Имя = "МедицинаЗарплатаИКадрыБюджетногоУчреждения", ВыборкаДетальныеЗаписи.ВидРасчета = ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.а_УвеличениеОбъемаРабот, Ложь) Тогда
ДопНачисления = ДопНачисления + ВыборкаДетальныеЗаписи.Показатель1;
Иначе
Оклад = ВыборкаДетальныеЗаписи.Показатель1;
КонецЕсли;

У нас не медицина, комментирую условие, оставляю только
Оклад = ВыборкаДетальныеЗаписи.Показатель1;


В таком случае появляется ошибка:
Заполнение ТЧ не произведено!
Ошибка при вызове метода контекста (Выполнить): {(9, 36)}: Поле не найдено "РабочееВремяРаботниковОрганизаций.а_ДокументНазначения"
РабочееВремяРаботниковОрганизаций.<<?>>а_ДокументНазначения,

Опять ошибка по объектам добавленным в медицине. Но этот раз ошибка в модуле объекта, который запаролен и поправить ее не представляется возможным. Прошу рассмотреть проблему как можно быстрее, премию уже надо начислять.
На демобазе ЗБУ ошибки так же воспроизводятся.
22. Александр / (GeterX) 42 18.11.14 12:58 Сейчас в теме
(21) tonychidze, ошибка исправлена.
23. Анна Козлова (anna1012) 19.02.15 11:56 Сейчас в теме
Здравствуйте!
Купили Вашу обработку. В учреждении есть разные варианты премий, один из которых рассчитывается от единовременного денежного содержания, вид начисления создается автоматически при указании, что в базе данных будет вестись расчет содержания для государственных гражданских служащих. Начисление Первичное, формула произвольная Результат = Тарифная ставка месячная (должностной оклад) * Количество должностных окладов * Время в днях / Норма времени в днях. ФОТ исходя из ежемесячного денежного содержания не рассчитывается. Можно это исправить в ближайшее время?
24. Александр / (GeterX) 42 19.02.15 12:19 Сейчас в теме
(23) anna1012, если вы хотите производить расчет из денежного содержания, то для этого в обработке есть настройка расчетной базы, включаете туда все начисления входящие в денежное содержание.

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

Если я вас правильно понял.
25. Анна Козлова (anna1012) 19.02.15 12:47 Сейчас в теме
(24) GeterX, по поводу указания процента я думала, но к сожалению этот вариант не подойдет для нас. Дело в том, что у сотрудников разное количество должностных окладов (это занесено в постоянных начислениях), я не могу поставить процент одинаковый для всех сотрудников.
26. Александр / (GeterX) 42 19.02.15 14:04 Сейчас в теме
(25) anna1012, можно это описать на подробном примере?
27. Анна Козлова (anna1012) 19.02.15 15:48 Сейчас в теме
(26) GeterX, у сотрудников в постоянных начислениях оклад и ежемесячное денежное поощрение. ежемесячное денежное поощрение это Тарифная ставка месячная (должностной оклад) * Количество должностных окладов. В показателях ежемесячного денежного поощрения количество должностных окладов. У некоторых сотрудников ежемесячное денежное поощрение 1 должностной оклад, у других 1,6, у третьих 1,7.
28. Александр / (GeterX) 42 19.02.15 23:22 Сейчас в теме
(27) anna1012, в ближайшее время исправлю.
29. Александр / (GeterX) 42 20.02.15 14:55 Сейчас в теме
(27) anna1012, обработка исправлена.
30. Анна Козлова (anna1012) 20.02.15 16:07 Сейчас в теме
(29) GeterX, (29) GeterX, добавила в базу для расчета ежемесячное денежное поощрение, при нажатии на кнопку ФОТ возникает ошибка - "{Форма.Форма.Форма(223)}: Индекс находится за границами массива ОкладЕДС = ДанныеОклада[0].Показатель1; "
31. Александр / (GeterX) 42 23.02.15 23:17 Сейчас в теме
(30) anna1012, в расчетной базе используется только одно начисление (ежемесячное денежное поощрение)?
32. Анна Козлова (anna1012) 26.02.15 18:52 Сейчас в теме
Спасибо за доработку! Все работает!
33. Андрей Хабибулин (teflon) 20.03.15 13:54 Сейчас в теме
При покупке код модуля будет закрыт?
34. Александр / (GeterX) 42 21.03.15 22:47 Сейчас в теме
(33) teflon, по умолчанию закрыт. Но все решаемо.
35. Андрей Хабибулин (teflon) 27.03.15 09:14 Сейчас в теме
(34) GeterX, в организации есть квартальная премия, рассчитываемая по следующей Формуле: Количество баллов * Стоимость балла / Норма времени * Факт Время. Хотелось бы, чтобы ваша обработка приводила показатель "Количество баллов" к отработанному времени, и заполняла в самом документе колонку этого же показателя, а не колонку с результатом.
Думаю, что надо реализовать в обработке опцию для выбора колонки заполнения: выводить результат пересчета в колонку "Результат", либо выводить результат пересчета в колонку "Показатель" (колонка будет та же, чей показатель пересчитываем).
36. Александр / (GeterX) 42 27.03.15 11:23 Сейчас в теме
(35) teflon, она это позволяет сделать.
Прикрепленные файлы:
37. Андрей Хабибулин (teflon) 27.03.15 12:19 Сейчас в теме
(36) GeterX, разобрался для чего нужен Коэффициент, но похоже обработка не правильно обрабатывает события формы на закладке настроек, т.е. не удается установить настройку с включенным только Коэффициентом, т.к. Коэффициент устанавливается всегда с процентом, что приводит к неправильному результату расчетов (результат получается всегда поделен на 100 процентов). Или я снова чего-то недопонял и делаю неправильно?
38. Александр / (GeterX) 42 27.03.15 14:09 Сейчас в теме
(37) teflon,
В качестве показателя - Стоимость балла
коэффициент - Количество баллов
(230 * 12) / Норма (22) * Часы(15) = 1881,82

Все как по Вашей формуле.
Прикрепленные файлы:
39. Андрей Хабибулин (teflon) 27.03.15 14:32 Сейчас в теме
(38) GeterX, если выбрать расчет по часам, и поставить флажок Коэффициент (при этом Процент у вас ставиться всегда при этом автоматически, если снять Процент, то и Коэффициент снимается), в результате получаем все в процентах, т.е. поделенное на 100.
Уже сам разобрался. В модуле формы подправил значимость флажков, т.е. первым сделал Коэффициент, зависимым от него Процент, поменял условия снятия/установки флажков, В процедуре расчета показателей, в случае расчета показателей по условию "Время в часах", добавил условие на расчтет по показателю коэффициент. В общем сейчас все считает как нам нужно. Спасибо за разработку.
40. Александр / (GeterX) 42 27.03.15 15:11 Сейчас в теме
(39) teflon, спасибо за найденную ошибку, обработка исправлена.
41. Александр / (GeterX) 42 21.05.15 23:10 Сейчас в теме
Пришлось поднять цену, согласно требованию http://infostart.ru/community/groups/295/forum/131199/
42. Андрей Б (bandru) 25.06.15 09:26 Сейчас в теме
Здравствуйте, купил обработку. В целом функционал устраивает, но есть несколько замечаний для нашей организации. Хотел поправить-на модуле пароль. Самое главное замечание: при расчете премии процентом в показатели для расчета начисления ставит "процент оплаты", а вместо процента размер ФОТ. Остальное по мелочи - хочется, чтобы в базу для расчета выходили по умолчанию наши виды расчета и галки в настройках при расчете алгоритма. Буду благодарен за пароль от модуля: berezhko.au <at> yandex.ru
43. Андрей Б (bandru) 25.06.15 12:13 Сейчас в теме
Также, если у работника в месяце было зарегистрировано "отсутствие по невыясненной причине", а затем больничный, то количество отработанных дней считает неверно. В пользовательском режиме лечится удалением отклонения "отсутствие по невыясненной причине". Но это уже костыль получается
44. Александр / (GeterX) 42 06.07.15 11:02 Сейчас в теме
(43) bandru,
"Добрый день! В документ данные переносятся по принципу ФОТ -> Показатель1, Процент -> Показатель2. Перенос данных в документ реализован по типовому принципу.
Если нужно исправить заполнение, это можно сделать и без открытия модуля, т.к. модуль формы полностью открыт и там производятся все расчеты.
Если вам надо могу предоставить обработку с открытым кодом.
Для сохранения всех ваших настроек, есть кнопка "Сохранить значения".
По последнему вопросу надо посмотреть, но такого не должно возникать, т.к. если начисляется больничный, отсутствие по невыясненной причине сторнируется, дни соответственно с минусом. Если опишите ситуацию в примере, буду благодарен."
Дублирую текст переписки, т.к. не получил ответа.
45. Андрей Б (bandru) 08.07.15 14:18 Сейчас в теме
Оказалось, что если в одном расчетном периоде зарегистрировано "отсутствие по невыясненной причине (ОНВП)", а затем больничный, то больничный не сторнирует отсутствие. Само собой, дублируются записи в регистре и расчет времени выходит неверным. Если больничный в следующем периоде, то сторнируется и все ок.
Причем в стандартном табеле в обоих случаях выводит правильное количество отработанного времени. На вопрос бухов "как же быть с ОНВП и больничным в одном периоде" решил пока ответить удалением расчета "ОНВП" из отклонений. Но в таком случае может неправильно учитывать время если сотрудник ОНВП и пока не имеет больничного
46. Александр / (GeterX) 42 12.10.15 09:57 Сейчас в теме
(45) bandru, мне казалось, что я уже отвечал на этот вопрос.
В данном случае нужно только удаление ОНВП.
Например, если сотрудник заболел 26.10.15, в программе ставим ОНВП с 26.10-31.10.
Сотрудник приносит больничный 26.10.15-29.10.15, начисляем больничный (все в текущим месяце), сторно не происходит, а вот когда начисляем зарплату, если не удалили ОНВП, расчет получается неверным, т.к. 29.10 стоит ОНВП, Так что в таких случаях обязательно следует удалять ОНВП. Не удаленный ОНВП может повлиять на расчет среднего.
Подумаю над этим вопросом, может удастся что-то придумать.
А так поступила идея немного расширить функционал, учитывать изменение надбавки в выбранном периоде.
47. Егор _ (mea1c) 18.11.15 16:16 Сейчас в теме
При начисление квартальной премии необходимо, чтобы количество отработанных дней не сокращалось на количество дней отпуска (т.е. отработал полностью в квартале, но если был больничный соответственно уменьшалось количество отработанных дней).
Это предусмотрено?
48. Александр / (GeterX) 42 18.11.15 16:51 Сейчас в теме
(47) mea1c, да, это настраивается отклонениями, см. скриншоты.
49. Алексей Гордеев (gordei-ac) 02.02.16 10:07 Сейчас в теме
У меня вопрос что произошло при расчете среднего, он рассчитал ещё дополнительно 29.3. дня получился средний неправильно
50. Александр / (GeterX) 42 02.02.16 13:29 Сейчас в теме
(49) gordei-ac, не совсем понятен вопрос. Напишите вопрос более развернуто.
51. Петя Петров (Dimul555) 18.03.16 12:59 Сейчас в теме
Доброго дня. Для зуп 2.5.99.2 подойдет?
52. Александр / (GeterX) 42 23.03.16 18:29 Сейчас в теме
(51) Dimul555, на ЗУП 2.5 не тестировал.