Query em combo - Formulário

Boa tarde.

Tenho um formulário do tipo grid editável (view). Um dos campos é um combo que possuía a seguinte query no lookup:
SELECT id_condicao_celebracao, str_condicao FROM condicao_celebracao WHERE int_ano = YEAR(NOW()). Funcionava perfeitamente.


Ao mudar a query para SELECT id_condicao_celebracao, str_condicao FROM condicao_celebracao WHERE int_ano = YEAR(NOW()) AND id_condicao_celebracao NOT IN (SELECT id_condicao_celebracao FROM proposta_condicao_celebracao WHERE id_proposta = [pk_proposta]), mostra
o conteúdo perfeitamente, mas ao salvar o registro, não mostra mais o conteúdo do campo "str_condicao ", e sim o índice do array do combo “id_condicao_celebracao”.

Alguém está percebendo alguma coisa que deixei passar?

entao,
vai no onload e cria uma a mesma query dentro do campo para que ele interprete o valor do campo na hora de listar ele.

Colocou em modo debug?

Bom dia Pessanha.
Realizei o procedimento sugerido e continua da mesma forma.

Bom dia Haroldo.
Coloquei em modo debug e não mostra nada de anormal.

Se eu entendi bem, acho que o correto seria no onRecord. Experimente colocar essa query lá.

Bom dia Kleyber.
A query funciona sem problemas, o único ponto que está pegando é que quando coloquei uma query mais complexa no lookup do combo,
perde-se a referência na exibição da combo, pois onde deveria mostrar o conteúdo, mostra sua chave. Os campos retornados nas duas queries são os mesmos,
e a query mais complexa não retorna nenhum erro.

SELECT id_condicao_celebracao, str_condicao FROM condicao_celebracao WHERE int_ano = YEAR(NOW())

SELECT id_condicao_celebracao, str_condicao FROM condicao_celebracao WHERE int_ano = YEAR(NOW()) AND id_condicao_celebracao NOT IN
(SELECT id_condicao_celebracao FROM proposta_condicao_celebracao WHERE id_proposta = [pk_proposta])

Eu troquei a query mais simples pela mais complexa para que a cada item da combo que seja gravado, as combos posteriores não inclua os itens que já foram salvos no BD.

Crie uma view para query mais complexa.

1 Curtida

Tentei com uma view, mas não consegui escapar da subquery, portanto o problema persiste.

escapar da subquery seria no caso da global na clausula where correto?
Acredito que vc posso usar inner join nessas tabelas não precisando da subquery

Exato, a subquery é por conta da global.
Já tentei de tudo, view, procedure, etc. Como não tive sucesso, voltei para a query original.