[flexcoders] Re: Displaying additional child nodes in Datatip

2010-01-19 Thread Monette
Tim,
It works!!! Hooray!!! You Rock!!!
Thank you so much for all your help.
Monette
--- In flexcoders@yahoogroups.com, turbo_vb timh...@... wrote:

 Three time's a charm:
 
 var series:LineSeries = LineSeries( o.element );
 var seriesIndex:int;
 
 for ( seriesIndex = 0; seriesIndex  myChart.series.length; seriesIndex++ )
 {
   var lineSeries:LineSeries = myChart.series[ seriesIndex ] as LineSeries;
 
   if ( lineSeries == series )
   {
   break;
   }
 }
 
 -TH
 
 --- In flexcoders@yahoogroups.com, turbo_vb TimHoff@ wrote:
 
  Cleaner:
  
  private function dtFunction( o:HitData ):String
  {
  var series:LineSeries = LineSeries( o.element ) as LineSeries;
  var seriesIndex:int;
  
  for ( seriesIndex = 0; seriesIndex  myChart.series.length; 
  seriesIndex++ )
  {
  var lineSeries:LineSeries = myChart.series[ seriesIndex ] as 
  LineSeries;
  
  if ( lineSeries.displayName == series.displayName )
  {
  break;
  }
  }
  
  var s:String = b + LineSeries( o.element ).displayName + /b\n;
  s += bBooks:/b  + LineSeriesItem( o.chartItem ).yValue + \n;
  s += bBook rate:/b  + o.item.session[ seriesIndex ].bookrate + 
  \n;
  s += bStatus:/b  + o.item.session[ seriesIndex ].status + \n;
  
  return s;
  }
  
  -TH
  
  --- In flexcoders@yahoogroups.com, turbo_vb TimHoff@ wrote:
  
   So, maybe something like this:
   
   private function dtFunction( o:HitData ):String
   {
 var series:LineSeries = LineSeries( o.element ) as LineSeries;
 var seriesIndex:int;
   
 for ( var a:int = 0; a  myChart.series.length; a++ )
 {
 var lineSeries:LineSeries = myChart.series[ a ] as LineSeries;
   
 if ( lineSeries.displayName == series.displayName )
 {
 seriesIndex = a;
 break;
 }
 }
   
 var s:String = b + LineSeries( o.element ).displayName + /b\n;
 s += bBooks:/b  + LineSeriesItem( o.chartItem ).yValue + \n;
 s += bBook rate:/b  + o.item.session[ seriesIndex ].bookrate + 
   \n;
 s += bStatus:/b  + o.item.session[ seriesIndex ].status + \n;
   
 return s;
   }
   
   -TH
   
   --- In flexcoders@yahoogroups.com, turbo_vb TimHoff@ wrote:
   
Easy enough, create a dictionary (id or name) when the series's are 
created; with the index.  And/Or you can get the count from 
myChart.series.length.

-TH

--- In flexcoders@yahoogroups.com, Monette monettemm@ wrote:

 This will work.  However, the series count is not limited to just 3 
 series, it's count is dynamic depending on the amount of data 
 collected.  So the code needs to check how many series exists and 
 then generate the datatip for the different series data points.  It 
 is easy for me to accomplish this in VB.NET or vbscript but I am just 
 having problems accomplishing what I need in AS.
 
 --- In flexcoders@yahoogroups.com, turbo_vb TimHoff@ wrote:
 
  Ok, good.  Not sure exactly what you're trying to do, but it's 
  basically the same type of thing as the data function.  It's all 
  about getting to right data for the series.  Here's some code for 
  getting individual values and for calculating totals for the week
  
  private function dtFunction( o:HitData ):String
  {
  var seriesId:String = LineSeries( o.element ).id;
  var seriesIndex:int;
  
  switch ( seriesId )
  {
  case s0:
  seriesIndex = 0;
  break;
  case s1:
  seriesIndex = 1;
  break;
  case s2:
  seriesIndex = 2;
  break;
  default:
  break;
  }
  
  var totalBooksForWeek:int = 0;
  
  for ( var a:int = 0; a  3; a++ )
  {
  var sessionBooks:int = o.item.session[ a ].books;
  totalBooksForWeek += sessionBooks;
  }
  
  var s:String = b + LineSeries( o.element ).displayName + 
  /b\n;
  s += bBooks:/b  + LineSeriesItem( o.chartItem ).yValue + 
  \n;
  s += bBook rate:/b  + o.item.session[ seriesIndex 
  ].bookrate + \n;
  s += bStatus:/b  + o.item.session[ seriesIndex ].status + 
  \n;
  s += bTotal Books for All Sessions:/b  + 
  totalBooksForWeek + \n;
  
  return s;
  }
  
  -TH
  
  --- In flexcoders@yahoogroups.com, Monette monettemm@ wrote:
  
   Almost there!  I assigned an id to each series - s1, s2, s3 etc. 
   Below I
   am trying to loop for the total amount of series.  The values 
   show up
   for bookrate and status but they are the incorrect values for 
   some of
   

[flexcoders] Re: Displaying additional child nodes in Datatip

2010-01-19 Thread turbo_vb
My pleasure Monette.

-TH

--- In flexcoders@yahoogroups.com, Monette monett...@... wrote:

 Tim,
 It works!!! Hooray!!! You Rock!!!
 Thank you so much for all your help.
 Monette
 --- In flexcoders@yahoogroups.com, turbo_vb TimHoff@ wrote:
 
  Three time's a charm:
  
  var series:LineSeries = LineSeries( o.element );
  var seriesIndex:int;
  
  for ( seriesIndex = 0; seriesIndex  myChart.series.length; seriesIndex++ )
  {
  var lineSeries:LineSeries = myChart.series[ seriesIndex ] as LineSeries;
  
  if ( lineSeries == series )
  {
  break;
  }
  }
  
  -TH
  
  --- In flexcoders@yahoogroups.com, turbo_vb TimHoff@ wrote:
  
   Cleaner:
   
   private function dtFunction( o:HitData ):String
   {
 var series:LineSeries = LineSeries( o.element ) as LineSeries;
 var seriesIndex:int;
   
 for ( seriesIndex = 0; seriesIndex  myChart.series.length; 
   seriesIndex++ )
 {
 var lineSeries:LineSeries = myChart.series[ seriesIndex ] as 
   LineSeries;
   
 if ( lineSeries.displayName == series.displayName )
 {
 break;
 }
 }
   
 var s:String = b + LineSeries( o.element ).displayName + /b\n;
 s += bBooks:/b  + LineSeriesItem( o.chartItem ).yValue + \n;
 s += bBook rate:/b  + o.item.session[ seriesIndex ].bookrate + 
   \n;
 s += bStatus:/b  + o.item.session[ seriesIndex ].status + \n;
   
 return s;
   }
   
   -TH
   
   --- In flexcoders@yahoogroups.com, turbo_vb TimHoff@ wrote:
   
