REP-0496: Internal Error - Unable to parse the query.

Dicas e truques sobre Oracle Reports Builder - modo gráfico ou modo caractere, ascii, arquivo .PRT, etc
Responder
JOPA
Rank: Programador Sênior
Rank: Programador Sênior
Mensagens: 58
Registrado em: Sex, 30 Out 2009 9:52 am
Localização: Salvador - BA
Contato:
Atenciosamente,

João Paulo A. C. do Bomfim

"Deu certo? Deixa! Funcionou? Não mexa!"

Estou usado o Reports 2.5 e estou encontrando muita, repito, MUITA dificuldade com uma coluna.

Selecionar tudo

SELECT colunm1,
            column2,
            column3,
       NVL((SELECT tab1.sigla 
               FROM schema.tabela1 tab1, 
                        schema.tabela2 tab2 
              WHERE SUBSTR(tab1.campoLayout, 1, 8) = tab2.nome_se 
                AND TRIM(SUBSTR(tab1.campoLayout, 10, 3)) = tab2.a 
                AND TRIM(SUBSTR(tab1.campoLayout, 13, 3)) = tab2.e
                AND TRIM(SUBSTR(tab1.campoLayout, 16, 8)) = tab2.i
                AND TRIM(SUBSTR(tab1.campoLayout, 25, 1)) = tab2.o
                AND tab2.codigo = column3), 
       column3) FOCO, 
       NVL(DECODE(tab1.colunm1, 11, 11.9, 13, 13.8, 34, 34.5, 69, 69.0, 138, 138.0), 0) column4, 
           ROUND(POWER(3, 1 / 2) * tab1.column1*(95 / 100) * tab2.column3 / 1000, 2) resultado 
  FROM schema.tabela2 
   ......
   ......
   ......
   ......

Bom, após dar uma respirada depois da query mais ou menos acima fiz vários testes e os resultados estão um SUCESSO - como esperado.

Fui no reports, criei uma query, coloquei a query acima e fui surpreendido pela mensagem abaixo:

REP-0496: Internal Error - Unable to parse the query.

Cause: The SQL statement that you have entered cannot be parsed because it contains an error.

Action: Review the SQL statement that you entered and ensure that you are using the correct syntax. For more information, see the ORACLE7 Server SQL Language Reference Manual.

Por favor, me ajudem.
victorhugomuniz
Moderador
Moderador
Mensagens: 1396
Registrado em: Sex, 01 Fev 2008 2:06 pm
Localização: Rio de Janeiro - RJ
Contato:
:D

bom..

todas as vezes q usei report eu fazia a query via procedure e então apartir do meu report eu chamava a procedure..

nunca vi usar query direto
JOPA
Rank: Programador Sênior
Rank: Programador Sênior
Mensagens: 58
Registrado em: Sex, 30 Out 2009 9:52 am
Localização: Salvador - BA
Contato:
Atenciosamente,

João Paulo A. C. do Bomfim

"Deu certo? Deixa! Funcionou? Não mexa!"

Como assim? Não entendi.

Estou em Data Model > Queries

Coloquei essa query em uma nova query(objeto) para poder usar os resultados de cada coluna no relatório.

Mas, sou surpreendido por esse erro.
victorhugomuniz
Moderador
Moderador
Mensagens: 1396
Registrado em: Sex, 01 Fev 2008 2:06 pm
Localização: Rio de Janeiro - RJ
Contato:
:D

então..

o meu data model eu coloco uma chamada da proc que tem a query quero executar..

crio parametros no meu report e uso nessa chamada
JOPA
Rank: Programador Sênior
Rank: Programador Sênior
Mensagens: 58
Registrado em: Sex, 30 Out 2009 9:52 am
Localização: Salvador - BA
Contato:
Atenciosamente,

João Paulo A. C. do Bomfim

"Deu certo? Deixa! Funcionou? Não mexa!"

Bom,

Estou verde ainda mas, vamos lá.
Você pega a query e cria uma procedure em Program Units com essa query, é isso?
Como é essa chamada em linha de código, a título de exemplo?

O banco é 8i e o reports é 2.5.
SergioLBJr
Rank: Oracle Guru
Rank: Oracle Guru
Mensagens: 448
Registrado em: Ter, 16 Jun 2009 3:07 pm
Localização: Parobé - RS
Sérgio Luiz Bonemberger Junior
Programador Junior
Parobé RS

[]s

Verifica se tu não esta usando um recurso que a versão do teu reports não suporta.
JOPA
Rank: Programador Sênior
Rank: Programador Sênior
Mensagens: 58
Registrado em: Sex, 30 Out 2009 9:52 am
Localização: Salvador - BA
Contato:
Atenciosamente,

João Paulo A. C. do Bomfim

