ЗУП 3.0 Доплата до оклада

1. agentz 40 23.03.15 14:46 Сейчас в теме
Доброго дня, всем!
Помогите решить задачку в ЗУП 3.0, сотруднику необходимо настроить доплату до оклада при больничном. Доплата считается по формуле Макс(Оклад/НормаВремениВДнях * ВремяВДнях - РасчетнаяБаза,0). Загвотска в том, что ВремяВДнях надо получать не по больничному, а по графику работы т.е исключить выходные сотрудника.
Подскажите в какую сторону копать.

Пример. Сотрудник болеет с 12.01 по 21.01 оплачивается 10 кал. дней, доплата должна быть за 8 раб.дней.

Заранее спасибо
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. ESMir 28.04.15 10:56 Сейчас в теме
(1) agentz, Сейчас бьюсь над примерно такой же задачей.
Но ситуация посложнее. Т.е. нужно:

Доплатить сотрудникам до оклада только за отпуск и командировку, исключая больничные.
Кстати нашла на просторах инфостарта обработку полезную http://infostart.ru/public/99225/
Но мне не подходит, т.к. у нас управляемые формы.
Придется видимо писать обработку для такого расчета.

Если у кого есть какие-нибудь соображения на данную тему, прошу написать.
3. Dima_ 149 29.04.15 05:02 Сейчас в теме
(1) agentz, (2) ESMir,
День добрый!
Посмотрите показатель "ОтработаноЧасовВПределахНормыВремени",
может поможет...
5. kuza_87 28 15.03.17 08:29 Сейчас в теме
(1) Удалось решить эту задачу? Сейчас тоже встала такая проблема.
4. chmv 08.05.15 13:09 Сейчас в теме
6. shnurov 15.03.17 10:54 Сейчас в теме
На ИТС
Время в днях – фактическое количество дней по указанным в начислении видам времени за указанный период
, возможно я чего-то не полян, но если в начислениях закладку учет времени настроить как на картинке, то ВремяВднях будет только отработаны дни.
Прикрепленные файлы:
7. agentz 40 16.03.17 09:35 Сейчас в теме
Удалось.
Попозже выложу расширение, которое решает данную задачу.
9. kuza_87 28 16.03.17 15:00 Сейчас в теме
(7) Подскажи ещё, пожалуйста, как собирается ТаблицаПериодовРасчета?
8. agentz 40 16.03.17 09:42 Сейчас в теме
В общем случае задача решается удобно через расширения. Код который считает доплату. В виде расчета нужно не забыть указать все требуемые показатели

	СреднийЗаработокСсылка = ОбщегоНазначенияКлиентСервер.ПредопределенныйЭлемент("Справочник.ПоказателиРасчетаЗарплаты.СреднийЗаработокФСС");
	РайонныйКоэффициентСсылка = ОбщегоНазначенияКлиентСервер.ПредопределенныйЭлемент("Справочник.ПоказателиРасчетаЗарплаты.РайонныйКоэффициент");
	СтоимостьДняСсылка = ОбщегоНазначенияКлиентСервер.ПредопределенныйЭлемент("Справочник.ПоказателиРасчетаЗарплаты.СтоимостьДня");
	ВремяВДняхСсылка = ОбщегоНазначенияКлиентСервер.ПредопределенныйЭлемент("Справочник.ПоказателиРасчетаЗарплаты.ВремяВДнях");
		
	ПериодРасчетаЗарплаты = ПериодРасчетаЗарплатыДоНачалаОтсутствия();

	МенеджерРасчета = РасчетЗарплатыРасширенный.СоздатьМенеджерРасчета(Объект.ПериодРегистрации, Объект.Организация);
	ЗаполнитьНастройкиМенеджераРасчета(МенеджерРасчета, ПериодРасчетаЗарплаты);
	
	ТаблицаНачислений = МенеджерРасчета.ТаблицаИсходныеДанныеНачисленияЗарплатыПоНачислениям();
	
	
	
	Для Каждого ПериодРасчета Из ТаблицаПериодовРасчета Цикл
		
		НовыйИнтервал = ТаблицаНачислений.Добавить();
		НовыйИнтервал.Сотрудник = Объект.Сотрудник;
		НовыйИнтервал.Начисление = ВидРасчетаДоплаты;
		НовыйИнтервал.ДатаНачала = ПериодРасчета.ДатаНачалаРасчета;
		НовыйИнтервал.ДатаОкончания =  ПериодРасчета.ДатаОкончанияРасчета;
		//Добавим показатели
		МенеджерРасчета.ДобавитьИзвестноеЗначениеПоказателя(НовыйИнтервал, СреднийЗаработокСсылка, Объект.СреднийДневнойЗаработок);
		
	КонецЦикла;
	МенеджерРасчета.ЗаполнитьНачисленияСотрудникаЗаПериод(Объект.Сотрудник, ТаблицаНачислений, ПериодРасчетаЗарплаты);
	МенеджерРасчета.РассчитатьЗарплату();
	//Тут появляется нужный нам показатель, но сам резултат не посчитался :(
	Для каждого Начисление Из МенеджерРасчета.Зарплата.Начисления Цикл
		КоличествоДнейОплатить = КоличествоДнейОплатыМаксимум - КоличествоДнейОплачено;
		
		СтоимостьДняЧаса = 0;
		ВремяВДнях       = 0;
		СреднийЗаработок = 0;
		
		Показатели = Начисление.Показатели;
		Для каждого Показатель Из Показатели Цикл
			
			Если Показатель.Показатель = СтоимостьДняСсылка Тогда
				СтоимостьДняЧаса = Показатель.Значение;
			КонецЕсли; 
			Если Показатель.Показатель = ВремяВДняхСсылка Тогда
				//Считаем кол-во дней доплаты по ФИФО т.е списываем по периодам
				КоличествоДнейОплатить = МИН(КоличествоДнейОплатить, Показатель.Значение);
				Показатель.Значение = КоличествоДнейОплатить;
				КоличествоДнейОплачено = КоличествоДнейОплачено + КоличествоДнейОплатить;
				
				ВремяВДнях = Показатель.Значение;
			КонецЕсли; 
			Если Показатель.Показатель = СреднийЗаработокСсылка Тогда
				СреднийЗаработок = Показатель.Значение;
			КонецЕсли; 
			
		КонецЦикла; 
		Начисление.Результат = (СтоимостьДняЧаса - СреднийЗаработок) * 0.80 * ВремяВДнях;
		Начисление.ОплаченоДней = ВремяВДнях;
		Начисление.ОплаченоЧасов = 0;
	КонецЦикла;
	
	РасчетЗарплатыВДанныеФормы(МенеджерРасчета.Зарплата);
