При распределении сумм страховых взносов по счетам "родных" начислений сумма мат.помощи учитывается в полном объеме, а должны учитываться за вычетом скидки в 4000 руб.
Ошибка возникает из-за того, что при проведении документа "Начисление страховых взносов" в регистре расчетов ЕСНДополнительныеНачисления не заполняется ресурс Скидка. Похоже что 1С-ники просто забыли о нем
Исправлял так:
1. В модуле объекта документа РасчетСтраховыхВзносов, в процедуре СформироватьДвиженияПоСкидкам(...) в самый конец вставил кусок:
//НАЧАЛО 11.03.2010 регламентированный учет частично облагаемых начислений (материальной помощи)
//
// Скидки для записей регистра ЕСНДополнительныеНачисления тоже надо проставить, иначе проводки по страховым взносам
// сформируются неверно, без учета скидки.
//
МодифицируемаяТаблица = Движения.ЕСНДополнительныеНачисления.Выгрузить();
СтруктураПоиска = Новый Структура("ФизЛицо,КодДоходаЕСН");
Запрос.Текст =
"ВЫБРАТЬ
| РасчетИсчисленный.ФизЛицо КАК ФизЛицо,
| РасчетИсчисленный.Скидка,
| РасчетИсчисленный.ВидДохода КАК ВидДохода
|ПОМЕСТИТЬ ВТДанныеДокумента
|ИЗ
| &НеоблагаемыеСуммы КАК РасчетИсчисленный
|
|ИНДЕКСИРОВАТЬ ПО
| ФизЛицо,
| ВидДохода
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| ВТДанныеДокумента.ФизЛицо,
| ВТДанныеДокумента.ВидДохода КАК КодДоходаЕСН,
| СУММА(ВТДанныеДокумента.Скидка) КАК Скидка
|ИЗ
| ВТДанныеДокумента КАК ВТДанныеДокумента
|
|СГРУППИРОВАТЬ ПО
| ВТДанныеДокумента.ФизЛицо,
| ВТДанныеДокумента.ВидДохода";
Выборка = Запрос.Выполнить().Выбрать();
МассивКоэффициентов = Новый Массив;
Пока Выборка.Следующий() Цикл
ЗаполнитьЗначенияСвойств(СтруктураПоиска, Выборка); // Физлицо, КодДоходаЕСН
НайденныеСтроки = МодифицируемаяТаблица.НайтиСтроки(СтруктураПоиска);
Если НайденныеСтроки.Количество() = 0 Тогда
Продолжить;
КонецЕсли;
МассивКоэффициентов.Очистить();
Для Каждого НайденнаяСтрока Из НайденныеСтроки Цикл
МассивКоэффициентов.Добавить(НайденнаяСтрока.Результат);
КонецЦикла;
МассивРазмеровСкидок = ОбщегоНазначения.РаспределитьПропорционально(Выборка.Скидка, МассивКоэффициентов);
Для Сч = 0 По МассивРазмеровСкидок.Количество() - 1 Цикл
НайденныеСтроки[Сч].Скидка = МассивРазмеровСкидок[Сч];
КонецЦикла;
КонецЦикла;
Движения.ЕСНДополнительныеНачисления.Загрузить(МодифицируемаяТаблица);
//КОНЕЦ