Цитата:
Сообщение от
Bega
Нашел способ через System.Array:
Если данный код запустить в
клиентском режиме - работает, как только переключаю класс в
серверный - аксапта вылетает.
Причем если вместо
array вставлять
обычную строку все нормально работает
X++:
SysExcelApplication_NET sysExcelApplication;
SysExcelWorksheet_NET sysExcelWorksheet;
SysExcelRange_NET range;
System.Array array;
System.Type type;
;
new InteropPermission( InteropKind::ClrInterop ).assert();
// BP deviation documented
sysExcelApplication = SysExcelApplication_NET::construct();
sysExcelApplication.visible(true);
sysExcelApplication.workbooks().add("");
sysExcelWorksheet = sysExcelApplication.worksheets().itemFromNum(1);
type = System.Type::GetType('System.String');
array = System.Array::CreateInstance(type, 2);
array.SetValue(CLRInterop::getObjectForAnyType("AAA"), 0);
array.SetValue(CLRInterop::getObjectForAnyType("БББ"), 1);
range = sysExcelWorksheet.range("A1:B1");
range.value2(array); // !!!! здесь вылетает Axapta