Ir para o conteúdo

 Voltar a Fórum do For...
Tela cheia

Exibir mais de um campo no OnlineSearch

13 de Fevereiro de 2013, 18:18 , por Desconhecido - | Ninguém seguindo este artigo por enquanto.
Visualizado 0 vezes

Olá,

Gostaria de saber se é possível exibir mais de um campo da tabela ao efetuar uma pesquisa pelo nome.

Exemplo: O formulário terá um campo "Nome:" para a pesquisa de uma pessoa, onde o usuário deverá digitar as iniciais do nome. Ao exibir a lista com os nomes encontrados com estas iniciais gostaria que fosse exibido ao lado do nome a data de nascimento para que o usuário possa selecionar corretamente caso exista algum homônimo.

Obrigado!

Autor: Leandro Santos


77 comentários

  • 4210951d8ebd1c937e4efe1938358d3f?only path=false&size=50&d=404Leandro Santos(usuário não autenticado)
    13 de Fevereiro de 2013, 22:46

     

    Pessoal,

    Escrevi o nome do objeto errado, não é onlinesearch e sim o AutoComplete. 

    • 51b06d6eae66e2cfdfc361d418eea715?only path=false&size=50&d=404Luis Eugênio barbosa(usuário não autenticado)
      16 de Fevereiro de 2013, 10:15

       

      Landro,

      pelo que já pude observar isto não é possivel nos campos autocomplete, porque o que é mostrado na lista é o que vai alimentar o campo quando for selecionado, então, não daria para exibir duas colunas na listagem do autocomplete e selecionar apenas uma. O que pode ser feito é voce concatenar o nome com a data de nascimento no comando select em uma coluna chamada nome_data e utiliza-la no autocomplete.

      Abraço.

      • 4210951d8ebd1c937e4efe1938358d3f?only path=false&size=50&d=404Leandro Santos(usuário não autenticado)
        17 de Fevereiro de 2013, 18:59

         

        Luis,

        Como eu faria para colocar um comando select para montar o Onlinesearch, por exemplo tenho um campo para seleção da cidade de nascimento, como existem várias cidades com o mesmo nome em estados diferentes eu gostaria que na listagem aparecesse o nome da cidade e o estado para que o usuário faça a seleção correta, você poderia me ajudar?

        $frm->addTextField('no_municipio_nasc','Naturalidade:',50,true,50,null,null,'Informe o município');
        $frm->setAutoComplete('no_municipio_nasc', 'tb_municipio', 'no_municipio', 'co_municipio|CO_MUNICIPIO_NASC', true, null, null, 2, 1000, 50, null, null, null, null, false, null, null );

        Obrigado.

        • Bfad1e926a8f3039e7359a6c3c876de2?only path=false&size=50&d=404Everton Murilo Rodrigues Silva(usuário não autenticado)
          18 de Fevereiro de 2013, 12:42

           

          Leandro, porque você não usa a opção de combinar selects?

          Assim o usuário escolhe um estado de nascimento e o sistema já filtra em outro dropdown as cidades daquele estado. É isso que eu uso em meus sistemas.

          []'s

          • 4210951d8ebd1c937e4efe1938358d3f?only path=false&size=50&d=404Leandro Santos(usuário não autenticado)
            21 de Fevereiro de 2013, 16:42

             

            Everton,

            Citei o exemplo da cidade e estado apenas para exemplificar, mas no caso de seleção de cidade a solução que você deu atende perfeitamente.

            A minha principal necessidade é usar o autocomplete para seleção de pessoas, como podem haver pessoas com o mesmo nome eu gostaria que ao digitar as iniciais do nome fossem listadas as pessoas com estas iniciais e também a data de nascimento (poderia ser o cpf por exemplo) para que o usuário faça a seleção da pessoa correta.

            Por exemplo, imagine que no banco tem duas pessoas com o nome "JOAO DA SILVA" que possuem data de nascimento diferente, se ao digitar JOAO o autocomplete exibisse o nome duas vezes o usuário poderá selecionar errado, por isto gostaria que fosse exibido também a data de nascimento.

            O Luis falou que bastaria concatenar os dois campos mas não entendi como, alguém poderia ajudar ou tem alguma sugestão para resolver este problema?

            Obrigado. 

            • Bfad1e926a8f3039e7359a6c3c876de2?only path=false&size=50&d=404Everton Murilo Rodrigues Silva(usuário não autenticado)
              22 de Fevereiro de 2013, 9:03

               

              Leandro,

              Acredito que a solução seria essa que o Luís falou mesmo, ou criar uma view.

              No caso da questão de concatenar, seria o seguinte: você tem uma tabela no banco com os campos nome e datanascimento, teria que criar uma nova coluna chamada nome_data (por exemplo), que seria atualizada no insert. Ou seja, toda vez que adicionar uma linha na tabela, ele alimenta o campo nome_data com a concatenação.

              Exemplo:

              Campo nome: Everton Silva

              Campo datanascimento: 01/01/1980

              Campo nome_data: Everton Silva 01/01/1980

               

              Aí no autocomplete você usa a coluna de exibição como sendo a nome_data.

              []'s

Essa comunidade não possui posts nesse blog