in reply to Getting a row rather than an expected scrolling list

You are interpolating the array into a string instead of using a reference to it.

Use $q->scrolling_list(-name=>"metrics", -value=>\@data); instead.