Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 ORACLE REPORTs  [new]
ora_reports
Member

Откуда:
Сообщений: 6
День добрый Уважаемые. Вот возникла задачка. Есть два запроса Q1 и Q2 которые возвращают по одной цифре например(Q1=100, Q2=50, Q1-Q2=50). Вопрос как вычислить Q1-Q2 в отчете? В репортс недавно поэтому и возник вопрос сей.
4 окт 06, 18:09    [3222067]     Ответить | Цитировать Сообщить модератору
 Re: ORACLE REPORTs  [new]
Takurava
Member

Откуда:
Сообщений: 1776
Выдаёт цифры наверно не Q1, а находящееся в G_xxx поле (уж не знаю как оно у тебя называется). Делаешь формулу CF_1 в которой пишешь
function CF_1Formula return Number is
begin
  return (поле_из_первого_G_xxx+поле_из_второго_G_xxx);
end;
4 окт 06, 19:52    [3222475]     Ответить | Цитировать Сообщить модератору
 Re: ORACLE REPORTs  [new]
ora_reports
Member

Откуда:
Сообщений: 6
Создал формулу написал внутри:
return (:A0-:A1)

Поле A0 из одной группы G_A0
Поле A1 из другой группы G_A1

и при попытке сформировать отчет сообщение:
REP-1570 : Column 'CF_1' references column 'A1', which has incompatible frequency

К сообщению приложен файл. Размер - 0Kb
5 окт 06, 01:48    [3222952]     Ответить | Цитировать Сообщить модератору
 Re: ORACLE REPORTs  [new]
Takurava
Member

Откуда:
Сообщений: 1776
Просуммируй A0 и A1 снаружи (вне G_A0 и G_A1) и сложи суммы формулой

К сообщению приложен файл. Размер - 0Kb
5 окт 06, 09:26    [3223249]     Ответить | Цитировать Сообщить модератору
 Re: ORACLE REPORTs  [new]
Sergey M
Member

Откуда: г. Барнаул
Сообщений: 5462
Takurava
Просуммируй A0 и A1 снаружи (вне G_A0 и G_A1) и сложи суммы формулой

не проще ли запрос переписать
select (decode(flag,1,Q,0) as Q1, (decode(flag,2,Q,0) as Q2
  from ( select Q1 as Q, 1 as flag from (запрос для Q1) 
         union all
         select Q2 as Q, 2 as flag from (запрос для Q1) 
        ) A
и иметь в одной строке оба поля
?
5 окт 06, 11:08    [3223864]     Ответить | Цитировать Сообщить модератору
 Re: ORACLE REPORTs  [new]
Sergey M
Member

Откуда: г. Барнаул
Сообщений: 5462
блин ошибка закралась
Sergey M
Takurava
Просуммируй A0 и A1 снаружи (вне G_A0 и G_A1) и сложи суммы формулой

не проще ли запрос переписать
select (decode(flag,1,Q,0) as Q1, (decode(flag,2,Q,0) as Q2
from ( select Q1 as Q, 1 as flag from (запрос для Q1)
union all
select Q2 as Q, 2 as flag from (запрос для Q1)
) A
и иметь в одной строке оба поля
?


так конечно же
select (decode(flag,1,Q,0) as Q1, (decode(flag,2,Q,0) as Q2
  from ( select Q1 as Q, 1 as flag from (запрос для Q1) 
         union all
         select Q2 as Q, 2 as flag from (запрос для Q2) 
        ) A
5 окт 06, 11:10    [3223868]     Ответить | Цитировать Сообщить модератору
 Re: ORACLE REPORTs  [new]
Takurava
Member

Откуда:
Сообщений: 1776
Sergey M
не проще ли запрос переписать
В репортах иногда это совсем не проще, ущитывая привязку полей запросов к полям репорта.
5 окт 06, 11:32    [3224014]     Ответить | Цитировать Сообщить модератору
 Re: ORACLE REPORTs  [new]
ora_reports
Member

Откуда:
Сообщений: 6
Спасибо Всем Takurava и Sergey M получилось!!!
5 окт 06, 13:42    [3225081]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить