Jump to content

Leandro Barral

Members
  • Content count

    360
  • Joined

  • Last visited

Community Reputation

1 Comum

3 Followers

About Leandro Barral

  • Rank
    Aspirante a Ninja ~> .net / C# / SIlverlight / PHP
  • Birthday 12/20/1989

Informações Pessoais

  • Sexo
    Masculino
  • Localização
    São Paulo / SP

Contato

  • Skype
    leandrobarral2
  • Site Pessoal
    http://www.leandrobarral.com.br
  1. Leandro Barral

    DataGrid completo

    Galera consegui fazer pelo menos o grid aparecer na tela fazendo assim: Ext.onReady(function(){ var store = new Ext.data.JsonStore({ url: '/cadsys/json/modfuncao', reader: new Ext.data.JsonReader({ totalProperty: "total", root: "dados", }, [ {name: 'Funcao', mapping: 'Funcao'}, {name: 'Salario', mapping: 'Salario'} ]) }); var grid = new Ext.grid.GridPanel({ store: store, columns: [ {header: "Função", width: 200, dataIndex: 'Funcao', sortable: true}, {header: "Salário", width: 110, dataIndex: 'Salario', sortable: true} ], renderTo:'grid', width:310, height:250 }); store.load(); }); Só falta mostrar os dados.. oque está faltando? o controlador ali /json/modfuncao está assim: class JsonController extends Zend_Controller_Action { public function indexAction() { $this->_redirect('/index'); } public function modfuncaoAction() { $tblFuncao = new Funcao(); $pegaDados = $tblFuncao->fetchAll(); $total = "2"; //simulação de total de resultados $retorno = array( 'total'=>$total, 'dados' => $pegaDados->toArray() ); $json = Zend_Json::encode($retorno); $this->_helper->removeHelper('viewRenderer'); $this->_helper->layout->disableLayout(); $this->getResponse()->clearBody(); $this->getResponse()->setHeader('Content-Type', 'text/x-json'); $this->getResponse()->setBody($json); } } fiz um teste, acessei a url do metodo, ele retorna um download de arquivo (a pagina fica em branco), esse arquivo, eu abri com o notepad e nele consta o resultado json no formato corretinho.. Abraço. Att, Leandro Barral []'..
  2. Leandro Barral

    DataGrid completo

    como o fabyo disse, nao utilizarei a view.. eu postei o js ali em cima.. e estou usando o ultimo código postado pelo fabyo.. nao retorna erro e nem mostra nada.. será que poderia me dar alguma solução baseada nos códigos que postei? (se não for pedir demais) Att, Leandro Barral []'.. [msn: leandro.barral@yahoo.com.br]
  3. Leandro Barral

    DataGrid completo

    Não sei como proceder.. ja que não tem view.. como vou passar os dados? =S estou confuso nisso...
  4. Leandro Barral

    DataGrid completo

    Fiz oque você falou com o código acima.. na view onde eu quero que apareça o gridEstou fazendo assim: <script type="text/javascript"> Ext.onReady(function(){ Ext.QuickTips.init(); function formatDate(value){ return value ? value.dateFormat('M d, Y') : ''; }; var fm = Ext.form; var cm = new Ext.grid.ColumnModel( [ { id: 'ID'; header: "Funcao", dataIndex: 'Funcao', width: 220, sortable: true, editor: new Ext.grid.GridEditor( allowBlank: false ) } }, { header: "Salario", dataIndex: 'Salario', width: 220, sortable: true, editor: new Ext.grid.GridEditor(new Ext.form.TextField( { allowBlank: false } )) } ] ); cm.defaultSortable = true; ds = new Ext.data.Store({ proxy: new Ext.data.HttpProxy({ url: '/cadsys/json/modfuncao/', method: 'POST' }), reader: new Ext.data.JsonReader({ root: 'dados', id: 'ID' }, [ {name: 'Funcao'}, {name: 'Salario'} ] ) }); var grid = new Ext.grid.EditorGrid('grid', { ds: ds, cm: cm, enableColLock:false }); grid.render(); ds.load(); }); </script> <div id="grid"></div> mas fica vazio, não aparece nada! Alguma sugestão?? Att, Leandro Barral []'..
  5. Leandro Barral

    DataGrid completo

    entao eu coloco esse código que atualmente está na view, no controller certo? (tirando apenas o print ali) porem fiz isso e utilizei o exemplo 2 do post, fazendo as adaptações necessárias para as minhas colunas e dados, e nem sequer aparece o grid... se quiser eu posto o código que estou utilizando.. Abraço. Att, Leandro Barral []'..
  6. Leandro Barral

    DataGrid completo

    opa! no forum do extjs consegui a solução, só para constar.. no controlador está assim: class JsonController extends Zend_Controller_Action { public function indexAction() { $this->_redirect('/index'); } public function modfuncaoAction() { $this->_helper->layout()->setLayout('layoutjson'); $tblFuncao = new Funcao(); $pegaDados = $tblFuncao->fetchAll(); $this->view->dados = $pegaDados; } } e na view assim: <?php $total = "2"; //simulação de total de resultados $retorno = array( 'total'=>$total, 'dados'=>$this->dados->toArray() ); $json = Zend_Json::encode($retorno); print($json); ?> agora estou tendo o resultado esperado: {"total":"2","dados":[{"ID":"1","Funcao":"Aux. de Conferente","Salario":"598,16"},{"ID":"2","Funcao":"Ajudante Geral","Salario":"570,27"}]} Agradeço a todos pela paciência e ajuda! Agora vou começar a postar as duvidas com o grid! xD Abraço. Att, Leandro Barral []'..
  7. Leandro Barral

    DataGrid completo

    aqui sai com os numeros do incremento separando.. ta dificil chegar no resultado: ({"total":"2","dados":{"id":"1","funcao":"asdasd","salario":"100,00"},{"id":"2","funcao":"Ajudante Geral","salario":"570,27"}}) =/
  8. Leandro Barral

    DataGrid completo

    Será que alguém me desvenda esse mistério? ehaueha Abraço. Att, Leandro Barral []'..
  9. Leandro Barral

    DataGrid completo

    Eu queria que retornasse assim: ({"total":"2","dados":{"id":"1","funcao":"asdasd","salario":"100,00"},{"id":"2","funcao":"Ajudante Geral","salario":"570,27"}})
  10. Leandro Barral

    DataGrid completo

    Agora fiz assim: $return = array(); $i = 1; $total = "2"; //simulação foreach($this->dados as $dados) { $return['id'] = $dados->ID; $return['funcao'] = utf8_encode($dados->Funcao); $return['salario']= $dados->Salario; $i++; } $json = '({"total":"'.$total.'","dados":'.Zend_Json::encode($return).'})'; print_r($json); me retorna assim: ({"total":"2","dados":{"id":"2","funcao":"Ajudante Geral","salario":"570,27"}}) beleza pura.. só que só aparece o ultimo registro rodado no foreach se eu usar o incremento assim: $return = array(); $i = 1; $total = "2"; //simulação foreach($this->dados as $dados) { $return[$i]['id'] = $dados->ID; $return[$i]['funcao'] = utf8_encode($dados->Funcao); $return[$i]['salario']= $dados->Salario; $i++; } $json = '({"total":"'.$total.'","dados":'.Zend_Json::encode($return).'})'; print_r($json); me retorna assim: ({"total":"2","dados":{"1":{"id":"1","funcao":"Aux. de Conferente","salario":"598,16"},"2":{"id":"2","funcao":"Ajudante Geral","salario":"570,27"}}}) colocando esses numeros do incremento também.. (em negrito) ta dificil ehauehaue
  11. Leandro Barral

    DataGrid completo

    Ok fiz isso.. só estou printando por enquanto para ver o resultado gerado por ele.. está correto assim ou da maneira como está nao dá para ser usado? pois vi que em seus exemplos está sendo retornado diferente.. Abraço. Se puder me ajudar nisso.. tipo, eu pego rapido as coisas, porém preciso conseguir fazer pelo menos uma vez.. Att, Leandro Barral []'..
  12. Leandro Barral

    DataGrid completo

    Então como ficaria? eu desabilito o layout para o zend nao pedir uma view e....? todos os exemplos q eu vi ele printa na tela o json.. agora.. o formato como está saindo o json está correto? da para utilizar dessa maneira os dados para jogar no grid? Att, Leandro Barral []'..
  13. Leandro Barral

    DataGrid completo

    como em outro post.. meu fetchAll está assim: tenho um controlador chamado Json com um metodo modFuncao, que por sua vez tem o seguinte conteudo: public function modfuncaoAction() { $this->_helper->layout()->setLayout('layoutjson'); $tblFuncao = new Funcao(); // cria tabela $pegaDados = $tblFuncao->fetchAll(); $this->view->dados = $pegaDados; // joga o resultado do fetchall na view } e em sua respectiva view tem o seguinte: <?php $return = array(); $i = 1; $return['total'] = "2"; // só tem dois no banco, só simulando ok?depois faço corretamente foreach($this->dados as $dados) { $return[$i]['id'] = $dados->ID; $return[$i]['funcao'] = utf8_encode($dados->Funcao); $return[$i]['salario']= $dados->Salario; $i++; } $json = Zend_Json::encode($return); print_r($json); ?> no print está retornando o seguinte: {"total":"2","1":{"id":"1","funcao":"Aux. de Conferente","salario":"598,16"},"2":{"id":"2","funcao":"Ajudante Geral","salario":"570,27"}} se eu printar a var $return vem dessa maneira: Array ( [total] => 2 [1] => Array ( [id] => 1 [funcao] => Aux. de Conferente [salario] => 598,16 ) [2] => Array ( [id] => 2 [funcao] => Ajudante Geral [salario] => 570,27 ) ) Oque pode ter de errado? Att, Leandro Barral []'..
  14. Leandro Barral

    DataGrid completo

    Sim, sim.. o esquema do Zend eu sei, as pesquisas s tal, tudo feito! porém não estou conseguindo montar meu json no formato correto para ser lido no grid... vou quebrar a cabeça um pouco mais antes de fazer um post com os erros e tal.. enquanto isso vou seguindo os posts do pessoal aqui. Obrigado pela atenção! Att, Leandro Barral []'..
  15. Leandro Barral

    DataGrid completo

    ha! 3 dias tentando entender como funciona esse esquema e até agora nada.. eu utilizo o zend então estou com dificuldades para adaptar.. nao desisto nao... heauehauhe mas pelos exemplos de grid do site do ext me deixa cada vez mais estigado para aprender isso.. parabens Fabyo pelo post.
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.