Valeu pela ajuda bruno bg
Segui a sua orientação e fiz assim e funcionou
--- meu get
public function get nomeUsuario():String{
var result:String = usuario.nome;
return result;
}
--- coluna do datagrid
<mx:DataGridColumn headerText="Usuario" dataField="nomeUsuario" />
Muito obrigado
On 1 set, 10:17, bruno bg <[email protected]> wrote:
> essa maneira {usuario.nome} só funciona no SDK 3.5 ou acima.
> outras versões faça uso do LabelFunction ou itemRenderer ou crie um GET na
> sua classe pagamento retornando o nome do usuário.
>
> um "pitaco", na sua classe USUARIO não precisa o atributo "listPagamentos
> (array)"
> na sua classe "pagamento" já tem atributo "Usuario (objeto)", vc pode fazer
> um filtro com WHERE a partir do id do usuario e trazer todos os pagamentos
> de um determinado Usuario.
>
> só um "pitaco".
>
> abração
> --
> ****************************************************www.brunobg.com
> [email protected]
> blogflex.brunobg.com
> @brunogrohs
> (21) 9913-2397
>
> Em 1 de setembro de 2010 09:52, claudemir <[email protected]> escreveu:
>
> > Bom dia
> > No meu dataGrid tenho uma lista de pagamento e cada pagamento
> > pertence a um usuario, no entanto não sei como mostrar o nome do
> > usuario no dataGrid, Tentei fazer assim mas não mostrou nada.
> > <mx:DataGridColumn headerText="Usuario" dataField="usuario.nome" />
> > </mx:columns>
>
> > Segue abaixo as minhas classes.
>
> > package com.digows.artigos.JavaFlex.view.entity
> > {
> > import mx.collections.ArrayCollection;
>
> > [RemoteClass(alias="com.digows.artigos.JavaFlex.model.entity.Usuario")]
> > [Bindable]
> > public class Usuario
> > {
> > public var id:Number;
> > public var nome:String;
> > public var login:String;
> > public var senha:String;
>
> > public var listPagamentos:ArrayCollection;
>
> > public function Usuario()
> > {
> > listPagamentos = new ArrayCollection();
> > }
>
> > }
> > }
>
> > -----------------------------------------------------------------------------------------
> > package com.digows.artigos.JavaFlex.view.entity
> > {
>
> > [RemoteClass(alias="com.digows.artigos.JavaFlex.model.entity.Pagamento")]
> > [Bindable]
> > public class Pagamento
> > {
> > public var id:Number;
> > public var dataPagamento:Date;
> > public var dataVencimento:Date;
> > public var valorPagamento:Number;
> > public var valorVencimento:Number;
> > public var obs:String;
> > public var status:Status;
> > public var usuario:Usuario;
>
> > public function Pagamento()
> > {
> > status = new Status();
> > usuario = new Usuario();
> > this.status = status;
> > }
>
> > }
> > }
>
> > <?xml version="1.0" encoding="utf-8"?>
> > <mx:TitleWindow xmlns:mx="http://www.adobe.com/2006/mxml"
> > creationComplete="getList()" width="100%" height="100%">
>
> > <mx:Panel id="panelPagamento" layout="absolute" title="Controle de
> > Pagamento teste" width="100%" height="100%">
>
> > <mx:Label text="Id:" x="10" y="10"/>
> > <mx:TextInput id="idTxt" editable="false" enabled="false"
> > text="{Pagamento(dgPagamento.selectedItem).id}" x="34" y="8"
> > width="72"/>
>
> > <mx:Label text="Pagamento" x="124" y="10"/>
>
> > <mx:Label text="Vencimento" x="124" y="36"/>
> > <mx:DateField id="dtdataPagamento" formatString="DD/MM/YYYY"
>
> > text="{dateFormatter.format(Pagamento(dgPagamento.selectedItem).dataPagamento)}"
> > x="201" y="34" width="107" />
>
> > <mx:DateField id="dtdataVencimento" formatString="DD/MM/YYYY"
>
> > text="{dateFormatter.format(Pagamento(dgPagamento.selectedItem).dataVencimento)}"
> > x="201" y="8" width="107" />
>
> > <mx:TextInput id="valorPagamentoTxt"
> > text="{Pagamento(dgPagamento.selectedItem).valorPagamento}" x="375"
> > y="8" width="133"/>
> > <mx:Label text="Valor" x="334" y="10"/>
> > <mx:Label text="Valor" x="334" y="36"/>
> > <mx:TextInput id="valorVencimentoTxt"
> > text="{Pagamento(dgPagamento.selectedItem).valorVencimento}" x="375"
> > y="34" width="133"/>
>
> > <mx:ComboBox id="combo_usuarios"
> > dataProvider="{listUsuarios}"
> > labelField="nome" x="201" y="64" width="211" />
>
> > <mx:DataGrid id="dgPagamento"
> > dataProvider="{listPagamentos}" width="100%"
> > height="130" y="94">
> > <mx:columns>
> > <mx:DataGridColumn headerText="ID"
> > width="30" dataField="id"/>
> > <mx:DataGridColumn headerText="Pagamento"
> > dataField="dataPagamento" labelFunction="formatDate"/>
> > <mx:DataGridColumn headerText="Valor"
> > dataField="valorPagamento" /
>
> > <mx:DataGridColumn headerText="Vencimento"
> > dataField="dataVencimento" labelFunction="formatDate"/>
> > <mx:DataGridColumn headerText="Valor"
> > dataField="valorVencimento"
> > labelFunction="formatMoney" />
> > <mx:DataGridColumn headerText="Usuario"
> > dataField="usuario.nome" /
>
> > </mx:columns>
> > </mx:DataGrid>
> > <mx:ControlBar horizontalAlign="center">
> > <mx:Button label="Novo" id="btNovo" click="setDefault()"
> > icon="@Embed('icons/novo2.jpg')"/>
> > <mx:Button label="Salvar" id="btSalvar" click="save()"
> > icon="@Embed('icons/save12.jpg')"/>
> > <mx:Button label="Excluir" id="btExcluir" click="remove()"
> > icon="@Embed('icons/delete_lixo_10.jpeg')"/>
> > </mx:ControlBar>
>
> > </mx:Panel>
>
> > <mx:CurrencyFormatter id="moneyFormatter" precision="2"
> > rounding="none"
> > decimalSeparatorTo="," thousandsSeparatorTo="."
> > useThousandsSeparator="true" useNegativeSign="true"
> > currencySymbol="$ "
> > alignSymbol="left"/>
>
> > <mx:DateFormatter id="dateFormatter" formatString="DD/MM/YYYY" />
>
> > <mx:RemoteObject id="pagamentoService" showBusyCursor="true"
> > fault="onFault(event)" destination="pagamentoService">
> > <mx:method name="save" result="onResultSave(event)"
> > fault="onFault(event)"/>
> > <mx:method name="remove" result="onResultRemove(event)"
> > fault="onFault(event)"/>
> > <mx:method name="getList" result="onResultGetList(event)"
> > fault="onFault(event)"/>
> > <mx:method name="getListUsuarios"
> > result="onResultGetListUsuarios(event)" fault="onFault(event)"/>
> > <mx:method name="aviso" result="onResultGetList(event)"
> > fault="onFault(event)"/>
> > </mx:RemoteObject>
>
> > <mx:Script>
> > <![CDATA[
> > import
> > com.digows.artigos.JavaFlex.view.entity.Usuario;
> > import
> > com.digows.artigos.JavaFlex.view.entity.Status;
> > import
> > com.digows.artigos.JavaFlex.view.entity.Pagamento;
> > import
> > com.digows.artigos.JavaFlex.view.entity.Pagamento;
> > import mx.collections.ArrayCollection;
> > import mx.rpc.events.ResultEvent;
> > import mx.rpc.events.FaultEvent;
> > import mx.controls.Alert;
> > import mx.utils.ObjectUtil;
>
> > [Bindable]
> > private var listPagamentos:ArrayCollection;
> > [Bindable]
> > private var listUsuarios:ArrayCollection;
>
> > private var pagamento:Pagamento;
>
> > private var usuario:Usuario;
>
> > public function save():void
> > {
>
> > //Alert.show(combo_usuarios.selectedItem.data.toString());
> > this.pagamento = new Pagamento();
> > this.pagamento.dataPagamento =
> > dtdataVencimento.selectedDate;
> > this.pagamento.dataVencimento =
> > dtdataPagamento.selectedDate;
> > this.pagamento.valorPagamento =
> > Number(valorPagamentoTxt.text);
> > this.pagamento.valorVencimento =
> > Number(valorVencimentoTxt.text);
> > this.pagamento.obs = "teste";
> > // Pegar o usuario selecionado
> > this.pagamento.usuario =
> > combo_usuarios.selectedItem as Usuario;
> > //Chama o metodo Save do servico
> > "cargoService"
> > pagamentoService.save(pagamento);
> > }
>
> > private function
> > getListUsuariosResultHandler(event:ResultEvent):void
> > {
> > listUsuarios = event.result as ArrayCollection;
> > combo_usuarios.dataProvider(listUsuarios);
> > }
>
> > //Função que será executada após a conclusão do
> > método save
> > public function onResultSave(event:ResultEvent):void
> > {
> > status = "Salvo com Sucesso! Ultima ID:
> > "+Pagamento(event.result).id;
> > getList();
> > }
>
> > public function remove():void
> > {
> > if (dgPagamento.selectedItem != null) {
> > pagamento = dgPagamento.selectedItem
> > as Pagamento;
> > pagamentoService.remove(pagamento);
> > } else {
> > Alert.show("Selecione um Item na
> > DataGrid");
> > }
> > }
>
> > //Função que será executada após a conclusão do
> > método remove
> > public function
> > onResultRemove(event:ResultEvent):void
> > {
>
> ...
>
> mais »
--
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para [email protected]
Para sair da lista, envie um email em branco para
[email protected]
Mais opções estão disponíveis em http://groups.google.com/group/flexdev