Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Fabyo

DataGrid completo

Recommended Posts

Fabyo, eu baxei seu ultimo exemplo e talz, mas ele vai ficar mto complexo para o que eu preciso

entao fui la no site do sancha e baxei todos os exemplos de la e talz, o que mais se assemelharia

com o meu eh o row-editor

 

to com uma duvida (analizando os 2 exemplos para saber onde modificar)

 

você sabe qual a diferenca de Ext.data.GroupingStore e Ext.data.Store ???

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim GroupingStore, como o nome ja fala, é para montar grid com linhas agrupadas

 

 

nossa! nem sabia que dava pra fazer isso, legal!

 

e sabe o que eh o groupRenderer ?

 

tem uma linha assim:

 

groupRenderer: Ext.util.Format.dateRenderer('M y'),

 

eu tava querendo que ele aceitasse o formato 'dd/mm/yyyy' na hora de receber os dados

 

To tentando mudar o exemplo row-editor para que ele pegue os dados do banco de dados...

mas nao consigo, nao sei direito o que fazer... tentei copiar do seu exemplo para este as coisas

mas nao consegui...

(pelo menos nao ta dando erro) simplesmente nao aparece nada, mas tbm nao sei fazer

o firebug mostrar para mim o que esta retornando do php...

 

da outra vez aparecia la, mas agora nao...

 

vou postar o codigo se você puder me dar uns toques e talz...

 


    var store = new Ext.data.GroupingStore({
			proxy:  new Ext.data.ScriptTagProxy({
				url: 'grid_anexos.php'		
			}),
		reader:  new Ext.data.JsonReader
		(
			{root: 'resultado'},
			[
				{name: 'DocNum', mapping: 'DocNum', type: 'int'},
				{name: 'DocAno', mapping: 'DocAno', type: 'int'},
				{name: 'Descricao', mapping: 'Descricao', type: 'string'},
				{name: 'DocData', mapping: 'DocData', type: 'string'},
				{name: 'DocHora', mapping: 'DocHora', type: 'string'},																
			]
		)
    });

    var editor = new Ext.ux.grid.RowEditor({ saveText: 'Update'  });

    var grid = new Ext.grid.GridPanel({
        store: store,
        width: 600,
        region:'center',
        margins: '0 5 5 5',

        plugins: [], 
        view: new Ext.grid.GroupingView({
            markDirty: false
        }),
        tbar: [{
            ref: '../removeBtn',
            iconCls: 'icon-user-delete',
            text: 'Remove ',
            disabled: true,
            handler: function(){
                editor.stopEditing();
                var s = grid.getSelectionModel().getSelections();
                for(var i = 0, r; r = s[i]; i++){
                    store.remove(r);
                }
            }
        }],

        columns: [
        new Ext.grid.RowNumberer(),
        {

            header: 'DocNum',
            dataIndex: 'DocNum',
            width: 220,
            sortable: true

        },{
            header: 'DocAno',
            dataIndex: 'DocAno',
            width: 150,
            sortable: true


        },{

            header: 'DocData',
            dataIndex: 'DocData',

            width: 100,
            sortable: true

        },{

            header: 'DocHora',
            dataIndex: 'DocHora',

            width: 100,
            sortable: true

        },{

            header: 'Descricao',
            dataIndex: 'Descricao',
            align: 'center',
            width: 50

        }]
    });



    var layout = new Ext.Panel({
        title: 'EMDURB',
        layout: 'border',
        layoutConfig: {
            columns: 1
        },
        width:600,
        height: 600,
        items: [grid]
    });
    layout.render(Ext.getBody());

    grid.getSelectionModel().on('selectionchange', function(sm){
        grid.removeBtn.setDisabled(sm.getCount() < 1);
    });

tirei o botao de adicionar e a edição pq nao posso deixar o usuario usar

Compartilhar este post


Link para o post
Compartilhar em outros sites

groupRenderer tem haver com o esquema dos grupos ainda.

 

você esta pegando o exemplo errado para entender, procure um exemplo com grid simples e banco de dados que apartir dele você faz as mudanças necessarias

Compartilhar este post


Link para o post
Compartilhar em outros sites

ok fiz isso, peguei o exemplo mais simples de todos o array-grid

 

e deu tudo certo, exceto qdo eu dou um reload no grid.store.reload()

ele da o erro: 'this.proxy' é nulo ou não é um objeto

 

 

sabe o que pode ser isso?

 

no meu array tem todos os dados certinho.

 

tentei dar um grid.render, mas dai aparecem 2 grids na div,

e depois 4, 8, etc...

Compartilhar este post


Link para o post
Compartilhar em outros sites

resolvi, nao sei ainda pq ele tava fazendo isso... simplesmente ao invez de dar um render de novo

eu dei um store.loadData() e deu certo;

 

vlww Fabyo, acho que dessa vez consegui td que eu queria no grid por eqto,

e na ultima versao do ext js ^^

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá:

 

como eu faço para passar um código específico de pesquisa para a 'listar_usuarios.php

 

url:'listar_usuarios.php'

 

eu tenho um input no form que executa o grid e o conteúdo deste input teria que ser enviado para a listar_usuarios.php.

 

Eu tb tenho que limitar o grid em no máximo 25 linhas.

 

Grato!

Compartilhar este post


Link para o post
Compartilhar em outros sites

explica melhor o que você quer fazer, mas ja adiantando você vai usar Ext.Ajax.request e para limitar os campos você precisa enviar os valores start e limit e no php fazer a consulta com esses parametros e retornar em json

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Fabyo.

 

Estou usando o modelo 6.

 

Na index.html, eu tenho um input cujo value dele precisava ser passado para a listar_usuarios.php pois o select dela tem que ter um filtro.

 

Em relação a limitar o numero de linhas, tem como controlar isto na hora em que é clicado no botão de Novo Registro?

Ou seja, eu não quero limitar a visualização em 25 mas a inclusão propriamente dita.

É um cadastro de perguntas de pesquisa sendo que cada pesquisa pode ter no máximo 25 perguntas.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Fabyo.

 

A limitação de linhas está resolvida.

 

Qto ao Ext.Ajax.request pesquisei mas não consegui implementar pois estou muito cru ainda neste assunto.

 

você poderia dar uma força aí?

 

 

Grato!

Compartilhar este post


Link para o post
Compartilhar em outros sites

só uma pergunta, você ta usando form? se tiver nao precisa usar o Ext.Ajax.request

 

 

Tô usando form sim, não consegui passar as informações.

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

só uma pergunta, você ta usando form? se tiver nao precisa usar o Ext.Ajax.request

 

 

Tô usando form sim, não consegui passar as informações.

 

 

Funcionou, usei SESSION.

 

Obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Agora que publiquei a página no servidor, este cadastro não funciona mais...

 

Já tentei de tudo, o estranho é que no mesmo ambiente em localhost funciona certinho.

 

Tem alguma diferença?

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.