0 votos
66 visitas

Bom dia,
Tem como mostrar um campo string no formulário, mas ocultá-lo na janela de escolha de campos de busca da treeview?
Isso é possível via builder ou macro?

Se não for possível, tem como interceder na montagem da cláusula where e tratar esse campo modificando o where que o builder montou? (veja ponto do debug abaixo, aonde o runner monta o filtro da árvore)
Entrando "TreeViewEditing".
Permite edição do node.
Verificando texto digitado na árvore.
Filtro para árvore: (UPPER(A.DESCRICAO) LIKE 'AMB%')
TreeViewCollapsing
TreeViewCollapsed
Gerando o SQL para árvore.
In  ModuleOnNodeWhere
Out ModuleOnNodeWhere

qWork.Open
qLoadQuery.Open
qLoadQuery.Close
qWork.Close
TreeViewExpanding

 

por (17 pontos) | 66 visitas

1 Resposta

0 votos
Bom, como não encontrei solução alternativa, o que fiz para:

1- Impedir que o campo apareça na treeview para que o usuário não faça pesquisa por ele:
- tornei o campo invisível nessa carga, e criei um campo do tipo rótulo para exibir a informação no formulário

2) Alterar a busca de forma mais performática usando o % no meio da busca e não no final:
- Como o usuário conhece somente uma parte final do campo (ex.os ultimos 7 caracteres) criei um botão na carga que ao ser clicado abre uma janela e pede para o usuario digitar parte dos ultimos digitos do campo que ele conhece (ex. se quer procurar o codigo "SAXXXXX0220023200000223344"digita só: 223344), ai faço uma query no banco buscando esse campo de forma "REVERSA"
WHERE REVERSE(RTRIM(CODIGO_X)) LIKE reverse('" + "%" + vMeuCampo + "')"
(vai ficar assim--> ... like '443322%'

Como no cliente esta tabela tem mais de 70 milhoes de registro, criei no banco de dados um indice por função reversa:REVERSE(RTRIM(CODIGO_X)).

O resultado da query é apresentado num grid com outras informações, o usuário da um duplo clic na linha e copio o campo CHAVE do registro pra memoria (clippboard), se ele quiser pesquisar mais detalhes da tabela, ele cola o campo chave na treeview e busca normalmente o restante das informacoes que quer.
por (17 pontos)

Perguntas relacionadas

Melhores Apr 2026
  1. IsisRickman

    5 Pontos

  2. FelipaWhippl

    5 Pontos

  3. ShelliCrabtr

    5 Pontos

  4. CeceliaWysel

    5 Pontos

  5. VernonSchaw

    5 Pontos

  6. MargieOsterh

    5 Pontos

200 pontos
Melhores 2026 Apr 06 - 12
  1. danilo.pereira

    96 Pontos

  2. danilo.pereira

    96 Pontos

  3. danilo.pereira

    96 Pontos

  4. willian.metalsystem

    69 Pontos

  5. henrique.muller

    62 Pontos

  6. luciano.fronza

    61 Pontos

  7. luciano.fronza

    61 Pontos

  8. luciano.fronza

    61 Pontos

  9. diuari.molinari

    52 Pontos

  10. diuari.molinari

    51 Pontos

518 perguntas
567 respostas
389 comentários
775 usuários