Обновление 1СУПП. Метод объекта не обнаружен (КонтекстЭДОЛокальный)
Приветствую всех.
При обновлении релиза с 1.3.209.1 до 1.3.210.1 УПП вываливается ошибка.
При обновлении информационной базы возникла ошибка:
{ОбщийМодуль.ОбновлениеИнформационнойБазы.Модуль(105)}: Обновление информационной базы на версию "1.3.211.1" завершилось с ошибками:
{ОбщийМодуль.ЭлектронныйДокументооборотСФСС.Модуль(301)}: Метод объекта не обнаружен (КонтекстЭДОЛокальный)
РегламентированнаяОтчетность.КонтекстЭДОЛокальный().ПриПолученииСодержимогоСообщенияСЭДО(Сообщение.Организация, Сообщение);
ВызватьИсключение Сообщение;
Подробности см. в Журнале регистрации.
Подскажите, что делать? Спасибо.
При обновлении релиза с 1.3.209.1 до 1.3.210.1 УПП вываливается ошибка.
При обновлении информационной базы возникла ошибка:
{ОбщийМодуль.ОбновлениеИнформационнойБазы.Модуль(105)}: Обновление информационной базы на версию "1.3.211.1" завершилось с ошибками:
{ОбщийМодуль.ЭлектронныйДокументооборотСФСС.Модуль(301)}: Метод объекта не обнаружен (КонтекстЭДОЛокальный)
РегламентированнаяОтчетность.КонтекстЭДОЛокальный().ПриПолученииСодержимогоСообщенияСЭДО(Сообщение.Организация, Сообщение);
ВызватьИсключение Сообщение;
Подробности см. в Журнале регистрации.
Подскажите, что делать? Спасибо.
Найденные решения
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Запрос находится в процедуре
Список запросов внушительный с 1 июня 2023 года
Вызывается процедура ПовторноОбработатьВходящиеСообщенияСЭДО
Как раз в ней и строка, на которую ругается программа
РегламентированнаяОтчетность.КонтекстЭДОЛокальный().ПриПолученииСодержимогоСообщенияСЭДО(Сообщение.Организация, ...)
Я пробовал комментировать тело процедуры ЗаполнитьЗапросыПоСпецификации_2_34()
Обновление завершается успешно. Но это же не порядок.
Продолжаю ковыряться.
Процедура ЗаполнитьЗапросыПоСпецификации_2_34() Экспорт
ДатаНачала = '20230601';
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ВходящийЗапросФССДляРасчетаПособия.Ссылка КАК Ссылка,
| ВходящийЗапросФССДляРасчетаПособия.ИдентификаторСообщения КАК ИдентификаторСообщения,
| ВходящиеСообщенияСЭДОФСС.Содержимое КАК Содержимое
|ИЗ
| Документ.ВходящийЗапросФССДляРасчетаПособия КАК ВходящийЗапросФССДляРасчетаПособия
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ВходящиеСообщенияСЭДОФСС КАК ВходящиеСообщенияСЭДОФСС
| ПО ВходящийЗапросФССДляРасчетаПособия.ИдентификаторСообщения = ВходящиеСообщенияСЭДОФСС.Идентификатор
|ГДЕ
| ВходящийЗапросФССДляРасчетаПособия.ДатаСообщения >= &ДатаСообщения
| И ВходящийЗапросФССДляРасчетаПособия.Загружен
| И ВходящийЗапросФССДляРасчетаПособия.ВерсияСпецификации = """"";
Запрос.УстановитьПараметр("ДатаСообщения", ДатаНачала);
Идентификаторы = Новый Массив;
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
ТекстXML = Выборка.Содержимое.Получить();
Если ТипЗнч(ТекстXML) <> Тип("Строка") Или ПустаяСтрока(ТекстXML) Тогда
Продолжить;
КонецЕсли;
СтруктураDOM = СериализацияБЗК.СтруктураDOM(ТекстXML);
Если СериализацияБЗК.НайтиУзелDOMПоИмени(СтруктураDOM, "paymentMethod") <> Неопределено
Или СериализацияБЗК.НайтиУзелDOMПоИмени(СтруктураDOM, "sumType") <> Неопределено Тогда
Идентификаторы.Добавить(Выборка.ИдентификаторСообщения);
КонецЕсли;
КонецЦикла;
Если Идентификаторы.Количество() > 0 Тогда
ЭлектронныйДокументооборотСФСС.ПовторноОбработатьВходящиеСообщенияСЭДО(Неопределено, Неопределено, Идентификаторы);
КонецЕсли;
КонецПроцедуры
ПоказатьСписок запросов внушительный с 1 июня 2023 года
Вызывается процедура ПовторноОбработатьВходящиеСообщенияСЭДО
Как раз в ней и строка, на которую ругается программа
РегламентированнаяОтчетность.КонтекстЭДОЛокальный().ПриПолученииСодержимогоСообщенияСЭДО(Сообщение.Организация, ...)
Я пробовал комментировать тело процедуры ЗаполнитьЗапросыПоСпецификации_2_34()
Обновление завершается успешно. Но это же не порядок.
Продолжаю ковыряться.
homer_, Благодарю Вас. Ваш совет привел меня к цели.
Но разрешите Вам задать еще несколько вопросов.
1. Я сейчас избавился от 13 документов. Они повторно будут загружены из ФСС в программу?
2. Из регистров записи я удалил, а вот документ программа разрешила только снять с проводки. Этого достаточно? Или все же документы нужно удалить из программы?
3. А если все же не удалять документы и записи в регистре а закоментировать участок программного кода
Если Идентификаторы.Количество() > 0 Тогда
ЭлектронныйДокументооборотСФСС.ПовторноОбработатьВходящиеСообщенияСЭДО(Неопределено, Неопределено, Идентификаторы);
КонецЕсли;
в процедуре ЗаполнитьЗапросыПоСпецификации_2_34() общего модуля ПроцедурыОбновленияИнформационнойБазы
Ведь что мешает программе завершить процесс обновления? Это вызов РегламентированнаяОтчетность.КонтекстЭДОЛокальный().ПриПолученииСодержимогоСообщенияСЭДО(Сообщение.Организация, Сообщение);
который находится в процедуре ЗаполнитьЗапросыПоСпецификации_2_34()
Так просто не вызывать обработку этих "неправильных" документов и все.
4. А отсюда главный вопрос. Нельзя ли поправить что-то, чтобы программа отработала штатно, как задумано программистом? А значит дать доступ к функции КонтекстЭДОЛокальный() из модуля РегламентированнаяОтчетность. Или это ошибка в программе?
Очень надеюсь на ваш ответ. Спасибо.
Но разрешите Вам задать еще несколько вопросов.
1. Я сейчас избавился от 13 документов. Они повторно будут загружены из ФСС в программу?
2. Из регистров записи я удалил, а вот документ программа разрешила только снять с проводки. Этого достаточно? Или все же документы нужно удалить из программы?
3. А если все же не удалять документы и записи в регистре а закоментировать участок программного кода
Если Идентификаторы.Количество() > 0 Тогда
ЭлектронныйДокументооборотСФСС.ПовторноОбработатьВходящиеСообщенияСЭДО(Неопределено, Неопределено, Идентификаторы);
КонецЕсли;
в процедуре ЗаполнитьЗапросыПоСпецификации_2_34() общего модуля ПроцедурыОбновленияИнформационнойБазы
Ведь что мешает программе завершить процесс обновления? Это вызов РегламентированнаяОтчетность.КонтекстЭДОЛокальный().ПриПолученииСодержимогоСообщенияСЭДО(Сообщение.Организация, Сообщение);
который находится в процедуре ЗаполнитьЗапросыПоСпецификации_2_34()
Так просто не вызывать обработку этих "неправильных" документов и все.
4. А отсюда главный вопрос. Нельзя ли поправить что-то, чтобы программа отработала штатно, как задумано программистом? А значит дать доступ к функции КонтекстЭДОЛокальный() из модуля РегламентированнаяОтчетность. Или это ошибка в программе?
Очень надеюсь на ваш ответ. Спасибо.
(9) Как я понимаю с ~25 августа (хотя фактически позднее) начали приходить файлы в новом формате. Программа УПП не знала что они в новом формате и поэтому пыталась обработать их по старому. Можно попробовать поправить входящий документ, но по мне. самый простой вариант удалить данные документы и повторно прогрузить входящие сообщения после обновления.
Хочу обратить внимание, у меня после обновления (210) входящие сообщения от ФСС стали приходить с ошибкой. УПП не могла обработать сообщение. Пришлось допилить код. Может быть в 211 поправили это, но мне кажется что нет).
Хочу обратить внимание, у меня после обновления (210) входящие сообщения от ФСС стали приходить с ошибкой. УПП не могла обработать сообщение. Пришлось допилить код. Может быть в 211 поправили это, но мне кажется что нет).
Если хотите выполнить, что задумали программисты типовой, то можно выполнить вот этот код в Консоли кода или в обработке
Там код расчитан только на клиента, а обновление происходит на сервер, поэтому и ошибка.
Я сделал следующим образом:
Выполнил этот код, у самых свежих документов проставился реквизит ВерсияСпецификации, у остальных я снял признак Загружен (групповым изменением реквизитов). Когда обновление выполнилось, поставил этот признак обратно.
ЭлектронныйДокументооборотСФСС.ПовторноОбработатьВходящиеСообщенияСЭДО(Неопределено, Неопределено)
Там код расчитан только на клиента, а обновление происходит на сервер, поэтому и ошибка.
Я сделал следующим образом:
Выполнил этот код, у самых свежих документов проставился реквизит ВерсияСпецификации, у остальных я снял признак Загружен (групповым изменением реквизитов). Когда обновление выполнилось, поставил этот признак обратно.
(11)
Добрый день, никак не получается сделать по вашей рекомендации, что в самописной обработке, что в УниверсальномПодбореИобработкеОбъектов ругается что "Метод объекта не обнаружен"это и логично, конфигураци не обновлена, а обновиться она не может из за ошибки описанной вначале, не понятно как быть?
ЭлектронныйДокументооборотСФСС.ПовторноОбработатьВходящиеСообщенияСЭДО(Неопределено, Неопределено)
Добрый день, никак не получается сделать по вашей рекомендации, что в самописной обработке, что в УниверсальномПодбореИобработкеОбъектов ругается что "Метод объекта не обнаружен"это и логично, конфигураци не обновлена, а обновиться она не может из за ошибки описанной вначале, не понятно как быть?
(12) Я сделал обновление, появляется окно с вопросом о легальности обновления, дальше начинаются обработки, которые должны выполнится после обновления и выскакивает ошибка. Дальше пишет, что выполнить обновление не удалось и предлагает закрыть приложение или продолжить. Я нажал продолжить и выполнил свою обработку. У части документов проставился реквизит Версия спецификации, у остальных я снял признак Загружен. После этого я перезапустил 1С в режиме предприятия и обработки обновления начали выполняться заново. В этот раз они отработали без ошибок и я вернул признак Загружен у остальных документов.
(11) а если закоментить эту строку, обновиться, раскоментить и попытаться выполнить то ругается уже на другую процедуру
{ОбщийМодуль.ЭлектронныйДокументооборотСФСС.Модуль(301)}: Метод объекта не обнаружен (ПриПолученииСодержимогоСообщенияСЭДО)
РегламентированнаяОтчетность.КонтекстЭДОЛокальный().ПриПолученииСодержимогоСообщенияСЭДО(Сообщение.Организация, Сообщение);
{ОбщийМодуль.ЭлектронныйДокументооборотСФСС.Модуль(301)}: Метод объекта не обнаружен (ПриПолученииСодержимогоСообщенияСЭДО)
РегламентированнаяОтчетность.КонтекстЭДОЛокальный().ПриПолученииСодержимогоСообщенияСЭДО(Сообщение.Организация, Сообщение);
(13)В ЗУП 2.5 решил проблему так:
В процедуре ПовторноОбработатьВходящиеСообщенияСЭДО модуля ЭлектронныйДокументооборотСФСС заменил строку на
При этом функцию ПриПолученииСодержимогоСообщенияСЭДО в модуле обработки ДокументооборотСКонтролирующимиОрганами сделал экспортной
В процедуре ПовторноОбработатьВходящиеСообщенияСЭДО модуля ЭлектронныйДокументооборотСФСС заменил строку
РегламентированнаяОтчетность.КонтекстЭДОЛокальный().ПриПолученииСодержимогоСообщенияСЭДО(Сообщение.Организация, Сообщение);
ОбъектОбработки = Обработки.ДокументооборотСКонтролирующимиОрганами.Создать();
ОбъектОбработки.ПриПолученииСодержимогоСообщенияСЭДО(Сообщение.Организация, Сообщение);
(17) Там в процессе выполнения этой процедуры выбираются все документы ВходящийЗапросФССДляРасчетаПособия после 1.06.2023, а версия проставляется только у некотрых. Получается когда эта процедура выполняется повторно, она опять найдет документы у которых не проставлена версия. Вам надо у всех документов поставить Загружен = Ложь. Тогда при обновлении выпорка будет пустой и ошибки не будет
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот