cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Register for our Discovery Summit 2024 conference, Oct. 21-24, where you’ll learn, connect, and be inspired.
Choose Language Hide Translation Bar
doctorfizz
Level II

Loop through reports and extract title

Hello,

 

I am trying to loop through all reports generated from an ANOVA-oneway. I create a list of the reports anova_list. 

 

If I manually try to extract the title from a report with the following syntaxt

 

curr_anova = anova_list[1] 

report_title = curr_anova << report << get  title("string")

 

the output is what I expect - some variation of: Oneway Analysis of Y by X by1=by1val by2=by2val ...

 

But when I try to do this in a loop

 

for(i = 1, i<= n items(anova_list), i++,

curr_anova = anova_list[i] 

report_title = curr_anova << report << get  title("string")

)

 

the output of report_title is DisplayBox[OutlineBox].

 

Am I making an oversight on the syntax? I have tried different combinations of evals to see if the output change, to no avail. 

1 ACCEPTED SOLUTION

Accepted Solutions
jthi
Super User

Re: Loop through reports and extract title

Try changing

report_title = curr_anova << report << get  title("string")

 

to (the brackets being the most important)

 

report_title = (curr_anova << report) << get  title;
-Jarmo

View solution in original post

3 REPLIES 3
jthi
Super User

Re: Loop through reports and extract title

Try changing

report_title = curr_anova << report << get  title("string")

 

to (the brackets being the most important)

 

report_title = (curr_anova << report) << get  title;
-Jarmo
doctorfizz
Level II

Re: Loop through reports and extract title

jthi,

 

thanks for the suggestion. This indeed does the trick! 

 

May I ask why this is different? What does the containment with parenthesis do? 

Re: Loop through reports and extract title

Your original version created a 'message cascade:"

result = obj << message 1 << message 2;

The result is from the succession of messages to the same object. Using the parentheses sends the second message to the result of sending the first message.