|
Как уловить ошибку при проведений документа. | ☑ | ||
---|---|---|---|---|
0
antihacker
29.07.18
✎
13:32
|
Всем привет ! Вот так иногда мы запрещаем провести документ.
ОбработкаПроведения(Отказ, РежимПроведения) Отказ= истина; сообщить("Найден детальный документ номером 123456 на текущий финансовый год !"); КонецПроцедуры Все нормально когда мы проводим документ интерактивно. А когда проводишь программно, то просто получаешь,,{HTTPСервис.СинхронизацияДокументов.Модуль(248)}: Ошибка при вызове метода контекста (Записать): Не удалось провести "Утвержденный план финансирования по расходам 2597-000000001 от 29.07.2018 16:03:03"! Как можно получить сообщение, которого ты получаешь при интерактивном проведений. |
|||
1
vde69
29.07.18
✎
13:51
|
надо делать так
ОбработкаПроведения(Отказ, РежимПроведения) Отказ= истина; #ЕСЛИ тут какое то условие определяющее, что это сервис, я не помню на память какое ВызватьИсключение "Найден детальный документ номером 123456 на текущий финансовый год !" ; #ИНАЧЕ Отказ= истина; сообщить("Найден детальный документ номером 123456 на текущий финансовый год !"); #КонецЕсли КонецПроцедуры |
|||
2
vde69
29.07.18
✎
13:52
|
(1) тогда в сервисе функция ОписаниеОшибки() будет возвращать твой текст
|
|||
3
antihacker
29.07.18
✎
15:21
|
//Отказ= истина;
#ЕСЛИ Отказ ТОГДА ВызватьИсключение "Найден детальный документ номером 123456 на текущий финансовый год !" ; #ИНАЧЕ #КОНЕЦЕСЛИ Вот так ? Не работает |
|||
4
quest
29.07.18
✎
15:26
|
по идее должно быть не Клиент вместо Отказ в условии
|
|||
5
antihacker
29.07.18
✎
15:29
|
quest, не очень понял. Можешь перефразировать ответ ?
|
|||
6
quest
29.07.18
✎
15:33
|
#ЕСЛИ не клиент ТОГДА
ВызватьИсключение "Найден детальный документ номером 123456 на текущий финансовый год !" ; #ИНАЧЕ сообщить("Найден детальный документ номером 123456 на текущий финансовый год !"); #КОНЕЦЕСЛИ |
|||
7
antihacker
29.07.18
✎
15:38
|
Это я понял. Дело в том что, когда провожу документ программно , все равно получаю такой ответ
{HTTPСервис.СинхронизацияДокументов.Модуль(250)}: Ошибка при вызове метода контекста (Записать): Ошибка при выполнении обработчика - 'ОбработкаПроведения': {Документ.УтвержденныйПланФинансированияПоРасходам.МодульОбъекта(24)}: Найден детальный документ номером 123456 на текущий финансовый год ! |
|||
8
antihacker
29.07.18
✎
15:38
|
А хотелось просто получить
"Найден детальный документ номером 123456 на текущий финансовый год !" |
|||
9
quest
29.07.18
✎
15:41
|
В документе, вместо сообщить пишешь -
ДополнительныеСвойства.Вставить("ПочемуНепПровели","Найден детальный документ номером 123456 на текущий финансовый год !") В методе вебсеривса ТекстОшибка = ""; попытка Док.Записать(РежимЗаписи.Проведление) исключение ТекстОшибки = Док.ДополнительныеСвойства.ПочемуНепПровели; конецпопытки Ну и дальше уже анализируешь что твам тебе надо. |
|||
10
Cyberhawk
29.07.18
✎
17:52
|
Ветка - перепись *овнокодеров
|
|||
11
Cyberhawk
29.07.18
✎
17:54
|
Я просто оставлю это здесь (фрагмент кода из ветки обработки исключения)
ИнформацияОбОшибке = ИнформацияОбОшибке(); Причина = ИнформацияОбОшибке.Причина; Если Причина <> Неопределено Тогда #Если _ Тогда Причина = ИнформацияОбОшибке(); #КонецЕсли ТелоОтвета = Причина.Описание; КонецЕсли; ДополнительныеСообщения = ПолучитьСообщенияПользователю(); Для каждого ДополнительноеСообщение Из ДополнительныеСообщения Цикл ТелоОтвета = ТелоОтвета + Символы.ПС + ДополнительноеСообщение.Текст; КонецЦикла; |
|||
12
quest
29.07.18
✎
22:15
|
от попытки - не уйти все равно. а как передать сообщение - это дело не важное.
Но за попытку засветить говнокод - +1 в карму тебе |
|||
13
vde69
29.07.18
✎
22:21
|
модуль проведения
--------------------------------- #ЕСЛИ СCOMСоединение Тогда ВызватьИсключение "Найден детальный документ номером 123456 на текущий финансовый год !" ; #ИНАЧЕ сообщить("Найден детальный документ номером 123456 на текущий финансовый год !"); #КонецЕсли модуль от куда вызываешь проведение попытка Док.Записать(РежимЗаписи.Проведление) исключение ТекстОшибки = ОписаниеОшибки(); Сообщить (ТекстОшибки ) конецпопытки |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |