Здравствуйте. Не работает загрузка электронных больничных листов из ФСС. При запросе данных выкидывает из программы. До 30.10.2018 все работало без проблем.Никаких обновлений в 1С не делали.
Подскажите, кто еще столкнулся с такой проблемой?
(1) сегодня столкнулись с той же проблемой, тоже ничего не делали. Вероятно что проблема не на нашей стороне, раз случай не единичный, у нас версия стоит 1.3.112.4
Также в пятницу столкнулись с неполадками, только при загрузке ЭЛН выходила ошибка "Индекс находится за границами массива". Никто не сталкивался с такой проблемой - постоянно слетает сертификат ФСС, приходится практически через раз заходить и перевыбирать его в настройках организации?
(6) Не решили проблему? У нас так же нужно перевыбирать сертификаты у разных пользователей. Думаю это как то должно настраиваться, что бы у нескольких пользователей можно было загружать больничные листы с ФСС.
Сейчас у нас вышла другая ошибка: Не удалось зашифровать файл.
И ничего не грузиться. С чем это может быть связано?
(7) Ошибки периодически возникают, но в условиях отстуствия обновления конфигурации, т.е. можно сделать вывод что это следствие экспериментов с их стороны. Т.к. ничем не примечательный больничный сегодня грузится, завтра нет, через пару часов опять все работает, причем ошибки всегда разные. Попробуйте повторить немного позже. С перевыбиранием пока что все осталось также..
Зарплата и управление персоналом КОРП, редакция 2.5 (2.5.159.4)
Платформа 1С:Предприятие 8.3 (8.3.18.1208)
Примерно с 18.03.21 г. при загрузке ЭЛН по уходу за ребенком стала возникать ошибка:
{ОбщийМодуль.ОбменСведениямиОПособияхСФСС.Модуль(5447)}: Поле объекта не обнаружено (reason1)
Если скачать xml напрямую, то этот самый reason1 (Причина нетрудоспособности) в файле присутствует со значением 09 - все как положено, но при загрузке почему-то не определяется. И это касается только ЭЛН по уходу за ребенком, остальные закачиваются нормально.
Временно вышли из положения с помощью обработки (http://infostart.ru/public/819575/) - спасибо автору. Но интересно было бы вернуться к штатной загрузке больничного из ФСС.
У кого-нибудь такая ошибка проявляется? Как можно с ней побороться?
Бороться очень просто:
Идёте в конфигураторе в указанную в ошибке строку 5447 общего модуля ОбменСведениямиОПособияхСФСС и чуть-чуть дописываете условие:
Было в типовой так:
Если ДанныеЛН["reason1"] = "03" Тогда
СтатусыДоступныхЛН.Добавить("010");
СтатусыДоступныхЛН.Добавить("020");
СтатусыДоступныхЛН.Добавить("060");
СтатусыДоступныхЛН.Добавить("070");
СтатусыДоступныхЛН.Добавить("080");
КонецЕсли;
добавляете условие:
Если ДанныеЛН.Свойства().Получить("reason1") <> Неопределено Тогда // добавили проверку на присутствие "reason1" в блоке
// WSResult.Data.OutRowset.responseRow
Если ДанныеЛН["reason1"] = "03" Тогда
СтатусыДоступныхЛН.Добавить("010");
СтатусыДоступныхЛН.Добавить("020");
СтатусыДоступныхЛН.Добавить("060");
СтатусыДоступныхЛН.Добавить("070");
СтатусыДоступныхЛН.Добавить("080");
КонецЕсли;
КонецЕсли; // конец проверки
Если Вы посмотрите на xml-файл ЭЛН, то увидите, что параметр "reason1" для обычных больничных листов (не по уходу) находится в блоке Data - OutRowset - responseRow, а вот для больничных по уходу в блоке Data - OutRowset - responseRow - servData - servFullData.
Процедура ПроверкаРезультатаОбменаЭЛН() в которой возникает эта ошибка работает только с блоком Data - OutRowset - responseRow и если б/л не по уходу, то всё корректно загружается, т. к. параметр "reason1" в этом случае действительно в этом блоке присутствует. Но если это б/л по уходу, то этого параметра в блоке нет (он находится в другом блоке), система его не находит и просто вываливается в ошибку.
Причина этого: программисты 1С забыли добавить проверку на сам факт наличия параметра "reason1" прежде чем обрабатывать условие
Если ДанныеЛН["reason1"] = "03" Тогда
..........................
КонецЕсли;
В ответе (10) мы их ошибку исправляем)