So, maybe something like this:

private function dtFunction( o:HitData ):String
{
var series:LineSeries = LineSeries( o.element ) as LineSeries;
var seriesIndex:int;

for ( var a:int = 0; a  myChart.series.length; a++ )
{
var lineSeries:LineSeries = myChart.series[ a ] as 
LineSeries;

if ( lineSeries.displayName == series.displayName )
{
seriesIndex = a;
break;
}
}

var s:String = b + LineSeries( o.element ).displayName + 
/b\n;
s += bBooks:/b  + LineSeriesItem( o.chartItem ).yValue + 
\n;
s += bBook rate:/b  + o.item.session[ seriesIndex 
].bookrate + \n;
s += bStatus:/b  + o.item.session[ seriesIndex ].status + 
\n;

return s;
}

-TH

--- In flexcoders@yahoogroups.com, turbo_vb TimHoff@ wrote:

 Easy enough, create a dictionary (id or name) when the series's are 
 created; with the index.  And/Or you can get the count from 
 myChart.series.length.
 
 -TH
 
 --- In flexcoders@yahoogroups.com, Monette monettemm@ wrote:
 
  This will work.  However, the series count is not limited to just 
  3 series, it's count is dynamic depending on the amount of data 
  collected.  So the code needs to check how many series exists and 
  then generate the datatip for the different series data points.  It 
  is easy for me to accomplish this in VB.NET or vbscript but I am 
  just having problems accomplishing what I need in AS.
  
  --- In flexcoders@yahoogroups.com, turbo_vb TimHoff@ wrote:
  
   Ok, good.  Not sure exactly what you're trying to do, but it's 
   basically the same type of thing as the data function.  It's all 
   about getting to right data for the series.  Here's some code for 
   getting individual values and for calculating totals for the week
   
   private function dtFunction( o:HitData ):String
   {
 var seriesId:String = LineSeries( o.element ).id;
 var seriesIndex:int;
   
 switch ( seriesId )
 {
 case s0:
 seriesIndex = 0;
 break;
 case s1:
 seriesIndex = 1;
 break;
 case s2:
 seriesIndex = 2;
 break;
 default:
 break;
 }
   
 var totalBooksForWeek:int = 0;
   
 for ( var a:int = 0; a  3; a++ )
 {
 var sessionBooks:int = o.item.session[ a ].books;
 totalBooksForWeek += sessionBooks;
 }
   
 var s:String = b + LineSeries( o.element ).displayName + 
   /b\n;
 s += bBooks:/b  + LineSeriesItem( o.chartItem ).yValue + 
   \n;
 s += bBook rate:/b  + o.item.session[ seriesIndex 
   ].bookrate + \n;
 s += bStatus:/b  + o.item.session[ seriesIndex ].status + 
   \n;
 s += bTotal Books for All Sessions:/b  + 
   totalBooksForWeek + \n;
   
 return s;
   }
   
   -TH
   
   --- In flexcoders@yahoogroups.com, Monette monettemm@ wrote:
   
   

[flexcoders] Re: Displaying additional child nodes in Datatip

2010-01-18 Thread Monette
Almost there!  I assigned an id to each series - s1, s2, s3 etc. Below I
am trying to loop for the total amount of series.  The values show up
for bookrate and status but they are the incorrect values for some of
the datapoints.  If I define a as 0, 1 or 3 without the loop the values
are correct for just that particular series.  Why isn't the for loop or
while loop working?

Thanks so much for your help Tim!
Monette

private function dtFunction( o:HitData ):String
var s:String;
 for (var a:int=0; a  3; a++)
 {
 var index:int = (LineSeries(o.element).id == s + a)? 0
: 1;
 s =  b + LineSeries(o.element).displayName + /b
\n;
 s += bBooks:/b  +
LineSeriesItem(o.chartItem).yValue + \n + bBook rate:/b  +
o.item.session[index].bookrate +  \n ;
 s += bStatus:/b  + o.item.session[index].status +
\n ;
 }
 return s;
 }
--- In flexcoders@yahoogroups.com, turbo_vb timh...@... wrote:

 Assuming that you have assigned an id to each series
 (baseline,2009-8), you could use something like this:

 private function dtFunction( o:HitData ):String

 {

   var index:int = ( LineSeries( o.element ).id == baseline ) ? 0
:
 1;

   var s:String = bBook rate:/b  + o.item.session[ index
 ].bookrate;

   return s;

 }




 -TH



 --- In flexcoders@yahoogroups.com, Monette monettemm@ wrote:
 
  Tim,
  Your recommendation sounds so simple and logical but I am not
getting
 it
  to work.  My problem is parsing the XML and returning the correct
info
  for the datapoints.  Following, is a sample of my XML file:
 
  items
   week name=1
   session
   sessionnameBaseline/sessionname
   books0/books
   bookrate2/bookrate
   statusred/status
   /session
   session
   sessionname2009-8/sessionname
   books0/books
   bookrate6/bookrate
   statusred/status
   /session
   /week
   week name=2
   session
   sessionnameBaseline/sessionname
   books0/books
   bookrate3/bookrate
   statusred/status
   /session
   session
   sessionname2009-8/sessionname
   books0/books
   bookrate1/bookrate
   statusred/status
   /session
   /week
  /items
 
  What are your thoughts?
  Thanks.
  Monette
 
  --- In flexcoders@yahoogroups.com, turbo_vb TimHoff@ wrote:
  
   Yeah, you're very close.  Now it's just a matter of xml.  I'd
start
 by
  tracing o.  If the children are still in o, then drill down.
 Otherwise,
  you'll have to go and find the nodes; like you're trying below. 
Some
  things that you can start with:
  
   trace( o.toXMLString() );
  
   var myXMLChildren:XMLList = o.children();
  
   o.child(myProperty)[0].valueOf();
  
   -TH
  
   --- In flexcoders@yahoogroups.com, Monette monettemm@ wrote:
   
Below is my DataTipFunction.  The commented part on top works
 fine.
However, there is additional information that I need to include
 from
  the
XML file into the data tip.
When I mouse over the datapoint I would like to retrieve from
the
  XML
file the additional child nodes that correspond with that
 datapoint.
  I
feel that I am very close and missing one piece. How can I
  accomplish
this dynamically by displaying the correct data for the series?
  Note, I
can have more than 1 series in the XML data file.
   
private  function DTPFunction(o:HitData):String
 {
 //WORKS for data that is used on the chart x
and
 y
values
 //var s:String;
 //s =  b +
LineSeries(o.element).displayName
 +
  /b
\n;
 //s += bBooks:/b  +
LineSeriesItem(o.chartItem).yValue + \n + bBook rate:/b 
+
series. o.item.session.bookrate + \n ;
 //s += bStatus:/b  +
o.item.session.status
 +
  \n
;
  //END WORKS
   
 var s:String;
 var a:int=0;
 var fNode:XML = chart.dataProvider[0];
 if ((LineSeries(o.element).displayName) ==
fNode.child('sessionname'))
 {
 s =  b + o.item.session.sessionname[a] +
 /b
  \n;
 s += bBooks:/b  + o.item.session.books[a]
+
  \n +
bBook rate:/b  + o.item.session.bookrate[a] +  \n ;
 s += bStatus:/b  +
o.item.session.status[a]
 +
/size\n ;
 a++
 }
 return s;
 }
   
