1с8:УПП Вычет НДФЛ на третьего и более детей
При расчете вычета НДФЛ на третьего и последующего детей УПП (1.3.167.1) учитывает только последнюю запись регистра "Стандартные вычеты физических лиц на детей". Т.е. для 4-х из 6-ти детей в итоге расчетчику нужно "ручками" отслеживать сроки действия вычетов. Заменил часть запроса (в 2х местах) в общем модуле "Проведение расчетов", и теперь количество детей для вычета в периоде рассчитывает корректно. Но может я что-то не знаю в логике УПП? Кто-нибудь сталкивался с такой проблемой?
Было:
Стало:
Было:
...
|ВЫБРАТЬ
| ДатыРегистра.ФизЛицо КАК ФизЛицо,
| ДатыРегистра.МесяцНалоговогоПериода,
| ДатыРегистра.НачалоГодаНалоговогоПериода,
| ЕСТЬNULL(ДатыРегистра.КодВычета, ЗНАЧЕНИЕ(Справочник.ВычетыНДФЛ.ПустаяСсылка)) КАК КодВычета,
| ЕСТЬNULL(ВЫБОР
| КОГДА ВычетыНаДетей.ПериодЗавершения <= ДатыРегистра.МесяцНалоговогоПериода
| И ВычетыНаДетей.ПериодЗавершения <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
| ТОГДА ВычетыНаДетей.КоличествоДетейЗавершения
| ИНАЧЕ ВычетыНаДетей.КоличествоДетей
| КОНЕЦ, 0) КАК КоличествоДетей
|ПОМЕСТИТЬ ВТПраваНаВычетыНаДетей
|ИЗ
| (ВЫБРАТЬ
| Периоды.МесяцНалоговогоПериода КАК МесяцНалоговогоПериода,
| Периоды.ФизЛицо КАК ФизЛицо,
| ВычетыНаДетей.КодВычета КАК КодВычета,
| МАКСИМУМ(ВычетыНаДетей.Период) КАК ПериодРегистра,
| Периоды.НачалоГодаНалоговогоПериода КАК НачалоГодаНалоговогоПериода
| ИЗ
| ВТПериодыНалогаНаДоходы КАК Периоды
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НДФЛСтандартныеВычетыНаДетей КАК ВычетыНаДетей
| ПО Периоды.МесяцНалоговогоПериода >= ВычетыНаДетей.Период
| И Периоды.ФизЛицо = ВычетыНаДетей.Физлицо
|
| СГРУППИРОВАТЬ ПО
| Периоды.ФизЛицо,
| ВычетыНаДетей.КодВычета,
| Периоды.МесяцНалоговогоПериода,
| Периоды.НачалоГодаНалоговогоПериода) КАК ДатыРегистра
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НДФЛСтандартныеВычетыНаДетей КАК ВычетыНаДетей
| ПО ДатыРегистра.ПериодРегистра = ВычетыНаДетей.Период
| И ДатыРегистра.ФизЛицо = ВычетыНаДетей.Физлицо
| И ДатыРегистра.КодВычета = ВычетыНаДетей.КодВычета
|;
...
ПоказатьСтало:
...
|ВЫБРАТЬ
| ДатыРегистра.ФизЛицо КАК ФизЛицо,
| ДатыРегистра.МесяцНалоговогоПериода,
| ДатыРегистра.НачалоГодаНалоговогоПериода,
| ЕСТЬNULL(ДатыРегистра.КодВычета, ЗНАЧЕНИЕ(Справочник.ВычетыНДФЛ.ПустаяСсылка)) КАК КодВычета,
| СУММА(ЕСТЬNULL(ВЫБОР
| КОГДА ВычетыНаДетей.ПериодЗавершения <= ДатыРегистра.МесяцНалоговогоПериода
| И ВычетыНаДетей.ПериодЗавершения <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
| ТОГДА ВычетыНаДетей.КоличествоДетейЗавершения
| ИНАЧЕ ВычетыНаДетей.КоличествоДетей
| КОНЕЦ, 0)) КАК КоличествоДетей
|ПОМЕСТИТЬ ВТПраваНаВычетыНаДетей
|ИЗ
| (ВЫБРАТЬ
| Периоды.МесяцНалоговогоПериода КАК МесяцНалоговогоПериода,
| Периоды.ФизЛицо КАК ФизЛицо,
| ВычетыНаДетей.КодВычета КАК КодВычета,
| ВычетыНаДетей.Период КАК ПериодРегистра,
| Периоды.НачалоГодаНалоговогоПериода КАК НачалоГодаНалоговогоПериода
| ИЗ
| ВТПериодыНалогаНаДоходы КАК Периоды
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НДФЛСтандартныеВычетыНаДетей КАК ВычетыНаДетей
| ПО Периоды.МесяцНалоговогоПериода >= ВычетыНаДетей.Период
| И Периоды.ФизЛицо = ВычетыНаДетей.Физлицо) КАК ДатыРегистра
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НДФЛСтандартныеВычетыНаДетей КАК ВычетыНаДетей
| ПО ДатыРегистра.ФизЛицо = ВычетыНаДетей.Физлицо
| И ДатыРегистра.КодВычета = ВычетыНаДетей.КодВычета
| И ДатыРегистра.ПериодРегистра = ВычетыНаДетей.Период
|
|СГРУППИРОВАТЬ ПО
| ДатыРегистра.ФизЛицо,
| ДатыРегистра.МесяцНалоговогоПериода,
| ДатыРегистра.НачалоГодаНалоговогоПериода,
| ЕСТЬNULL(ДатыРегистра.КодВычета, ЗНАЧЕНИЕ(Справочник.ВычетыНДФЛ.ПустаяСсылка))
|;
...
ПоказатьОтветы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(4)
Спасибо за ответ. Изначально так и делали, пока не ошиблись с начислениями. Т.е. в итоге по логике УПП расчетчику нужно периоды в уме рассчитывать, меня при этом ранее созданные записи. Но это логически не правильно. Хорошо что больше 3-х детей редкость.
не правильно введено
Спасибо за ответ. Изначально так и делали, пока не ошиблись с начислениями. Т.е. в итоге по логике УПП расчетчику нужно периоды в уме рассчитывать, меня при этом ранее созданные записи. Но это логически не правильно. Хорошо что больше 3-х детей редкость.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот