Campo SELECT com filtro

Olá.
Possuo uma aplicação do tipo formulário.
Neste formulário existe um campo do tipo SELECT.
Tudo funciona corretamente, esta aplicação trata da baixa no contas a receber, portanto o campo do tipo SELECT é para fazer lookup com os títulos a receber.
Meu problema é que para novas inclusões (baixas) eu não gostaria que fosse listado os títulos já baixados no dropdown.
Fui no Lookup de Edição e alterei o comando SELECT de:
SELECT IDRECEBER
FROM dbo.RECEBER
ORDER BY IDRECEBER

PARA:

SELECT IDRECEBER
FROM dbo.RECEBER
WHERE VLSALDO > 0
ORDER BY IDRECEBER

Desta forma não aparece mais no dropdown os títulos que já forma baixados, só que o problema é que as baixas que já foram efetuadas o código mostrado não corresponde ao que está no banco de dados.

Não sei se me entenderam.
Alguém já passou por isso e pode ajudar?
Julio

coloque em modo debug e analise a query executada pelo sc.

Não sei se me fiz entender, mas no dropdown está listando correto, ou seja, somente os títulos em aberto.
O problema está no modo “Atualização” que não mostra o código (ID) salvo no banco de dados devido a cláusula WHERE que coloquei no lookup, esta cláusula seria só para modo “Inserção”.

Esse formulário é pra dar a baixa? Se sim, não aparece justamete pq vc não quer que mostre os titulos que já foram baixados.

Desculpem meu português, mas acho que não estou conseguindo me explicar.
Vamos novamente:
Vou fazer uma inclusão de baixa de títulos e só são listados os que possuem SALDO > 0 (e está correto, pois incluí a cláusula WHERE no select do lookup), seleciono um dos IDs do dropdown e preencho os outros campos e mando Salvar, a baixa é salva corretamente no banco de dados. Por exemplo, selecionei o ID 60 no dropdown para dar baixa.
Até aqui tudo CERTO! Verifiquei no banco de dados e o valor do ID está salvo corretamente, ou seja, ID 60.
Se eu tentar incluir outra baixa, o ID 60 sumiu e está correto! Pois agora o SALDO = 0.

Aqui começa o meu problema:
Ao entrar nessa baixa em modo “ATUALIZAÇÃO”, ou seja, visualizar a baixa registrada na tela, no campo SELECT que deveria mostrar que esta baixa foi salva com ID 60, aparece o próximo ID disponível do select, por exemplo, mostra ID 57, sendo que no banco de dados está salvo corretamente com ID 60.

Julio.

Julio pra não dar muita volta, faça 2 formulário um para edição outro para inclusão ,
sei que não e a saida mais certa mais é a mais rapida

Willian,
obrigado pelo seu retorno.
Mas não preciso Editar este registro, após incluir, somente posso excluir.

Me refiro que o usuário após incluir a baixa vai olhar (visualizar) e o sistema mostra o ID incorreto, sendo que no banco de dados está correto.
Por exemplo, se tenho 10 baixas dos títulos de ID 1 ao 10 efetuadas respectivamente, aparecerá no dropdown do ID 11 em diante, correto!
Mas se posicionar na primeira baixa e ir avançando para os próximos (só para visualizar), todos ficam mostrando que o ID utilizado foi o 11.

Vc está no mesmo formulário? Se sim, acontece que o campo está com esse select que vc fez. Por isso está incorreto. Por isso o Willian sugeriu que fizesse 2 formulários diferentes. Um para a inserção e outro para a Edição ou Exclusão, tanto faz.

Mesma Situação então faz uma app apenas para a consulta uai, eu não fico dando voltas ao redor da cadeira, vou la e cento de uma vez, entende…

E obvio que mostra outro ID, pois tu estas colocando uma clausula WHERE no Lookup, a qual e interpretada em todo momento.
Tem algumas coisas que não tem muita escolha mesmo com o Scriptcase

Agradeço a todos pelo retorno.

Realmente é muito estranho e limitado então.
Consulta ou relatório, está claro, crio outro app.

Mas o usuário entra no app para dar baixa e já é carregado a tela com o primeiro registro de baixa e todos os outros, na qual está errado, pois mostra o ID errado, após clica no botão Novo para começar a digitar um novo.
Se eu não colocar a cláusula WHERE na criação do lookup, o usuário poderá selecionar títulos que já foi baixado, o que é mais errado ainda.
Faço isso em outras linguagens tranquilo, deve ter um jeito profissional de resolver isso.

Obrigado até agora.

O que você pode fazer é criar um campo no seu formulário mesmo e jogar o valor do ID nele. Esconde-o quando for inserção e mostre-o quando for edição. Assim, você não precisa de criar outra aplicação.

Acredito que são só essas duas formas de se resolver isso (criando 2 aplicações ou replicando o campo).

Outras Linguagens não são Scriptcase, essa e a diferença tem que pensar de maneira diferente com o SC.
Si tiver mais conhecimento no SC, da pra fazer algo mais profissional com mais linhas de código,
Por exemplo atribuindo uma variável global ao WHERE do lookup e manipulando essa variável em tempo de execução.
Por exemplo se faz a verificação si é novo registro ou um registro que se esta recuperando y se troca o valor da variável global

já tem 3 tipos de fazer, pensando de forma diferente

Resolvido!
Tudo no mesmo formulário e exatamente como eu queria!
Só manipulando eventos e utilizando macros do SC.

Agora que dimos a dicar mostra como tu fez, assim mais alguem tiver o mesmo problema podera ter solução