A marcação seria algo como : package vo { [RemoteClass(alias="vo.Pmod")] public class Pmod { public var atributoX:Number; } }
sendo que você tem que substituir vo.Pmod pelo namespace completo da sua classe no C#. 2009/12/8 José Alexandre D'Abruzzo Pereira <jose...@gmail.com> > Como vc tá usando .net, dá pra vc ter uma classe Pmod no flex. > É só marcar ela como sendo a mesma classe do .net. > > No alert, vc teria então: > > var pmod:Pmod = dg.dataProvider; > Alert.show(pmod.atributo_que_vai_exibir); > > Algo assim... Isto ajuda, mas não é necessário. Se você debugar, já vai > descobrir onde está errado. > > > 2009/12/8 Airton Toyansk <atoya...@gmail.com> > >> Tentei outra coisa. >> >> Inseri o seguinte código: >> private function alertDg():void >> >> { >> var obj: Object = dg.dataProvider; >> Alert.show(obj.toString()); >> } >> >> E o Alert me exibiu a seguinte mensagem: >> [object Pmod] >> >> Sendo que Pmod é o nome do meu source no RemoteObject (das classes no Flex >> e no .Net). >> É o mesmo resultado em usar >> private function alertDg():void >> { >> Alert.show(dg.dataProvider.toString()); >> } >> >> Isso ajuda a descobrir o que pode ser? >> >> Obrigado! >> >> 2009/12/8 José Alexandre D'Abruzzo Pereira <jose...@gmail.com> >> >>> Sem ver o código todo fica difícil de saber o que é. >>> >>> Debuga tanto o método result do remote quanto antes de exibir o alert. Às >>> vezes a propriedade tem algum erro de digitação. Debugando dá pra ver >>> direito como está retornando do remote. >>> >>> >>> 2009/12/8 Airton Toyansk <atoya...@gmail.com> >>> >>>> Se insiro a verificação, não exibe Alert (e não dá erro). >>>> Se comento o if, exibe o erro: >>>> *Error: Unknown Property: 'X'* >>>> >>>> Ou seja, este objeto não tem o atributo X... >>>> >>>> >>>> 2009/12/8 José Alexandre D'Abruzzo Pereira <jose...@gmail.com> >>>> >>>> private function exibeX(): void { >>>>> var obj: Object = dg.dataProvider; >>>>> if (obj.hasProperty("X")) // Como ele retorna um object, é bom >>>>> verificar se aquele objeto tem o atributo X. >>>>> Alert.show(obj["X"]); // isto é o equivalente a obj.X; >>>>> } >>>>> >>>>> 2009/12/8 Airton Toyansk <atoya...@gmail.com> >>>>> >>>>> E se eu carregar como um Object, dessa forma: >>>>>> dg.dataProvider = e.result *as* Object; >>>>>> Ele exibe no DataGrid do mesmo jeito. Mas como exibir no Alert (estou >>>>>> com dificuldade mesmo sendo um objeto)? >>>>>> >>>>>> Obrigado! >>>>>> >>>>>> Airton Toyansk >>>>>> >>>>>> 2009/12/7 José Alexandre D'Abruzzo Pereira <jose...@gmail.com> >>>>>> >>>>>> Pode ser feito como vc fez. Aí na hora de dar o Alert é só fazer >>>>>>> ArrayCollection(dg.dataProvider) e pegar o ArrayCollection e indexa de >>>>>>> zero. >>>>>>> Vc vai ter um Object. Aí é só pegar a propriedade X do Object: >>>>>>> obj.X ou obj["X"]. >>>>>>> >>>>>>> Se vc recebe sempre um objeto, será que é necessário colocar num >>>>>>> ArrayCollection? Não dá pra colocar direto num objeto? Isto também acaba >>>>>>> dependendo do retorno do seu método na sua linguagem server-side. Se >>>>>>> estiver >>>>>>> retornando um ArrayList ou algo assim, tudo bem. Se estiver retornando >>>>>>> apenas um objeto, acho que não compensa colocar num ArrayCollection. >>>>>>> >>>>>>> Tem muitas formas de fazer o que você quer. Só que tem que escolher a >>>>>>> melhor para deixar o swf mais leve e não sobrecarregar o cliente =) >>>>>>> >>>>>>> 2009/12/7 Airton Toyansk <atoya...@gmail.com> >>>>>>> >>>>>>> Na verdade, resolveria se este registro fosse exibido em um >>>>>>>> TextInput. Mas não consegui carregá-lo num campo de texto no >>>>>>>> creationComplete, só num DataGrid, dessa forma: >>>>>>>> >>>>>>>> public function getDataR(e:ResultEvent):void >>>>>>>> { >>>>>>>> dg.dataProvider = e.result as ArrayCollection; >>>>>>>> } >>>>>>>> >>>>>>>> Se estivesse num campo de texto, estaria resolvido mandar para o >>>>>>>> Alert... Como posso fazer carregar num TextInput no método chamado no >>>>>>>> result >>>>>>>> do RemoteObject? >>>>>>>> Vou tentar também a opção no DataGrid. >>>>>>>> >>>>>>>> Obrigado! >>>>>>>> >>>>>>>> Airton Toyansk >>>>>>>> 2009/12/6 José Alexandre D'Abruzzo Pereira <jose...@gmail.com> >>>>>>>> >>>>>>>>> Se é apenas uma linha tem que ser um DataGrid para exibir estes >>>>>>>>> valores? >>>>>>>>> >>>>>>>>> De qualquer forma, é só fazer no creationComplete da sua aplicação, >>>>>>>>> um método que pegue a primeira posição do dataProvider do DataGrid, >>>>>>>>> pegar o >>>>>>>>> atributo X e dar o Alert. >>>>>>>>> >>>>>>>>> Se os dados estiverem vindo de um RemoteObject ou de um WebService, >>>>>>>>> tem que ser no método chamdo no result destas operações. >>>>>>>>> >>>>>>>>> Se não der certo ainda, posta o seu código pra gente ver... >>>>>>>>> >>>>>>>>> >>>>>>>>> 2009/12/6 Airton Toyansk <atoya...@gmail.com> >>>>>>>>> >>>>>>>>>> @José, >>>>>>>>>> >>>>>>>>>> Quero poder exibir logo que carrego a aplicação. >>>>>>>>>> No meu datagrid, tenho apenas uma coluna e uma linha (sempre). E >>>>>>>>>> quero exibir este valor no Alert assim que o usuário entre, ou seja, >>>>>>>>>> sem >>>>>>>>>> selecionar o registro (por isso minha dificuldade, pq não posso usar >>>>>>>>>> o >>>>>>>>>> selectedItem). >>>>>>>>>> >>>>>>>>>> Airton Toyansk >>>>>>>>>> >>>>>>>>>> 2009/12/6 José Alexandre D'Abruzzo Pereira <jose...@gmail.com> >>>>>>>>>> >>>>>>>>>>> Mas em qual momento você quer exibir o Alert? >>>>>>>>>>> >>>>>>>>>>> Uma possibilidade seria no click da grid, selecionando uma linha. >>>>>>>>>>> Aí neste método é só pegar dataGrid.selectedItem, que retorna um >>>>>>>>>>> Object. >>>>>>>>>>> Este é o objeto que popula aquela linha do grid. Aí é só acessa o >>>>>>>>>>> atributo >>>>>>>>>>> que popula a coluna X. Algo como: >>>>>>>>>>> >>>>>>>>>>> var obj: Object = dataGrid.selectedItem; >>>>>>>>>>> Alert.show(obj.X); >>>>>>>>>>> >>>>>>>>>>> 2009/12/6 Airton Toyansk <atoya...@gmail.com> >>>>>>>>>>> >>>>>>>>>>> Pessoal, >>>>>>>>>>>> >>>>>>>>>>>> Existe alguma maneira de recuperar determinado dado de um >>>>>>>>>>>> datagrid vindo de um BD e exibí-lo num Alert? >>>>>>>>>>>> Algo como "exiba dado da coluna X e linha Y"? >>>>>>>>>>>> >>>>>>>>>>>> Agradeço as respostas. >>>>>>>>>>>> >>>>>>>>>>>> Airton Toyansk >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> -- >>>>>>>>>>> José Alexandre D'Abruzzo Pereira >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> -- >>>>>>>>> José Alexandre D'Abruzzo Pereira >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> José Alexandre D'Abruzzo Pereira >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>> >>>>> >>>>> -- >>>>> José Alexandre D'Abruzzo Pereira >>>>> >>>>> >>>>> >>>>> >>>>> >>> >>> >>> -- >>> José Alexandre D'Abruzzo Pereira >>> >>> >>> > > > -- > José Alexandre D'Abruzzo Pereira > -- José Alexandre D'Abruzzo Pereira --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---