Thanks for this.. I have tried with different FlexEvents including creationComplete., value_commit, data chage etc.. I am able to get in to the Eventhandler but after plotting 1 or two charts the browser gets hanged.
Please tell me what else can be tried.. There is a bug on adobe bug list(that is for line chart, I have to plot columnChart) .. You can have a look http://bugs.adobe.com/jira/browse/FLEXDMV-1901 On Jan 3, 12:29 pm, "Venkat Viswanathan" <[email protected]> wrote: > Hi Axay, > > You can try something like this: > > //SOME FUNCTION > > startInt() //start the function > > ....... > private var counter:int; > private var interval:uint; > > private function startInt():void > { > counter = 1; //maintain a counter outside instead of for loop > createCchart(); > } > > private function createCchart(event:FlexEvent=null):void > { > > //code for preparing data for columnset etc.... > > var disp:DisplayObject = null; > disp = this.addChild(columnChart); > > counter++; //increment the counter after every addition > if (counter < noOfCharts) //stop the > interval once all the charts are ready > { > > disp.addEventListener(FlexEvent.CREATION_COMPLETE,createCchart) > } > > } > > I wrote this code on the fly and may have syntax errors. Just fix those and > see if it works. > > Regards, > Venkatwww.venkatv.com > > On Fri, Jan 2, 2009 at 11:18 AM, Axay <[email protected]> wrote: > > > Thanks a lot Venkat for this suggestion. But this does not seem to be > > working as needed. Also tried with larger time interval but didn't > > work. > > > Seems like addChild() function is not getting enough time to render > > data on the chart component and then invalidateDisplayList() and > > updateDisplayList(). > > > Also tried with first rendering all the component and then updating > > the dataProvider. This also > > Can I try something else for this? > > > Thanks, > > Axay > > > On Dec 19 2008, 10:41 pm, "Venkat Viswanathan" <[email protected]> > > wrote: > > > Hi Axay, > > > > Well you did not write it the way I intended it to be... change your code > > to > > > something like this: > > > > //SOME FUNCTION > > > > startInt() //start the function > > > > ....... > > > private var counter:int; > > > private var interval:uint; > > > > private function startInt():void > > > { > > > counter = 1; //maintain a counter outside instead of for > > loop > > > interval = setInterval(createCchart, 1000); // 1 second > > > //same as what you had done > > > > } > > > > private function stopInt():void > > > { > > > if (interval) { > > > clearInterval(interval); > > > > } > > > } > > > > private function createCchart(numChart:int):void > > > { > > > > //code for preparing data for columnset etc.... > > > > var disp:DisplayObject = null; > > > disp = this.addChild(columnChart); > > > > counter++; //increment the counter after every addition > > > if (counter == noOfCharts) //stop the > > > interval once all the charts are ready > > > { > > > stopInt(); > > > disp=null; // remove this unless > > > absolutely necessary > > > } > > > > } > > > > Try this and let me know if it worked. > > > > Regards, > > > Venkatwww.venkatv.com > > > > On Fri, Dec 19, 2008 at 12:01 PM, Axay <[email protected]> > > wrote: > > > > > Thanks Venkat for this. But actually, I tried but not successful. I > > > > tried something like this: > > > > > //SOME FUNCTION > > > > > for(var i:int;i<noOfCharts.length;i++) > > > > { > > > > > startInt(i); > > > > } > > > > > ....... > > > > > private var interval:uint; > > > > > private function startInt(i:int):void > > > > { > > > > interval = setInterval(createCchart, 1000,i); // 1 > > > > second > > > > > } > > > > > private function stopInt():void > > > > { > > > > if (interval) { > > > > clearInterval(interval); > > > > > } > > > > } > > > > > private function createCchart(numChart:int):void > > > > { > > > > > //code for preparing data for columnset etc.... > > > > > var disp:DisplayObject = null; > > > > disp = this.addChild(columnChart); > > > > > while(disp!=null) > > > > { > > > > stopInt(); > > > > disp=null; > > > > break; > > > > } > > > > > } > > > > > Please tell me if I am doing anything wrong in this.. > > > > > Thanks, > > > > Axay > > > > > ====================================== > > > > > On Dec 18, 9:38 pm, "Venkat Viswanathan" <[email protected]> > > > > wrote: > > > > > Hi Axay, > > > > > > When you are adding the ColumnSets at runtime, are you adding them > > using > > > > > some kind of a for loop? If yes, can you try to add after setting a > > > > delay. > > > > > Something like using setInterval, call a method at a certain > > interval. > > > > And > > > > > in the method, check for the loop condition and if the condition does > > not > > > > > satisfy, then do clearInterval. By doing this, we can ensure that we > > will > > > > > give enough time for Flex to build the column sets. > > > > > > Regards, > > > > > Venkatwww.venkatv.com > > > > > > On Thu, Dec 18, 2008 at 7:39 PM, Axay <[email protected]> > > > > wrote: > > > > > > > Error: Error #1502: A script has executed for longer than the > > default > > > > > > timeout period of 15 seconds. > > > > > > at > > mx.managers::LayoutManager/validateDisplayList()[E:\dev\3.0.x > > > \frameworks\projects\framework\src\mx\managers\LayoutManager.as:598] > > > > > > at > > > > mx.managers::LayoutManager/doPhasedInstantiation()[E:\dev\3.0.x > > > \frameworks\projects\framework\src\mx\managers\LayoutManager.as:675] > > > > > > at > > > > > > Function/http://adobe.com/AS3/2006/builtin::apply()<http://adobe.com/AS3/2006/builtin::apply%28%29> > > <http://adobe.com/AS3/2006/builtin::apply%28%29> > > > > <http://adobe.com/AS3/2006/builtin::apply%28%29> > > > > > > at > > > > > > mx.core::UIComponent/callLaterDispatcher2()[E:\dev\3.0.x\frameworks > > > > > > \projects\framework\src\mx\core\UIComponent.as:8460] > > > > > > at > > > > > > mx.core::UIComponent/callLaterDispatcher()[E:\dev\3.0.x\frameworks > > > > > > \projects\framework\src\mx\core\UIComponent.as:8403] > > > > > > > Can any one please tell how to debug this error. There is no > > infinite > > > > > > loop problem with the code. Error comes when there are large amount > > of > > > > > > ColumnChart having ColumnSets are added to a container at runtime. > > > > > > This error doesn't come if the number of charts are less. > > > > > > > Please post your suggestions to debug this. > > > > > > Thanks, > > > > > > Axay --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Flex India Community" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/flex_india?hl=en -~----------~----~----~----~------~----~------~--~---

