Имя: Пароль:
1C
1C 7.7
v7: Получение вычетов (НДФЛ) по сотруднику
0 brenli
 
23.05.16
15:31
Добрый день всем.
Задача такая :  нужно получить суммы предоставляемых вычетов по НДФЛ по каждому сотруднику из документа НачислениеЗП конфа "Бухгалтерия 4.5" , и потом свернуть чтобы получить итоговую цифру.
Сумма по документу начисленно
Сумма вычетов.


Наваял такую процедурку:

Функция СуммаВычетовПоСотрудникам(Сч, Сотр, ДокДата, СуммаИтогом)
    ВычетыСотрудниковПоНДФЛ = СоздатьОбъект("Справочник.ВычетыСотрудниковПоНДФЛ");
    ВычетыСотрудниковПоНДФЛ.ИспользоватьВладельца(Сотр);
    ВычетыСотрудниковПоНДФЛ.ВыбратьЭлементы();
    СуммаВычетовВсего = 0;
    Пока ВычетыСотрудниковПоНДФЛ.ПолучитьЭлемент()=1 Цикл    
        ВычетыСотрудниковПоНДФЛ.ТекущийЭлемент();        
        СуммаВычета = ВычетыСотрудниковПоНДФЛ.ВидВычета.Сумма.Получить(ДокДата);
        Предел      = ВычетыСотрудниковПоНДФЛ.ВидВычета.ПределДоходов.Получить(ДокДата);
        КодКолонки  = ВычетыСотрудниковПоНДФЛ.ВидВычета.КодДляОтчетности2015;
        Если ВычетыСотрудниковПоНДФЛ.ПометкаУдаления()=1 Тогда
            Продолжить;
        КонецЕсли;    
        Если НЕ(ДокДата >= ВычетыСотрудниковПоНДФЛ.ДатаНачала)  Тогда  
            Продолжить;
        КонецЕсли;
        Если НЕ(ДокДата <= КонМесяца(ВычетыСотрудниковПоНДФЛ.ДатаОкончания)) И (ВычетыСотрудниковПоНДФЛ.ДатаОкончания <>   '  .  .  ')   Тогда  
            Продолжить;
        КонецЕсли;    
        Если СуммаВычета = 0 Тогда
            Продолжить;
        КонецЕсли;      
        Если СуммаИтогом > Предел Тогда
            Продолжить;    
        КонецЕсли;
        
        ТЗ_СотрИНачислений.УстановитьЗначение(Сч,"Код"+СокрЛП(КодКолонки),СуммаВычета);
        СуммаВычетовВсего = СуммаВычетовВсего + СуммаВычета;
    //    ТЗ_СотрИНачислений.НоваяКолонка(Строка(ВидВычета),"Число",,2);
        
    КонецЦикла;  
    
    
    Возврат СуммаВычетовВсего;
КонецФункции    

Все корректно выводит, но есть одно НО.
З.п начисляется по 4 подразделениям и НДФЛ сдается по 4 подразделениям.
Сравнил полученные процедурой итоги со сданной ведомостью 6 НДФЛ  и суммы вычетам  по 2 подразделениям из 4х не сходятся.
Почему такое может быть?
Больше всего непонятно почему в декларации 6 НДФЛ  сумма в графе "Сумма вычетов" идет не круглая, а например 214156 .
Как такое число может получиться когда у всех сотрудников вычеты в основном равные сумме 1400, 2800 ?
Как рассчитывается эта строка. Я что то не могу найти концов в алгоритме.
1 elisabet
 
23.05.16
15:39
(0) а ничего что туда и имущественные вычеты считаются. И открою тебе большой секрет - они равны сумме зарплаты с копейками.
2 шаэс
 
23.05.16
15:40
(0) смотрите обработку по подготовке годовой отчетности по НДФЛ - там прекрасно собираются вычеты. Про некруглые суммы - так вычеты предоставляются не больше дохода - это раз, два - могут дробиться между подразделениями, три - есть и имущественные вычеты как ни крути
3 brenli
 
23.05.16
15:41
(2) Спс. Сейчас буду "курить".
4 brenli
 
24.05.16
08:09
(2)  А что это за обработка?
Убился, но найти не мог.
Нашел обработку глСобратьДанныеДляНДФЛ2016 но она используется только для предоставления справок за год, и для отчета 6 НДФЛ не используется.

Так же по поводу имущественных вычетов у нас в программе бух. имущество не ведет. Возмещают сами.
Суммы доходов у всех сотрудников работающих в квартале превышают суммы вычета.
И по подразделениям не делятся, так как никаких передвижек не было и сотрудники работали в одном подразделении.

Более того скажу:
В процедуре проведения документа "Начисление ЗП" вывел всех сотрудников и все их начисления которые конфа берет для расчета НДФЛ.
Все вычеты получились как у меня в отчете.
Т.е получилось круглая цифра.
37 000  по подразделению за квартал.
В регламентном отчете 6 НДФЛ сумма вычетов составила       36 998 руб.
((
HELP
5 hhhh
 
24.05.16
08:16
(4) ну, из-за 2х рублей даже и не заморачивайтесь.
6 brenli
 
24.05.16
08:18
(5) По основному подразделению разбег еще больше 644 рубля.
7 шаэс
 
24.05.16
08:25
(4) стоп, так у вас главный вопрос в том, чтобы понять что и как в 6-НДФЛ попадает? а там еще не сделали кнопку "расшифровать"? тогда в процедуру регламентированного отчета лезьте и смотрите  как собирают вычеты
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.