Query para LOV considerando parametros da tela

Dicas do Oracle Forms Builder - Blocos, Itens, LOV, Canvas, Triggers, comandos, PLL, d2kwutil, FMB, Alert, menus, etc
Responder
mysturm
Rank: Programador Pleno
Rank: Programador Pleno
Mensagens: 39
Registrado em: Sex, 31 Ago 2007 10:42 pm
Localização: são paulo

Alguém sabe como faço para criar uma LOV levando em conta valores inseridos na tela?

A situação é a seguinte:

tenho campo X e campo Y (deverão ser LOV's)

data fim e data inicio (parametro text normal)

O campo X só poderá ser populado de acordo com as datas de inicio e fim inseridas.
Como criar essa query para a LOV, baseando na data inserida e nas datas do campo X na base?

Campo Y só deverá trazer valores que concorde com o campo X.

Desde já obrigada pela ajuda

My Sturm
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

Basta ao criar o SQL você colocar as datas...

algo assim:

Selecionar tudo

SELECT AAA,YYYY,ZZZZ
FROM tabela
WHERE (:bloco.parametro_inicio IS NULL
       OR
       datainicio >= :bloco.parametro_inicio
      )
  AND (:bloco.parametro_fim IS NULL
       OR
       datafim >= :bloco.parametro_fim
      )
Dessa forma, caso tenha algo preenchido nos PARAMETROS (inicio ou fim), a lov vai considerar essas datas.

Era essa a dúvida ?
mysturm
Rank: Programador Pleno
Rank: Programador Pleno
Mensagens: 39
Registrado em: Sex, 31 Ago 2007 10:42 pm
Localização: são paulo

Olá Thomas,

Muito obrigada pela ajuda

usei algo assim:
para campo AAA
criei uma lov AAA
e um record group com a query:

Selecionar tudo

SELECT AAA 
FROM tabela
WHERE datainicio between :bloco.parametro_inicio and :bloco.parametro_fim
    AND datafim between  :bloco.parametro_inicio and :bloco.parametro_fim
para campo YYY
criei uma lov YYY
e um record group YYY com a query:

Selecionar tudo

SELECT YYY 
FROM tabela
WHERE AAA =    :bloco.parametro_AAA
Como essa é a primeira vez q construo uma tela em forms, existe algo que eu deva fazer para ativar a minha lov, porque quando executo e coloco valores no campo AAA e dou 'tab' a lovAAA não aparece nada.

Outra dúvida é como faço ser obrigatório o usuário colocar a data? ou derrepente emitir uma mensagem pra ele inserir a data?

Desde já Obrigada a todos do forúm pela ajuda

Myrela Sturm
Diego_Mello
Rank: DBA Júnior
Rank: DBA Júnior
Mensagens: 229
Registrado em: Sex, 05 Set 2008 2:59 pm
Localização: Igrejinha - RS
Diego Mello
Igrejinha - RS
www.twitter.com/diegolmello

oi my...

a lov só é chamada quando você tecla F9...
ou você pode mudar a propriedade do campo "Validate from list" para YES

assim sempre irá aparecer a lov...

para você obrigar o usuário a inserir valores em um campo...
mude a propriedade do campo "Required" para YES...

acho que era isso...
:roll:
mysturm
Rank: Programador Pleno
Rank: Programador Pleno
Mensagens: 39
Registrado em: Sex, 31 Ago 2007 10:42 pm
Localização: são paulo

Bom dia Diego!

muito obrigada

eu apertei f9 e nada!

Vou tentar o validate from list que você está falando.

Vamos ver se consigo terminar essa tela hj

uahauhua

bjos

Myrela Sturm
edson.amorim
Rank: Analista Sênior
Rank: Analista Sênior
Mensagens: 135
Registrado em: Qui, 04 Out 2007 3:36 pm
Localização: Belo Horizonte - MG

Oi Myrela,

E então, já conseguiu concluir sua LOV?

Edson
mysturm
Rank: Programador Pleno
Rank: Programador Pleno
Mensagens: 39
Registrado em: Sex, 31 Ago 2007 10:42 pm
Localização: são paulo

Olá Edson,

muito obrigada pela ajuda de vocês, consegui terminar sim,

deletei a LOV, segui as instrucões dos meus colegas da lista,

está tudo funcionando blzinha

beijos a todos
Responder
  • Informação
  • Quem está online

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