<tt><font size=2><br>
&gt; your code will only work for fields in the main table of your resultset,<br>
&gt; but will break for relations. for example,<br>
&gt; $data-&gt;department.department_code is not a valid accessor. you
will have<br>
&gt; to parse your field definition and convert it into<br>
&gt; $data-&gt;department-&gt;department_code in order to retrieve the
data.<br>
&gt; <br>
&gt; HTH<br>
&gt; <br>
&gt; &nbsp; &nbsp; patrick<br>
&gt; <br>
&gt; -- <br>
&gt; Patrick Meidl ........................ patrick@pantheon.at<br>
&gt; Vienna, Austria ...................... </font></tt><a href=http://gplus.to/pmeidl><tt><font size=2>http://gplus.to/pmeidl</font></tt></a><tt><font size=2><br>
</font></tt>
<br><tt><font size=2>Ok, I now have this code:</font></tt>
<br>
<br><tt><font size=2>my @fields = qw/ department.department_code account_code
account_name account_policy compliance.percent_compliant metrics.num_servers
metrics.num_subsystems progress.percent_complete /;</font></tt>
<br><tt><font size=2>&nbsp; &nbsp; &nbsp; &nbsp; foreach my $field
(@fields) {</font></tt>
<br><tt><font size=2>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; $ws-&gt;write($row, $col, $field);</font></tt>
<br>
<br><tt><font size=2>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; $col++;</font></tt>
<br><tt><font size=2>&nbsp; &nbsp; &nbsp; &nbsp; }</font></tt>
<br><tt><font size=2>&nbsp; &nbsp; &nbsp; &nbsp; $col=0;</font></tt>
<br><tt><font size=2>&nbsp; &nbsp; &nbsp; &nbsp; $row++;</font></tt>
<br><tt><font size=2>&nbsp; &nbsp; &nbsp; &nbsp; while (my @data
=$sr-&gt;next) {</font></tt>
<br><tt><font size=2>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; foreach my $data (@data) {</font></tt>
<br><tt><font size=2>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; foreach my $field
(@fields) {</font></tt>
<br><tt><font size=2>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; if ($field =~ /\./) {</font></tt>
<br><tt><font size=2>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $field = join(
&quot;-&gt;&quot;, split( /\./, $field));</font></tt>
<br><tt><font size=2>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; }</font></tt>
<br><tt><font size=2>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; $ws-&gt;write($row, $col, $data-&gt;$field);</font></tt>
<br>
<br><tt><font size=2>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; $col++;</font></tt>
<br><tt><font size=2>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }</font></tt>
<br><tt><font size=2>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $col=0;</font></tt>
<br><tt><font size=2>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; } &nbsp; &nbsp; &nbsp; &nbsp;</font></tt>
<br><tt><font size=2>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; $row++;</font></tt>
<br><tt><font size=2>&nbsp; &nbsp; &nbsp; &nbsp; }</font></tt>
<br><tt><font size=2>Which gives this error:</font></tt>
<br><tt><font size=2>Caught exception in dbms::Controller::AccountView-&gt;list
&quot;Can't locate object method &quot;department-&gt;department_code&quot;
via package &quot;dbms::Model::ORANGES::Account&quot; at /opt/catalyst/dbms/script/../lib/dbms/Controller/AccountView.pm
line 65.&quot;</font></tt>
<br>
<br><tt><font size=2>The if replaces the &quot;.&quot; with a &quot;-&gt;&quot;
as you can see. <br>
</font></tt>