Имя: Пароль:
1C
1С v8
БП: Сообщения ошибках при проведении по com
0 Zapal
 
13.12.11
13:19
в типовой БП в модуле ОбщегоНазначения есть такая функция:

Процедура СообщитьОбОшибке(...) Экспорт
   
   ТекстСообщения = СформироватьТекстСообщения(ТекстСообщения);
   
   #Если ВнешнееСоединение Тогда
       
       Если ВызыватьИсключение Тогда ...
           
           ВызватьИсключение (ТекстСообщения);
       КонецЕсли;
       
   #Иначе ...
       Сообщить(ТекстСообщения, Статус);
       
   #КонецЕсли

именно через эту функцию выводятся сообщения типа "не проведено по партиям" и по коду видно что если документ проводится через внешнее соединение то сообщения будут передаваться этому внешнему соединению через исключение.
теперь собственно вопрос - у кого-нибудь получилось этим воспользоваться? Т.е. при проведении документов через COM-соединения получить сообщения об ошибках проведения?

мой код

   Попытка
       ДокументОбъект.Записать(V8.РежимЗаписиДокумента.Проведение, V8.РежимПроведенияДокумента.Неоперативный);
   Исключение
       ИнформацияОбОшибке = ИнформацияОбОшибке();
   КонецПопытки;

в ИнформацияОбОшибке выдает "Ошибка при вызове метода контекста (Записать): Произошла исключительная ситуация: Ошибка при выполнении обработчика - 'ОбработкаПроведения'" и все :/
1 aleks-id
 
13.12.11
13:38
а что говорит V8.ИнформацияОбОшибке() ?
2 Zapal
 
13.12.11
13:50
(1) я написал внизу
выдает просто "Ошибка при вызове метода контекста (Записать)"
3 aleks-id
 
13.12.11
13:59
(2) "Чебурашка, ты меня слышишь?" (с)
у тебя ИнформацияОбОшибке = ИнформацияОбОшибке(); тоесть ошибка ТВОЕГО контекста.
смотри ошибку контекста V8
4 Zapal
 
13.12.11
14:00
(3) а, сорри
нет такого метода у V8
5 aleks-id
 
13.12.11
14:03
функция ИнформацияОбОшибке() доступна во внешнем соединении. ищи где у тебя ее можно получить.
6 Zapal
 
13.12.11
14:10
если бы в БП была бы экспортная функция с Возврат ИнформацияОбОшибке() ее можно было было вызвать из через внешнее соединение как я понимаю. В этом смысле она и доступна
но такой функции я не нашел