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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 18.07.2016, 13:57   #8  
Владимир Максимов is offline
Владимир Максимов
Участник
КОРУС Консалтинг
 
1,719 / 1204 (44) ++++++++
Регистрация: 13.01.2004
Записей в блоге: 3
Цитата:
Сообщение от Pandasama Посмотреть сообщение
Имеется отчет в Excel, при некоторых условиях достигающий 100 тысяч строк.
В нем необходимо сделать группировки по строкам.
При 100 тысячах строк для группировки есть 20 тысяч рэнджей.
Группировка идет через обычный COM, метод .group(), что при указанных объемах занимает чуть больше часа времени.
Проверяю

X++:
static void Job_test(Args _args)
{
    ComExcelDocument_RU ComExcelDocument_RU;
    Com                 comRange;
    MSOfficeBookMark_RU bookMark;
    int                 nextI;
    int                 timeNowBegin = timeNow();
    ;

    ComExcelDocument_RU = new ComExcelDocument_RU();
    ComExcelDocument_RU.newFile('',false);


    for (nextI = 1; nextI <= 20000; nextI++)
    {
        bookMark = int2str((nextI-1)*10 + 1)+':'+int2str(nextI*10 - 2);
        comRange = ComExcelDocument_RU.findRange(bookMark);
        comRange.group();
    }

    ComExcelDocument_RU.visible(true);

    info(time2str(timeNow()-timeNowBegin,1,1));
    info('end');
}
20 тысяч групп было создано за 00:07:46. Т.е. примерно за 8 минут. При этом последняя используемая строка Excel имеет номер 199`999. Т.е. 200 тысяч строк

Тест выполнял на Ax4.0. Почему у Вас получилось время более 1 часа ищите сами

PS: Надеюсь, вы метод select() не используете? Для программного формирования Excel обычно он не нужен и лишь является лишним тормозом. Используется только как завершающая команда непосредственно перед открытием.
__________________
- Может, я как-то неправильно живу?!
- Отчего же? Правильно. Только зря...
Теги
excel, group, performance

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Выгрузка данных в Excel и их группировка... NetBus DAX: Программирование 8 09.12.2013 11:28
atinkerersnotebook: Using Export To Excel in Dynamics AX to Create Reporting Data Sources Blog bot DAX Blogs 1 12.10.2013 01:13
atinkerersnotebook: Using the Dynamics AX Excel Add-In Blog bot DAX Blogs 1 25.09.2013 07:11
atinkerersnotebook: Walkthrough & Tutorial Summary Blog bot DAX Blogs 1 09.09.2013 09:11
Группировка сводной таблицы Excel AlexeyVS DAX: Программирование 4 29.07.2010 12:13

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

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

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