Trigger when-mouse-click com edit_field no campo item text?

Dicas do Oracle Forms Builder - Blocos, Itens, LOV, Canvas, Triggers, comandos, PLL, d2kwutil, FMB, Alert, menus, etc
Responder
Hahu
Rank: Analista Sênior
Rank: Analista Sênior
Mensagens: 147
Registrado em: Qui, 16 Mar 2006 11:26 am
Localização: São Paulo
O mundo gira muito!!

bom dia Glufke,

td bom com você´s?


Informações complementares:
oracle 10g
forms 6i
sqlplus 8.0

amigos..me deparei com está seguinte situação:
estou utlizando em um campo item de texto, que coloquei um gatilho when-mouse-click com edit_field, ele me abre o que foi preenchido no campo após a consulta.

exp: Se a consulta me retorna uma msg: "Computador identificado", no edit field retorna esta mensagem!

Mas o que na verdade, tenho que realizar é o seguinte: Preciso que após o duplo click no campo que item texto..ele me traga as informações de uma tabela A:

Quando clicar no item texto: Ele abre o edit field e me traga, está informações abaixo:

Numero do computador: 4444444
IP: 00000000
Placa: Pentium II

é isso :roll:

agradeço a todos!

Abs Hahu[/b] :wink:
Hahu
Rank: Analista Sênior
Rank: Analista Sênior
Mensagens: 147
Registrado em: Qui, 16 Mar 2006 11:26 am
Localização: São Paulo
O mundo gira muito!!

Amigos,

fiz um select..into dentro deste gatilho mencionado acima, só que tem que restringir para que ele retorna apenas uma linha, senão gerar muitas linhas.

mas quando clico no ok...ele retorna no campo item text o valor do edit_field.. :..(.exp:


no campo item texto está com : equipamentos teste...

eu busco no select as informações assim: computador || drive

ele coloca no campo item text : computador || drive, gostaria que ele apenas apresenta-se a informação e não alimenta-se o campo! :roll:

abs Hahu
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

bom, tenta fazer assim:

por exemplo o nome da maquina vai estar assim no edit_field
"Maquina: aaaa, PC: 4"

ai repara qui tem um dois pontos separando(:) eles ai tenta usar o instr assim:

Selecionar tudo

select substr( 'Maquina: aaaa, PC: 4'
             , instr('Maquina: aaaa, PC: 4', ':')+2
             , instr('Maquina: aaaa, PC: 4', ',')-(instr('Maquina: aaaa, PC: 4', ':')+2)
             ) aa
from dual
ou em um bloco sql qui fica mais organizado e fácil de intender:

Selecionar tudo

DECLARE
   vv_string varchar2(100)  := 'Maquina: aaaa, PC: 4';
   vn_num1   number         := instr(vv_string, ':')+2;
   vn_num2   number         := instr(vv_string, ',')-(instr(vv_string, ':')+2);
   vv_ret    varchar2(100);
BEGIN
   select substr( vv_string, vn_num1, vn_num2)
             into vv_ret 
             from dual;
   dbms_output.put_line(vv_ret);
END;
se você quiser brecar quanto tiver quebra de linha, tem qui substituir no vn_num2 para ficar assim:

Selecionar tudo

instr(vv_string, CHR(10))-(instr(vv_string, ':')+2);
Responder
  • Informação
  • Quem está online

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