Показать сообщение отдельно
Старый 26.11.2014, 13:04   #4  
ex3em is offline
ex3em
Участник
 
38 / 19 (1) ++
Регистрация: 22.07.2008
перебил свойство RunOn с Client на Called From у всех sysExcel которые были в проекте SysExcel_via_NET
так же заменил в конструкторе SysExcelWorkbook

static client SysExcelWorkbook construct(...
на
static client server SysExcelWorkbook construct(...

и в конструкторе SysExcelWorkbooks тоже
static client
на
static client server

объект SysExcelApplication создается
но теперь почему-то (только в серверном режиме, в клиентском работает) перестает работать код после строки add

X++:
    SysExcelApplication xl;
    SysExcelWorkbook    wbk;
    ;

    xl = SysExcelApplication_NET::construct(ClassRunMode::Server);
    xl.visible( false );
    wbk = xl.workbooks().add(); //здесь перестает выполняться
wbk.saveAs(DEV_xInfoDirectoryServer( DirectoryType::Temp ) + 'test.xls' ); // до этого уже не доходит
пролез дебагером в этом месте затык:
класс SysExcelWorkbooks_NET(установлен CalledFrom)
метод add()
в самом конце

X++:
    return SysExcelWorkbook::construct( version, null, workbooks_net.Add( template ) );
есть подозрение что ломается на workbooks_net.Add
повторюсь, в режиме xl = SysExcelApplication_NET::construct(ClassRunMode::Client);
все проходит отлично

А вот ломается следующим образом - просто перестает выполняться код дальше, как будь-то дальше кода нет. Excel при этом остается в памяти