Ir para o conteúdo

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

Ativar aba da Grid

18 de Março de 2013, 21:26 , por Desconhecido - | Ninguém seguindo este artigo por enquanto.
Visualizado 12 vezes

Olá, 

eu seguir o exemplo do CRUD de veículos disponível no site. e Fiz um formulário contendo uma Aba Cadastro e outra Listagem, mas por alguma razão,que não conseguir descobrir quando eu clico na ação Excluir,  o aplicativo voltar para aba Cadastro e a mesma procedimento ocorre quando eu faço a pesquisa. como eu posso resolver esse problema?

Eu já tentei colocar a opção:

if ($_POST['formDinAcao'] == 'gd_excluir') {

    $frm->setMessage($_POST['formDinAcao']);

    $pc->setActivePage('abaCadastro',false);

    $pc->setActivePage('abaListagem',true);  

e esta na action $gd_excluir:

$pc->setActivePage('abaCadastro',false);

 $pc->setActivePage('abaListagem',true);  

 

esse é meu código:

$frm = new TForm('Cadastro de Sepultamento', 500);


$frm->addHiddenField('id');


$pc = $frm->addPageControl('pc');



$pc->addPage('Cadastro', true, true, 'abaCadastro');


/** Adicionando os campos do Cadastro */

$frm->addMaskField('numeroDo', 'Número DO:', false, '9999999-99');

$frm->addselectField('tipoObito', 'Tipo do Óbito:', null, '1-Fetal,2-Não Fetal', false, null, 2);

$frm->addDateField('dataObito', 'Data do Óbito:', null, false);


$frm->addTextField('nomeFalecido', 'Nome do Falecido:', 70, false, null, null, true);

$frm->addTextField('nomePai', 'Nome do Pai:', 70, false, null, null, true);

$frm->addTextField('nomeMae', 'Nome do Mãe:', 70, false, null, null, true);

$frm->addDateField('dataNascimento', 'Data de Nascimento:', null, true);

$frm->addTextField('idade', 'Idade:', 3, false, null, null, false);

$frm->addselectField('tipoIdade', '', null, 'Anos,Meses,Dias,Horas,Minutos', false, null, 2);

$frm->addselectField('sexo', 'Sexo:', null, '1-Masculino,2-Feminino', false, null, 2);




$frm->addGroupField('gpCemiterio', 'Local do Sepultamento :')->setColumns(array

    (

    60,

    150,

    60,

    100

));

$frm->addSelectField('uf_local', 'Estado:', null, 'select * from tb_uf', true, true);

$frm->addSelectField('munic_local', 'Município:', null, null, false);

$frm->addSelectField('cd_cemiterio', 'Cemitério:', null, null, false);

$frm->combinarSelects('uf_local', 'munic_local', 'tb_municipio', 'cod_uf', 'cod_municipio', 'nom_municipio');

$frm->combinarSelects('munic_local', 'cd_cemiterio', 'tb_cemiterios', 'cd_munic_end', 'id', 'localsepultamento');

$frm->closeGroup();


$frm->addDateField('dataSepultamento', 'Data do Sepultamento:', null, true);


$frm->addGroupField('gpResidencia', 'Local de Residência do Falecido:')->setColumns(array

    (

    60,

    150,

    60,

    100

));

$frm->addSelectField('cd_uf_resid', 'Estado:', null, 'select * from tb_uf', true, true);

$frm->addSelectField('cd_munic_resid', 'Município:', null, null, false);

$frm->combinarSelects('cd_uf_resid', 'cd_munic_resid', 'tb_municipio', 'cod_uf', 'cod_municipio', 'nom_municipio');

$frm->closeGroup();


$frm->addGroupField('gpOcorrencia', 'Local de Ocorrência do Óbito:')->setColumns(array

    (

    60,

    150,

    60,

    100

));

$frm->addSelectField('cd_uf_ocor', 'Estado:', null, 'select * from tb_uf', true, true);

$frm->addSelectField('cd_munic_ocor', 'Município:', null, null, false);

$frm->combinarSelects('cd_uf_ocor', 'cd_munic_ocor', 'tb_municipio', 'cod_uf', 'cod_municipio', 'nom_municipio');

$frm->closeGroup();


$frm->processAction();


$frm->addButton('Salvar', 'salvar', 'btnSalvar', null, null, true, false);

$frm->addButton('Limpar', 'limpar', 'btnLimpar', null, null, false, false);


$pc->addPage( 'Listagem',false,true,'abaListagem' );


$frm->addHtmlField( 'html_gride', 'Aqui será carregado o gride' );


$g=new TGrid( 'gd'                    // id do gride no html

,             'Listagem dos Veículos' // titulo do gride

//,$dao->selectAll('nome') // array de dados

, Tb_sepultamentosDAO::selectAll( 'nomeFalecido', $where ) // array de dados

,             null,

 null,

 'ID' );                                    // chave da tabela);


// adicionando o objeto ao campo html criado acima

$frm->set( 'html_gride', $g ); // ou $frm->getField('gride')->add($g);


$frm->show(); 

 

 

 

Autor: Wagner Santos Jesus


88 comentários

  • Dbf6879e6b529e4e1a2de8e7a9bd12ae?only path=false&size=50&d=404Fabricio Malvezzi(usuário não autenticado)
    19 de Março de 2013, 14:36

     

    Wagner, boa tarde!

    Deixa eu ver se entendi... você quer que após a ação ele continue na aba listagem?

    Se for isso, tente fazer assim após a exclusão:

    $frm->getField('pc')->setActivePage('abaListagem',true); 

    Eu retiraria essa parte aqui como teste:
     $pc->setActivePage('abaCadastro',false);

     Abraço!

     

    • Dee4acedf22a2c780e1c30673c9774f9?only path=false&size=50&d=404Wagner Santos Jesus(usuário não autenticado)
      19 de Março de 2013, 15:43

       

      olá Fabricio,

      É exatamente isso, eu quero que após a exclusão a aba Listagem fique ativa.

      E a opção que você sugeriu não deu certo. Após a ação de exclusão a Aba Cadastro é ativada.

       

      • Dbf6879e6b529e4e1a2de8e7a9bd12ae?only path=false&size=50&d=404Fabricio Malvezzi(usuário não autenticado)
        19 de Março de 2013, 16:30

         

        Vagner, 

        O meu "gd_excluir" só tem as linhas abaixo, e no meu caso resolve.

        <?php

        // exluir apontamento de paradas
        Ap_nometabelaDAO::delete($frm->get('chave'));
        // definir a aba inicial
        $frm->getField('pc')->setActivePage('consulta',true);

        ?> 

        • Dee4acedf22a2c780e1c30673c9774f9?only path=false&size=50&d=404Wagner Santos Jesus(usuário não autenticado)
          19 de Março de 2013, 17:16

           

          Fabricio,

          O interessante é que o exemplo do tb_veiculoDAO funciona, fiz uma copiar e colar linha a linha, quando eu mundo o banco de dados, pronto a AbaCadastro é novamente ativada

           

        • Dee4acedf22a2c780e1c30673c9774f9?only path=false&size=50&d=404Wagner Santos Jesus(usuário não autenticado)
          20 de Março de 2013, 9:23

           

          Fabricio,

          Acho que conseguir descobrir a origem do problema. 

          Quando eu comentei a linha

          $frm->combinarSelects('uf_local', 'munic_local', 'tb_municipio', 'cod_uf', 'cod_municipio', 'nom_municipio');

          ao excluir um registro a aba Listagem permanece ativa. Se eu retirar o comentário desta linha o 

          a Aba cadastro é ativada após a ação de exclusão.

          Fiz o teste no exemplo de CrudForm e o resultado foi o mesmo.

          Agora porquê isso acontece.. eu não faço a menor idéia.

           

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

     

    Wagner,

    realmente uma coisa curiosa, mas já resolvi. Atualize o fonte do FormDin pelo SVN ou baixe o último código fonte.

    O problema estava realmente no select combinado. No evento onChange do select pai ele manda o foco para o select filho, e como o select filho está na aba Listagem o foco ia para a aba listagem.

    Abraço.

Essa comunidade não possui posts nesse blog