7.7 Количество страниц в отчете

  • Автор темы Автор темы olga13
  • Дата начала Дата начала
O

olga13

День добрый! У меня такая проблема: на первом листе спецификации нужно указать общее количество листов. Но, пока я не выведу весь отчет, я не знаю, сколько будет листов. Можно ли каким-то образом задать значение в ячейке таблицы уже после того, как в таблицу выведена секция? Или заранее как-то посчитать, сколько получится листов?
 
Через колонтитул
#Q
 
Через колонтитул не годится, количество листов должно указываться в таблице. Это инженерная документация, там штамп в углу. Или есть способ колонтитул в таблицу вывести?
 
Тогда только зная точное кол-во строк на странице. Самый лучший способ что я видел был такой -

Основная проблема - очень длинное ( до 800 символов) наименование. Бывает и по 50 символов, соответственно высота строки пляшет. Надо чтобы выводилось корректно и переносилось между страницами.

решение : создаются две секции строки с ФИКСИРОВАННОЙ высотой. При выводе строчной части считаетя кол-во символов в строке. Если меньше 50 - выводится первая секция, и цикл двигается дальше.
Если больше - тогда от строки откусывается первые 50 символов, выводится первая секция, а дальше запускается второй цикл, в котором от оставшейся строки откусываются и выводятся по 50 символов во второй секции ( в ней нет поперечных перегородок, для красоты) и так пока строка не кончится. Дальше опять цикл по табчасти документа.


Применительно к твоему случаю - рассчитать сколько строчек будет жрать каждая строка в печ форме , и исходя из этого рассчитать количество итоговых листов.
 
Все строки отчета запихать в ТЗ. Посчитать кол-во строк. Узнать сколько строк у Вас помещается на странице. Остальное - дело математики
 
Спасибо за советы. Думаю, что вариант с ТЗ мне больше подходит, попробую воплотить.
 
при выводе первой страницы запомнить адрес ячейки в которую будем выводить кол. страниц, после вывода всей печатной формы через Область.Текст проставляем нужное значение
 
kaa, огромное спасибо! Через Область.Текст все получилось!
 
Обращайтесь :)
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab

Похожие темы

🚀 Первый раз на Codeby?
Гайд для новичков: что делать в первые 15 минут, ключевые разделы, правила
Начать здесь →
🔴 Свежие CVE, 0-day и инциденты
То, о чём ChatGPT ещё не знает — обсуждаем в реальном времени
Threat Intel →
💼 Вакансии и заказы в ИБ
Pentest, SOC, DevSecOps, bug bounty — работа и проекты от проверенных компаний
Карьера в ИБ →

HackerLab