Probleminha fo*a

Dicas e truques sobre Oracle Reports Builder - modo gráfico ou modo caractere, ascii, arquivo .PRT, etc
Responder
gokden
Rank: DBA Pleno
Rank: DBA Pleno
Mensagens: 264
Registrado em: Dom, 19 Ago 2007 8:18 pm
Localização: Ribeirão Preto - SP
Lucas de Souza

OCA Developer
Analista de sistemas

Galera, to com um problemao assim...

no meu reports, ele faiz aquele select imenso lá...

mais ai contece assim...

a tabela pai, tem vários registor filhos, mais todos eles são iguais, a unica coisa que muda, é no campo descrição, que são os ultimos 11 characters da descrição, só muda isso nos registros, mais o povo aqui, quer que agora, ele agrupe tudo, e que os ultimos 11 characters senha concatenados =/
tp assim:

Normal:

Selecionar tudo

Código - Descrição
46172  - Lucas. APLIC. 1234
46172  - Lucas. APLIC. 1434
46172  - Lucas. APLIC. 1589
o jeito que tem qui ficar:

Selecionar tudo

Código - Descrição
46172  - Lucas. APLIC. 1234 - APLIC. 1434 - APLIC. 1589
se alguém puder me ajudar =/

o maior problema é que o aplic faiz parte da descrição =/
Trevisolli
Moderador
Moderador
Mensagens: 2016
Registrado em: Qua, 12 Jan 2005 3:25 pm
Localização: Araraquara - SP
Abraço,

Trevisolli
OCA Oracle PL/SQL Developer Certified Associate
OCP Oracle Forms Developer Certified Professional
Araraquara-SP

Brother,

Uma dica seria usar uma função analítica, tipo o LEAD, que traz, na mesma linha, o valor de uma coluna da linha seguinte.

Fiz um teste aqui e, trouxe apenas o próximo, mas, no teu caso você precisaria de todas as descrições daquele determinado código.

Uma outra saída é, você poderia criar uma temp table, e populá-la via PL/SQL, depois teu report busca direto desta temp.

Com PL/SQL dá pra você fazer um distinct daquele código e, buscar as descrições concatenadas.

Qualquer coisa, manda ai.
gokden
Rank: DBA Pleno
Rank: DBA Pleno
Mensagens: 264
Registrado em: Dom, 19 Ago 2007 8:18 pm
Localização: Ribeirão Preto - SP
Lucas de Souza

OCA Developer
Analista de sistemas

então vei, eu não estou muito familiarizado com LEAD...

ai eu dei uma pesquisada aqui no forum... e achei a função ROWTOCOL....

mais assim, como no select do reports, ele agrupa tudo no final
eu to pensando em colocar o max na descrição e concatenar o resto com aquela funçãozinha "ROWTOCOL"

acho que ia ficar legalzinhu se desse certo =D

mais o ruim do ROWTOCOL, é qui ele não suporta um valor muito grande para retornar =/

mais é a maneira mais simples que eu pensei também =D

vlw pela ajuda cara....
rogenaro
Rank: DBA Pleno
Rank: DBA Pleno
Mensagens: 232
Registrado em: Sex, 30 Mar 2007 7:26 pm
Localização: Londrina - PR
Rafael O. Genaro

Uma outra alternativa (da versão 9i em diante), seria usar uma função agregada
schnu
Rank: Analista Pleno
Rank: Analista Pleno
Mensagens: 110
Registrado em: Ter, 24 Mai 2005 9:16 pm
Localização: Dongguan - Guangdong - China

você esta usando o report 6i ? se sim você pode tentar fazer ele como Matrix

tera que mexer no select algo tipo isso:


Selecionar tudo

select codigo ||' '||substr (descricao,1,5) codigo
,  substr (descricao, 6, 9) descricao
from tabela
so não sei dizer se é viavel para você fazer o report via matrix.
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 7 visitantes