Коллеги, добрый день.
Есть отчет с длительным выполнением. Реализован через длительные операции БСП. На Тонком клиенте работает, но елси через веб запускать то выдает ошибку
{ОбщийМодуль.ДлительныеОперацииГлобальный.Модуль(102)}: Object method not found (ПрогрессВыполнения)
{ОбщийМодуль.ДлительныеОперацииГлобальный.Модуль(102)}: ВыполнитьОбработкуОповещения(ДлительнаяОперация.ОповещениеОПрогрессеВыполнения, Прогресс);
{ОбщийМодуль.ДлительныеОперацииГлобальный.Модуль(70)}: Если ПроконтролироватьДлительнуюОперацию(Операция, Статус) Тогда
{ОбщийМодуль.ДлительныеОперацииГлобальный.Модуль(20)}: ПроконтролироватьДлительныеОперации(АктивныеДлительныеОперации.Список);
Есть отчет с длительным выполнением. Реализован через длительные операции БСП. На Тонком клиенте работает, но елси через веб запускать то выдает ошибку
{ОбщийМодуль.ДлительныеОперацииГлобальный.Модуль(102)}: Object method not found (ПрогрессВыполнения)
{ОбщийМодуль.ДлительныеОперацииГлобальный.Модуль(102)}: ВыполнитьОбработкуОповещения(ДлительнаяОперация.ОповещениеОПрогрессеВыполнения, Прогресс);
{ОбщийМодуль.ДлительныеОперацииГлобальный.Модуль(70)}: Если ПроконтролироватьДлительнуюОперацию(Операция, Статус) Тогда
{ОбщийМодуль.ДлительныеОперацииГлобальный.Модуль(20)}: ПроконтролироватьДлительныеОперации(АктивныеДлительныеОперации.Список);
Найденные решения
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1)
Это ошибка не из этого модуля. Просто 1С не знают на что ссылаться, вот и подставляет первое крайнее из определяемого из стека вызовов.
В ДлительнаяОперация.ОповещениеОПрогрессеВыполнения содержится описание оповещение. В котором указана вызываемая процедура "ПрогрессВыполнения", которая должна быть определена в модуле формы (предположительно). А ее там нет.
{ОбщийМодуль.ДлительныеОперацииГлобальный.Модуль(102)}: Object method not found (ПрогрессВыполнения)
{ОбщийМодуль.ДлительныеОперацииГлобальный.Модуль(102)}: ВыполнитьОбработкуОповещения(ДлительнаяОперация.ОповещениеОПрогрессеВыполнения, Прогресс);
{ОбщийМодуль.ДлительныеОперацииГлобальный.Модуль(102)}: ВыполнитьОбработкуОповещения(ДлительнаяОперация.ОповещениеОПрогрессеВыполнения, Прогресс);
Это ошибка не из этого модуля. Просто 1С не знают на что ссылаться, вот и подставляет первое крайнее из определяемого из стека вызовов.
В ДлительнаяОперация.ОповещениеОПрогрессеВыполнения содержится описание оповещение. В котором указана вызываемая процедура "ПрогрессВыполнения", которая должна быть определена в модуле формы (предположительно). А ее там нет.
(7) Нет. Смотри, что такое ДлительнаяОперация (скорее всего структура), проверяй у неё наличие ключа "ОповещениеОПрогрессеВыполнения".
И ищи в модуле ДлительныеОперацииГлобальный процедуру ВыполнитьОбработкуОповещения() - что там ожидается в качестве первого параметра.
Отладчик, все такое...
И ищи в модуле ДлительныеОперацииГлобальный процедуру ВыполнитьОбработкуОповещения() - что там ожидается в качестве первого параметра.
Отладчик, все такое...
(9)
Вы правы - есть модуль формы в котором описано описание оповещения и само оповещение
В ДлительныеОперацииГлобальный
ВыполнитьОбработкуОповещения(ДлительнаяОперация.ОповещениеОПрогрессеВыполнения, Прогресс);
ДлительнаяОперация.ОповещениеОПрогрессеВыполнения - это структура в которой в ключе ОповещениеОПрогрессеВыполнения стоит функция ПрогрессВыполнения
Странно что в Тонком клиенте работает а в вебе не работает. и пока что не получается войти в отладку вевб клиента(
Вы правы - есть модуль формы в котором описано описание оповещения и само оповещение
В ДлительныеОперацииГлобальный
ВыполнитьОбработкуОповещения(ДлительнаяОперация.ОповещениеОПрогрессеВыполнения, Прогресс);
ДлительнаяОперация.ОповещениеОПрогрессеВыполнения - это структура в которой в ключе ОповещениеОПрогрессеВыполнения стоит функция ПрогрессВыполнения
Странно что в Тонком клиенте работает а в вебе не работает. и пока что не получается войти в отладку вевб клиента(
(9)прошу помощи, совсем не понимаю как так происходит и в чем прчиина.
в общем модуле ДлительныеОперацииГлобальный
ДлительнаяОперация.ОповещениеОПрогрессеВыполнения - это ОписаниеОповещения.
см. Скрин "ДлительнаяОперация Отладка"
Это Оповещения должно быть вызвано через:
ВыполнитьОбработкуОповещения(ДлительнаяОперация.ОповещениеОПрогрессеВыполнения, Прогресс);
Само ОписаниеОповещения находится в модуле формы обработки
см Скрин "ОписаниеОповещения"
НО когда запускается веб клиент то отладка не попадает в Процедура ПрогрессВыполнения(Результат, ДополнительныеПараметры) Экспорт и и платформа вываливает ошибку
{ОбщийМодуль.ДлительныеОперацииГлобальный.Модуль(102)}: Object method not found (ПрогрессВыполнения)
ЕСЛИ запускать в тонком/толстом клиенте то отладчик попадет в Процедура ПрогрессВыполнения(Результат, ДополнительныеПараметры) Экспорт
и все отрабатывает как надо.
Бонусом два срина (Веб клиент, тонкий клиент) с отладки с веб отладки и с тонкого клиента - на них все одинаковое.
в общем модуле ДлительныеОперацииГлобальный
Функция ПроконтролироватьДлительнуюОперацию(ДлительнаяОперация, Статус)
Если Статус.Статус <> "Отменено" И ДлительнаяОперация.ОповещениеОПрогрессеВыполнения <> Неопределено Тогда
Прогресс = Новый Структура;
Прогресс.Вставить("Статус", Статус.Статус);
Прогресс.Вставить("ИдентификаторЗадания", ДлительнаяОперация.ИдентификаторЗадания);
Прогресс.Вставить("Прогресс", Статус.Прогресс);
Прогресс.Вставить("Сообщения", Статус.Сообщения);
ВыполнитьОбработкуОповещения(ДлительнаяОперация.ОповещениеОПрогрессеВыполнения, Прогресс);
КонецЕсли;
....................
КонецФункции
ПоказатьДлительнаяОперация.ОповещениеОПрогрессеВыполнения - это ОписаниеОповещения.
см. Скрин "ДлительнаяОперация Отладка"
Это Оповещения должно быть вызвано через:
ВыполнитьОбработкуОповещения(ДлительнаяОперация.ОповещениеОПрогрессеВыполнения, Прогресс);
Само ОписаниеОповещения находится в модуле формы обработки
&НаСервере
Процедура ПрогрессВыполнения(Результат, ДополнительныеПараметры) Экспорт
Если Результат.Статус = СостояниеФоновогоЗадания.ЗавершеноАварийно Тогда
ОтключитьОбработчикОжидания("ОбработчикОжиданияИндикатор");
КонецЕсли;
ПрочитатьПрогресс(Результат.ИдентификаторЗадания);
КонецПроцедуры
Показатьсм Скрин "ОписаниеОповещения"
НО когда запускается веб клиент то отладка не попадает в Процедура ПрогрессВыполнения(Результат, ДополнительныеПараметры) Экспорт и и платформа вываливает ошибку
{ОбщийМодуль.ДлительныеОперацииГлобальный.Модуль(102)}: Object method not found (ПрогрессВыполнения)
ЕСЛИ запускать в тонком/толстом клиенте то отладчик попадет в Процедура ПрогрессВыполнения(Результат, ДополнительныеПараметры) Экспорт
и все отрабатывает как надо.
Бонусом два срина (Веб клиент, тонкий клиент) с отладки с веб отладки и с тонкого клиента - на них все одинаковое.
Прикрепленные файлы:
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот