|
20.01.2021, 19:57 | #1 |
Участник
|
Если я правильно понимаю, то у Вас идея заключается в том, чтобы создать первый лист "как положено": HEADER+BODY+FOOTER. Затем Вы создаете новый лист как копию этого созданного листа и хотите только заменить BODY, оставив без изменения HEADER и FOOTER
Сомневаюсь я, что это возможно... Создание полосы - это метод execute(), а собственно вставка в отчет - document.insertRowsByBookmark() и там дело кончается командой OXML_RU::appendChild(sheetData, row.row()); Т.е. явно вставка в конец, а не в указанное место По-моему, Вам придется на каждом листе повторять формирование HEADER и FOOTER. Соответственно, новые листы создавать не как копии первого, а делать их чистыми Т.е. в команде document.workbook().insertSheet(1, i, sheetName); Первый параметр - указать 0 и формировать эти листы с нуля
__________________
- Может, я как-то неправильно живу?! - Отчего же? Правильно. Только зря... |
|
20.01.2021, 22:07 | #2 |
Участник
|
Я пробовал, но тогда вылезает ошибка в initSectionMap.
В общем по ходу придется все выводить на 1 лист, ибо сложно выявить проблему в недоступных для дебага объектах. |
|