"Deu certo? Deixa! Funcionou? Não mexa!"

Estou vendo aqui.
...estudando SQL/92 e SQL/86.

Ainda continuo com o problema.
SergioLBJr
Rank: Oracle Guru
Rank: Oracle Guru
Mensagens: 448
Registrado em: Ter, 16 Jun 2009 3:07 pm
Localização: Parobé - RS
Sérgio Luiz Bonemberger Junior
Programador Junior
Parobé RS

[]s

Tu tem alguma versão mais recente do report para testar esta query??

Se não, começa a tentar tirar algumas das funções que tu ta usando aí, até funcionar a query e então procura uma maneira de contornar o que esta causando o problema.
Avatar do usuário
dr_gori
Moderador
Moderador
Mensagens: 5024
Registrado em: Seg, 03 Mai 2004 3:08 pm
Localização: Portland, OR USA
Contato:
Thomas F. G

Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered

Olha no "About" pra ver a versão do seu SQL e PLSQL e daí compara com a versão do banco.
Provavelmente no banco FUNCIONA porque é uma versão bem mais nova, ou seja, que permite fazer NVL com um SELECT dentro.

já o reports 2.5 provavelmente não suporta esse tipo de coisa.

Uma possível solução:
* Criar uma package que popula uma tabela com o seu select. Dai no reports, basta fazer SELECT * FROM temp...

Deixa o trabalho pro banco, sacou ? hehe
JOPA
Rank: Programador Sênior
Rank: Programador Sênior
Mensagens: 58
Registrado em: Sex, 30 Out 2009 9:52 am
Localização: Salvador - BA
Contato:
Atenciosamente,

João Paulo A. C. do Bomfim

"Deu certo? Deixa! Funcionou? Não mexa!"

Infelizmente estou refém dessa versão.

Todos os relatórios das aplicações foram criados nesta versão.

Estou trabalhando na query ainda buscando eliminar este problema.

Grato pela atenção, qualquer nova informação será bem vinda.
JOPA
Rank: Programador Sênior
Rank: Programador Sênior
Mensagens: 58
Registrado em: Sex, 30 Out 2009 9:52 am
Localização: Salvador - BA
Contato:
Atenciosamente,

João Paulo A. C. do Bomfim

"Deu certo? Deixa! Funcionou? Não mexa!"

Só a título de informação:

Selecionar tudo

About

Reports 2.5.7.0.4
ORACLE7 Server Release 7.3.4.1.0
Oracle Procedure Builder 1.5.6.15.10
Oracle PL/SQL V1.2.1.11 - Production
Oracle CORE Version 3.5.4.0.0
Oracle Tools Integration Services 1.2.0.5.0
Oracle Tools Commom Area 2.0.0.9.0
Oracle Toolkit 2 for Windows 32-bit platforms 2.3.6.19.0
Resource Object Store 2.2.2.2.0
Oracle Help 2.1.5.4.1
Oracle Virtual graphics System 2.1.11.0
Oracle Image 2.0.7.9.0
Oracle Multimedia Widget 2.0.7.9.0
Oracle Tools GUI Utilities 1.2.0.10.0
Avatar do usuário
Marciel
Rank: Analista Sênior
Rank: Analista Sênior
Mensagens: 158
Registrado em: Qui, 03 Mai 2007 10:12 am
Localização: Vitória - ES
Sabe qual o cúmulo da ignorância, da apatia e da ira?
Não sei, não quero saber e tenho raiva de quem sabe.

Querys problemáticas como essa podem ser usadas mais facilmente se você criar uma view. No seu relatório, chame a view ao invés da sua query. Isso também irá dar um melhor desempenho, visto que a view é executada no servidor, e não localmente como seria a query.

Abraço
JOPA
Rank: Programador Sênior
Rank: Programador Sênior
Mensagens: 58
Registrado em: Sex, 30 Out 2009 9:52 am
Localização: Salvador - BA
Contato:
Atenciosamente,

João Paulo A. C. do Bomfim

"Deu certo? Deixa! Funcionou? Não mexa!"

Prezados,

Em virtude de muitas demandas, complexidade e mudança de especificação
da regra de negócio, findei por esses dias e acabei me esquecendo de
reiterar aqui.

Minha solução foi refinar ao máximo os dados, que serão exibidos no
relatório, no Forms. Isso envolve Program Units diversos com algumas
chamadas a Procedures de Banco, Funções, DBLinks, Triggers,....aff -
PORRADA de coisas. Criei uma Tabela "temporária" para que, ao invocar o
relatório, este faça uma consulta simples nesta tabela listando seus dados.

Enfim, o fim.

Agradeço a todos pela atenção - Obrigado!
Responder
  • Informação
  • Quem está online

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