alterar lookup do campo auto complete ou select - Programação - Scriptcase
alterar lookup do campo auto complete ou select
weber (weber) Abril 16, 2019, 12:05am #1
Boa tarde pessoal alguem tem alguma ideia de como poderia fazer ou qual macro (se existe) para alterar o sql dinamicamente de um campo select ou de um auto complete… por exemplo
digamos que eu tenha o campo {tipo} se o valor for = P a pesquisa do autoselect deve ser feita emcima select produto_id, produto_descricao from produtos … e se o valor do tipo for = K o select da pesquisa do auto select devera ser select kit_id , kit_descricao from kits …
roberto_project (roberto_project) Abril 16, 2019, 12:05am #2
Weber, boa tarde. Estava com um problema bem parecido, porém o pior é que o meu é no filtro de uma consulta, mas se funcinou la funciona em qlq aplicação!
Eu tenho uma tabela de boletos bancários onde existem dois tipos de cedente e dependendo do tipo 'X' ou 'Y' o combo com o nome dos cedentes buscas os dados de uma tabela diferente.
Eu testei muitas coisas, e a única coisa que funcionou, foi criar 2 variáveis uma para o campo e outra para a tabela.
No campo select onde tem o espaço para preencher com o sql fiz assim
SELECT [var_campo] FROM [var_tabela] ORDER BY [var_campo]
Dai no evento scriptinit eu setei as variáveis
[var_campo] = nome;
[var_tabela] = aluno;
Coloquei para o campo Tipo de Cedente recarregar o formulário após alterar o valor.
E então no evento onrefresh eu fiz um if, e dependendo do tipo eu seto as variáveis com os campos e tabelas que eu quero.
Acredito ser isso. Boa sorte ai!
weber (weber) Abril 16, 2019, 12:05am #3
o bom da programação é isso quando tu acha q os meios normais se esgotaram sempre existe uma nova ideia…
Otima sacada
Vou testar, e ja dou o retorno
weber (weber) Abril 16, 2019, 12:05am #4
roberto, fiz exatamente como tu falou a principio deve funcionar pois o lookup esta sendo carregado pelas variaveis do init, mas nao to conseguindo testar o refresh, pois estou usando um form multiplos registros em um mestre detalhe, e toda a vez q ele da o refresh a tela pula a linha como se ja tivesse inseridoo registro, nao sei se fui claro na explicação …
roberto_project (roberto_project) Abril 16, 2019, 12:05am #5
Olá Weber, boa tarde.
Você colocou o código para alterar tanto no scriptinit quanto no onrefresh?
Você disse que a principio deve funcionar, mas não esta conseguindo testar o refresh… você testou ou não? desculpe não ficou muito claro.
InfinitusWeb (Haroldo) Abril 16, 2019, 12:05am #6
com jquery você pode reconstruir dinamicamente o select.
weber (weber) Abril 16, 2019, 12:05am #7
Então respondendo aos amigos, eu fiz o teste inicialmente colocando as variaveis no lookup e no init eu defino as variaveis para entao carregar o campo e a tabela, como ela carrega inicialmente no init teoricamente é pq funcionou 50%, o problema é que eu tentei fazer o refresh e tb pelo evento ajax do change, para alterar essas variaveis e nao consegui quando da o refresh a aplicação que estava no modo incluir … (form multiplos registros) derruba os demais botões nao sei se fui claro …
weber (weber) Abril 16, 2019, 12:05am #8
veja o exemplo eu ate deixei os campos visiveis para passar como parametros (para testar e ver se estava funcionando)
inciando a inclusao de um item no mestre detalhe
no combo tipo, onde eu seleciono o tipo de produto se é apenas um produto ou um "kit/combo", coloquei nesse evento onchange, onclick, onblur, para apos atualizar o outro combo onde tu pode selecionar o nome
mas apos selecionar um dos tipo o form fica "bloqueado" tipo label
na verdad ja estou tentando mudar usando o select o que eu queria mesmo era no campo descricção do produto um campo do tipo texto autocomplete …