Thanks.
Monette
   
--- In flexcoders@yahoogroups.com, turbo_vb TimHoff@ wrote:

 If the dataTipFunction doesn't give you enough flexibility,
you
  could
try a dataTipRenderer.  In either case, you can drill down to
the
  child

[flexcoders] Re: Displaying additional child nodes in Datatip

2010-01-18 Thread turbo_vb
Ok, good.  Not sure exactly what you're trying to do, but it's basically the 
same type of thing as the data function.  It's all about getting to right data 
for the series.  Here's some code for getting individual values and for 
calculating totals for the week

private function dtFunction( o:HitData ):String
{
var seriesId:String = LineSeries( o.element ).id;
var seriesIndex:int;

switch ( seriesId )
{
case s0:
seriesIndex = 0;
break;
case s1:
seriesIndex = 1;
break;
case s2:
seriesIndex = 2;
break;
default:
break;
}

var totalBooksForWeek:int = 0;

for ( var a:int = 0; a  3; a++ )
{
var sessionBooks:int = o.item.session[ a ].books;
totalBooksForWeek += sessionBooks;
}

var s:String = b + LineSeries( o.element ).displayName + /b\n;
s += bBooks:/b  + LineSeriesItem( o.chartItem ).yValue + \n;
s += bBook rate:/b  + o.item.session[ seriesIndex ].bookrate + 
\n;
s += bStatus:/b  + o.item.session[ seriesIndex ].status + \n;
s += bTotal Books for All Sessions:/b  + totalBooksForWeek + \n;

return s;
}

-TH

--- In flexcoders@yahoogroups.com, Monette monett...@... wrote:

 Almost there!  I assigned an id to each series - s1, s2, s3 etc. Below I
 am trying to loop for the total amount of series.  The values show up
 for bookrate and status but they are the incorrect values for some of
 the datapoints.  If I define a as 0, 1 or 3 without the loop the values
 are correct for just that particular series.  Why isn't the for loop or
 while loop working?
 
 Thanks so much for your help Tim!
 Monette
 
 private function dtFunction( o:HitData ):String
 var s:String;
  for (var a:int=0; a  3; a++)
  {
  var index:int = (LineSeries(o.element).id == s + a)? 0
 : 1;
  s =  b + LineSeries(o.element).displayName + /b
 \n;
  s += bBooks:/b  +
 LineSeriesItem(o.chartItem).yValue + \n + bBook rate:/b  +
 o.item.session[index].bookrate +  \n ;
  s += bStatus:/b  + o.item.session[index].status +
 \n ;
  }
  return s;
  }
 --- In flexcoders@yahoogroups.com, turbo_vb TimHoff@ wrote:
 
  Assuming that you have assigned an id to each series
  (baseline,2009-8), you could use something like this:
 
  private function dtFunction( o:HitData ):String
 
  {
 
var index:int = ( LineSeries( o.element ).id == baseline ) ? 0
 :
  1;
 
var s:String = bBook rate:/b  + o.item.session[ index
  ].bookrate;
 
return s;
 
  }
 
 
 
 
  -TH
 
 
 
  --- In flexcoders@yahoogroups.com, Monette monettemm@ wrote:
  
   Tim,
   Your recommendation sounds so simple and logical but I am not
 getting
  it
   to work.  My problem is parsing the XML and returning the correct
 info
   for the datapoints.  Following, is a sample of my XML file:
  
   items
week name=1
session
sessionnameBaseline/sessionname
books0/books
bookrate2/bookrate
statusred/status
/session
session
sessionname2009-8/sessionname
books0/books
bookrate6/bookrate
statusred/status
/session
/week
week name=2
session
sessionnameBaseline/sessionname
books0/books
bookrate3/bookrate
statusred/status
/session
session
sessionname2009-8/sessionname
books0/books
bookrate1/bookrate
statusred/status
/session
/week
   /items
  
   What are your thoughts?
   Thanks.
   Monette
  
   --- In flexcoders@yahoogroups.com, turbo_vb TimHoff@ wrote:
   
Yeah, you're very close.  Now it's just a matter of xml.  I'd
 start
  by
   tracing o.  If the children are still in o, then drill down.
  Otherwise,
   you'll have to go and find the nodes; like you're trying below. 
 Some
   things that you can start with:
   
trace( o.toXMLString() );
   
var myXMLChildren:XMLList = o.children();
   
o.child(myProperty)[0].valueOf();
   
-TH
   
--- In flexcoders@yahoogroups.com, Monette monettemm@ wrote:

 Below is my DataTipFunction.  The commented part on top works
  fine.
 However, there is additional information that I need to include
  from
   the
 XML file into the data tip.
 When I mouse over the datapoint I would like to retrieve from
 the
   XML
 file the additional child nodes that correspond with that
  datapoint.
   I
 feel that I am very close and 

[flexcoders] Re: Displaying additional child nodes in Datatip

2010-01-18 Thread Monette
This will work.  However, the series count is not limited to just 3 series, 
it's count is dynamic depending on the amount of data collected.  So the code 
needs to check how many series exists and then generate the datatip for the 
different series data points.  It is easy for me to accomplish this in VB.NET 
or vbscript but I am just having problems accomplishing what I need in AS.

