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.