Ir para o conteúdo

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

Select em Pesquisa Dinâmica (setOnlinesearch): como fazer arrays?

2 de Março de 2015, 18:45 , por Desconhecido - | 1 Pessoa seguindo este artigo.
Visualizado 79 vezes

Como faço um array do tipo

$a = array(1=>'sim',2=>'nao');

a partir de uma tabela no banco de dados, na forma:

num_documento | desc_documento

-----------------------------------------------------------

     1        | primeiro valor

     2        | segundo valor

     3        | terceiro valor

...

?

Autor: Cláudia de Aguiar


55 comentários

  • 51b06d6eae66e2cfdfc361d418eea715?only path=false&size=50&d=404Luis Eugênio barbosa(usuário não autenticado)
    13 de Março de 2015, 15:11

     

    Cláudia,

    não sei se já resolveu, caso ainda precise de ajuda, tente explicar melhor a situação porque não consegui entender o que você quer fazer.

      Abraço.

    • 40039becdad4241880bbec097c167704?only path=false&size=50&d=404Cláudia de Aguiar(usuário não autenticado)
      18 de Março de 2015, 17:29

       

      Na consulta dinâmica (onlinesearch) temos o exemplo:

       $a = array(1=>'sim',2=>'nao');
      //$frm->clearFields();
      $frm->setOnlineSearch('num_cpf1'
          , 'TESTE.PKG_SEGURANCA.SEL_DADOS_PESSOA'
          , 'NUM_CPF|CPF:||||cpf,NOM_PESSOA|Nome:|50,COD_NELSON|Chefe||||SELECT'
          , 'NUM_CPF1,NOM_PESSOA1'
          , true
          , null
          ,'NUM_CPF|Cpf,NOM_PESSOA|Nome'
          ,'NUM_PESSOA|id,NOM_PESSOA,COD_MATRICULA|cod_matricula_eugenio,END_PESSOA|end_pessoa_eugenio,DES_BAIRRO,NUM_CEP,DAT_NASC,NUM_CPF'
          ,'Consulta Pessoa Física'
          ,'Registros Encontrados'
          ,'des_endereco'
          ,400
          ,900
          ,"Consultar"
          ,null
          ,'fwFazerAcao("Nova Acao")'
          ,10 // máximo de registros retorno
          ,null
          ,null
          ,'NOM_PESSOA'
          ,array('COD_NELSON'=>$a)
          ,null
          ,false
          ,'exe_select.inc'
          );

      Quero fazer o valor do select 'COD_NELSON' ser preenchido por uma tabela do banco do tipo:

      Banco.tabela_chefe

      -------------------------------------------

      1              |             sim

      2              |             não

      3              |           talvez

      ...

      • 51b06d6eae66e2cfdfc361d418eea715?only path=false&size=50&d=404Luis Eugênio barbosa(usuário não autenticado)
        28 de Março de 2015, 9:02

         

        Cláudia,

        vi que havia um problema na consulta online com os campos selects.

        Atualize sua versão do FormDin e veja se o problema foi resolvido.

        Abaixo está o exemplo que utilizei para popular o campo select de três maneiras para que você possa utilizar ser precisar.

        A primeira utilizando comando select para pegar os valores do banco de dados

        A segunda utilizando um array de dados vindo de uma consulta já realizada

        A terceira utilizando um array simples com os dados.

         

        // simulacao retorno select para a segunda forma:
        $dadosUf['COD_UF'][] = 53;
        $dadosUf['SIG_UF'][] = 'DF';
        $dadosUf['COD_UF'][] = 52;
        $dadosUf['SIG_UF'][] = 'GO';
        $dadosUf['COD_UF'][] = 12;
        $dadosUf['SIG_UF'][] = 'AC';

        // definir consulta dinâmica no campo município
        $frm->setOnlineSearch('municipio'
            ,'tb_municipio' // tabela de municípios
            ,'nom_municipio|Município:||||||like,cod_estado|Uf:||||select'  // campos para seleção do município. Ordem dos parametros: name|label|length|size|required|$type|decimalPlaces|partialKey|searchFormated
            ,false
            ,false
            ,true // se for encontrada apenas 1 opção fazer a seleção automaticamente
            ,'cod_municipio|Código,nom_municipio|Município'
            ,'NOM_MUNICIPIO|municipio'
            ,null
            ,null,null,null,null,null,null
            ,'osCallBack()'
            ,null //10
            ,null,null,null
            ,array('cod_estado'=>"SELECT COD_UF,NOM_UF||'/'||SIG_UF AS SIG_UF FROM TB_UF ORDER BY SIG_UF")
            //,array('cod_estado'=>$dadosUf)
            //,array('cod_estado'=>array(1=>"Um",2=>"Dois") )
            ,null,null,null
            ,false // caseSensitive
            );

        Abraço.

        • 40039becdad4241880bbec097c167704?only path=false&size=50&d=404Cláudia de Aguiar(usuário não autenticado)
          28 de Abril de 2015, 17:57

           

          Não funcionou.

           

          E agora nenhuma consulta online funciona, a não ser numérica, quando o resultado é nulo.

          • 51b06d6eae66e2cfdfc361d418eea715?only path=false&size=50&d=404Luis Eugênio barbosa(usuário não autenticado)
            4 de Maio de 2015, 20:39

             

            Cláudia,

            poderia me enviar o código fonte do módulo que possui a consulta online que parou de funcionar ?

            Qual é o banco de dados que está sendo utilizado ? (mysql, postgres, oracle ....)

            Abraço.

Essa comunidade não possui posts nesse blog