Filtrando Browser

Discussão em 'Progress 4GL' iniciado por DFResmer, Maio 4, 2010.

  1. DFResmer

    DFResmer Membro Participativo

    Bom dia,
    Preciso de um filtro no meu browser da seguinte forma, quando o usuário for digitando o nome de um cliente em uma fill-in, o browser vai filtrando todos os clientes que iniciam com as letras digitadas na fill-in e também possam se encontrar no meio, no final, em toda a parte entendeu?
    Veja Exemplo:
    na fill-in ele digita = 'MARC'

    No Browser:
    MARCOS ANTONIO DOS SANTOS
    ROBERTO CARLOS MARCOS DA SILVA
    JOSE MARCUS DE OLIVEIRA
    ANTONIO MARCOS DE OLICEIRA
    MARCUS DOS SANTOS

    Att,
    Diogo
  2. baltazar

    baltazar Membro Participativo

    Utilize o Any-Key

    para filtrar use o "contains"

    Espero ter ajudado.
  3. dudabrito

    dudabrito Membro Participativo

    MATCHES tb funciona.

    Exemplo:

    FOR EACH tabela
    WHERE tabela.campo MATCHES "*" + fi-campo "*" NO-LOCK.


    END.
  4. DFResmer

    DFResmer Membro Participativo

    já tentei, mais o contais não funciona no any key.....
  5. jalegria

    jalegria Membro Participativo

    saudações

    dependendo do tamanho da tabela com contains é mais rapido, pq vc usaria word-index
    com matches se não me engano não é utilizado indice

    cara, precisa filtrar a cada tecla? acho que vai penalizar na performance num vai?
    não é melhor o usuario digitar em um fill-in e qdo der enter vc filtrar?
    tem o any-printable tb... de uma pesquisada...

    para filtrar vc tem que dar o open query usando as palavras digitadas no word-index com contains.
    como vc está fazendo? posta um trecho do codigo pra gente...

    valeo...
  6. DFResmer

    DFResmer Membro Participativo

    Na fill-in fi-descri da frame fr-001 coloquei dentro de uma ANYKEY esta função abaixo:

    VIEW FRAME fr-004.
    OPEN QUERY br-004
    FOR EACH TABCOD WHERE TABCOD.marca CONTAINS INPUT FRAME fr-001 fi-descri no-lock.

    É para trazer no browser br-004 todos os itens digitados na fill-in fi-descri, mas o que acontece com a função contains é o seguinte, só aparece depois que eu digito tudo, não é como na função begins, que vou digitando e ela vai filtrando, mas o problema da begins, que ela pega apenas as iniciais dos nomes, não pega no meio como a função contais.

    att,
    Diogo

Compartilhe esta Página