powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Oracle Forms [игнор отключен] [закрыт для гостей] / Oracle Reports 11g. Вывод на печать Formula column.
4 сообщений из 4, страница 1 из 1
Oracle Reports 11g. Вывод на печать Formula column.
    #38497065
Kaimen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день.

Наткнулся на любопытный баг.
Ситуация следующая. В отчете имеется 2 summary column, суммирующих каждая свое поле из одного и того же запроса, и располагающиеся на уровне Отчета, и 1 Formula column (также на уровне отчета), в которой имеется следующая формула:

Код: plsql
1.
2.
3.
4.
5.
6.
function CF_2Formula return Number is
summa number;
begin
	summa:=((:cs_1/(:cs_5/1000))*100); -- матем. действия роли не играют, при :cs_1+:cs5 ситуация аналогичная
  return summa;
end;



На Макете распечатки имеем Поле, источником которого является CF_2. При этом, при просмотре листа в Paper design данное поле отображается пустым (без ***** и тому подобного). Но стоит лишь заменить одну из :cs на число (написать например :cs_1+100), как результат прекрасно выводится в поле!
Для теста создавал новый небольшой отчет, действительно, получается что Reports не хочет выводить в поле результат действий над двумя summary column.
Как можно обойти такое ограничение?
...
Рейтинг: 0 / 0
Oracle Reports 11g. Вывод на печать Formula column.
    #38497101
-=APS=-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это, случайно, не NULL ли сработал?
...
Рейтинг: 0 / 0
Oracle Reports 11g. Вывод на печать Formula column.
    #38497202
Kaimen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
-=APS=-Это, случайно, не NULL ли сработал?

Нет. Это совершенно точно.
Покопавшись, обратил внимание, что в это поле данные все-таки выводятся, но только (!) когда оно находится в верхней части отчета в Рамке, объединяющей рипит-фреймы, входящие в заголовок. При помещении же поля непосредственно в тело таблицы, на свое место, данные из него пропадают, а сама таблица ломается. При помещении поля под таблицу, данные не выводятся, выводится только пустая рамка, таблица не ломается.
Мистика.
...
Рейтинг: 0 / 0
Oracle Reports 11g. Вывод на печать Formula column.
    #38498403
Kaimen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нашел как обойти проблему. Напишу здесь, может кому-то пригодится, потому что при наличии определенных условий в отчете, не наткнуться на эти грабли нельзя.
Необходимо избавиться от одного из суммируемых CS, проведя SUM непосредственно в теле запроса, и затем, уже в CF проводить необходимые действия с полученной переменной и оставшимся СS.
Т.е. в одном из 2 запросов, которые участвуют в CS1 и СS2 соответственно пишем:
Код: plsql
1.
SUM(vel_oplaty) OPLATA

, СS1 удаляем.

В СF пишем:
Код: plsql
1.
2.
3.
4.
5.
6.
function CF_1Formula return Number is
summa number;
begin
	summa:=:OPLATA+:cs_2;
  return summa;
end;



После этого, поле, имеющее источником CF1 будет нормально выводиться в любой части отчета, не ломая его.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Oracle Forms [игнор отключен] [закрыт для гостей] / Oracle Reports 11g. Вывод на печать Formula column.
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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