Имя: Пароль:
1C
 
Отражение зарплаты в финансовом учете, начисление облагается НДФЛ (а не должно)
0 Momus
 
23.09.20
13:59
КА 2 (2.4.12.81)
Есть два сотрудника. Для них было проведено разовое начисление, которое не облагается НДФЛ. Теперь я создаю документ "Отражение зарплаты в финансовом учете" и заполняю его по кнопке. После этого заполняется таблица "Начисления и взносы". Одна из строк в этой таблице - это мое разовое начисление без НДФЛ. Проблема заключается в том, что в эту строку попадает только один сотрудник, а должно быть два. Все движения по этим двум сотрудникам одинаковы.
1 Momus
 
23.09.20
13:59
Нашел нужную функцию в общем модуле, которая отвечает за "не облагается НДФЛ":
Процедура ДополнитьТаблицуНачислений(ТаблицаНачислений) Экспорт
    
    Если ТаблицаНачислений.Колонки.Найти("НеОблагаетсяНДФЛ") = Неопределено Тогда
        ТаблицаНачислений.Колонки.Добавить("НеОблагаетсяНДФЛ", Новый ОписаниеТипов("Булево"));
    КонецЕсли;
    
    Если ТаблицаНачислений.Колонки.Найти("Начисление") = Неопределено Тогда
        Возврат;
    КонецЕсли;
    
    НачисленияНеОблагаемыеНДФЛ = Новый Соответствие;
    
    Для Каждого СтрокаТаблицы Из ТаблицаНачислений Цикл
        
        Если НачисленияНеОблагаемыеНДФЛ[СтрокаТаблицы.Начисление] = Истина Тогда
            СтрокаТаблицы.НеОблагаетсяНДФЛ = Истина;
        ИначеЕсли НачисленияНеОблагаемыеНДФЛ[СтрокаТаблицы.Начисление] = Неопределено Тогда
            НачисленияНеОблагаемыеНДФЛ.Вставить(СтрокаТаблицы.Начисление,
                НачислениеНеОблагаетсяНДФЛ(СтрокаТаблицы.Начисление));
        КонецЕсли;
        
    КонецЦикла;
    
КонецПроцедуры

Функция НачислениеНеОблагаетсяНДФЛ(Начисление)
    
    Если ТипЗнч(Начисление) = Тип("ПланВидовРасчетаСсылка.Начисления")
        ИЛИ ТипЗнч(Начисление) = Тип("СправочникСсылка.ВидыВыплатБывшимСотрудникам")
        ИЛИ ТипЗнч(Начисление) = Тип("СправочникСсылка.ВидыПрочихДоходовФизическихЛиц") Тогда
        Возврат НЕ ЗначениеЗаполнено(Начисление.КодДоходаНДФЛ);
    ИначеЕсли ТипЗнч(Начисление) = Тип("ПеречислениеСсылка.ВидыОсобыхНачисленийИУдержаний") Тогда
        Возврат Начисление = Перечисления.ВидыОсобыхНачисленийИУдержаний.ПособиеНаПогребение
            ИЛИ Начисление = Перечисления.ВидыОсобыхНачисленийИУдержаний.СтоимостьПодарковПризов;
    КонецЕсли;
    
    Возврат Ложь;
    
КонецФункции

Получается, что при обходе таблицы начислений если начисления текущей строки нет в соответствии НачисленияНеОблагаемыеНДФЛ, то текущая строка не изменяется (т.к. строка облагается ндфл), а для всех последующих все корректно.
2 Momus
 
23.09.20
14:00
то текущая строка не изменяется (т.е. строка облагается ндфл), а для всех последующих все корректно*
3 Momus
 
23.09.20
14:08
Не могу понять это ошибка или что-то не так делаю. Два сотрудника совершенно одинаковы, но для одного из них вот такая вот беда с начислением. При отладке уперся в процедуру выше. Дальше по коду не таблица меняется. Процедуры находятся в общем модуле "ОтражениеЗарплатыВФинансовомУчетеУП".
4 Momus
 
23.09.20
15:46
В ERP, которая заполняется другими сотрудниками, аналогичная история. Думаю это баг. Интересно было бы узнать, что там в зупе
Независимо от того, куда вы едете — это в гору и против ветра!