Antonio Pasqualli,
Se você quiser saber se a grid está vazia, você tem que verificar
através do dataProvider!
public function ver():void{
if(dgTeste.dataProvider.length==0){
Alert.show("Vazio");
}
se for para limpar todos os dados dá um:
private function metodoResult(evento: ResultEvent): void {
teuProvider = new ArrayCollection(evento.result.data);
}
Acho que é isso!
Em 27 de abril de 2011 09:26, Antonio Pasqualli <[email protected]
> escreveu:
> Ola, segue
> <?xml version="1.0" encoding="utf-8"?>
> <flexmdi:MDIWindow xmlns:fx="http://ns.adobe.com/mxml/2009"
> xmlns:s="library://ns.adobe.com/flex/spark"
> xmlns:mx="library://ns.adobe.com/flex/mx"
> xmlns:flexmdi="http://flexmdi.googlecode.com/"
> layout="absolute"
> height="380"
> fontFamily="Verdana" fontSize="10"
> title="Opção Selecionada: {dgCategoria.selectedItem.hca_nome}"
> width="750"
> creationComplete="carregaLista(); ver()">
> <flexmdi:states>
> <s:State name="Principal"/>
> <s:State name="Estados"/>
> <s:State name="Regiao"/>
> <s:State name="RegiaoHospital"/>
> <s:State name="Hospital"/>
> </flexmdi:states>
> <fx:Declarations>
> <!-- Place non-visual elements (e.g., services, value objects) here -->
> <s:RemoteObject id="roHospitais"
> fault="OnFault(event)"
> source="acaoHospitais"
> destination="amfphp"
> showBusyCursor="true">
> <s:method name="categoria"
> result="OnResultListarCategorias(event)"/>
> <s:method name="estado"
> result="OnResultListarEstados(event)">
> <s:arguments>
> <identificador>{identificadorCat.text}</identificador>
> </s:arguments>
> </s:method>
> <s:method name="regiao"
> result="OnResultListarRegiao(event)">
> <s:arguments>
> <identificador>{identificadorEst.text}</identificador>
> </s:arguments>
> </s:method>
> <s:method name="regiao_hospital"
> result="OnResultListarRegHospital(event)">
> <s:arguments>
> <identificador>{identificadorReg.text}</identificador>
> </s:arguments>
> </s:method>
> <s:method name="hospital"
> result="OnResultHospital(event)">
> <s:arguments>
> <identificador>{identificadorEst.text}</identificador>
> </s:arguments>
> </s:method>
> </s:RemoteObject>
> </fx:Declarations>
> <fx:Script source="../actionScript/Padrao.as"/>
> <fx:Script>
> <![CDATA[
> import mx.collections.ArrayCollection;
> import mx.controls.Alert;
> import mx.rpc.events.FaultEvent;
> import mx.rpc.events.ResultEvent;
> //fault durante integração
> public function OnFault(event:FaultEvent):void{
> Alert.show(event.fault.message, "Erro durante Integração", 4, null,
> null, Pare);
> }
> //trazer categoria
> [Bindable]
> public var dpCat:Array;
> public function OnResultListarCategorias(event:ResultEvent):void{
> dpCat=event.result.data;
> }
> public function carregaLista():void{
> roHospitais.categoria.send();
> }
> //carrega lista de estados conforme lista de caregoria
> [Bindable]
> public var dpEstados:Array;
> public function OnResultListarEstados(event:ResultEvent):void{
> dpEstados=event.result.data;
> }
>
> public function carregaEstados():void{
> roHospitais.estado.send();
> currentState='Estados';
> }
> //carrega regioes se possuir
> [Bindable]
> public var dpRegiao:Array;
> public function OnResultListarRegiao(event:ResultEvent):void{
> dpRegiao=event.result.data;
> }
>
> public function carregaRegiao():void{
> roHospitais.regiao.send();
> currentState='Regiao';
> dgRegiao.dataProvider=dpRegiao;
> }
> //carrega regiao hospital se existir
> [Bindable]
> public var dpRegiaoHospital:Array;
> public function OnResultListarRegHospital(event:ResultEvent):void{
> dpRegiaoHospital=event.result.data;
> }
> public function carregarRegHospital():void{
> roHospitais.regiao_hospital.send();
> currentState='RegiaoHospital';
> }
> //trazer hospitais
> [Bindable]
> public var dpHospital:Array;
> public function OnResultHospital(event:ResultEvent):void{
> dpHospital=event.result.data;
> }
> public function carregaHospital():void{
> roHospitais.hospital.send();
> currentState='Hospital';
> }
> //verifica se possui regiao/////////////////////////
> public function verSePosuiRegiao():void{
> if(dgEstados.rowCount!=0)
> carregaRegiao();
> else
> carregaHospital();
> }
>
> //evento voltar
> public function principal():void{
> currentState='Principal';
> }
> public function estados():void{
> currentState='Estados';
> }
> public function regiao():void{
> currentState='Regiao';
> }
> public function regiaoHospital():void{
> currentState='RegiaoHospital';
> }
>
>
> //testar dg vazio
> public function ver():void{
> if(dgTeste.rowCount==0){
> Alert.show("Vazio");
> }
> }
> ]]>
> </fx:Script>
> <mx:Canvas id="Menu" width="220" height="100%">
> <s:VGroup x="0" y="0" width="100%" height="100%">
> <mx:HRule width="100%" includeIn="Principal"/>
> <mx:DataGrid width="100%" dataProvider="{dpCat}" height="88"
> id="dgCategoria" change="carregaEstados()" height.Principal="100%"
> height.Estados="100%" height.Regiao="100%" height.RegiaoHospital="100%"
> height.Hospital="100%">
> <mx:columns>
> <mx:DataGridColumn headerText="" dataField="hca_nome"/>
> </mx:columns>
> </mx:DataGrid>
> <s:TextInput id="identificadorCat"
> text="{dgCategoria.selectedItem.hca_id}" visible="true"/>
> </s:VGroup>
> </mx:Canvas>
> <mx:Canvas id="Selecao" width="100%" height="100%" y="0" x="222">
> <s:RichText text="Escolha uma opção!"
> id="lblOpcao"
> fontSize="20" horizontalCenter="0" verticalCenter="0"
> includeIn="Principal"/>
> <s:TextInput includeIn="Estados" id="identificadorEst"
> text="{dgEstados.selectedItem.hes_id}" bottom="0" left="0"/>
> <mx:DataGrid includeIn="Estados" x="0" y="0" id="dgEstados"
> change="verSePosuiRegiao()" dataProvider="{dpEstados}" width="100%"
> height="93%">
> <mx:columns>
> <mx:DataGridColumn headerText="" dataField="hes_nome"/>
> </mx:columns>
> </mx:DataGrid>
> <s:RichText text="Estados" includeIn="Estados" bottom="10" right="107"/>
> <mx:DataGrid includeIn="Regiao" x="0" y="0"
> change="carregarRegHospital()" dataProvider="{dpRegiao}" width="100%"
> id="dgRegiao" height="93%">
> <mx:columns>
> <mx:DataGridColumn headerText="" dataField="hre_nome"/>
> </mx:columns>
> </mx:DataGrid>
> <s:TextInput includeIn="Regiao" id="identificadorReg"
> text="{dgRegiao.selectedItem.hre_id}" bottom="0" left="22"/>
> <s:Button includeIn="Estados" label="Voltar" right="5" bottom="2"
> click="principal()"/>
> <s:Button label="Voltar" right="5" bottom="2" includeIn="Hospital"
> click="regiaoHospital()"/>
> <s:Button label="Voltar" right="5" bottom="2" includeIn="RegiaoHospital"
> click="regiao()"/>
> <s:Button label="Voltar" right="5" bottom="2" includeIn="Regiao"
> click="estados()"/>
> <mx:DataGrid includeIn="RegiaoHospital" x="0" y="0" height="93%"
> width="100%" id="dgRegiaoHospital" dataProvider="{dpRegiaoHospital}">
> <mx:columns>
> <mx:DataGridColumn headerText="" dataField="hos_nome"/>
> </mx:columns>
> </mx:DataGrid>
> <s:TextInput includeIn="RegiaoHospital" id="identificadorRegHosp"
> text="{dgRegiaoHospital.selectedItem.hos_id}" bottom="0" left="5"/>
> <mx:DataGrid includeIn="Hospital" x="0" y="0" dataProvider="{dpHospital}"
> id="dgHospital" height="93%" width="100%">
> <mx:columns>
> <mx:DataGridColumn headerText="" dataField="hos_nome"/>
> </mx:columns>
> </mx:DataGrid>
> <s:RichText includeIn="Hospital" text="Hospital" right="106"
> bottom="10"/>
> <s:RichText text="Regiao Hospital" includeIn="RegiaoHospital" right="81"
> bottom="10"/>
> <s:RichText y="331" text="Regiao" includeIn="Regiao" right="112"/>
> <mx:DataGrid includeIn="Principal" x="33" y="239" height="102"
> id="dgTeste">
> <mx:columns>
> <mx:DataGridColumn headerText="Column 1" dataField="col1"/>
> <mx:DataGridColumn headerText="Column 2" dataField="col2"/>
> <mx:DataGridColumn headerText="Column 3" dataField="col3"/>
> </mx:columns>
> </mx:DataGrid>
> </mx:Canvas>
> </flexmdi:MDIWindow>
>
>
> Em 27 de abril de 2011 09:11, Guilherme Sjlender
> <[email protected]>escreveu:
>
>> Antonio... desconfio que algo está errado! =P hehe
>>
>> Por favor, mande o código para que possamos analisar, ficará mais fácil de
>> encontrar o problema e a solução! ^^
>>
>> Até
>> Att.
>> Em 27 de abril de 2011 08:57, Antonio Pasqualli <
>> [email protected]> escreveu:
>>
>>> Ola,
>>> estou com uma dificuldade em tratar este erro, o meu datagrid não limpa
>>> apos nova consulta
>>> meu cenario
>>> tenho uma aplicação com dois states e duas consultas
>>> em uma delas o campo deve vir vazio se não houver dados e o segundo a
>>> mesmo coisa, porem tenho dados no primeiro e não no segundo, quando clico no
>>> primeiro ele traz os dados, quando clico no segundo ele traz os dados do
>>> primeiro, tambem testei clicando primeiro no segundo, ele vem vazio e quando
>>> clico no primeiro ele traz os dados e se clicar no segundo novamente ele vem
>>> com os dados do primeiro, para vir vario tenho que fechar a aplicação.
>>> Então preciso saber como limpar meu data grid e como saber se esta limpo
>>> digo se estiver vazio exibir um alert por exemplo ou duvido é como dizer
>>> para o flex que este datagrid esta vazio
>>> Obrigado pela ajuda!
>>>
>>> --
>>> "Pensar apenas ou desejar somente nunca levou ninguém a lugar nenhum. É
>>> necessário também a ação" - William Shakespeare
>>>
>>> --
>>> 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
>>
>>
>>
>>
>> --
>> Guilherme Sjlender - http://www.gflex.biz/
>> ------------------------------------------------------------
>> Desenvolvedor Web - Flex3.5/Flex4.5/JavaEE
>> Desenvolvedor Desktop - AIR/JavaSE
>> Desenvolvedor Mobile - Android/JavaME/Flex4.5
>> ------------------------------------------------------------
>>
>> --
>> 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
>
>
>
>
> --
> "Pensar apenas ou desejar somente nunca levou ninguém a lugar nenhum. É
> necessário também a ação" - William Shakespeare
>
> --
> 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
--
William de Farias Lima
*Desenvolvimento*
FCM Sistemas
Fone: (85) 3278.8215
[email protected] <[email protected]>
www.fcmsistemas.com.br
<http://www.grupofortes.com.br/>
--
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