Показать сообщение отдельно
Старый 13.06.2012, 12:53   #1  
Dark Light is offline
Dark Light
Участник
 
64 / 49 (0) +++
Регистрация: 17.02.2009
Адрес: Омск
Клуб любителей SysExcel-классов. SysExcelWorksheets
DAX 2009, RU8.

В классе SysExcelWorksheets есть метод:
X++:
public SysExcelWorksheet add(SysExcelWorksheet _before = null, SysExcelWorksheet _after = null, int _count = 1, int _type = #xlWorksheet)
{
    anytype before, after;
    ;

    if (_before)
        before = _before;
    else
        before = COMArgument::NoValue;

    if (_after)
        after = _after;
    else
        after = COMArgument::NoValue;

    return SysExcelWorksheet::construct(version, worksheets.add(before, after, _count, _type));
}
При вызове его с параметром _before или _after возникает ошибка в COM объекте. И неудивительно, ведь он должен иметь следующий вид:

X++:
public SysExcelWorksheet add(SysExcelWorksheet _before = null, SysExcelWorksheet _after = null, int _count = 1, int _type = #xlWorksheet)
{
    anytype before, after;
    ;

    if (_before)
        before = _before.comObject();
    else
        before = COMArgument::NoValue;

    if (_after)
        after = _after.comObject();
    else
        after = COMArgument::NoValue;

    return SysExcelWorksheet::construct(version, worksheets.add(before, after, _count, _type));
}

P.S.: любите ли вы SysExcel-классы, как люблю их я?

Последний раз редактировалось Dark Light; 13.06.2012 в 12:59.