Dúvida na sintaxe PL/SQL no Forms 6i.

Dicas do Oracle Forms Builder - Blocos, Itens, LOV, Canvas, Triggers, comandos, PLL, d2kwutil, FMB, Alert, menus, etc
Responder
pyro
Rank: DBA Sênior
Rank: DBA Sênior
Mensagens: 323
Registrado em: Qui, 21 Set 2006 10:21 am
Localização: Barala - TT

Pessoal tenho um select que se eu passar ele direto no banco usando o PL/SQL Developer funciona corretamente, porém quando tento passar ele dentro de um cursor no Forms 6i ele diz ter um erro no case.
O SQL é o seguinte:

Selecionar tudo

select campo, 
         campo2,
         case campo3 = 1 then
            null;
         else
            campo4
         end;
from tabela
Assim passa corretamente no PL/SQL Developer porém quando eu faço isso no Forms 6i (dentro do gatilho when-button-pressed):

Selecionar tudo

declare
cursor vtabela is
select campo, 
         campo2,
         case campo3 = 1 then
            null;
         else
            campo4
         end;
from tabela
begin

end;
Imagino que possa ser alguma diferença de sintaxe, porém não consigo localizar qual é. Alguém pode dar uma dica?
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

Acho que está sobrando ; aí.
Veja exemplo:

Selecionar tudo

select
  campo1
, campo2
, case
    when taxa>0 and valor>=100 and valor <1000 then salario*2
    when taxa=  and valor>=1000 then salario*1.5
    when valor < 100 then salario *3
  end novo_valor
from tabela 
pyro
Rank: DBA Sênior
Rank: DBA Sênior
Mensagens: 323
Registrado em: Qui, 21 Set 2006 10:21 am
Localização: Barala - TT

Thanks, vou olhar aqui de novo.
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Majestic-12 [Bot] e 17 visitantes