Показать
10. kuza_87 28 16.03.17 15:06 Сейчас в теме
(8)Подскажи ещё, пожалуйста, как собирается ТаблицаПериодовРасчета и КоличествоДнейОплатыМаксимум ? Так-то мне, в принципе, понятно. Просто если уж копипастить твой код, так уже целиком)))
11. agentz 40 17.03.17 12:37 Сейчас в теме
(10) это моя ТЗ произвольного формата. Я её формирую как периоды от начала бл, до конца месяца и потом от начала месяца до конца бл.
12. kuza_87 28 19.03.17 13:39 Сейчас в теме
(11) а КоличествоДнейОплатыМаксимум как вычисляется?
13. agentz 40 19.03.17 17:55 Сейчас в теме
(12) это константа, в моем случае 10
14. kuza_87 28 26.03.17 07:58 Сейчас в теме
(13) Что не пойму откуда у тебя цифра 10. И почему это константа. Не пойму логики вычисления.
16. kuza_87 28 26.03.17 11:01 Сейчас в теме
(13) Ещё хотелось бы посмотреть как вы сделали начисление.
17. agentz 40 04.04.17 21:34 Сейчас в теме
(16) Расширение еще нужно?
24. pudovaraisa 13.09.18 21:45 Сейчас в теме
(17)ДОбрый день, а можно мне расширение, пожалуйста.
15. kuza_87 28 26.03.17 10:38 Сейчас в теме
Может выложите сюда расширение, чтобы я вам вопросов не задавал? А я вам денежку на телефон закину за беспокойства
18. kuza_87 28 06.04.17 09:59 Сейчас в теме
Нет, спасибо. Я по своему решил вопрос. У меня там нужно было чтобы не только от оклада считалась доплата, но и от северных, районного коэффициента и премии (ФОТа короче). Поэтому более заморочено получилось.
19. user599167_sbityutskiy 08.11.17 14:58 Сейчас в теме
Та же проблема - надо создать начисление доплаты до оклада с учётом северных, районного и премии.
Ломаю голову...
Может кто-нибудь подсказать?
20. rusia 09.11.17 12:02 Сейчас в теме
(19) в начислении посчитать полный оклад и вычесть расчетную базу, в которую всунуть оклад, больничный, премии. По сути. Результат = Оклад - РасчетнаяБаза. Что получим? Например, оклад установлен 20000. Рабочих дней - 20. Больничные 3500 за 5 дней. Значит оплата по окладу 20000/20*15 = 15000. Результат доплаты = 20000 - (15000+3500) = 1500. Как раз по 300 рублей за день больничного. Как-то так схему можно запилить.
21. user599167_sbityutskiy 09.11.17 17:10 Сейчас в теме
(20) Немного не понял. Какую формулу вы предлагаете?
Сейчас в этом начислении расчётная база - Командировка.
Формула: Макс(((Оклад*ДоляНеполногоРабочегоВремени/НормаЧасов) * ВремяВЧасах) - РасчетнаяБаза, 0)

Как сюда добавить СН, РК и премию?
Как вариант можно, конечно, включить это начисление в расчётную базу СН, РК и Премии. И недостающие суммы будут сидеть там.
Либо создать доп. начисления СН2, РК2 и Премия2, которые будут начисляться только на Командировку.

Но главный бухгалтер хочет одной суммой )
А вот можно ли одной строкой сделать такое начисление... Вопрос...
22. rusia 10.11.17 10:10 Сейчас в теме
(21) я тоже немного не понял. Доплата до оклада с учетом надбавок - это логично. Но вот премия туда каким боком? Она ежемесячно начисляется? Она суммой считается или пропорционально времени отработанному? Бух хочет одной строкой? Пусть получит. Если без конфигуратора, тогда в расчетную базу сунуть оклад с надбавками, а Командировка вводится как показатель перед расчетом з/п. Ну, а с конфигуратором... там вообще все просто.
23. vikki0805 16.01.18 11:00 Сейчас в теме
Доплаты считаются в документе начисление зарплаты и взносов, НО если , например, отпуск рассчитывается на следующий месяц, а зарплата за текущий еще не рассчитана, то зарплата считается прямо в документе отпуск, а вот доплата не считается нигде. Как быть?
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот