7.7 ЗиК Доплата За Ночные Часы По Табелю
12.05.2010
15:41
#11
"Вроде как решил проблему с подсчетом)) но есть один нюанс
в начале забыл указать что База должна состоять из Оклада и Вредности
...
База=Оклад+Вредность;
ДопЗаНЧ=(База/кол-во ч. в мес.)*коэффициент (процент)* кол-во НЧ
...
Я подставлял в формулу ВидРасчета.ДоплатаЗаВредность но считает неправильно
кто нибудь может помочь?
"
в начале забыл указать что База должна состоять из Оклада и Вредности
...
База=Оклад+Вредность;
ДопЗаНЧ=(База/кол-во ч. в мес.)*коэффициент (процент)* кол-во НЧ
...
Я подставлял в формулу ВидРасчета.ДоплатаЗаВредность но считает неправильно
кто нибудь может помочь?
"
12.05.2010
15:46
#12
> База должна состоять из Оклада и Вредности
Почему? У вас вредность уже накрутилась за это время на "Оплата ночных часов", какое отношение к вредности имеет "Доплата"??? Тогда получается вы дважды платите за вредность ночью. Это неверно!
Почему? У вас вредность уже накрутилась за это время на "Оплата ночных часов", какое отношение к вредности имеет "Доплата"??? Тогда получается вы дважды платите за вредность ночью. Это неверно!
12.05.2010
15:47
#13
"Как какая? Ночью спать сильнее хочется 
Набросок для спрашивающего (если все таки хотите решить задачу):
В модуле расчета "Доплата за ночные дни по табелю" есть два смысловых куска, один работает когда в табеле данные заполнены "сводно за месяц", а второй когда "с детализацией по дням". Если править, то править оба. Рассмотрим как нужно откорректировать первый кусок, то есть, тот который находится в вилке
> Если Документ.ПолнотаВводаДанных = 1 Тогда // подробные данные
Стоит там такая строчка:
> ТарифСотрудника = глПолучитьСуммуИзРеквизита(ТаблицаРеквизитов.Оклад,СледующаяДата)/глПолучитьСреднемесячноеКолвоЧасов(ГрафикРаботы,СледующаяДата);
Меняем ее на:
ТарифСотрудника = глПолучитьСуммуИзРеквизита(ТаблицаРеквизитов.Оклад,СледующаяДата);
и чуть ниже идет кусок:
> ПоТарифу = Часов*ТарифСотрудника*Ставка*Макс(Константа.КоэффициентДоплатыЗаРаботуВНочноеВремя-1,0);
меняем на:
Если глФормаТрудаПоТарифуОкладу(ТаблицаРеквизитов.ФормаТруда)="Оклад" Тогда
ДолженОтработатьЧасов=ГрафикРаботы.ОсновныеЧасы.Часов(НачальнаяДата,СледующаяДата);
Если ДолженОтработатьЧасов=0 Тогда
ПоТарифу=0; //не должен отработать ничего, но что то отработал (а может график не задан), как считать, может по алгоритму 1С? Решайте сами.
Иначе
ПоТарифу = Часов*ТарифСотрудника*Ставка*Макс(Константа.КоэффициентДоплатыЗаРаботуВНочноеВремя-1,0)/ДолженОтработатьЧасов;
КонецЕсли;
Иначе
ПоТарифу = Часов*ТарифСотрудника*Ставка*Макс(Константа.КоэффициентДоплатыЗаРаботуВНочноеВремя-1,0);
КонецЕсли;"
Набросок для спрашивающего (если все таки хотите решить задачу):
В модуле расчета "Доплата за ночные дни по табелю" есть два смысловых куска, один работает когда в табеле данные заполнены "сводно за месяц", а второй когда "с детализацией по дням". Если править, то править оба. Рассмотрим как нужно откорректировать первый кусок, то есть, тот который находится в вилке
> Если Документ.ПолнотаВводаДанных = 1 Тогда // подробные данные
Стоит там такая строчка:
> ТарифСотрудника = глПолучитьСуммуИзРеквизита(ТаблицаРеквизитов.Оклад,СледующаяДата)/глПолучитьСреднемесячноеКолвоЧасов(ГрафикРаботы,СледующаяДата);
Меняем ее на:
ТарифСотрудника = глПолучитьСуммуИзРеквизита(ТаблицаРеквизитов.Оклад,СледующаяДата);
и чуть ниже идет кусок:
> ПоТарифу = Часов*ТарифСотрудника*Ставка*Макс(Константа.КоэффициентДоплатыЗаРаботуВНочноеВремя-1,0);
меняем на:
Если глФормаТрудаПоТарифуОкладу(ТаблицаРеквизитов.ФормаТруда)="Оклад" Тогда
ДолженОтработатьЧасов=ГрафикРаботы.ОсновныеЧасы.Часов(НачальнаяДата,СледующаяДата);
Если ДолженОтработатьЧасов=0 Тогда
ПоТарифу=0; //не должен отработать ничего, но что то отработал (а может график не задан), как считать, может по алгоритму 1С? Решайте сами.
Иначе
ПоТарифу = Часов*ТарифСотрудника*Ставка*Макс(Константа.КоэффициентДоплатыЗаРаботуВНочноеВремя-1,0)/ДолженОтработатьЧасов;
КонецЕсли;
Иначе
ПоТарифу = Часов*ТарифСотрудника*Ставка*Макс(Константа.КоэффициентДоплатыЗаРаботуВНочноеВремя-1,0);
КонецЕсли;"
12.05.2010
15:52
#15
"Да, с обновлениями придется быть внимательным. Ну раз хочет менять, пусть меняет. Если не менять, то тоже подсказали выход - использование константы. Все решения выдали, все в руках у того кто спросил, что применит, то и будет
Посмотрел... можно, наверное и проще:
> ТарифСотрудника = глПолучитьСуммуИзРеквизита(ТаблицаРеквизитов.Оклад,СледующаяДата)/глПолучитьСреднемесячноеКолвоЧасов(ГрафикРаботы,СледующаяДата);
просто заменить на
ТарифСотрудника = глПолучитьСуммуИзРеквизита(ТаблицаРеквизитов.Оклад,СледующаяДата)/ГрафикРаботы.ОсновныеЧасы.Часов(НачальнаяДата,СледующаяДата);"
Посмотрел... можно, наверное и проще:
> ТарифСотрудника = глПолучитьСуммуИзРеквизита(ТаблицаРеквизитов.Оклад,СледующаяДата)/глПолучитьСреднемесячноеКолвоЧасов(ГрафикРаботы,СледующаяДата);
просто заменить на
ТарифСотрудника = глПолучитьСуммуИзРеквизита(ТаблицаРеквизитов.Оклад,СледующаяДата)/ГрафикРаботы.ОсновныеЧасы.Часов(НачальнаяДата,СледующаяДата);"
12.05.2010
15:54
#16
"> Как какая? Ночью спать сильнее хочется 
> Набросок для спрашивающего (если все таки хотите решить задачу):
> В модуле расчета "Доплата за ночные дни по табелю" есть два смысловых куска, один работает когда в табеле данные заполнены "сводно за месяц", а второй когда "с детализацией по дням". Если править, то править оба. Рассмотрим как нужно откорректировать первый кусок, то есть, тот который находится в вилке
> > Если Документ.ПолнотаВводаДанных = 1 Тогда // подробные данные
> Стоит там такая строчка:
> > ТарифСотрудника = глПолучитьСуммуИзРеквизита(ТаблицаРеквизитов.Оклад,СледующаяДата)/глПолучитьСреднемесячноеКолвоЧасов(ГрафикРаботы,СледующаяДата);
> Меняем ее на:
> ТарифСотрудника = глПолучитьСуммуИзРеквизита(ТаблицаРеквизитов.Оклад,СледующаяДата);
> и чуть ниже идет кусок:
> > ПоТарифу = Часов*ТарифСотрудника*Ставка*Макс(Константа.КоэффициентДоплатыЗаРаботуВНочноеВремя-1,0);
> меняем на:
> Если глФормаТрудаПоТарифуОкладу(ТаблицаРеквизитов.ФормаТруда)="Оклад" Тогда
> ДолженОтработатьЧасов=ГрафикРаботы.ОсновныеЧасы.Часов(НачальнаяДата,СледующаяДата);
> Если ДолженОтработатьЧасов=0 Тогда
> ПоТарифу=0; //не должен отработать ничего, но что то отработал (а может график не задан), как считать, может по алгоритму 1С? Решайте сами.
> Иначе
> ПоТарифу = Часов*ТарифСотрудника*Ставка*Макс(Константа.КоэффициентДоплатыЗаРаботуВНочноеВремя-1,0)/ДолженОтработатьЧасов;
> КонецЕсли;
> Иначе
> ПоТарифу = Часов*ТарифСотрудника*Ставка*Макс(Константа.КоэффициентДоплатыЗаРаботуВНочноеВремя-1,0);
> КонецЕсли;
------------------------------------------------------
Спасибо учту как вариант, но я сделал по другому
Добавил
....
Календарь = ГрафикРаботы.ОсновныеЧасы;
НачалоПериода = НачалоПериодаПоДате(ДатаНачала);
КонецПериода = КонецПериодаПоДате(ДатаОкончания);
РабочихДней = Календарь.Дней(НачалоПериода,КонецПериода);
РабочихЧасов = Календарь.Часов(НачалоПериода,КонецПериода);
.......
и поправил глПолучитьСреднемесячноеКолвоЧасов(ГрафикРаботы,СледующаяДата)на РабочихЧасов
ТарифСотрудника = (глПолучитьСуммуИзРеквизита(Объект.Оклад.Получить(ДатаОкончания), ДатаОкончания)/РабочихЧасов;
)))
Все равно спасибо))
"
> Набросок для спрашивающего (если все таки хотите решить задачу):
> В модуле расчета "Доплата за ночные дни по табелю" есть два смысловых куска, один работает когда в табеле данные заполнены "сводно за месяц", а второй когда "с детализацией по дням". Если править, то править оба. Рассмотрим как нужно откорректировать первый кусок, то есть, тот который находится в вилке
> > Если Документ.ПолнотаВводаДанных = 1 Тогда // подробные данные
> Стоит там такая строчка:
> > ТарифСотрудника = глПолучитьСуммуИзРеквизита(ТаблицаРеквизитов.Оклад,СледующаяДата)/глПолучитьСреднемесячноеКолвоЧасов(ГрафикРаботы,СледующаяДата);
> Меняем ее на:
> ТарифСотрудника = глПолучитьСуммуИзРеквизита(ТаблицаРеквизитов.Оклад,СледующаяДата);
> и чуть ниже идет кусок:
> > ПоТарифу = Часов*ТарифСотрудника*Ставка*Макс(Константа.КоэффициентДоплатыЗаРаботуВНочноеВремя-1,0);
> меняем на:
> Если глФормаТрудаПоТарифуОкладу(ТаблицаРеквизитов.ФормаТруда)="Оклад" Тогда
> ДолженОтработатьЧасов=ГрафикРаботы.ОсновныеЧасы.Часов(НачальнаяДата,СледующаяДата);
> Если ДолженОтработатьЧасов=0 Тогда
> ПоТарифу=0; //не должен отработать ничего, но что то отработал (а может график не задан), как считать, может по алгоритму 1С? Решайте сами.
> Иначе
> ПоТарифу = Часов*ТарифСотрудника*Ставка*Макс(Константа.КоэффициентДоплатыЗаРаботуВНочноеВремя-1,0)/ДолженОтработатьЧасов;
> КонецЕсли;
> Иначе
> ПоТарифу = Часов*ТарифСотрудника*Ставка*Макс(Константа.КоэффициентДоплатыЗаРаботуВНочноеВремя-1,0);
> КонецЕсли;
------------------------------------------------------
Спасибо учту как вариант, но я сделал по другому
Добавил
....
Календарь = ГрафикРаботы.ОсновныеЧасы;
НачалоПериода = НачалоПериодаПоДате(ДатаНачала);
КонецПериода = КонецПериодаПоДате(ДатаОкончания);
РабочихДней = Календарь.Дней(НачалоПериода,КонецПериода);
РабочихЧасов = Календарь.Часов(НачалоПериода,КонецПериода);
.......
и поправил глПолучитьСреднемесячноеКолвоЧасов(ГрафикРаботы,СледующаяДата)на РабочихЧасов
ТарифСотрудника = (глПолучитьСуммуИзРеквизита(Объект.Оклад.Получить(ДатаОкончания), ДатаОкончания)/РабочихЧасов;
)))
Все равно спасибо))
"
12.05.2010
16:00
#17
> > База должна состоять из Оклада и Вредности
>
> Почему? У вас вредность уже накрутилась за это время на "Оплата ночных часов", какое отношение к вредности имеет "Доплата"??? Тогда получается вы дважды платите за вредность ночью. Это неверно!
>
----------------------------------------------
1 не знаю какое имеет отношение но бухи сказали что должно быть так
2 нет не дважды, НЧ считаются исходя из ((Оклад+Вредность) / кол ч в мес.)* коэф. * кол НЧ
>
> Почему? У вас вредность уже накрутилась за это время на "Оплата ночных часов", какое отношение к вредности имеет "Доплата"??? Тогда получается вы дважды платите за вредность ночью. Это неверно!
>
----------------------------------------------
1 не знаю какое имеет отношение но бухи сказали что должно быть так
2 нет не дважды, НЧ считаются исходя из ((Оклад+Вредность) / кол ч в мес.)* коэф. * кол НЧ
12.05.2010
16:08
#18
> нет не дважды, НЧ считаются исходя из ((Оклад+Вредность) / кол ч в мес.)* коэф. * кол НЧ
>
Какая-то странная у вас вредность... и что это за коэффициент?
>
Какая-то странная у вас вредность... и что это за коэффициент?
12.05.2010
16:14
#19
> > нет не дважды, НЧ считаются исходя из ((Оклад+Вредность) / кол ч в мес.)* коэф. * кол НЧ
> >
> Какая-то странная у вас вредность... и что это за коэффициент?
>
процент за НЧ
> >
> Какая-то странная у вас вредность... и что это за коэффициент?
>
процент за НЧ
12.05.2010
16:20
#20
Во, нашел! Антиквариат!
Постановление ЦК КПСС, Совмина Советского Союза и ВЦСПС от 12.02.87 N 194 "О переходе объединений, предприятий и организаций промышленности и других отраслей народного хозяйства на многосменный режим работы с целью повышения эффективности производства", пунктом 9 которого установлены доплаты за каждый час работы в вечернюю и ночную смены при многосменном режиме работы в размере 20% и 40% тарифной ставки.
Постановление ЦК КПСС, Совмина Советского Союза и ВЦСПС от 12.02.87 N 194 "О переходе объединений, предприятий и организаций промышленности и других отраслей народного хозяйства на многосменный режим работы с целью повышения эффективности производства", пунктом 9 которого установлены доплаты за каждый час работы в вечернюю и ночную смены при многосменном режиме работы в размере 20% и 40% тарифной ставки.
Расходы будущих периодов (выгрузка из Зик 7.7 релиз 295 в Бухгалтерию 7.7 релиз 514)Настройка управленческого учёта! Приход/расход на складе!
Читают тему
(гостей: 1)