The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
[% USE CSV -%]
[% CSV.dump([ 'Device' 'Model' 'Device Location' 'PoE Module' 'Power (W)'
              'Supply' 'Capable Ports' 'Powered Ports' 'Disabled Ports'
              'Errored Ports' 'Committed (W)' 'Delivering (W)' ]) %]

[% FOREACH row IN results %]
  [% NEXT UNLESS row.power_modules.size %]
  [% mydlist = [] %]
  [% mydevice = row.dns || row.name %]
  [% mydlist.push(mydevice) %]
  [% mydlist.push(row.model) %]
  [% mydlist.push(row.location) %]
  [% FOREACH m IN row.power_modules %]
    [% myplist = [] %]
    [% FOREACH col IN [ m.module m.power m.status m.capable_ports
                        m.powered_ports m.disabled_ports m.errored_ports
                        m.pwr_committed m.pwr_delivering
                        ] %]
      [% myplist.push(col) %]
    [% END %]
    [% CALL mydlist.splice(3, 9, myplist ) %]
    [% CSV.dump(mydlist) %]

  [% END %]
[%END%]