AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

Результаты опроса: Какую обертку для COM объектов предпочитаете использовать?
Класс ComExcelDocument_RU: всё что нужно и в одном месте! 17 68.00%
SysExcel-классы: чем больше классов, тем лучше! 6 24.00%
Никаких оберток: только чистые COM объекты! Только хардкор! 2 8.00%
COM объекты? Не, не слышал... 0 0%
Другой вариант 2 8.00%
Опрос с выбором нескольких вариантов ответа. Голосовавшие: 25. Вы ещё не голосовали в этом опросе

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 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.
Старый 13.06.2012, 20:20   #2  
gl00mie is offline
gl00mie
Участник
MCBMSS
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,684 / 5798 (201) ++++++++++
Регистрация: 28.11.2005
Адрес: Москва
Записей в блоге: 3
Цитата:
Сообщение от Dark Light Посмотреть сообщение
В классе SysExcelWorksheets есть метод add(). При вызове его с параметром _before или _after возникает ошибка в COM объекте.
После перевода классов SysExcel на интеграцию через .NET про связанные с ними ошибки в COM-объектах забыл, как страшный сон
Цитата:
Сообщение от Dark Light Посмотреть сообщение
P.S.: любите ли вы SysExcel-классы, как люблю их я?
О, да!!!
Старый 14.06.2012, 08:20   #3  
Dark Light is offline
Dark Light
Участник
 
64 / 49 (0) +++
Регистрация: 17.02.2009
Адрес: Омск
Цитата:
Сообщение от gl00mie Посмотреть сообщение
После перевода классов SysExcel на интеграцию через .NET про связанные с ними ошибки в COM-объектах забыл, как страшный сон
Да, забыл добавить данный вариант в опрос. Но это всё равно SysExcel!

Цитата:
Сообщение от gl00mie Посмотреть сообщение
О, да!!!
Тогда добро пожаловать в клуб!

Первое правило клуба: всегда "SysExcelApplication->SysExcelWorkbooks->SysExcelWorkbook->SysExcelWorksheets->SysExcelWorksheet->SysExcelCells->SysExcelCell".

Второе правило клуба: никогда не "ComExcelDocument_RU.insertValue".

...
Старый 14.06.2012, 19:02   #4  
ivas is offline
ivas
Участник
Аватар для ivas
 
252 / 68 (3) ++++
Регистрация: 22.12.2005
Цитата:
Сообщение от Dark Light Посмотреть сообщение
Второе правило клуба: никогда не "ComExcelDocument_RU.insertValue".
никогда не = всегда
__________________
aLL woRk aNd nO JoY MAKes jAck a dULL Boy
Старый 15.06.2012, 08:20   #5  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,440 / 1775 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
[OFFTOP]
Цитата:
Сообщение от ivas Посмотреть сообщение
никогда не = всегда
Чайник долго остывает
[/OFFTOP]
Теги
sysexcelworksheets, ax2009

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Взаимодействие с Excel через .NET (семейство классов SysExcel) gl00mie DAX: Программирование 102 11.08.2022 17:09
Расширенные возможности отслеживания событий на диалогах классов-наследников RunBase ziva DAX: Программирование 10 09.02.2012 19:27
Протоколирование запуска классов наследников RunBase polygris DAX: Программирование 9 11.02.2010 15:59
Структура классов по разноске журналов egorych DAX: Программирование 3 18.12.2007 18:13
Как быстро освоить библиотеку классов Аксапты? spartan DAX: Программирование 9 11.05.2005 12:07

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 01:27.