Исправление ошибки типового релиза ЗУП 2.5.118.1 в регламентированном отчёте "Расчет по страховым взносам"

Опубликовал Юрий Семенихин (human_new) в раздел Программирование - Практика программирования

В ЗУП 2.5.118.1 ошибка в регламентированном отчёте "Расчет по страховым взносам" за 1 квартал 2017. Коротко об ошибке: В отчёт не попадают сотрудники, уволенные до 2017 года, а попадать они обязаны,т.к. начисления по ним очень часто встречаются, например "Сохраняемый заработок на время трудоустройства" - это как раз выплата уже после увольнения сотрудника.

Не корректно заполняется графа "030" отчёта "Сумма выплат и иных вознаграждений, исчисленных в пользу физических лиц" 

Как исправить,

Открываем общий модуль -> ЗаполнениеРегламентированнойОтчетности ->  Процедура РасчетПоказателей_РСВ_2017Кв1

В этой процедуре видим первый запрос по сотрудникам организации и тут видим ошибку:

Это условие говорит о том, что уволенные сотрудники, по которым были сделаны начисления никогда не попадут в расчёт.

Если условие просто удалить, то в отчёт попадут все физики и индивидуальные сведения будут заполнены некорректно:

Я предлагаю удалить это устовие и добавить связь с основными и дополнительными начислениями в отчётном периоде, во всяком случае у меня этого оказалось достаточным, чтобы отчет стал работать корректно.

Вот полный текст данного запроса:

Запрос.Текст =
    "ВЫБРАТЬ
    |    ОсновныеНачисленияРаботниковОрганизаций.Сотрудник
    |ПОМЕСТИТЬ НачисленияФизикам
    |ИЗ
    |    РегистрРасчета.ОсновныеНачисленияРаботниковОрганизаций КАК ОсновныеНачисленияРаботниковОрганизаций
    |ГДЕ
    |    ОсновныеНачисленияРаботниковОрганизаций.Активность = ИСТИНА
    |    И ОсновныеНачисленияРаботниковОрганизаций.ПериодРегистрации МЕЖДУ &НачалоОтчетногоПериода И &КонецОтчетногоПериода
    |
    |ОБЪЕДИНИТЬ ВСЕ
    |
    |ВЫБРАТЬ РАЗЛИЧНЫЕ
    |    ДополнительныеНачисленияРаботниковОрганизаций.Сотрудник
    |ИЗ
    |    РегистрРасчета.ДополнительныеНачисленияРаботниковОрганизаций КАК ДополнительныеНачисленияРаботниковОрганизаций
    |ГДЕ
    |    ДополнительныеНачисленияРаботниковОрганизаций.Активность = ИСТИНА
    |    И ДополнительныеНачисленияРаботниковОрганизаций.ПериодРегистрации МЕЖДУ &НачалоОтчетногоПериода И &КонецОтчетногоПериода
    |;
    |
    |////////////////////////////////////////////////////////////////////////////////
    |ВЫБРАТЬ РАЗЛИЧНЫЕ
    |    НачисленияФизикам.Сотрудник
    |ПОМЕСТИТЬ ВТ_Физики
    |ИЗ
    |    НачисленияФизикам КАК НачисленияФизикам
    |;
    |
    |////////////////////////////////////////////////////////////////////////////////
    |ВЫБРАТЬ РАЗРЕШЕННЫЕ РАЗЛИЧНЫЕ
    |    РаботникиОрганизации.Сотрудник.Физлицо КАК Физлицо,
    |    РаботникиОрганизации.Организация КАК Организация,
    |    ВЫБОР
    |        КОГДА РаботникиОрганизации.ПериодЗавершения <= &НачалоПериода
    |                И РаботникиОрганизации.ПериодЗавершения <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
    |            ТОГДА РаботникиОрганизации.ОбособленноеПодразделениеЗавершения
    |        ИНАЧЕ РаботникиОрганизации.ОбособленноеПодразделение
    |    КОНЕЦ КАК ОбособленноеПодразделение
    |ПОМЕСТИТЬ ВТСписокФизическихЛицОрганизации
    |ИЗ
    |    ВТ_Физики КАК ВТ_Физики
    |        ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.РаботникиОрганизаций.СрезПоследних(
    |                &НачалоОтчетногоПериода,
    |                Организация = &парамГоловнаяОрганизация
    |                    И &ПервоеДополнительноеУсловие) КАК РаботникиОрганизации
    |        ПО ВТ_Физики.Сотрудник = РаботникиОрганизации.Сотрудник
    |ГДЕ
    |    ВЫБОР
    |            КОГДА РаботникиОрганизации.ПериодЗавершения <= &НачалоОтчетногоПериода
    |                    И РаботникиОрганизации.ПериодЗавершения <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
    |                ТОГДА РаботникиОрганизации.ОбособленноеПодразделениеЗавершения
    |            ИНАЧЕ РаботникиОрганизации.ОбособленноеПодразделение
    |        КОНЕЦ = &парамОрганизация
    |
    |ОБЪЕДИНИТЬ
    |
    |ВЫБРАТЬ РАЗЛИЧНЫЕ
    |    РаботникиОрганизации.Сотрудник.Физлицо,
    |    РаботникиОрганизации.Организация,
    |    РаботникиОрганизации.ОбособленноеПодразделение
    |ИЗ
    |    РегистрСведений.РаботникиОрганизаций КАК РаботникиОрганизации
    |ГДЕ
    |    РаботникиОрганизации.Период > &НачалоОтчетногоПериода
    |    И РаботникиОрганизации.Период <= &КонецОтчетногоПериода
    |    И РаботникиОрганизации.Организация = &парамГоловнаяОрганизация
    |    И РаботникиОрганизации.ОбособленноеПодразделение = &парамОрганизация
    |    И РаботникиОрганизации.ПричинаИзмененияСостояния <> ЗНАЧЕНИЕ(Перечисление.ПричиныИзмененияСостояния.Увольнение)
    |    И &ВтороеДополнительноеУсловие
    |
    |ОБЪЕДИНИТЬ
    |
    |ВЫБРАТЬ РАЗЛИЧНЫЕ
    |    Работники.Сотрудник.Физлицо,
    |    Работники.Организация,
    |    Работники.ОбособленноеПодразделениеЗавершения
    |ИЗ
    |    РегистрСведений.РаботникиОрганизаций КАК Работники
    |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.РаботникиОрганизаций КАК ПериодыПерекрытия
    |        ПО Работники.Сотрудник = ПериодыПерекрытия.Сотрудник
    |            И (ПериодыПерекрытия.Период <= Работники.ПериодЗавершения)
    |            И (ПериодыПерекрытия.Период > Работники.Период)
    |            И (ПериодыПерекрытия.Организация = &парамГоловнаяОрганизация)
    |ГДЕ
    |    Работники.ПериодЗавершения <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
    |    И Работники.ПериодЗавершения > &НачалоОтчетногоПериода
    |    И Работники.ПериодЗавершения <= &КонецОтчетногоПериода
    |    И Работники.ПричинаИзмененияСостоянияЗавершения <> ЗНАЧЕНИЕ(Перечисление.ПричиныИзмененияСостояния.Увольнение)
    |    И Работники.Организация = &парамГоловнаяОрганизация
    |    И Работники.ОбособленноеПодразделениеЗавершения = &парамОрганизация
    |    И ПериодыПерекрытия.Период ЕСТЬ NULL
    |    И &ТретьеДополнительноеУсловие
    |
    |ОБЪЕДИНИТЬ
    |
    |ВЫБРАТЬ РАЗЛИЧНЫЕ
    |    ДоговорНаВыполнениеРаботСФизЛицом.Сотрудник.Физлицо,
    |    ВЫБОР
    |        КОГДА ДоговорНаВыполнениеРаботСФизЛицом.Организация.ГоловнаяОрганизация = ЗНАЧЕНИЕ(Справочник.Организации.ПустаяСсылка)
    |            ТОГДА ДоговорНаВыполнениеРаботСФизЛицом.Организация
    |        ИНАЧЕ ДоговорНаВыполнениеРаботСФизЛицом.Организация.ГоловнаяОрганизация
    |    КОНЕЦ,
    |    ДоговорНаВыполнениеРаботСФизЛицом.Организация
    |ИЗ
    |    Документ.ДоговорНаВыполнениеРаботСФизЛицом КАК ДоговорНаВыполнениеРаботСФизЛицом
    |ГДЕ
    |    ДоговорНаВыполнениеРаботСФизЛицом.ДатаНачала <= &КонецОтчетногоПериода
    |    И ДоговорНаВыполнениеРаботСФизЛицом.ДатаОкончания >= &НачалоОтчетногоПериода
    |    И ДоговорНаВыполнениеРаботСФизЛицом.Проведен
    |    И ДоговорНаВыполнениеРаботСФизЛицом.Организация = &парамОрганизация
    |    И ЕСТЬNULL(ДоговорНаВыполнениеРаботСФизЛицом.ВидРасчета.КодДоходаСтраховыеВзносы, ЗНАЧЕНИЕ(Справочник.ДоходыПоСтраховымВзносам.ПустаяСсылка)) <> ЗНАЧЕНИЕ(Справочник.ДоходыПоСтраховымВзносам.НеЯвляетсяОбъектом)
    |
    |ИНДЕКСИРОВАТЬ ПО
    |    Физлицо,
    |    Организация";

