Показать сообщение отдельно
Старый 28.02.2011, 18:07   #19  
Evgenius is offline
Evgenius
Участник
 
56 / 10 (1) +
Регистрация: 03.11.2010
Цитата:
Сообщение от someOne Посмотреть сообщение
При исполнении CLR кода в аксапте перехват ошибок CLR происходит несколько иначе чем ошибки X++. Поэтому в логах пакетного задания не будет никакой информации, лишь сама пакетная задача переводится в статус "ошибка".

При использовании вызовов CLR методов придется всегда, в явном выиде ошибки перехватывать и парсить, иначе понять причины ошибки нельзя.

Вот пример, как получить описание ошибки вызванной исполнением CLR кода:

X++:
    System.Exception                    exception;
    ;
    try
    {
        ...  CLR
    }
    catch (Exception::CLRError)
    {
        exception = CLRInterop::getLastException();

        while (exception)
        {
            error(exception.get_Message());

            exception = exception.get_InnerException();
        }
        throw error("Операция отменена");
    }
Спасибо! В имеющейся под рукой книге то ли эта тема отдельно не выделена (CLRInterop), то ли вообще ни фига нет.
Пример - то, что нужно.