Показать сообщение отдельно
Старый 19.03.2018, 17:25   #8  
Cathome is offline
Cathome
Участник
Аватар для Cathome
 
54 / 23 (1) +++
Регистрация: 10.11.2010
Адрес: Москва
?
Всем добрый день!

Версия DAX 4.0.

Как перехватить ошибку ComOfficeDocument_RU.documentSaveAs(..)?

У меня такой код:

X++:
if (! excelDocument.documentSaveAs(documentName))
{
    excelDocument.quitApplication(true);
    return false;
}
Внутри documentSaveAs:

X++:
public boolean documentSaveAs(FilenameSave _filenameSave)
{
    if (m_comDocument)
    {
        try
        {
            m_comDocument.saveAs(_filenameSave);
        }
        catch (Exception::Error)
        {
            error(this.getCOMErrorMsg());
            return false;
        }
    }
    else
    {
        this.visible(true);
        throw error(strfmt("@GEE6401", this.getApplicationName()));
    }

    return true;
}
На строке
X++:
m_comDocument.saveAs(_filenameSave);
выполнение останавливается и exception не ловится, documentSaveAs ничего не возвращает . Что делать?

P.S. также пробовала Exception handling в своем методе вместо проверки boolean в виде
X++:
try
{
    excelDocument.documentSaveAs(documentName));
}
catch (Exception::Error)
{
    excelDocument.quitApplication(true);
    return false;
}
,

то же самое.. просто не заходит в catch.
__________________
"казалось бы, зачем виртуализировать виртуализаторы виртуализаторов виртуальных ява-машин, но Оракл было уже не остановить..." © Башорг

Последний раз редактировалось Cathome; 19.03.2018 в 17:32.