Цитата:
Сообщение от
IvanS
В качестве апа.
Есть проблема открытия файла Excel в пакетнике.
АХ2009, Office 2013, в пакетном режиме в момент отработки кода открытия книги просто падает обработки.
При чем никаких уведомлений не выдается как в АХ, так и Windows.
try catch Exception::CLRError тоже ничего не перехватывает.
А еще самое интересное в аналогичной тестовой среде все работает отлично и без ошибок, а вот на рабочей как назло падает.
Поэтому вопрос как минимум понять, что за ошибка мешает корректной работе в рабочей среде? А от неё уже смотреть дальше
Скорее всего у вас один из .NET объектов возвращает null. А затем уже при обращении к его методам падает вся аксапта. Сделайте проверку на null.
Бывает что catch срабатывает, но уже после защищенной секции идет обращение к методам нулевого объекта. Т.е. инфолог появляется, но вы не успеваете его заметить, т.к. аксапта уже упала. Попробуйте сделать паузу в catch, и изучить ошибки.
Если интересно получить весь стек ошибок можно попробовать такой приемчик. Не знаю как для других версий, но для АХ4 требует подключить ссылку к библиотеке Microsoft.Dynamics.BusinessConnectorNet.dll, которая хранится в папке Client/Bin
X++:
public void run()
{
try
{
new InteropPermission(InteropKind::ClrInterop).assert();
// ... CLR code
CodeAccessPermission::revertAssert();
}
catch (Exception::CLRError)
{
this.clrWarning();
}
}
X++:
public void clrWarning()
{
Microsoft.Dynamics.BusinessConnectorNet.BusinessConnectorException lastException;
;
lastException = ClrInterop::getLastException();
while(lastException)
{
warning(lastException.get_Message());
lastException = lastException.get_InnerException();
}
}