Имя: Пароль:
1C
1С v8
ЗУП расчет удержаний при переходящем отпуске
0 МастерВопросов
 
31.10.11
12:31
Начисление отпуска расчитывает такие суммы:
Август (15.08-31.08) 4640,32
Сентябрь (01.09-11.09) 3002,56  

Начисление зарплаты (Первая половина текущего месяца) Август:
Начислено за 11 дней: (2558,70+767,61+511,74)=3838,05
НДФЛ за август: 972,00 руб = ((4640,32+3838,05)-1000(вычет на детей))*0,13
НДФЛ за сентябрь: 260,00 руб = (3002,56-1000(вычет на детей))*0,13
Удержания по исполнительному листу:
(01.08-22.08) 1811,59 (база = 4640,32+3838,05)
А ЗА СЕНТЯБРЬ НЕ СЧИТАЕТ УДЕРЖАНИЯ!

Начисление зарплаты (Текущий месяц) Август:
Начислено: (2558,70+767,61+511,74)=3838,05
НДФЛ за август: 972,00 руб
НДФЛ за сентябрь: 260,00 руб
Удержания по исполнительному листу:
(01.08-31.08) 2562,23!!!(уже с учетом сентябрьских удержаний)(база = 4640,32+3838,05+3002,56)


Подкскажите как в документе "Начисление зарплаты (Первая половина текущего месяца) Август" сделать чтобы считались удержания со всего отпуска включая его сентябрьскую часть.
1 МастерВопросов
 
31.10.11
13:08
т.к. мы платим по работнику з.плату до отпуска по документу "Начисление зарплаты (Первая половина текущего месяца) Август", то когда в конце месяца документ "Начисление зарплаты (Текущий месяц) Август" пересчитывает удержания, возникает долг за работником 750,64=2562,23-1811,59
2 Bell
 
01.11.11
00:06
Не понял... Расчет ведется в августе (за весь отпуск)... все в августе! Будет расчет в сентябре там и появятся удержания сентября.
3 МастерВопросов
 
01.11.11
05:09
(2) а почему тогда Начисление зарплаты (Текущий месяц) Август включает в свои расчеты удержания с отпуска за сентярбрь?
4 МастерВопросов
 
01.11.11
05:23
+(3) и когда считаем НДФЛ там учитываются начисления за весь отпуск август+сентябрь, и в начислениях за первую полвину месяца и в начилсениях за текущий месяц. А в удержаниях за первую половину месяца учитывается только августовский отпуск.
5 МастерВопросов
 
02.11.11
07:25
Сделал такую залипуху:
Документ НачислениеЗарплатыРаботникамОрганизации: МодульОбъекта

Функция СформироватьТаблицуУдержаний(Удержания, ОкончаниеПериодаЗаполнения, МассивВалютСНезаданнымКурсом)
...
   Пока Удержания.Следующий() Цикл
...
       //для правильного расчета удержаний алиментов с отпусков изменим ОкончаниеПериодаЗаполнения
         Если Удержания.ВидРасчета=ПланыВидовРасчета.УдержанияОрганизаций.ИЛПроцентом и (ОкончаниеПериодаЗаполнения+86399)<>КонецМесяца(ОкончаниеПериодаЗаполнения) Тогда
           //Удержания.Физлицо
             //Удержания.Период=01.08.2011
           Запрос2=Новый Запрос();
           Запрос2.Текст="ВЫБРАТЬ
                               |МАКСИМУМ(ОсновныеНачисленияРаботниковОрганизаций.ПериодДействияНачало) КАК ПериодДействияНачало
                               |ИЗ
                               |    РегистрРасчета.ОсновныеНачисленияРаботниковОрганизаций КАК ОсновныеНачисленияРаботниковОрганизаций
                               |ГДЕ
                               |    ОсновныеНачисленияРаботниковОрганизаций.ФизЛицо = &ФизЛицо
                               |    И ОсновныеНачисленияРаботниковОрганизаций.ВидРасчета = &ВидРасчета
                               |    И ОсновныеНачисленияРаботниковОрганизаций.ПериодРегистрации = &ПериодРегистрации
                               |    И ОсновныеНачисленияРаботниковОрганизаций.Активность = ИСТИНА
                               |";
                             
                             Запрос2.УстановитьПараметр("ПериодРегистрации",Удержания.Период);
                             Запрос2.УстановитьПараметр("ФизЛицо",Удержания.Физлицо);
                             Запрос2.УстановитьПараметр("ВидРасчета",ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.ОплатаПоСреднемуОтпКалендарныеДни);
                             
                             ТабЗапроса=Запрос2.Выполнить().Выгрузить();
                             Если ТабЗапроса[0].ПериодДействияНачало<>NULL Тогда
                                 Если ТабЗапроса[0].ПериодДействияНачало>ОкончаниеПериодаЗаполнения Тогда
                                    ОкончаниеПериодаЗаполненияСоответствие.Вставить(Удержания.Физлицо, ТабЗапроса[0].ПериодДействияНачало);
                                 КонецЕсли;
                             КонецЕсли;
                     
         КонецЕсли;
       ОкончаниеПериодаЗаполненияЗначение = ОкончаниеПериодаЗаполненияСоответствие.Получить(Удержания.Физлицо);
       Если ОкончаниеПериодаЗаполненияЗначение<>неопределено Тогда
           НоваяСтрока.ДатаОкончания = ОкончаниеПериодаЗаполненияЗначение;
       Иначе
           НезакрытыеСтроки.Добавить(НоваяСтрока);
       КонецЕсли;
6 МастерВопросов
 
02.11.11
07:28
Все эти телодвижения для того чтобы расчитаться с отпускником в "нуль" на момент выплаты аванса.
Стандартно же наша ЗУП расчитывается окончательно с отпускниом только на момент начислений за "Начисление зарплаты (Текущий месяц)", но к этому моменту человек уже давно в отпуске.