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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 31.01.2019, 13:24   #1  
Pandasama is offline
Pandasama
Участник
 
127 / 30 (2) +++
Регистрация: 11.08.2014
Адрес: Барнаул
большие отчеты в OXML, Ax2012
Коллеги, приветствую

Есть проблема с большими отчетами в oXML - тысяч так на 200 строк.
После генерации отчета и его открытии (из x++ кода в рамках стандартного поведения XMLEXcelReport_RU) получаю стандартную COM ошибку
Код:
Метод "add" в COM-объекте класса "Workbooks" возвратил код ошибки 0x800A03EC (<неизвестно>), который означает: Метод Add из класса Workbooks завершен неверно
Если попробовать открыть этот же сформированный файл руками, получаю сообщение "обнаружены ошибки в файле", предложение исправить их и лог исправления
Код:
Восстановленные записи: Свойства листа из части /xl/worksheets/sheet1.xml
Судя по экспериментам, проблема в размере, а не каких-то специфических данных в файле - если я делаю отчет, скажем, по одному сотруднику - он корректный, если я делаю в отчет повтор этого сотрудника несколько тысяч раз - то отчет битый.

Сталкивался ли кто с подобной проблемой на больших отчетах и как решали её в рамках oXML ?
Старый 31.01.2019, 14:34   #2  
belugin is offline
belugin
Участник
Аватар для belugin
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,288 / 2489 (91) +++++++++
Регистрация: 16.01.2004
Адрес: Москва
Записей в блоге: 5
Попробуйте взглянуть на результирующий файл. Мы как-то сталкивались с тем, что в каких-то случаях на каждом добавленном узле дублировалась xml декларация в результате чего файл распухал.
__________________
https://axcoder.github.io
Старый 31.01.2019, 17:21   #3  
VORP is offline
VORP
Участник
Аватар для VORP
 
124 / 86 (3) ++++
Регистрация: 26.05.2006
Возможно дело не в объёме а в чём то ещё - может быть картинка какая то вставляется или ещё что. Для него важно чтобы не просто теги были но и ещё в определённом порядке, то есть данные после например картинки быть не могут. Обычно такие проблемы были вызваны именно этим. Переименуйте ексель файл в зип и посмотрите что внутри, по сравнению с тем который открывается. Может быть станет понятно.
Старый 01.02.2019, 06:58   #4  
Pandasama is offline
Pandasama
Участник
 
127 / 30 (2) +++
Регистрация: 11.08.2014
Адрес: Барнаул
Проблема оказалась в количестве разрывов страниц.
Если разрывы убрать - то файл формируется и открывается корректно.
Как подсказали в другом месте - опытным путем было установлено когда-то ограничения в 1023-1024 разрыва, но конкретно это число я уже не стал проверять.
Старый 01.02.2019, 09:06   #5  
Player1 is offline
Player1
Участник
Самостоятельные клиенты AX
 
279 / 136 (5) +++++
Регистрация: 21.04.2008
Цитата:
Сообщение от Pandasama Посмотреть сообщение
но конкретно это число я уже не стал проверять.
Технические характеристики и ограничения Microsoft Excel

Технические характеристики и ограничения листа и книги
Разрывы страниц
1 026 горизонтальных и вертикальных
За это сообщение автора поблагодарили: Yoil (3).
Старый 01.02.2019, 20:59   #6  
DSPIC is offline
DSPIC
Боец
Аватар для DSPIC
MCP
Лучший по профессии 2017
Лучший по профессии 2014
Лучший по профессии 2009
 
1,011 / 1037 (37) ++++++++
Регистрация: 11.04.2008
Адрес: Минск
легкий оффтоп: разве в 2012 OXML работает через com? Там вроде .net был., или что-то путаю?
__________________
Мой блог
Старый 02.02.2019, 05:57   #7  
trud is offline
trud
Участник
Лучший по профессии 2017
 
760 / 996 (35) +++++++
Регистрация: 07.06.2003
Записей в блоге: 1
Цитата:
Сообщение от DSPIC Посмотреть сообщение
легкий оффтоп: разве в 2012 OXML работает через com? Там вроде .net был., или что-то путаю?
Там по моему несколько сложнее. Сами данные генерятся через OXML. Но поскольку используются базовые хардкорные библиотеки для OXML в них довольно сложно что-то сделать дополнительно. поэтому после OXML запускается COMExcel где уже устанавливаются эти доп. св-ва.
Старый 04.02.2019, 09:32   #8  
Pandasama is offline
Pandasama
Участник
 
127 / 30 (2) +++
Регистрация: 11.08.2014
Адрес: Барнаул
Там даже не о каких-то специальных функциях речь, он тупо сформировав файл с отчетом - открывает его на экране через COM
Теги
ax2012r3, excel, oxml

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
AX2012, SSRS отчеты AnGor DAX: Программирование 6 21.02.2017 13:43
ax2012: как собрать в group программного проекта SSRS-отчеты по нужной маске mazzy DAX: Программирование 9 10.08.2016 17:31
AX2012 SSRS - как раскидать отчеты по серверам EVGL DAX: Администрирование 1 03.05.2013 18:36
AX2012. Отчеты, унаследованные от RunBaseReport Pustik DAX: Программирование 2 23.02.2013 01:43
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 15:44.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.