|
Учет компенсации доп. отпуска в документе увольнение из организации | ☑ | ||
---|---|---|---|---|
0
Alex1979rak
17.07.12
✎
05:20
|
Здравствуйте.
1С до сих пор не учитывает компенсацию дополнительного отпуска при увольнении сотрудников, хотя тема мульсируется уже много лет. Может кто уже правил документ? Скиньте как лучше сделать. |
|||
1
laeg
17.07.12
✎
07:08
|
А чем расчет компенсации дополнительного отпуска отличается от основного ?
|
|||
2
Alex1979rak
17.07.12
✎
07:27
|
А причем здесь расчет?
|
|||
3
Alex1979rak
17.07.12
✎
08:10
|
В модуле документа Увольнение из организации вроде все корректно, в общих модулях "ПроцедурыОбновленияИнформационнойБазы" и "ПроцедурыУправленияПерсоналом" Вид Дополнительный Отпуск присутствует, а в регистр накопления "ФактическиеОтпускаОрганизаций" содержит записи только ОсновногоОтпуска? Причем в документе регистраторе "НачисленияОтпускаСотрудникамОрганизаций" Дополнительный отпуск присутствует. Может просто дописать проводку документа по регистру?
|
|||
4
laeg
17.07.12
✎
08:57
|
Зачем ?
Остатки отпусков "почти корректно работают" с доп.отпусками. При увольнении сотрудника, используется тот же самый расчет, что и в остатках отпуска, только учитывается основной отпуск. Изменить всего один параметр, при запросе остатка - и полный остаток у вас в кармане. |
|||
5
Alex1979rak
17.07.12
✎
10:10
|
А если немного подробней, где меняем один параметр. В модуле документа в Процедуре РассчитатьКоличествоДнейОтпуска запрос и так вроде выбирает все виды отпуска из справочника "Виды ежегодных отпусков".
А в гиганских запросах общих модулей без бутылки не разберешься. |
|||
6
laeg
17.07.12
✎
12:20
|
В модуле документа "УвольнениеИзОрганизаций", есть процедура
Процедура РассчитатьКоличествоДнейОтпуска(СтрокаТЧ, СведенияОСотрудниках = Неопределено) Экспорт в ней строчка: Результат = ОстаткиОтпусков.ОстатокОтпускаСотрудникаНаДату(СтрокаТЧ.Сотрудник, СтрокаТЧ.ДатаУвольнения, Истина, СтрокаТЧ.ПорядокРасчетаОтпуска); Она возвращает остаток только по основному отпуску Для возврата полностью всех дней, можно оставить так: Результат = ОстаткиОтпусков.ОстатокОтпускаСотрудникаНаДату(СтрокаТЧ.Сотрудник, СтрокаТЧ.ДатаУвольнения); |
|||
7
laeg
17.07.12
✎
12:23
|
+(6)
Не знаю как в зупе, в упп нет выборки по всем видам отпусков Процедура РассчитатьКоличествоДнейОтпуска(СтрокаТЧ, СведенияОСотрудниках = Неопределено) Экспорт Если Не ЗначениеЗаполнено(СтрокаТЧ.Сотрудник) ИЛИ Не ЗначениеЗаполнено(СтрокаТЧ.ДатаУвольнения) ИЛИ СтрокаТЧ.ПорядокРасчетаОтпуска.Пустая() Тогда Возврат; КонецЕсли; //Результат = ОстаткиОтпусков.ОстатокОтпускаСотрудникаНаДату(СтрокаТЧ.Сотрудник, СтрокаТЧ.ДатаУвольнения, Истина, СтрокаТЧ.ПорядокРасчетаОтпуска); Результат = ОстаткиОтпусков.ОстатокОтпускаСотрудникаНаДату(СтрокаТЧ.Сотрудник, СтрокаТЧ.ДатаУвольнения); СтрокаТЧ.РабочийГодС = Результат.РабочийГодС; СтрокаТЧ.РабочийГодПо = Результат.РабочийГодПо; СтрокаТЧ.ДнейЧасовКомпенсацииУдержанияОтпуска = Результат.ОстатокНаДату * ?(Результат.ОстатокНаДату >= 0, 1, -1); СтрокаТЧ.ПризнакКомпенсацииОтпуска = Результат.ОстатокНаДату >= 0; УвольнениеИзОрганизацийПереопределяемый.ДополнительноУточнитьДниКомпенсации(СтрокаТЧ, ПолучитьСведенияОСотрудниках(СведенияОСотрудниках, СтрокаТЧ.Сотрудник)); КонецПроцедуры по идее она и не нужна, глобальная процедура и так считает остатки как свернуто так и развернуто по всем видам отпусков |
|||
8
Alex1979rak
18.07.12
✎
02:20
|
Не то, но за напрвление поиска большое спасибо.
|
|||
9
Alex1979rak
18.07.12
✎
04:42
|
Прошу прощения у уважаемого Laeg, за поспешные выводы. У меня тестовая ЗиУП была релиза 2.5.49.1
Сейчас обновил до последней 2.5.52.3 и получилось. Хотя так и не понял что дает отказ от уточнения порядка расчета отпуска? |
|||
10
laeg
18.07.12
✎
06:41
|
Передаваемые параметры в функцию, участвуют в Фильтрация при сборе данных и расчете остатка.
|
|||
11
Alex1979rak
18.07.12
✎
07:47
|
Еще раз благодарю за помощь, особенно за пояснения.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |