Vlw Rafael, vou tentar assim também.

Obrigado pela ajuda.

Lindeberg Sabreu

-----Mensagem original-----
De: flexdev@googlegroups.com [mailto:flex...@googlegroups.com] Em nome de
Raphael Ramalho
Enviada em: quinta-feira, 17 de junho de 2010 16:48
Para: flexdev
Assunto: Re: RES: [flexdev] tree dinamico

Lindeberg, se eu entendi vc passou pelo mesmo problema que eu há
alguns meses atrás...

Olha o que vc tem que criar eh um array vindo do java com uma
estrutura hierárquica seguindo algumas especificações que o livedocs
descreve..

http://livedocs.adobe.com/flex/3/html/help.html?content=about_dataproviders_
6.html

O certo seria fazer a hierarquia com xmllist, mas pode ser com
arraycollection tb...

basta indicar um vetor filho dentro de um vetor que servirá como pai,
sendo o filho com o label "children";

Vou te mostrar meu método do controller no php que faz isso pra mandar
pro flex:
PS:Estou usando o zend entao as duas primeiras linhas nao te
interessam, pq sao chamadas ao banco atraves do framework, olha dentro
do for pra tu sacar melhor.... eu relaciono duas tabelas do banco pra
classificar os procedimentos medicos(filhos) com os tipos de
procedimentos(pais).....



public function getAllTree() {
                $p = new TipoProcedimento ();
                $rs = $p->fetchAll ( $p->select () )->toArray ();
                for($i = 0; $i < count ( $rs ); $i ++) {
                        $p = new Procedimento ();
                        $select = $p->select ()->where (
'tipos_procedimentos_codigo=?',
$rs [$i] ['codigo'] );

//Aqui tah a estrutura sendo implementada em vetores, perceba que eu
coloco um vetor chamado children dentro do mesmo indice que descricao
que eh o pai.
                        $rs2 [$i] ['descricao'] = $rs [$i] ['descricao'];
//dentro do children eu coloco o objeto convertido em
array(peculiaridade do framework que uso) .
                        $rs2 [$i] ['children'] = $p->fetchAll ( $select
)->toArray ();
                        $rs [$i] ['descricao'] = $rs2;
                }
                return $rs2;
        }


A idéia básica é essa, no java fica um pouco diferente pq nao eh tao
flexivel quanto o php, mas se vc ler a documentacao no link que te
indiquei vc desenrola...

Lá no Flex vc vai indicar que campo desses vetores serao o rotulo que
vai aparecer na tree, atencao a isso.... tanto no vetor pai quanto no
filho tem que ter o msm atributo, que no meu caso foi "descricao", pq
jah era um atributo do banco comum a estas entidades...

Feito isso eh soh setar o dataprovider da treelist pra o vetor que
receber os dados do java e setar o labelField com o name do atributo
rótulo escolhido, como falei acima...

Qualquer coisa estamos aqui....




On 17 jun, 15:42, "Lindeberg Sabreu" <guto...@yahoo.com.br> wrote:
> Vlw Thiago,
>
> Vou pegar o exemplo e por pra fritar aqui e daí te dou retorno.
>
> Obrigado
>
> Lindeberg Sabreu
>
> De: flexdev@googlegroups.com [mailto:flex...@googlegroups.com] Em nome de
> Thiago Segato
> Enviada em: quinta-feira, 17 de junho de 2010 13:54
> Para: flexdev@googlegroups.com
> Assunto: Re: [flexdev] tree dinamico
>
> Toma aí meu amigo:
>
> http://flexpearls.blogspot.com/2007/12/hierarchicaldata-from-flat-xml...
> ta.html
>
> ;)
>
> --
> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
> Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com
> Para sair da lista, envie um email em branco para
> flexdev-unsubscr...@googlegroups.com
> Mais opções estão disponíveis emhttp://groups.google.com/group/flexdev

-- 
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com
Para sair da lista, envie um email em branco para
flexdev-unsubscr...@googlegroups.com
Mais opções estão disponíveis em http://groups.google.com/group/flexdev


-- 
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com
Para sair da lista, envie um email em branco para 
flexdev-unsubscr...@googlegroups.com
Mais opções estão disponíveis em http://groups.google.com/group/flexdev

Reply via email to