|
Как прочитать ошибку, возникшую в фоновом задании | ☑ | ||
|---|---|---|---|---|
|
0
sem4cnt
05.09.17
✎
22:28
|
Делаю так:
&НаСервереБезКонтекста Функция ПолучитьСтатусФоновогоЗадания(ИдентификаторЗадания) СтатусФоновогоЗадания = Новый Структура("Состояние, ИнформацияОбОшибке, МассивСообщений"); ФоновоеЗадание = ФоновыеЗадания.НайтиПоУникальномуИдентификатору(ИдентификаторЗадания); МассивСообщений = ФоновоеЗадание.ПолучитьСообщенияПользователю(Истина); Если ФоновоеЗадание.Состояние <> СостояниеФоновогоЗадания.Активно Тогда СтатусФоновогоЗадания.Вставить("Состояние", "НеАктивно"); Если ФоновоеЗадание.Состояние = СостояниеФоновогоЗадания.ЗавершеноАварийно Тогда СтатусФоновогоЗадания.Вставить("Состояние", "ЗавершеноАварийно"); СтатусФоновогоЗадания.Вставить("ИнформацияОбОшибке", ФоновоеЗадание.ИнформацияОбОшибке); КонецЕсли; КонецЕсли; Если МассивСообщений <> Неопределено Тогда СтатусФоновогоЗадания.Вставить("МассивСообщений", МассивСообщений); КонецЕсли; Возврат СтатусФоновогоЗадания; КонецФункции Но когда структура возвращается на клиент возникает ошибка "Ошибка отображения типов. Отсутствует отображение для типа ИнформацияОбОшибке" |
|||
|
1
sem4cnt
05.09.17
✎
22:30
|
При этом тип данных "ИнформацияОбОшибке", который приходит в составе структуры с сервера, также доступен на клиенте согласно СП.
|
|||
|
2
H A D G E H O G s
05.09.17
✎
22:37
|
(1) Доступность и Сериализация - разные вещи.
рекурсивно расскладывай описаниеошибки и возвращай стэк в массиве структур. |
|||
|
3
sem4cnt
05.09.17
✎
22:39
|
(2) Пффф... Ну ладно. Будем сериализовывать вручную... И зачем такой гемор для 1С-ников устроили разработчики? Получить ошибку можно, а вывести ее пользователю на клиент надо извратом.
Спасибо! |
|||
|
4
1dvd
06.09.17
✎
05:47
|
(3) на то оно и фоновое, чтобы простой смертный о нём не знал. А для непростых есть ЖР
|
|||
|
5
VladZ
06.09.17
✎
06:26
|
(0) Зачем возвращать ошибку фонового задания на клиента?
Добавь логирование задания и анализируй логи. |
| Форум | Правила | Описание | Секции | Поиск |