--- In flexcoders@yahoogroups.com, turbo_vb timh...@... wrote:

 Ok, good.  Not sure exactly what you're trying to do, but it's basically the 
 same type of thing as the data function.  It's all about getting to right 
 data for the series.  Here's some code for getting individual values and for 
 calculating totals for the week
 
 private function dtFunction( o:HitData ):String
 {
   var seriesId:String = LineSeries( o.element ).id;
   var seriesIndex:int;
 
   switch ( seriesId )
   {
   case s0:
   seriesIndex = 0;
   break;
   case s1:
   seriesIndex = 1;
   break;
   case s2:
   seriesIndex = 2;
   break;
   default:
   break;
   }
 
   var totalBooksForWeek:int = 0;
 
   for ( var a:int = 0; a  3; a++ )
   {
   var sessionBooks:int = o.item.session[ a ].books;
   totalBooksForWeek += sessionBooks;
   }
 
   var s:String = b + LineSeries( o.element ).displayName + /b\n;
   s += bBooks:/b  + LineSeriesItem( o.chartItem ).yValue + \n;
   s += bBook rate:/b  + o.item.session[ seriesIndex ].bookrate + 
 \n;
   s += bStatus:/b  + o.item.session[ seriesIndex ].status + \n;
   s += bTotal Books for All Sessions:/b  + totalBooksForWeek + \n;
 
   return s;
 }
 
 -TH
 
 --- In flexcoders@yahoogroups.com, Monette monettemm@ wrote:
 
  Almost there!  I assigned an id to each series - s1, s2, s3 etc. Below I
  am trying to loop for the total amount of series.  The values show up
  for bookrate and status but they are the incorrect values for some of
  the datapoints.  If I define a as 0, 1 or 3 without the loop the values
  are correct for just that particular series.  Why isn't the for loop or
  while loop working?
  
  Thanks so much for your help Tim!
  Monette
  
  private function dtFunction( o:HitData ):String
  var s:String;
   for (var a:int=0; a  3; a++)
   {
   var index:int = (LineSeries(o.element).id == s + a)? 0
  : 1;
   s =  b + LineSeries(o.element).displayName + /b
  \n;
   s += bBooks:/b  +
  LineSeriesItem(o.chartItem).yValue + \n + bBook rate:/b  +
  o.item.session[index].bookrate +  \n ;
   s += bStatus:/b  + o.item.session[index].status +
  \n ;
   }
   return s;
   }
  --- In flexcoders@yahoogroups.com, turbo_vb TimHoff@ wrote:
  
   Assuming that you have assigned an id to each series
   (baseline,2009-8), you could use something like this:
  
   private function dtFunction( o:HitData ):String
  
   {
  
 var index:int = ( LineSeries( o.element ).id == baseline ) ? 0
  :
   1;
  
 var s:String = bBook rate:/b  + o.item.session[ index
   ].bookrate;
  
 return s;
  
   }
  
  
  
  
   -TH
  
  
  
   --- In flexcoders@yahoogroups.com, Monette monettemm@ wrote:
   
Tim,
Your recommendation sounds so simple and logical but I am not
  getting
   it
to work.  My problem is parsing the XML and returning the correct
  info
for the datapoints.  Following, is a sample of my XML file:
   
items
 week name=1
 session
 sessionnameBaseline/sessionname
 books0/books
 bookrate2/bookrate
 statusred/status
 /session
 session
 sessionname2009-8/sessionname
 books0/books
 bookrate6/bookrate
 statusred/status
 /session
 /week
 week name=2
 session
 sessionnameBaseline/sessionname
 books0/books
 bookrate3/bookrate
 statusred/status
 /session
 session
 sessionname2009-8/sessionname
 books0/books
 bookrate1/bookrate
 statusred/status
 /session
 /week
/items
   
What are your thoughts?
Thanks.
Monette
   
--- In flexcoders@yahoogroups.com, turbo_vb TimHoff@ wrote:

 Yeah, you're very close.  Now it's just a matter of xml.  I'd
  start
   by
tracing o.  If the children are still in o, then drill down.
   Otherwise,
you'll have to go and find the nodes; like you're trying below. 
  Some
things that you can start with:

 trace( o.toXMLString() );

 var 

[flexcoders] Re: Displaying additional child nodes in Datatip

2010-01-18 Thread turbo_vb
Easy enough, create a dictionary (id or name) when the series's are created; 
with the index.  And/Or you can get the count from myChart.series.length.

-TH

--- In flexcoders@yahoogroups.com, Monette monett...@... wrote:

 This will work.  However, the series count is not limited to just 3 series, 
 it's count is dynamic depending on the amount of data collected.  So the code 
 needs to check how many series exists and then generate the datatip for the 
 different series data points.  It is easy for me to accomplish this in VB.NET 
 or vbscript but I am just having problems accomplishing what I need in AS.
 
 --- In flexcoders@yahoogroups.com, turbo_vb TimHoff@ wrote:
 
  Ok, good.  Not sure exactly what you're trying to do, but it's basically 
  the same type of thing as the data function.  It's all about getting to 
  right data for the series.  Here's some code for getting individual values 
  and for calculating totals for the week
  
  private function dtFunction( o:HitData ):String
  {
  var seriesId:String = LineSeries( o.element ).id;
  var seriesIndex:int;
  
  switch ( seriesId )
  {
  case s0:
  seriesIndex = 0;
  break;
  case s1:
  seriesIndex = 1;
  break;
  case s2:
  seriesIndex = 2;
  break;
  default:
  break;
  }
  
  var totalBooksForWeek:int = 0;
  
  for ( var a:int = 0; a  3; a++ )
  {
  var sessionBooks:int = o.item.session[ a ].books;
  totalBooksForWeek += sessionBooks;
  }
  
  var s:String = b + LineSeries( o.element ).displayName + /b\n;
  s += bBooks:/b  + LineSeriesItem( o.chartItem ).yValue + \n;
  s += bBook rate:/b  + o.item.session[ seriesIndex ].bookrate + 
  \n;
  s += bStatus:/b  + o.item.session[ seriesIndex ].status + \n;
  s += bTotal Books for All Sessions:/b  + totalBooksForWeek + \n;
  
  return s;
  }
  
  -TH
  
  --- In flexcoders@yahoogroups.com, Monette monettemm@ wrote:
  
   Almost there!  I assigned an id to each series - s1, s2, s3 etc. Below I
   am trying to loop for the total amount of series.  The values show up
   for bookrate and status but they are the incorrect values for some of
   the datapoints.  If I define a as 0, 1 or 3 without the loop the values
   are correct for just that particular series.  Why isn't the for loop or
   while loop working?
   
   Thanks so much for your help Tim!
   Monette
   
   private function dtFunction( o:HitData ):String
   var s:String;
for (var a:int=0; a  3; a++)
{
var index:int = (LineSeries(o.element).id == s + a)? 0
   : 1;
s =  b + LineSeries(o.element).displayName + /b
   \n;
s += bBooks:/b  +
   LineSeriesItem(o.chartItem).yValue + \n + bBook rate:/b  +
   o.item.session[index].bookrate +  \n ;
s += bStatus:/b  + o.item.session[index].status +
   \n ;
}
return s;
}
   --- In flexcoders@yahoogroups.com, turbo_vb TimHoff@ wrote:
   
Assuming that you have assigned an id to each series
(baseline,2009-8), you could use something like this:
   
private function dtFunction( o:HitData ):String
   
{
   
  var index:int = ( LineSeries( o.element ).id == baseline ) ? 0
   :
1;
   
  var s:String = bBook rate:/b  + o.item.session[ index
].bookrate;
   
  return s;
   
}
   
   
   
   
-TH
   
   
   
--- In flexcoders@yahoogroups.com, Monette monettemm@ wrote:

 Tim,
 Your recommendation sounds so simple and logical but I am not
   getting
