ЗУП 3.1 среднемесячное количество рабочих часов. Показатель в Начислениях.

1. N2 3 04.12.17 17:29 Сейчас в теме
Коллеги, добрый вечер!

Есть производственный календарь на 2017-ый год (пятидневка обыкновенная).
Количество рабочих часов в ней 1973.
Среднемесячное количество рабочих часов 164,4166666666667 (1973/12).

Есть ли возможность выйти на это среднемесячное количество рабочих часов из показателей "Начислений"?

Пока решил вводом нового постоянного показателя для организации, который вводится документом "Ввод данных для расчета зарплаты" на период год и содержит это значение (164,4166666666667). Может быть есть какое-то более красивое решение?
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
3. Богатырев Артур 125 05.12.17 10:57 Сейчас в теме
(1) Такие вещи не раз делал, постоянный показатель - самое простое решение. Ввести 1 показатель на год и "забыть", а потом его везде где нужно в формулах начислений использовать.
Если же вообще везде у вас пересчет в часовую ставку делаться должен по среднемесячному числу часов, то Надежда в (2) подсказала.
2. user_2010 902 04.12.17 19:53 Сейчас в теме
Зависит от того как вы хотите использовать этот показатель.
Есть типовая настройка Настройка - Расчет зарплаты - Припересчете тарифной ставки сотрудника в стоимость часа (дня) использовать:
там есть вариант = Норму времени по производственному календарю

Может вам это поможет? Если вам нужно именно рассчитать стоимость часа от произв календаря.
4. N2 3 06.12.17 14:00 Сейчас в теме
(2) Надежда, спасибо.

(3) Нет, не везде, только для одного вида начисления. Вас понял. Спасибо. Буду тогда использовать постоянный показатель.
5. YanTsys 12 19.01.18 22:12 Сейчас в теме
(1) Если будете писать что-то типа регламентного задания для автоматического заполнения показателя то возможно пригодится в качестве заготовки следующий код:
&НаСервере
Функция СреднемесячноеКоличествоЧасов(Год) 
	
	Запрос = Новый Запрос;

	Запрос.УстановитьПараметр("Год",Год);
	Запрос.УстановитьПараметр("РабочийДень", Перечисления.ВидыДнейПроизводственногоКалендаря.Рабочий);
	Запрос.УстановитьПараметр("ПредпраздничныйДень", Перечисления.ВидыДнейПроизводственногоКалендаря.Предпраздничный);

	Запрос.Текст =
	"ВЫБРАТЬ
	| СУММА(ВЫБОР
	|   КОГДА РегламентированныйПроизводственныйКалендарь.ВидДня = &РабочийДень
	|	ТОГДА 1
	|   ИНАЧЕ 0
	|  КОНЕЦ) КАК ЧислоРабочихДней,
	| СУММА(ВЫБОР
	|   КОГДА РегламентированныйПроизводственныйКалендарь.ВидДня = &ПредпраздничныйДень
	|	ТОГДА 1
	|   ИНАЧЕ 0
	|  КОНЕЦ) КАК ЧислоПредпраздничныхДней
	|ИЗ
	| РегистрСведений.ДанныеПроизводственногоКалендаря КАК РегламентированныйПроизводственныйКалендарь
	|ГДЕ
	| РегламентированныйПроизводственныйКалендарь.Год = &Год";

	ВыборкаКалендаря = Запрос.Выполнить().Выбрать();
	Если ВыборкаКалендаря.Следующий() тогда
		ЧислоРабочихДнейВГоду = ?(ВыборкаКалендаря.ЧислоРабочихДней = NULL, 0, ВыборкаКалендаря.ЧислоРабочихДней); 
		ЧислоПредпраздничныхДнейВГоду = ?(ВыборкаКалендаря.ЧислоПредпраздничныхДней= NULL, 0, ВыборкаКалендаря.ЧислоПредпраздничныхДней);
	Иначе 
		ЧислоРабочихДнейВГоду = 0;
		ЧислоПредпраздничныхДнейВГоду = 0;
	КонецЕсли;
	
	СреднеМесячное = Окр((ЧислоРабочихДнейВГоду*8+ЧислоПредпраздничныхДнейВГоду*7)/12,2);

	Возврат СреднеМесячное;


КонецФункции
Показать
user594574_avtom.1c; +1 Ответить
Оставьте свое сообщение

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