Думаю, вопросы еще будут. А что если в одном периоде: начислено оклад - 200, больничный за счет соцстраха - 12000. Ждем письма ...
Текст модуля формы я поправил. Постарался ну очень подробно расписать. Можно оптимизировать алгоритм по своему представлению.
Процедура РассчитатьСтроку()
.......................................................
// с 2011 года по схеме
ПределНДФЛ = ноНДФЛ.Предел.Получить(КонецПериода);
СуммаВпределе= Мин(ОблагаемаяБаза+вычеты,ПределНДФЛ) ;
КоэфЕснВпределе=СуммаВпределе/(ОблагаемаяБаза+вычеты) ;
КоЭфЕСнЗаПределом =1-КоэфЕснВпределе;
ЕСНвПределе=окр(вычеты* КоэфЕснВпределе,2);
ЕСНзаПределом=вычеты-ЕСНвПределе;
Подоходный15= окр((Мин(ОблагаемаяБаза+вычеты,ПределНДФЛ)-ЕСНвПределе)*ноНДФЛ.Ставка.Получить(КонецПериода),2);
Подоходный17=окр((Макс(ОблагаемаяБаза+вычеты-ПределНДФЛ,0)-ЕСНзаПределом)*ноНДФЛ2.Ставка.Получить(КонецПериода),2);
Подоходный=Подоходный15+Подоходный17;
..................................
конецпроцедуры
тот алгоритм был в релизе:
// с 2011 года по схеме
// ПределНДФЛ = ноНДФЛ.Предел.Получить(КонецПериода);
// Подоходный = Мин(ОблагаемаяБаза,ПределНДФЛ)*ноНДФЛ.Ставка.Получить(КонецПериода)
// +Макс(ОблагаемаяБаза-ПределНДФЛ, 0)*ноНДФЛ2.Ставка.Получить(КонецПериода);