Ошибка в отчете "Справки по НДФЛ" в Комплексной р.517

Исправление ошибки расчета сумм вычетов (по кодам 311, 312, 318) в п. 4.1 отчета "Справки по НДФЛ".

При создании справок в п.4.1. «Суммы предоставленных налогоплательщику налоговых вычетов» по кодам вычетов 311, 312, 318 неверно формируются суммы вычетов, т.е. суммируются накопительные суммы.

Для наглядности:

должно быть: (Январь 4000) + (Февраль 4000) + (Март 4000) = 12000

в отчете: (Январь 4000) + (Февраль 8000) + (Март 12000) = 24000

надеюсь понятно.


Исправление:

в стр. 2128 модуля отчета «СправкиПоНДФЛ» в Функция СоздатьСправкиПоСотруднику2011(…)

Заменить код

//вычеты предоставленные
СписокВычетовПредоставленных=ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1+СчМесяцев,3).ПолучитьЗначение(1);
СписокВычетовПредоставленных.Выгрузить(СписокВычетов);

Вычеты311=Число(ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1+СчМесяцев,3).ПолучитьЗначение(3));
Вычеты312=Число(ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1+СчМесяцев,3).ПолучитьЗначение(4));
Вычеты318=Число(ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1+СчМесяцев,3).ПолучитьЗначение(9));

СписокВычетов.ДобавитьЗначение(Вычеты311,»311″);
СписокВычетов.ДобавитьЗначение(Вычеты312,»312″);
СписокВычетов.ДобавитьЗначение(Вычеты318,»318″);

Если СчМесяцев>1 Тогда

//вычеты предоставленные
СписокВычетовПредоставленныхПрошлМесяц=ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1+СчМесяцев-1,3).ПолучитьЗначение(1);

Вычеты311=Число(ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1+СчМесяцев-1,3).ПолучитьЗначение(3));
Вычеты312=Число(ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1+СчМесяцев-1,3).ПолучитьЗначение(4));
Вычеты318=Число(ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1+СчМесяцев-1,3).ПолучитьЗначение(9));

СписокВычетовПредоставленныхПрошлМесяц.ДобавитьЗначение(Вычеты311,»311″);
СписокВычетовПредоставленныхПрошлМесяц.ДобавитьЗначение(Вычеты312,»312″);
СписокВычетовПредоставленныхПрошлМесяц.ДобавитьЗначение(Вычеты318,»318″);

Для СчВычетов = 1 По СписокВычетовПраво.РазмерСписка() Цикл

КодВычета = «»;
СписокВычетовПраво.ПолучитьЗначение(СчВычетов,КодВычета);

РазмерВычета = Число(СписокВычетов.Получить(КодВычета));

РазмерВычетаПрошлМесяц = Число(СписокВычетовПредоставленныхПрошлМесяц.Получить(КодВычета));
РазмерВычета = РазмерВычета — РазмерВычетаПрошлМесяц;
СписокВычетов.Установить(КодВычета,РазмерВычета);

КонецЦикла;

КонецЕсли;



на



//вычеты предоставленные
СписокВычетовПредоставленных=ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1+СчМесяцев,3).ПолучитьЗначение(1);
СписокВычетовПредоставленных.Выгрузить(СписокВычетов);

Вычеты311=Число(ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1+СчМесяцев,3).ПолучитьЗначение(3));
Вычеты312=Число(ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1+СчМесяцев,3).ПолучитьЗначение(4));
Вычеты318=Число(ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1+СчМесяцев,3).ПолучитьЗначение(9));

Если СчМесяцев>1 Тогда 

//вычеты предоставленные
СписокВычетовПредоставленныхПрошлМесяц=ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1+СчМесяцев-1,3).ПолучитьЗначение(1);

Вычеты311=Вычеты311-Число(ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1+СчМесяцев-1,3).ПолучитьЗначение(3));
Вычеты312=Вычеты312-Число(ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1+СчМесяцев-1,3).ПолучитьЗначение(4));
Вычеты318=Вычеты318-Число(ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1+СчМесяцев-1,3).ПолучитьЗначение(9));

СписокВычетовПредоставленныхПрошлМесяц.ДобавитьЗначение(Вычеты311,»311″);
СписокВычетовПредоставленныхПрошлМесяц.ДобавитьЗначение(Вычеты312,»312″);
СписокВычетовПредоставленныхПрошлМесяц.ДобавитьЗначение(Вычеты318,»318″);

Для СчВычетов = 1 По СписокВычетовПраво.РазмерСписка() Цикл

КодВычета = «»;
СписокВычетовПраво.ПолучитьЗначение(СчВычетов,КодВычета);

РазмерВычета = Число(СписокВычетов.Получить(КодВычета));

РазмерВычетаПрошлМесяц = Число(СписокВычетовПредоставленныхПрошлМесяц.Получить(КодВычета));
РазмерВычета = РазмерВычета — РазмерВычетаПрошлМесяц;
СписокВычетов.Установить(КодВычета,РазмерВычета);

КонецЦикла;

КонецЕсли;

СписокВычетов.ДобавитьЗначение(Вычеты311,»311″);
СписокВычетов.ДобавитьЗначение(Вычеты312,»312″);
СписокВычетов.ДобавитьЗначение(Вычеты318,»318″);



Буду рад если хоть кому-то статья окажется полезным.

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *