Anyone know about this?

My data comes in, and I can sort just fine, I refresh my dataProvider (pulls
a different query) and then I can't sort anymore, even if I go back and pull
the original data again. I have been searching and searching for a post on
correcting this issue but can't find one.

Here's the code, I hope someone can help me.
~Mike
*****************************************************************
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"; layout="absolute" 
creationComplete="init();">
        <mx:Script>
                <![CDATA[
                        import mx.events.ItemClickEvent;
                        import mx.collections.ArrayCollection;
                        import mx.collections.XMLListCollection;
                        import mx.utils.ArrayUtil;
                        import mx.rpc.events.*;
                        import mx.controls.Alert;
                        import mx.collections.HierarchicalData;
                        import mx.utils.ObjectProxy;
                        import mx.collections.Sort;
                        import mx.collections.SortField;
                        
                        [Bindable] private var xmllTemplates:XMLList = new 
XMLList();
                        [Bindable] private var templateDetails:XMLList = new 
XMLList();
                        [Bindable] private var curLibLevel:String = new 
String("enterprise");
                        [Bindable] private var usrLevel:String = new 
String("enterprise");
                        [Bindable] private var session:ObjectProxy = new 
ObjectProxy({
                        
userID:"",enterpriseID:"",communityID:"",clinicID:"",specialtyID:"",dsn:"",clinicName:"",isSuperUser:"",name:""
                        });
                        [Bindable] private var arcLibraries:ArrayCollection = 
new
ArrayCollection([{label:"User Library", level:"user"},
                                {label:"Enterprise Library", 
level:"enterprise"},{label:"System
Library", level:"system"}]); 
                        
                        private function init():void{
                                getPhpVars.send();
                        }
                        private function postInit():void{
                                getTemplates.send();
                                vwSelectBtnSettings();
                                userLevelChange();
                        }

                        private function 
getTemplates_fault(evt:FaultEvent):void {
                var title:String = evt.type + " (" + evt.fault.faultCode +
")";
                var text:String = evt.fault.faultString;
                Alert.show(text,title);
                xmllTemplates = new XMLList();
            }

            private function getTemplates_result(evt:ResultEvent):void {
                xmllTemplates = evt.result.row;
                gc.refresh();
               
            }
            private function generic_fault(evt:FaultEvent):void {
                var title:String = evt.type + " (" + evt.fault.faultCode +
")";
                var text:String = evt.fault.faultString;
                Alert.show(text,title);
            }

            private function getPhpVars_result(evt:ResultEvent):void {
                var sessionVars:XMLList = new XMLList();
                sessionVars = evt.result.row;
                for each(var i:XML in sessionVars.children()){
                        session[i.localName()] = i;
                }
                postInit();
            }
            private function getTemplateDetail_result(evt:ResultEvent):void
{
                templateDetails = evt.result.row;
                accComponents.removeAllChildren();
                for each(var i:XML in templateDetails){
                        if(accComponents.getChildByName(i.child("component"))){
                                
                        }else{
                                var newCanv:Canvas = new Canvas();
                                newCanv.id = i.child("component");
                                newCanv.label = i.child("componentName");
                                accComponents.addChild(newCanv);
                        }
                }
                //Alert.show(templateDetails.toString());
            }  

                        private function tabLibClick(evt:ItemClickEvent):void{
                                gridTemplates.selectedIndex=-1;
                                var targetComp:TabBar = 
TabBar(evt.currentTarget);
                                curLibLevel = 
targetComp.dataProvider[evt.index].level;
                                getTemplates.send();
                                vwSelectBtnSettings();
                        }
                        private function vwSelectBtnSettings():void{
                                if(gridTemplates.selectedIndex>-1){
                                        if(curLibLevel == usrLevel){
                                                btnHide.visible=true;
                                                btnAdopt.visible=false;
                                                btnEdit.label='Edit';
                                                btnHide.enabled=true;
                                                btnNew.enabled=true;
                                                btnEdit.enabled=true;
                                        }else{
                                                btnHide.visible=false;
                                                btnAdopt.visible=true;
                                                btnEdit.label='View';
                                                btnAdopt.enabled=true;
                                                btnNew.enabled=false;
                                                btnEdit.enabled=true;
                                        }
                                }else{
                                        if(curLibLevel == usrLevel){
                                                btnHide.visible=true;
                                                btnAdopt.visible=false;
                                                btnEdit.label='Edit';
                                                btnHide.enabled=false;
                                                btnNew.enabled=true;
                                                btnEdit.enabled=false;
                                        }else{
                                                btnHide.visible=false;
                                                btnAdopt.visible=true;
                                                btnEdit.label='View';
                                                btnAdopt.enabled=false;
                                                btnNew.enabled=false;
                                                btnEdit.enabled=false;
                                        }
                                }
                        }
                        private function gridClick():void{
                                var msg:String = new String();
                                msg = 
XML(gridTemplates.selectedItem).child("templateID");
                                if(msg == ''){gridTemplates.selectedIndex = -1;}
                                vwSelectBtnSettings();
                        }
                        private function userLevelChange():void{
                                usrLevel = UserLevel.selection.value.toString();
                                vwSelectBtnSettings();
                        }
                        private function enableViewer():void{
                                viewController.selectedChild = vwViewer;
                                getTemplateDetail.send();
                        }
                ]]>
        </mx:Script>
        
        <mx:HTTPService id="getPhpVars" url="../get_phpvars.php?noheaders"
showBusyCursor="true"
                result="getPhpVars_result(event)" resultFormat="e4x"
fault="generic_fault(event)"/>
        <mx:HTTPService id="getTemplates" url="../get_templates.php?noheaders"
showBusyCursor="true"
                result="getTemplates_result(event)" resultFormat="e4x"
fault="getTemplates_fault(event)" method="POST">
                <mx:request xmlns="">
                        <level>{curLibLevel}</level>
                        <enterpriseID>{session.enterpriseID}</enterpriseID>
                        <userID>{session.userID}</userID>
                        <communityID>{session.communityID}</communityID>
                </mx:request>
        </mx:HTTPService>
        <mx:HTTPService id="getTemplateDetail"
url="../get_template_detail.php?noheaders" showBusyCursor="true"
                result="getTemplateDetail_result(event)" resultFormat="e4x"
fault="generic_fault(event)" method="POST">
                <mx:request xmlns="">
                
<templateID>{XML(gridTemplates.selectedItem).child("templateID")}</templateID>
                </mx:request>
        </mx:HTTPService>
        
        <mx:ViewStack id="viewController" x="0" y="0" height="100%" 
width="100%">
                <!--viewController.selectedChild = vwSelect;-->
                <mx:Canvas id="vwSelect" x="0" y="0" height="100%" 
width="100%">                
                        <mx:Label x="10" y="10" text="UserID"/>
                        <mx:TextInput x="10" y="26" id="userID" 
text="{session.userID}"
editable="false" enabled="true" width="80"/>
                        <mx:Label x="98" y="10" text="clinicID"/>
                        <mx:TextInput x="98" y="26" id="txtclinicID" 
text="{session.clinicID}"
editable="false" enabled="true" width="80" />
                        <mx:Label x="186" y="10" text="EnterpriseID"/>
                        <mx:TextInput x="186" y="26" id="txtenterpriseID"
text="{session.enterpriseID}" editable="false" enabled="true" width="80" />
                        <mx:Label x="274" y="10" text="Community"/>
                        <mx:TextInput x="274" y="26" id="txtcommunityID"
text="{session.communityID}" editable="false" enabled="true" width="80" />
                        <mx:Label x="362" y="10" text="superUser"/>
                        <mx:TextInput x="362" y="26" id="txtisSuperUser"
text="{session.isSuperUser}" editable="false" enabled="true" width="80" />
                        
                        <mx:RadioButtonGroup id="UserLevel"/>
                        <mx:RadioButton x="512" y="26" label="User" 
groupName="UserLevel"
click="userLevelChange();" value="user"/>
                        <mx:RadioButton x="512" y="52" selected="true" 
label="Enterprise"
groupName="UserLevel" click="userLevelChange();" value="enterprise"/>
                        <mx:Canvas x="10" y="80" width="600" height="500" 
borderStyle="solid"
borderThickness="1">
                                <mx:AdvancedDataGrid defaultLeafIcon="{null}" 
folderClosedIcon="{null}"
folderOpenIcon="{null}"
                                        displayItemsExpanded="true" 
id="gridTemplates" left="10" right="10"
top="10" bottom="50" click="gridClick();">
                                        <mx:dataProvider>
                                                <mx:GroupingCollection id="gc" 
source="{xmllTemplates}">
                                                        <mx:Grouping>
                                                                
<mx:GroupingField name="templateType">
                                                                        
<mx:SummaryRow summaryPlacement="group">
                                                    <mx:fields>
                                                        <mx:SummaryField 
dataField="templateType"
label="templateType"/>
                                                    </mx:fields>
                                                </mx:SummaryRow>
                                                                
</mx:GroupingField>
                                                        </mx:Grouping>
                                                </mx:GroupingCollection>
                                        </mx:dataProvider>
                                        <mx:columns>
                                                <mx:AdvancedDataGridColumn 
dataField="name" headerText="Formal Name"
width="280"/>  
                                                <mx:AdvancedDataGridColumn 
dataField="abbreviation" headerText="Short
Name" width="150"/>
                                                <mx:AdvancedDataGridColumn 
dataField="insertDate" headerText="Date
Created" width="150"/>
                                                <mx:AdvancedDataGridColumn 
dataField="templateID" width="0"
visible="false"/>
                                        </mx:columns>
                                        <mx:rendererProviders>
                                    <mx:AdvancedDataGridRendererProvider 
dataField="templateType"
                                                                         
columnIndex="0"
                                                                         
columnSpan="0"
                                                                         
depth="1"
                                                                        
renderer="SummaryRenderer"/>
                                </mx:rendererProviders>

                                </mx:AdvancedDataGrid>
                                <mx:Button id="btnNew" x="10" y="456" 
label="New" width="75"/>
                                <mx:Button id="btnAdopt" x="430" y="456" 
label="Adopt" width="75"/>
                                <mx:Button id="btnHide" x="430" y="456" 
label="Hide" width="75"/>
                                <mx:Button id="btnEdit" x="513" y="456" 
label="Edit" width="75"
click="enableViewer();"/>
                        </mx:Canvas>
                        <mx:TabBar id="tabLibraries" x="10" y="56" height="26"
dataProvider="{arcLibraries}"
                                itemClick="tabLibClick(event);">
                        </mx:TabBar>
                </mx:Canvas>
                <mx:Canvas id="vwViewer" x="0" y="0" height="100%" width="100%">
                        <mx:Button x="10" y="10" label="Exit" 
click="viewController.selectedChild
= vwSelect;"/>
                        <mx:TextInput id="txtTemplateName"
text="{templateDetails[0].child('name')}" x="10" y="40" width="300"/>
                        <mx:TextInput id="txtTemplateAbbr"
text="{templateDetails[0].child('abbreviation')}" x="10" y="70"
width="300"/>
                        <mx:TextInput id="txtTemplateType"
text="{templateDetails[0].child('type')}" x="10" y="100" width="300"/>
                        <mx:TextInput id="txtExamType"
text="{templateDetails[0].child('examType')}" x="10" y="130" width="300"/>
                        <mx:Accordion id="accComponents" x="10" y="160" 
width="300" height="400">
                        </mx:Accordion>
                </mx:Canvas>
                <mx:Canvas id="vwCreater" x="0" y="0" height="100%" 
width="100%">
                        
                </mx:Canvas>
        </mx:ViewStack>
</mx:Application>

*****************************************************************
-- 
View this message in context: 
http://old.nabble.com/Problem-sorting-advancedDataGrid-after-dataprovider-updated-tp26326531p26326531.html
Sent from the FlexCoders mailing list archive at Nabble.com.

Reply via email to