Доходы 2000 и 2002 - проблема при формировании Справки о доходах.
Формирую Справку о доходах за 2016 год, получаю некоторые суммы. Меняю в виде расчета "Премия...." код дохода с 2000 на 2002 и формирую справку снова. Итоговые суммы меняются. Начинаю разбираться - в апреле месяце был перерасчет зарплаты за предыдущий период, где эта премия проходила +- с выходом на ноль. В справке о доходах с кодом 2002 эта премия не видит в апреле минус за март, но видит плюс за март и соответственно складывает Апрель+Март и получаем задвоение дохода и увеличение НДФЛ. Может кто нибудь сталкивался с данной проблемой и подскажет что нибудь. Заранее благодарен.
Найденные решения
Сталкивался, в частности когда сторнировался больничный лист. Эта ошибка возникает только в случае сторнирования и только для видов расчета, учитываемых в расчете НДФЛ по периоду регистрации, а именно у которых код дохода не равен 2000 и 2012 (эти виды учитываются по периоду действия). Пришлось внести соответствующую правку в глобальный модуль.
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Сталкивался, в частности когда сторнировался больничный лист. Эта ошибка возникает только в случае сторнирования и только для видов расчета, учитываемых в расчете НДФЛ по периоду регистрации, а именно у которых код дохода не равен 2000 и 2012 (эти виды учитываются по периоду действия). Пришлось внести соответствующую правку в глобальный модуль.
(4) Находите поиском в глобальном модуле функцию "глСобратьДанныеДляНДФЛ2016". Далее находите в ней строку "ДоходыПоРегистрацииСторно=1".
Вот фрагмент кода, дающий ошибку:
Я его заменил на:
чтобы отпуска и больничные при сторнировании не давали эту ошибку.
Вот фрагмент кода, дающий ошибку:
//если вызов функции осуществлен для распределения НДФЛ по ИФ, не регистрируем в таблице доходов
//сторно дохода по периоду регитсрации, зарегистрированные в периоде формирования отчета
Если (ВызовДляРаспределенияНДФЛ=0) или ((ВызовДляРаспределенияНДФЛ=1) и (ЖрнЗарплата.НачалоПериодаПоДате(ПериодРегистрации)<>ЖрнЗарплата.НачалоПериодаПоДате(ДатаАктуальности))) Тогда
ДоходыПоРегистрацииСторно=1;
КонецЕсли;
Я его заменил на:
Если (ВызовДляРаспределенияНДФЛ=0) или ((ВызовДляРаспределенияНДФЛ=1) и (ЖрнЗарплата.НачалоПериодаПоДате(ПериодРегистрации)<>ЖрнЗарплата.НачалоПериодаПоДате(ДатаАктуальности))) Тогда
//Е.В.
Если (ВР.ВходитВГруппу(ГруппаРасчетов.Отпуска)=1) или (ВР.ВходитВГруппу(ГруппаРасчетов.БольничныеЛисты)=1) Тогда
Если (ПериодРегистрации>=НачалоГода)и(ПериодРегистрации<=ОкончаниеГода) Тогда
ДоходыПоРегистрации=1;
Иначе
Продолжить;
КонецЕсли;
Иначе
ДоходыПоРегистрацииСторно=1;
КонецЕсли;
КонецЕсли;
Показатьчтобы отпуска и больничные при сторнировании не давали эту ошибку.
(4)
В глобальном в процедуре ГлПолучитьСписокВРДляРасчетаНДФЛ2016()
Добавил
В глобальном в процедуре ГлПолучитьСписокВРДляРасчетаНДФЛ2016()
Если (КодДохода="2000") Или (КодДохода="2002") Или ((КодДохода="2012") И (УчетОтпуска=0)) Тогда
СписокВРПоПериодуДействияГод.ДобавитьЗначение(ВР);
Иначе
СписокВРПоПериодуРегистрацииГод.ДобавитьЗначение(ВР);
КонецЕсли;
Добавил
Или (КодДохода="2002")
(7) Так Вы решили вопрос с конкретным видом расчета с кодом дохода "2002", но не исключили той же ошибки в случае сторнирования например больничного. Включать его в список по периоду действию нельзя, т.к. бывают случаи пересчета больничного (принес справку для расчета больничного) за прошлый и даже позапрошлый год, а налоговый период за тот год уже закрыт и базу по НДФЛ того года менять нельзя. Более правильно сделать по аналогии с тем, что я написал выше.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот