14.07.2010, 13:11 | #1 |
Участник
|
Экспорт номенклатурного справочника в Excel
Добрый день, уважаемые дамы и господа!
Наши пользователи задались целью экспортировать номенклатурный справочник в Excel стандартными методами (выделить всё в форме с номенклатурными позициями и через специальную кнопочку, появившуюся в DAX2009 на функциональной панели, получить Excel-файл). Однако, в результате мы получаем сильно урезанный список, причём никак не можем уловить критерии, по которым номенклатурные позиции в нём оказываются. Может быть, кто-то встречался с этим явлением и подскажет, как с ним бороться?
__________________
MS Dynamics AX 2009 Kernel 5.0.1600.4110 Application 5.0.1500.6491 |
|
14.07.2010, 13:24 | #2 |
Участник
|
Хмм. Интересно. А если ничего не выделять?
Возможно как-то записи не подтянулись в лист пэйдж? Хотя, вроде оно должно квери использовать... |
|
|
За это сообщение автора поблагодарили: Sergey Petrov (1). |
14.07.2010, 14:18 | #3 |
Axapta
|
А поставьте в SysGridExportToExcel\performPushAndFormatting брейкпоинт и посмотрите значение переменной _numberOfRows. Оно равно количеству строк в справочнике номенклатур которые видят пользователи (SysQuery::countLoops(InventTable_QR)) или количеству строк выгруженных в итоге в эксель? По идее, все эти три числа должны совпадать. Если только у вас там что-то не портит виндоусовский Clipboard во время выгрузки.
Выделять ничего не надо, выгружается то, что у пользователя на экране . Может все же в момент выгрузки у пользователей на форме не весь справочник, а с какими-то фильтрами? Последний раз редактировалось oip; 14.07.2010 в 14:27. Причина: Добавил немного |
|
|
За это сообщение автора поблагодарили: Sergey Petrov (1). |
14.07.2010, 15:52 | #4 |
Участник
|
Цитата:
Сообщение от oip
А поставьте в SysGridExportToExcel\performPushAndFormatting брейкпоинт и посмотрите значение переменной _numberOfRows. Оно равно количеству строк в справочнике номенклатур которые видят пользователи (SysQuery::countLoops(InventTable_QR)) или количеству строк выгруженных в итоге в эксель? По идее, все эти три числа должны совпадать. Если только у вас там что-то не портит виндоусовский Clipboard во время выгрузки.
Выделять ничего не надо, выгружается то, что у пользователя на экране . Может все же в момент выгрузки у пользователей на форме не весь справочник, а с какими-то фильтрами? Действительно, если ничего НЕ ВЫДЕЛЯТЬ на форме, то в Excel попадает весь номенклатурный справочник (очевидно, согласно Query, который использован на данной форме). Очень полезная информация про класс SysGridExportToExcel. Буду знать.
__________________
MS Dynamics AX 2009 Kernel 5.0.1600.4110 Application 5.0.1500.6491 |
|
14.07.2010, 16:01 | #5 |
Axapta
|
Вообще, насколько я понимаю, от выделения ничего меняться не должно. Странно. А выгрузка происходит так:
Сначала ядром с помощью класса SysGridToExcelStatusInterop происходит формирование списка того, что должно быть выгружено согласно отображению на гриде. Затем сформированные данные помещаются в буфер обмена (при этом бекапится то, что в нем было до этого). Далее класс SysGridExportToExcel выгружает данные в Эксель, а ядро Аксапты восстанавливает исходное содержимое в буфере обмена. |
|
14.07.2010, 17:00 | #6 |
Участник
|
Олег, благодарю Вас за подробный и исчерпывающий ответ на мой вопрос.
__________________
MS Dynamics AX 2009 Kernel 5.0.1600.4110 Application 5.0.1500.6491 |
|
Теги |
excel, грид, экспорт в excel |
|
Похожие темы | ||||
Тема | Ответов | |||
Экспорт стандартных отчетов в Excel ? | 14 | |||
Экспорт в Excel | 1 | |||
Экспорт из Excel... | 10 | |||
Экспорт в Excel. Проблема с '\n' | 12 | |||
Экспорт в Excel через WorkBooks.OpenText() | 2 |
|