powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Oracle Forms [игнор отключен] [закрыт для гостей] / Oracle Reports. Как вывести поле, только если в отчете страниц более одной
12 сообщений из 12, страница 1 из 1
Oracle Reports. Как вывести поле, только если в отчете страниц более одной
    #37004225
monomakh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день!
Есть филд внутри фрэйма на первой странице, который нужно выводить только если количество страниц в отчете более одной. Казалось бы простая задача, а вот вариантов решения в интернете найти не удалось. Может кто сталкивался?
Т.е. если страница одна отчет выглядит так

-----
я отчет.

данные записи из одной строки
данные записи из трех
строк строк
строк
данные записи из одной строки
я закончился на первой же странице.
--------

а если две то вот так:

я отчет.
количество страниц: 2
данные записи из одной строки
данные записи из трех
строк строк
строк
данные записи из одной строки
....
данные записи из одной строки
я закончился на второй же странице.
...
Рейтинг: 0 / 0
Oracle Reports. Как вывести поле, только если в отчете страниц более одной
    #37004858
Фотография mRdUKE
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
monomakh,

Триггер на поле -> srw.get_page_num(page_num)
...
Рейтинг: 0 / 0
Oracle Reports. Как вывести поле, только если в отчете страниц более одной
    #37005230
monomakh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
И что мне даст этот триггер. Он мне вернет 1 на первой странице, где находится моё поле с условным форматированием. Он вернет 1 если документ из одной страницы и выводить не надо, и вернет 1 если документ из двух страниц и выводить надо.
Как результат, мне не ясно как воспользоваться данной процедурой. Причем даже если поместить формула коламн на последней странице с расчетом номера страницы и возвратом значения в плэйсхолдер коламн или параметр, а потом воспользоваться значением, которое рассчитывает формула коламн я все равно не получаю нужного мне результата, так как сначала позиционируется мое поле, а затем уже мой формула коламн, т.е. результат всегда будет NULL.
Фактически мне известен только один метод - рассчитать до вывода отчета на скольких страниц он будет располагаться, но это потребует либо использовать фиксед вертикал эластисити, либо фиксед шрифт.
...
Рейтинг: 0 / 0
Oracle Reports. Как вывести поле, только если в отчете страниц более одной
    #37005879
Алымов Анатолий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Интересно почему не сделали в srw что-то типа get_total_pages, ведь сам репорт может выводить общее число страниц, но в триггере к нему не обратишься
...
Рейтинг: 0 / 0
Oracle Reports. Как вывести поле, только если в отчете страниц более одной
    #37006068
Фотография mRdUKE
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
srw.get_page_num возвращает номер текущей страницы, пишешь триггер на поле, что мол если pnum>1, то return(true)! ю андерстэнд ми?
...
Рейтинг: 0 / 0
Oracle Reports. Как вывести поле, только если в отчете страниц более одной
    #37006125
Алымов Анатолий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mRdUKEsrw.get_page_num возвращает номер текущей страницы, пишешь триггер на поле, что мол если pnum>1, то return(true)! ю андерстэнд ми?
Человек хочет в начале отчета (первая страница) получить количество всех листов и если оно больше одного - отобразить
...
Рейтинг: 0 / 0
Oracle Reports. Как вывести поле, только если в отчете страниц более одной
    #37007508
Фотография mRdUKE
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алымов АнатолийmRdUKEsrw.get_page_num возвращает номер текущей страницы, пишешь триггер на поле, что мол если pnum>1, то return(true)! ю андерстэнд ми?
Человек хочет в начале отчета (первая страница) получить количество всех листов и если оно больше одного - отобразить

Количество страниц: &<TotalPages>
...
Рейтинг: 0 / 0
Oracle Reports. Как вывести поле, только если в отчете страниц более одной
    #37009517
Алымов Анатолий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mRdUKEКоличество страниц: &<TotalPages>
И как это в формат-триггере использовать?
...
Рейтинг: 0 / 0
Oracle Reports. Как вывести поле, только если в отчете страниц более одной
    #37020207
monomakh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо, Анатолий. Вы верно поняли проблему.
...
Рейтинг: 0 / 0
Oracle Reports. Как вывести поле, только если в отчете страниц более одной
    #37058327
gural
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
monomakh,
Есть триггер Between Pages , который стреляет один раз перед форматтированием каждой страницы кроме первой.
Можно поднять там флаг что у вас больше чем одна страница....
...
Рейтинг: 0 / 0
Oracle Reports. Как вывести поле, только если в отчете страниц более одной
    #37232969
monomakh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Когда занимался этой проблемой, пытался воспользоваться различными триггерами и этим в том числе. Возможно, когда пробуешь все и сразу можно было по невнимательности пропустить правильное решение и я попробую проверить этот триггер еще раз, однако, на вскидку кажется, что этот триггер не поможет. Дело в том, что если он срабатывает впервые только со второй страницы - то как он сможет сделать видимым поле на первой странице?
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Oracle Reports. Как вывести поле, только если в отчете страниц более одной
    #38406766
Dark Jedi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А как скрыть страницу целиком ?
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Oracle Forms [игнор отключен] [закрыт для гостей] / Oracle Reports. Как вывести поле, только если в отчете страниц более одной
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]