it
 to work.  My problem is parsing the XML and returning the correct
   info
 for the datapoints.  Following, is a sample of my XML file:

 items
  week name=1
  session
  sessionnameBaseline/sessionname
  books0/books
  bookrate2/bookrate
  statusred/status
  /session
  session
  sessionname2009-8/sessionname
  books0/books
  bookrate6/bookrate
  statusred/status
  /session
  /week
  week name=2
  session
  sessionnameBaseline/sessionname
  books0/books
  bookrate3/bookrate
  statusred/status
  /session
  session
  sessionname2009-8/sessionname
  books0/books
  bookrate1/bookrate
  statusred/status
  /session
  /week
 /items

 What are your thoughts?
 Thanks.
 Monette

 --- In flexcoders@yahoogroups.com, turbo_vb TimHoff@ wrote:
 
  

[flexcoders] Re: Displaying additional child nodes in Datatip

2010-01-18 Thread turbo_vb
So, maybe something like this:

private function dtFunction( o:HitData ):String
{
var series:LineSeries = LineSeries( o.element ) as LineSeries;
var seriesIndex:int;

for ( var a:int = 0; a  myChart.series.length; a++ )
{
var lineSeries:LineSeries = myChart.series[ a ] as LineSeries;

if ( lineSeries.displayName == series.displayName )
{
seriesIndex = a;
break;
}
}

var s:String = b + LineSeries( o.element ).displayName + /b\n;
s += bBooks:/b  + LineSeriesItem( o.chartItem ).yValue + \n;
s += bBook rate:/b  + o.item.session[ seriesIndex ].bookrate + 
\n;
s += bStatus:/b  + o.item.session[ seriesIndex ].status + \n;

return s;
}

-TH

--- In flexcoders@yahoogroups.com, turbo_vb timh...@... wrote:

 Easy enough, create a dictionary (id or name) when the series's are created; 
 with the index.  And/Or you can get the count from myChart.series.length.
 
 -TH
 
 --- In flexcoders@yahoogroups.com, Monette monettemm@ wrote:
 
  This will work.  However, the series count is not limited to just 3 
  series, it's count is dynamic depending on the amount of data collected.  
  So the code needs to check how many series exists and then generate the 
  datatip for the different series data points.  It is easy for me to 
  accomplish this in VB.NET or vbscript but I am just having problems 
  accomplishing what I need in AS.
  
  --- In flexcoders@yahoogroups.com, turbo_vb TimHoff@ wrote:
  
   Ok, good.  Not sure exactly what you're trying to do, but it's basically 
   the same type of thing as the data function.  It's all about getting to 
   right data for the series.  Here's some code for getting individual 
   values and for calculating totals for the week
   
   private function dtFunction( o:HitData ):String
   {
 var seriesId:String = LineSeries( o.element ).id;
 var seriesIndex:int;
   
 switch ( seriesId )
 {
 case s0:
 seriesIndex = 0;
 break;
 case s1:
 seriesIndex = 1;
 break;
 case s2:
 seriesIndex = 2;
 break;
 default:
 break;
 }
   
 var totalBooksForWeek:int = 0;
   
 for ( var a:int = 0; a  3; a++ )
 {
 var sessionBooks:int = o.item.session[ a ].books;
 totalBooksForWeek += sessionBooks;
 }
   
 var s:String = b + LineSeries( o.element ).displayName + /b\n;
 s += bBooks:/b  + LineSeriesItem( o.chartItem ).yValue + \n;
 s += bBook rate:/b  + o.item.session[ seriesIndex ].bookrate + 
   \n;
 s += bStatus:/b  + o.item.session[ seriesIndex ].status + \n;
 s += bTotal Books for All Sessions:/b  + totalBooksForWeek + \n;
   
 return s;
   }
   
   -TH
   
   --- In flexcoders@yahoogroups.com, Monette monettemm@ wrote:
   
Almost there!  I assigned an id to each series - s1, s2, s3 etc. Below I
am trying to loop for the total amount of series.  The values show up
for bookrate and status but they are the incorrect values for some of
the datapoints.  If I define a as 0, 1 or 3 without the loop the values
are correct for just that particular series.  Why isn't the for loop or
while loop working?

Thanks so much for your help Tim!
Monette

private function dtFunction( o:HitData ):String
var s:String;
 for (var a:int=0; a  3; a++)
 {
 var index:int = (LineSeries(o.element).id == s + a)? 0
: 1;
 s =  b + LineSeries(o.element).displayName + /b
\n;
 s += bBooks:/b  +
LineSeriesItem(o.chartItem).yValue + \n + bBook rate:/b  +
o.item.session[index].bookrate +  \n ;
 s += bStatus:/b  + o.item.session[index].status +
\n ;
 }
 return s;
 }
--- In flexcoders@yahoogroups.com, turbo_vb TimHoff@ wrote:

 Assuming that you have assigned an id to each series
 (baseline,2009-8), you could use something like this:

 private function dtFunction( o:HitData ):String

 {

   var index:int = ( LineSeries( o.element ).id == baseline ) ? 0
:
 1;

   var s:String = bBook rate:/b  + o.item.session[ index
 ].bookrate;

   return s;

 }




 -TH



 --- In flexcoders@yahoogroups.com, Monette monettemm@ wrote:
 
  Tim,
  Your recommendation sounds so simple and logical but I am not
getting
 it
  to work.  My problem is parsing the XML and returning the correct
info
  for the datapoints.  Following, is a sample of my XML file:
 
  items
   week name=1
   session

[flexcoders] Re: Displaying additional child nodes in Datatip

2010-01-18 Thread turbo_vb
Cleaner:

private function dtFunction( o:HitData ):String
{
var series:LineSeries = LineSeries( o.element ) as LineSeries;
var seriesIndex:int;

for ( seriesIndex = 0; seriesIndex  myChart.series.length; 
seriesIndex++ )
{
var lineSeries:LineSeries = myChart.series[ seriesIndex ] as 
LineSeries;

if ( lineSeries.displayName == series.displayName )
{
break;
}
}

var s:String = b + LineSeries( o.element ).displayName + /b\n;
s += bBooks:/b  + LineSeriesItem( o.chartItem ).yValue + \n;
s += bBook rate:/b  + o.item.session[ seriesIndex ].bookrate + 
\n;
s += bStatus:/b  + o.item.session[ seriesIndex ].status + \n;

return s;
}

-TH

