| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/11/2011 12:21:43
|
jrcardoso007
Thread.start()
![[Avatar]](/images/avatar/74992087b6b1542bd4e45082d671a6ab.jpg)
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.
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/11/2011 12:35:38
|
caputojf1
JavaChild
![[Avatar]](/images/avatar/6049c4764e4f172b968de04fc828df34.jpg)
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
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/11/2011 12:37:26
|
caputojf1
JavaChild
![[Avatar]](/images/avatar/6049c4764e4f172b968de04fc828df34.jpg)
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?
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/11/2011 13:41:34
|
jrcardoso007
Thread.start()
![[Avatar]](/images/avatar/74992087b6b1542bd4e45082d671a6ab.jpg)
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.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/11/2011 13:48:15
|
caputojf1
JavaChild
![[Avatar]](/images/avatar/6049c4764e4f172b968de04fc828df34.jpg)
Membro desde: 18/09/2008 15:51:06
Mensagens: 105
Localização: Brasília, DF
Offline
|
falei pra pegar da grid....tipo assim...
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/11/2011 14:09:27
|
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. |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/11/2011 15:22:18
|
jrcardoso007
Thread.start()
![[Avatar]](/images/avatar/74992087b6b1542bd4e45082d671a6ab.jpg)
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.
|
|
|
 |
|
|