Carregando ArrayCollection  XML
Índice dos Fóruns » RIA - Flex, JavaFX e outros
Autor Mensagem
jrcardoso007
Thread.start()
[Avatar]

Membro desde: 23/02/2008 16:30:31
Mensagens: 25
Localização: Goiânia - GO
Offline

Amigos, boa tarde.

Estou com um problema envolvendo duas grids e dois arraysCollections. Vou tentar explicar o problema.
Imagina que tenho duas grids onde a grid1 são produtos e a grid2 são os produtos selecionados da grid1. (Estou transferindo os dados de uma grid para outra através do click de um botão)
As duas grids são carregadas com dois ArrayCollections. Sendo a grid1 com o retorno de um select do banco e a grid2 com os arquivos selecionados da grid1.

O problema é que, quando clico no botão para carregar a grid2 os dados que existiam nela somem e carregam as novas linha selecionadas. Gostaria de atualizar os dados da grid2 e não substitui-los.
Ja tentei o atualizar a grid2 da seguinte maneira.
modulos.addItem(modulosAprovados);

Onde.: modulos é o arrayCollection dos dados selecionados Grid2 e modulosAprovados o ArrayCollection que foi retornado do banco Grid1.

Se alguem puder me ajudar agrdeço.
Abraço.
[Email] [MSN]
caputojf1
JavaChild
[Avatar]

Membro desde: 18/09/2008 15:51:06
Mensagens: 105
Localização: Brasília, DF
Offline

Seguinte amigo.
você deve estar passando um novo ArrayCollection td vez que clica no botão, por isso ele apaga os dados e passa a nova lista.
tente ao clicar no botão verificar se a lista já tem algum dado. se tiver vai adicionando os novos selecionados( array2.add.(dado)).

Espero ter ajudado
caputojf1
JavaChild
[Avatar]

Membro desde: 18/09/2008 15:51:06
Mensagens: 105
Localização: Brasília, DF
Offline

Recupere os dados da grid2, depois adicione os novos itens.

Sacou?
jrcardoso007
Thread.start()
[Avatar]

Membro desde: 23/02/2008 16:30:31
Mensagens: 25
Localização: Goiânia - GO
Offline

Amigo, vou te passar minha função para você dar uma olhada.

[Bindable]
private var modulosSelecionados:ArrayCollection; //Este é o ArrayCollection da Grid1 carregado em uma outra função com o retorno de um select
[Bindable]
private var modulosAprovados:ArrayCollection; //Este é o ArrayCollection que carrega a grid2, modulos selecionados



public function TransfereItensSelecionados():void
{
// o ArrayCollection modulos neste caso são os itens selecionados da Grid1
var modulos:ArrayCollection = new ArrayCollection(dg_modulos.selectedItems);

if (modulosAprovados.length > 0)
modulosAprovados.addItem(modulos)
else
modulosAprovados = modulos;
}

Mas com este codigo o programa não retorna nada, fica parado sem mensagem de erro e sem atualizar nada.
Parece que esta com algum problema quando utilizo a linha de comando modulosAprovados.length, pois se por teste eu tirar essa linha e deixar somente o comando modulosAprovados = modulos, o programa atualiza a grid2.
[Email] [MSN]
caputojf1
JavaChild
[Avatar]

Membro desde: 18/09/2008 15:51:06
Mensagens: 105
Localização: Brasília, DF
Offline

falei pra pegar da grid....tipo assim...

xdraculax
Java Ninja

Membro desde: 12/01/2009 16:12:54
Mensagens: 286
Offline

Ou, use a mesma collection para ambos os grids, e no grid 2 crie uma "filter function" que só exiba os items marcados como "aprovados".
No grid 1, você só marca os itens como aprovados, e toda vez que aprovar um item voce só precisa dar um "refresh" no grid 2.

-Atenha-se a resolver o problema, e não criticar opiniões.
-Você percebe que está programando d+, quando está escrevendo identado!
-Não precisa estar certo, basta acreditar.
[WWW]
jrcardoso007
Thread.start()
[Avatar]

Membro desde: 23/02/2008 16:30:31
Mensagens: 25
Localização: Goiânia - GO
Offline

Amigos obrigado pelas dicas, mas infelizmente não deu certo caputojf1, tentei fazer direto na grid como sugerio, mas o programa não retorna nada, fica parado. E quanto ao filterFunction, estou dando uma pesquisada como fazer, como estou começando no flex, ainda não sei direito como fazer para filtrar os dados conforme necessito. Porque na verdade eu não quero somente os selecionados, pois o cara pode selecionar determinados produtos e esquecer algum, quando ele selecionar os que foram esquecidos ele deve acrescentar na grid 2. De qualquer forma obridado pela atenção.
[Email] [MSN]
 
Índice dos Fóruns » RIA - Flex, JavaFX e outros
Ir para:   
Powered by JForum 2.1.8 © JForum Team