Lov cascading Mestre/Detalhe

Oracle Application Express - web application development tool (antigamente conhecido como Oracle HTML-DB)
  

Mensagemem Qua, 01 Fev 2017 11:32 am

Ola,

há como efetuar uma lov para um campo detalhe, onde a clausula where restrinja a um campo mestre ?? Por exemplo, uma requisicao de materiais, onde no mestre tenho a EMPRESA/data/centro custo e no detalhe os itens e seuas respectivas qtdes. A lov de itens deverá trazer apenas os itens relativos a EMPRESA inserida no registro mestre. A opção cascading, traz somente os campos da tabela detalhe ...

alguma sugestao ??
marnufer
Localização: Sao leopoldo

Mensagemem Ter, 07 Fev 2017 7:33 am

Ola marnufer,

Sim e possivel, faça 2 campos tipo lov, no segundo lov vai no List of Values --> Cascading LOV Parent Item(s) e coloque o nome da 1º lov.

Com isso quando a 1º lov estivar por exemplo '001' a segunda lov vai trazer resultado com a clausula where codigo = '001'

Espero ter ajudado.

Douglas - Madmax
madmax
Localização: São Paulo

________________________________
Douglas - Madmax.

Mensagemem Ter, 07 Fev 2017 10:32 am

Ola Douglas

Obrigado pelo retorno


Mas a situacao é que a minha primeira Lov esta no bloco mestre e a segunda no bloco detalhe, então na aparece o campo para fazer o cascateamento, aparecem apenas os campos da tabela detalhe.

No anexo tento mostrar visualmente a situacao
Anexos
tela.jpg
lov
marnufer
Localização: Sao leopoldo

Mensagemem Seg, 13 Fev 2017 8:55 am

Marnufer

Tu podes referenciar qualquer campo de qualquer página. Basta saber se o campo referenciado possui valor.
Na segunda lov que tu podes usar:
Código: Selecionar todos
SELECT IDEMP, NOMEMP FROM TABELA_XXX WHERE EMPRESA=:P2_EMPRESA
(considerando que este campo p2_empresa foi carregado na primeira lov)

Abraço!
chunning
Localização: Feliz - RS

Mensagemem Ter, 21 Fev 2017 5:45 pm

Ola,

obrigado pelo retorno, mas infelizmente não funciona como citou, tanto que na lista para selecionar a "parent column" não aparece o e a coluna bo bloco master que eu quero refenciar. Se coloco o nome dela manualmente, não retorna nada na Lov.
marnufer
Localização: Sao leopoldo

Mensagemem Qua, 22 Fev 2017 2:11 pm

Marnufer

Pelo que vi no print, a única coisa errada é o nome do campo PARENT.
Tu colocou :EMPRESA sendo que deve ser o nome completo do campo :EMPRESA_MESTRE.

Veja o anexo que eu coloquei onde tenho Comarcas e Foros. Quando a comarca é grande (ex Porto Alegre) daí pode ter vários Foros. Quando o usuário escolhe a comarca, o sistema popula a lov de Foros de acordo com a comarca informada.
Anexos
Lov_Cascata.jpg
chunning
Localização: Feliz - RS

Mensagemem Qua, 22 Fev 2017 2:41 pm

Certo,

mas tanto comarca e foro estao dentro de "Outros". O que não consigo e se puder fazer o teste ai, é tentar relacionar a algum campo dentro de "valores", tipo se o campo p18_cod_comarca estivesse lá.
Anexos
tela.jpg
marnufer
Localização: Sao leopoldo

Mensagemem Qua, 22 Fev 2017 4:30 pm

Fiz o teste e funciona normalmente.

A configuração que tu mostrou no print está certa, só tens que selecionar o campo EMPRESA_MESTRE no campo "Cascading Lov Parent Item(s)". Ali aparecem todos os campos da página.
Também o "SQL Query" do campo :CODIGO_ITEM deixe sem aspas e conforme abaixo:
select descricaoItem d,
codItem r
from ItensEmEstoqueSap
where codFilial = :EMPRESA_MESTRE

SDs,
chunning
Localização: Feliz - RS



Voltar para Apex

Quem está online

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