Если у вас заработало, не забудте поставить плюсик за публикацию.

См. также

Комментарии
1. logdog (logdog) 21.04.17 14:25 Сейчас в теме
2. Юрий Семенихин (human_new) 166 21.04.17 14:34 Сейчас в теме
(1) Эту ошибку можно устранить только в новом релизе, а перед майскими праздниками многие хотят уехать пораньше.
3. rjhev korum (корум) 300 21.04.17 14:53 Сейчас в теме
(1) с какой целью интересуетесь?
4. Юрий Семенихин (human_new) 166 21.04.17 15:20 Сейчас в теме
(1) Отправили 20.04.2017 отчёт в ИФНС, не приняли! У них ещё снилсы и паспортные данные не прогружены, сказали только после 25 отправлять отчёты
5. logdog (logdog) 21.04.17 15:25 Сейчас в теме
(3) с целью писать в 1с об ошибке или нет....
6. Юрий Семенихин (human_new) 166 21.04.17 15:51 Сейчас в теме
(5) тут сложно понять, в релизе 2.5.116.1 с этой графой всё было норм, но в других были ошибки.
7. rjhev korum (корум) 300 21.04.17 16:03 Сейчас в теме
(5) больше сообщений - больше шанс, что не проигнорируют...
8. Юрий Семенихин (human_new) 166 22.04.17 07:20 Сейчас в теме
Я похоже понял, в последнем релизе пытались исправить ошибку, если человек не уволен и по нему не было начислений, то в индивидуальные сведения он должен попасть, надо не соединять, а объединять запросы.