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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 07.10.2022, 12:45   #1  
Pandasama is offline
Pandasama
Участник
 
449 / 133 (5) +++++
Регистрация: 11.08.2014
Адрес: Барнаул
Динамическая разбивка Excel-отчета по листам
Коллеги, подскажите - есть ли какое-то решение для разбиения XLS-отчета по листам с условием
1) "не разбивать некий блок строк на 2 листа"
2) "высота блока - динамическая" ?

Пока на ум приходит только решение в лоб: при создании отчета (через OXML) запоминать границы этих выводимых блоков, а потом через COM перебирать весь отчет, проверять фактическую высоту и, при необходимости, вставлять разрыв страницы.

Но как-то очень уж кустарно выходит.
Старый 07.10.2022, 14:44   #2  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,429 / 1772 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Готового решения - нет. Нужно двигать (удалять/вставлять) каждый неправильно расположенный разрыв страницы.

Единственное что я бы предложил при выводе отчёта как-то маркировать такие наборы строк, которые нельзя разрывать. Например делать напротив таких строк в отдельном столбце вертикальное объединения ячеек. И потом не считать высоту, а просто проверять какие из переносов попали на эти блоки и сдвигать эти переносы в начало блока
Старый 07.10.2022, 15:43   #3  
axm2017 is offline
axm2017
Участник
 
1,754 / 292 (13) ++++++
Регистрация: 15.05.2017
Высота строки динамическая?
Старый 07.10.2022, 16:53   #4  
Pandasama is offline
Pandasama
Участник
 
449 / 133 (5) +++++
Регистрация: 11.08.2014
Адрес: Барнаул
Цитата:
Сообщение от axm2017 Посмотреть сообщение
Высота строки динамическая?
В данном конкретном случае - количество строк в неразбиваемом блоке динамическое, но строки постоянной высоты.
Старый 07.10.2022, 16:54   #5  
Pandasama is offline
Pandasama
Участник
 
449 / 133 (5) +++++
Регистрация: 11.08.2014
Адрес: Барнаул
Цитата:
И потом не считать высоту, а просто проверять какие из переносов попали на эти блоки и сдвигать эти переносы в начало блока
Но ведь при сдвиге переноса - все последующие переносы надо переделывать. Т.е. тут смысла предварительно расставлять переносы, кажется, вообще нет
Старый 07.10.2022, 17:25   #6  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,429 / 1772 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Цитата:
Сообщение от Pandasama Посмотреть сообщение
Но ведь при сдвиге переноса - все последующие переносы надо переделывать. Т.е. тут смысла предварительно расставлять переносы, кажется, вообще нет
На сколько я помню автоматические переносы, следующие после ручных, автоматически пересчитываются. Главное ручные переносы вставлять последовательно идя по документу сверху вниз
За это сообщение автора поблагодарили: Pandasama (2).
Старый 07.10.2022, 23:16   #7  
mifi is offline
mifi
Microsoft Dynamics
Сотрудники Microsoft Dynamics
 
173 / 89 (3) ++++
Регистрация: 24.07.2002
Цитата:
Сообщение от Pandasama Посмотреть сообщение
Коллеги, подскажите - есть ли какое-то решение для разбиения XLS-отчета по листам с условием
1) "не разбивать некий блок строк на 2 листа"
2) "высота блока - динамическая" ?

Пока на ум приходит только решение в лоб: при создании отчета (через OXML) запоминать границы этих выводимых блоков, а потом через COM перебирать весь отчет, проверять фактическую высоту и, при необходимости, вставлять разрыв страницы.

Но как-то очень уж кустарно выходит.
Electronic Reporting - https://learn.microsoft.com/en-us/dy...l#row-handling
Теги
ax2012, excel, paging

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Падение DAX при формировании отчета в Excel Storaenso DAX: Прочие вопросы 16 06.07.2011 15:57
"Печать" отчета в Excel - проблема с округлением real полей Яга DAX: Программирование 6 17.06.2011 14:57
Написание отчета с выводом в Excel (новичок) axalex DAX: Программирование 14 19.05.2011 13:31
Не идет выгрузка отчета в Excel. Слабая машина. asabin DAX: Администрирование 27 29.06.2005 10:48
Печать отчета в Excel. Axapta 3.0 Fedr Kuzmich DAX: Функционал 2 19.05.2004 18:26

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

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

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