--- In flexcoders@yahoogroups.com, turbo_vb timh...@... wrote:

 So, maybe something like this:
 
 private function dtFunction( o:HitData ):String
 {
   var series:LineSeries = LineSeries( o.element ) as LineSeries;
   var seriesIndex:int;
 
   for ( var a:int = 0; a  myChart.series.length; a++ )
   {
   var lineSeries:LineSeries = myChart.series[ a ] as LineSeries;
 
   if ( lineSeries.displayName == series.displayName )
   {
   seriesIndex = a;
   break;
   }
   }
 
   var s:String = b + LineSeries( o.element ).displayName + /b\n;
   s += bBooks:/b  + LineSeriesItem( o.chartItem ).yValue + \n;
   s += bBook rate:/b  + o.item.session[ seriesIndex ].bookrate + 
 \n;
   s += bStatus:/b  + o.item.session[ seriesIndex ].status + \n;
 
   return s;
 }
 
 -TH
 
 --- In flexcoders@yahoogroups.com, turbo_vb TimHoff@ wrote:
 
  Easy enough, create a dictionary (id or name) when the series's are 
  created; with the index.  And/Or you can get the count from 
  myChart.series.length.
  
  -TH
  
  --- In flexcoders@yahoogroups.com, Monette monettemm@ wrote:
  
   This will work.  However, the series count is not limited to just 3 
   series, it's count is dynamic depending on the amount of data collected.  
   So the code needs to check how many series exists and then generate the 
   datatip for the different series data points.  It is easy for me to 
   accomplish this in VB.NET or vbscript but I am just having problems 
   accomplishing what I need in AS.
   
   --- In flexcoders@yahoogroups.com, turbo_vb TimHoff@ wrote:
   
Ok, good.  Not sure exactly what you're trying to do, but it's 
basically the same type of thing as the data function.  It's all about 
getting to right data for the series.  Here's some code for getting 
individual values and for calculating totals for the week

private function dtFunction( o:HitData ):String
{
var seriesId:String = LineSeries( o.element ).id;
var seriesIndex:int;

switch ( seriesId )
{
case s0:
seriesIndex = 0;
break;
case s1:
seriesIndex = 1;
break;
case s2:
seriesIndex = 2;
break;
default:
break;
}

var totalBooksForWeek:int = 0;

for ( var a:int = 0; a  3; a++ )
{
var sessionBooks:int = o.item.session[ a ].books;
totalBooksForWeek += sessionBooks;
}

var s:String = b + LineSeries( o.element ).displayName + 
/b\n;
s += bBooks:/b  + LineSeriesItem( o.chartItem ).yValue + 
\n;
s += bBook rate:/b  + o.item.session[ seriesIndex 
].bookrate + \n;
s += bStatus:/b  + o.item.session[ seriesIndex ].status + 
\n;
s += bTotal Books for All Sessions:/b  + 
totalBooksForWeek + \n;

return s;
}

-TH

--- In flexcoders@yahoogroups.com, Monette monettemm@ wrote:

 Almost there!  I assigned an id to each series - s1, s2, s3 etc. 
 Below I
 am trying to loop for the total amount of series.  The values show up
 for bookrate and status but they are the incorrect values for some of
 the datapoints.  If I define a as 0, 1 or 3 without the loop the 
 values
 are correct for just that particular series.  Why isn't the for loop 
 or
 while loop working?
 
 Thanks so much for your help Tim!
 Monette
 
 private function dtFunction( o:HitData ):String
 var s:String;
  for (var a:int=0; a  3; a++)
  {
  var index:int = (LineSeries(o.element).id == s + 
 a)? 0
 : 1;
  s =  b + LineSeries(o.element).displayName + 
 /b
 \n;
  s += 

[flexcoders] Re: Displaying additional child nodes in Datatip

2010-01-18 Thread turbo_vb
Three time's a charm:

var series:LineSeries = LineSeries( o.element );
var seriesIndex:int;

for ( seriesIndex = 0; seriesIndex  myChart.series.length; seriesIndex++ )
{
var lineSeries:LineSeries = myChart.series[ seriesIndex ] as LineSeries;

if ( lineSeries == series )
{
break;
}
}

-TH

--- In flexcoders@yahoogroups.com, turbo_vb timh...@... wrote:

 Cleaner:
 
 private function dtFunction( o:HitData ):String
 {
   var series:LineSeries = LineSeries( o.element ) as LineSeries;
   var seriesIndex:int;
 
   for ( seriesIndex = 0; seriesIndex  myChart.series.length; 
 seriesIndex++ )
   {
   var lineSeries:LineSeries = myChart.series[ seriesIndex ] as 
 LineSeries;
 
   if ( lineSeries.displayName == series.displayName )
   {
   break;
   }
   }
 
   var s:String = b + LineSeries( o.element ).displayName + /b\n;
   s += bBooks:/b  + LineSeriesItem( o.chartItem ).yValue + \n;
   s += bBook rate:/b  + o.item.session[ seriesIndex ].bookrate + 
 \n;
   s += bStatus:/b  + o.item.session[ seriesIndex ].status + \n;
 
   return s;
 }
 
 -TH
 
 --- In flexcoders@yahoogroups.com, turbo_vb TimHoff@ wrote:
 
  So, maybe something like this:
  
  private function dtFunction( o:HitData ):String
  {
  var series:LineSeries = LineSeries( o.element ) as LineSeries;
  var seriesIndex:int;
  
  for ( var a:int = 0; a  myChart.series.length; a++ )
  {
  var lineSeries:LineSeries = myChart.series[ a ] as LineSeries;
  
  if ( lineSeries.displayName == series.displayName )
  {
  seriesIndex = a;
  break;
  }
  }
  
  var s:String = b + LineSeries( o.element ).displayName + /b\n;
  s += bBooks:/b  + LineSeriesItem( o.chartItem ).yValue + \n;
  s += bBook rate:/b  + o.item.session[ seriesIndex ].bookrate + 
  \n;
  s += bStatus:/b  + o.item.session[ seriesIndex ].status + \n;
  
  return s;
  }
  
  -TH
  
  --- In flexcoders@yahoogroups.com, turbo_vb TimHoff@ wrote:
  
   Easy enough, create a dictionary (id or name) when the series's are 
   created; with the index.  And/Or you can get the count from 
   myChart.series.length.
   
   -TH
   
   --- In flexcoders@yahoogroups.com, Monette monettemm@ wrote:
   
This will work.  However, the series count is not limited to just 3 
series, it's count is dynamic depending on the amount of data 
collected.  So the code needs to check how many series exists and then 
generate the datatip for the different series data points.  It is easy 
for me to accomplish this in VB.NET or vbscript but I am just having 
problems accomplishing what I need in AS.

--- In flexcoders@yahoogroups.com, turbo_vb TimHoff@ wrote:

 Ok, good.  Not sure exactly what you're trying to do, but it's 
 basically the same type of thing as the data function.  It's all 
 about getting to right data for the series.  Here's some code for 
 getting individual values and for calculating totals for the week
 
 private function dtFunction( o:HitData ):String
 {
   var seriesId:String = LineSeries( o.element ).id;
   var seriesIndex:int;
 
   switch ( seriesId )
   {
   case s0:
   seriesIndex = 0;
   break;
   case s1:
   seriesIndex = 1;
   break;
   case s2:
   seriesIndex = 2;
   break;
   default:
   break;
   }
 
   var totalBooksForWeek:int = 0;
 
   for ( var a:int = 0; a  3; a++ )
   {
   var sessionBooks:int = o.item.session[ a ].books;
   totalBooksForWeek += sessionBooks;
   }
 
   var s:String = b + LineSeries( o.element ).displayName + 
 /b\n;
   s += bBooks:/b  + LineSeriesItem( o.chartItem ).yValue + 
 \n;
   s += bBook rate:/b  + o.item.session[ seriesIndex 
 ].bookrate + \n;
   s += bStatus:/b  + o.item.session[ seriesIndex ].status + 
 \n;
   s += bTotal Books for All Sessions:/b  + 
 totalBooksForWeek + \n;
 
   return s;
 }
 
 -TH
 
 --- In flexcoders@yahoogroups.com, Monette monettemm@ wrote:
 
  Almost there!  I assigned an id to each series - s1, s2, s3 etc. 
  Below I
  am trying to loop for the total amount of series.  The values show 
  up
  for bookrate and status but they are the incorrect values for some 
  of
  the datapoints.  If I define a as 0, 1 or 3 without the loop the 
  values
  are correct for just that particular series.  Why isn't the for 
  loop or
  while 

[flexcoders] Re: Displaying additional child nodes in Datatip

2010-01-15 Thread Monette
Below is my DataTipFunction.  The commented part on top works fine. 
However, there is additional information that I need to include from the
XML file into the data tip.
When I mouse over the datapoint I would like to retrieve from the XML
file the additional child nodes that correspond with that datapoint.  I
feel that I am very close and missing one piece. How can I accomplish
this dynamically by displaying the correct data for the series?  Note, I
can have more than 1 series in the XML data file.

private  function DTPFunction(o:HitData):String
 {
 //WORKS for data that is used on the chart x and y
values
 //var s:String;
 //s =  b + LineSeries(o.element).displayName + /b
\n;
 //s += bBooks:/b  +
LineSeriesItem(o.chartItem).yValue + \n + bBook rate:/b  +
series. o.item.session.bookrate + \n ;
 //s += bStatus:/b  + o.item.session.status + \n
;
  //END WORKS

 var s:String;
 var a:int=0;
 var fNode:XML = chart.dataProvider[0];
 if ((LineSeries(o.element).displayName) ==
fNode.child('sessionname'))
 {
 s =  b + o.item.session.sessionname[a] + /b \n;
 s += bBooks:/b  + o.item.session.books[a] + \n +
bBook rate:/b  + o.item.session.bookrate[a] +  \n ;
 s += bStatus:/b  + o.item.session.status[a] +
/size\n ;
 a++
 }
 return s;
 }

Thanks.
Monette

--- In flexcoders@yahoogroups.com, turbo_vb timh...@... wrote:

 If the dataTipFunction doesn't give you enough flexibility, you could
try a dataTipRenderer.  In either case, you can drill down to the child
nodes there.

 -TH

 --- In flexcoders@yahoogroups.com, Monette monettemm@ wrote:
 
  The line chart displays multiple series created with the
seriesDataFunction (assigning the x and y points).  The XML file
includes additional child nodes per item that I would like to include in
the datatip.  How do I include those items?  When I use o.item.rate, it
lists all the rates for each series in the datatip.
  Thanks.
  Monette
 





[flexcoders] Re: Displaying additional child nodes in Datatip

2010-01-15 Thread turbo_vb
Yeah, you're very close.  Now it's just a matter of xml.  I'd start by tracing 
o.  If the children are still in o, then drill down.  Otherwise, you'll have to 
go and find the nodes; like you're trying below.  Some things that you can 
start with:

trace( o.toXMLString() );

var myXMLChildren:XMLList = o.children();

o.child(myProperty)[0].valueOf();

-TH

--- In flexcoders@yahoogroups.com, Monette monett...@... wrote:

 Below is my DataTipFunction.  The commented part on top works fine. 
 However, there is additional information that I need to include from the
 XML file into the data tip.
 When I mouse over the datapoint I would like to retrieve from the XML
 file the additional child nodes that correspond with that datapoint.  I
 feel that I am very close and missing one piece. How can I accomplish
 this dynamically by displaying the correct data for the series?  Note, I
 can have more than 1 series in the XML data file.
 
 private  function DTPFunction(o:HitData):String
  {
  //WORKS for data that is used on the chart x and y
 values
  //var s:String;
  //s =  b + LineSeries(o.element).displayName + /b
 \n;
  //s += bBooks:/b  +
 LineSeriesItem(o.chartItem).yValue + \n + bBook rate:/b  +
 series. o.item.session.bookrate + \n ;
  //s += bStatus:/b  + o.item.session.status + \n
 ;
   //END WORKS
 
  var s:String;
  var a:int=0;
  var fNode:XML = chart.dataProvider[0];
  if ((LineSeries(o.element).displayName) ==
 fNode.child('sessionname'))
  {
  s =  b + o.item.session.sessionname[a] + /b \n;
  s += bBooks:/b  + o.item.session.books[a] + \n +
 bBook rate:/b  + o.item.session.bookrate[a] +  \n ;
  s += bStatus:/b  + o.item.session.status[a] +
 /size\n ;
  a++
  }
  return s;
  }
 
 Thanks.
 Monette
 
 --- In flexcoders@yahoogroups.com, turbo_vb TimHoff@ wrote:
 
  If the dataTipFunction doesn't give you enough flexibility, you could
 try a dataTipRenderer.  In either case, you can drill down to the child
 nodes there.
 
  -TH
 
  --- In flexcoders@yahoogroups.com, Monette monettemm@ wrote:
  
   The line chart displays multiple series created with the
 seriesDataFunction (assigning the x and y points).  The XML file
 includes additional child nodes per item that I would like to include in
 the datatip.  How do I include those items?  When I use o.item.rate, it
 lists all the rates for each series in the datatip.
   Thanks.
   Monette
  
 





[flexcoders] Re: Displaying additional child nodes in Datatip

2010-01-15 Thread Monette
Tim,
Your recommendation sounds so simple and logical but I am not getting it
to work.  My problem is parsing the XML and returning the correct info
for the datapoints.  Following, is a sample of my XML file:

items
 week name=1
 session
 sessionnameBaseline/sessionname
 books0/books
 bookrate2/bookrate
 statusred/status
 /session
 session
 sessionname2009-8/sessionname
 books0/books
 bookrate6/bookrate
 statusred/status
 /session
 /week
 week name=2
 session
 sessionnameBaseline/sessionname
 books0/books
 bookrate3/bookrate
 statusred/status
 /session
 session
 sessionname2009-8/sessionname
 books0/books
 bookrate1/bookrate
 statusred/status
 /session
 /week
/items

What are your thoughts?
Thanks.
Monette

--- In flexcoders@yahoogroups.com, turbo_vb timh...@... wrote:

 Yeah, you're very close.  Now it's just a matter of xml.  I'd start by
tracing o.  If the children are still in o, then drill down.  Otherwise,
you'll have to go and find the nodes; like you're trying below.  Some
things that you can start with:

 trace( o.toXMLString() );

 var myXMLChildren:XMLList = o.children();

 o.child(myProperty)[0].valueOf();

 -TH

 --- In flexcoders@yahoogroups.com, Monette monettemm@ wrote:
 
  Below is my DataTipFunction.  The commented part on top works fine.
  However, there is additional information that I need to include from
the
  XML file into the data tip.
  When I mouse over the datapoint I would like to retrieve from the
XML
  file the additional child nodes that correspond with that datapoint.
I
  feel that I am very close and missing one piece. How can I
accomplish
  this dynamically by displaying the correct data for the series? 
Note, I
  can have more than 1 series in the XML data file.
 
  private  function DTPFunction(o:HitData):String
   {
   //WORKS for data that is used on the chart x and y
  values
   //var s:String;
   //s =  b + LineSeries(o.element).displayName +
/b
  \n;
   //s += bBooks:/b  +
  LineSeriesItem(o.chartItem).yValue + \n + bBook rate:/b  +
  series. o.item.session.bookrate + \n ;
   //s += bStatus:/b  + o.item.session.status +
\n
  ;
//END WORKS
 
   var s:String;
   var a:int=0;
   var fNode:XML = chart.dataProvider[0];
   if ((LineSeries(o.element).displayName) ==
  fNode.child('sessionname'))
   {
   s =  b + o.item.session.sessionname[a] + /b
\n;
   s += bBooks:/b  + o.item.session.books[a] +
\n +
  bBook rate:/b  + o.item.session.bookrate[a] +  \n ;
   s += bStatus:/b  + o.item.session.status[a] +
  /size\n ;
   a++
   }
   return s;
   }
 
  Thanks.
  Monette
 
  --- In flexcoders@yahoogroups.com, turbo_vb TimHoff@ wrote:
  
   If the dataTipFunction doesn't give you enough flexibility, you
could
  try a dataTipRenderer.  In either case, you can drill down to the
child
  nodes there.
  
   -TH
  
   --- In flexcoders@yahoogroups.com, Monette monettemm@ wrote:
   
The line chart displays multiple series created with the
  seriesDataFunction (assigning the x and y points).  The XML file
  includes additional child nodes per item that I would like to
include in
  the datatip.  How do I include those items?  When I use o.item.rate,
it
  lists all the rates for each series in the datatip.
Thanks.
Monette
   
  
 





[flexcoders] Re: Displaying additional child nodes in Datatip

2010-01-15 Thread turbo_vb
Assuming that you have assigned an id to each series
(baseline,2009-8), you could use something like this:

private function dtFunction( o:HitData ):String

{

  var index:int = ( LineSeries( o.element ).id == baseline ) ? 0 :
1;

  var s:String = bBook rate:/b  + o.item.session[ index
].bookrate;

  return s;

}




-TH



--- In flexcoders@yahoogroups.com, Monette monett...@... wrote:

 Tim,
 Your recommendation sounds so simple and logical but I am not getting
it
 to work.  My problem is parsing the XML and returning the correct info
 for the datapoints.  Following, is a sample of my XML file:

 items
  week name=1
  session
  sessionnameBaseline/sessionname
  books0/books
  bookrate2/bookrate
  statusred/status
  /session
  session
  sessionname2009-8/sessionname
  books0/books
  bookrate6/bookrate
  statusred/status
  /session
  /week
  week name=2
  session
  sessionnameBaseline/sessionname
  books0/books
  bookrate3/bookrate
  statusred/status
  /session
  session
  sessionname2009-8/sessionname
  books0/books
  bookrate1/bookrate
  statusred/status
  /session
  /week
 /items

 What are your thoughts?
 Thanks.
 Monette

 --- In flexcoders@yahoogroups.com, turbo_vb TimHoff@ wrote:
 
  Yeah, you're very close.  Now it's just a matter of xml.  I'd start
by
 tracing o.  If the children are still in o, then drill down. 
Otherwise,
 you'll have to go and find the nodes; like you're trying below.  Some
 things that you can start with:
 
  trace( o.toXMLString() );
 
  var myXMLChildren:XMLList = o.children();
 
  o.child(myProperty)[0].valueOf();
 
  -TH
 
  --- In flexcoders@yahoogroups.com, Monette monettemm@ wrote:
  
   Below is my DataTipFunction.  The commented part on top works
fine.
   However, there is additional information that I need to include
from
 the
   XML file into the data tip.
   When I mouse over the datapoint I would like to retrieve from the
 XML
   file the additional child nodes that correspond with that
datapoint.
 I
   feel that I am very close and missing one piece. How can I
 accomplish
   this dynamically by displaying the correct data for the series?
 Note, I
   can have more than 1 series in the XML data file.
  
   private  function DTPFunction(o:HitData):String
{
//WORKS for data that is used on the chart x and
y
   values
//var s:String;
//s =  b + LineSeries(o.element).displayName
+
 /b
   \n;
//s += bBooks:/b  +
   LineSeriesItem(o.chartItem).yValue + \n + bBook rate:/b  +
   series. o.item.session.bookrate + \n ;
//s += bStatus:/b  + o.item.session.status
+
 \n
   ;
 //END WORKS
  
var s:String;
var a:int=0;
var fNode:XML = chart.dataProvider[0];
if ((LineSeries(o.element).displayName) ==
   fNode.child('sessionname'))
{
s =  b + o.item.session.sessionname[a] +
/b
 \n;
s += bBooks:/b  + o.item.session.books[a] +
 \n +
   bBook rate:/b  + o.item.session.bookrate[a] +  \n ;
s += bStatus:/b  + o.item.session.status[a]
+
   /size\n ;
a++
}
return s;
}
  
   Thanks.
   Monette
  
   --- In flexcoders@yahoogroups.com, turbo_vb TimHoff@ wrote:
   
If the dataTipFunction doesn't give you enough flexibility, you
 could
   try a dataTipRenderer.  In either case, you can drill down to the
 child
   nodes there.
   
-TH
   
--- In flexcoders@yahoogroups.com, Monette monettemm@ wrote:

 The line chart displays multiple series created with the
   seriesDataFunction (assigning the x and y points).  The XML file
   includes additional child nodes per item that I would like to
 include in
   the datatip.  How do I include those items?  When I use
o.item.rate,
 it
   lists all the rates for each series in the datatip.
 Thanks.
 Monette

   
  
 




[flexcoders] Re: Displaying additional child nodes in Datatip

2010-01-14 Thread turbo_vb
If the dataTipFunction doesn't give you enough flexibility, you could try a 
dataTipRenderer.  In either case, you can drill down to the child nodes there.

-TH

--- In flexcoders@yahoogroups.com, Monette monett...@... wrote:

 The line chart displays multiple series created with the seriesDataFunction 
 (assigning the x and y points).  The XML file includes additional child nodes 
 per item that I would like to include in the datatip.  How do I include those 
 items?  When I use o.item.rate, it lists all the rates for each series in the 
 datatip.
 Thanks.
 Monette